From d0396a334be662cc1b61929cb6ee1d7fa196f281 Mon Sep 17 00:00:00 2001
From: Hasse R. Hansen <hasse@ramlev.dk>
Date: Mon, 30 May 2011 20:06:57 +0200
Subject: [PATCH] Simple views integration

---
 feed_field.module    |    9 +++
 feed_field.views.inc |  135 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 144 insertions(+), 0 deletions(-)
 create mode 100644 feed_field.views.inc

diff --git a/feed_field.module b/feed_field.module
index d63ac26..fd13f19 100644
--- a/feed_field.module
+++ b/feed_field.module
@@ -6,6 +6,15 @@
  */
 
 /**
+ * Implements hook_views_api().
+ */
+function feed_field_views_api() {
+  return array(
+    'api' => 2,
+  );
+}
+
+/**
  * Implements hook_menu().
  */
 function feed_field_menu() {
diff --git a/feed_field.views.inc b/feed_field.views.inc
new file mode 100644
index 0000000..7c99889
--- /dev/null
+++ b/feed_field.views.inc
@@ -0,0 +1,135 @@
+<?php
+
+function feed_field_views_views_data() {
+  $data = array();
+  $data['feed_field_settings']['table'] = array(
+    'group' => 'Feed field items',
+    'base' => array(
+      'field' => 'id',
+      'title' => 'Feed field settings',
+      'help' => 'Information on a given feed field',
+    ),
+    'join' => array(
+      'node' => array(
+        'left_field' => 'nid',
+        'field' => 'nid',
+      ),
+    ),
+  );
+  $data['feed_field_items']['table'] = array(
+    'group' => 'Feed field items',
+    'base' => array(
+      'field' => 'id',
+      'title' => 'Feed field items',
+      'help' => 'Information stored as a feed from feed field'
+    ),
+    'join' => array(
+      'feed_field_settings' => array(
+        'left_field' => 'id',
+        'field' => 'id',
+      ),
+    ),
+  );
+
+  $data['feed_field_items']['id'] = array(
+    'title' => t('Id'),
+    'help'=> t('Feed Settings'),
+    'relationship' => array(
+      'base' => 'feed_field_settings',
+      'field' => 'id',
+      'handler' => 'views_handler_relationship',
+      'label' => 'feed settings',
+    ),
+  );
+
+  $data['feed_field_settings']['url'] = array(
+    'title' => t('Feed url'),
+    'help' => t('Feed URL'),
+    'field' => array(
+      'handler' => 'views_handler_field',
+      'click sortable' => TRUE,
+    ),
+    'sort' => array(
+      'handler' => 'views_handler_sort',
+      'allow empty' => TRUE,
+      'help' => t('Sort bu url'),
+    ),
+    'filter' => array(
+      'handler' => 'views_handler_filter_string',
+      'help' => t('Filter on a feed url'),
+    ),
+  );
+
+  $data['feed_field_items']['title'] = array(
+    'title' => t('Feed title'),
+    'help' => t('This is the title'),
+    'field' => array(
+      'handler' => 'views_handler_field',
+      'click sortable' => TRUE,
+    ),
+    'sort' => array(
+      'handler' => 'views_handler_sort',
+      'allow empty' => TRUE,
+      'help' => t('Sort on feeds item title'),
+    ),
+    'filter' => array(
+      'handler' => 'views_handler_filter_string',
+      'help' => t('Filter on an item link'),
+    ),
+  );
+  $data['feed_field_items']['link'] = array(
+    'title' => t('Feed link'),
+    'help' => t('This is the link to the post'),
+    'field' => array(
+      'handler' => 'views_handler_field_url',
+      'click sortable' => TRUE,
+    ),
+    'sort' => array(
+      'handler' => 'views_handler_sort',
+      'allow empty' => TRUE,
+      'help' => t('Sort on feeds item link'),
+    ),
+    'filter' => array(
+      'handler' => 'views_handler_filter_string',
+      'help' => t('Filter on an item link'),
+    ),
+  );
+  $data['feed_field_items']['description'] = array(
+    'title' => t('Feed description'),
+    'help' => t('This is the description'),
+    'field' => array(
+      'handler' => 'views_handler_field',
+      'click sortable' => TRUE,
+    ),
+    'filter' => array(
+      'handler' => 'views_handler_filter_string',
+      'help' => t('Filter on an item description'),
+    ),
+    'sort' => array(
+      'handler' => 'views_handler_sort',
+      'allow empty' => TRUE,
+      'help' => t('Sort on feeds item description'),
+    ),
+  );
+  $data['feed_field_items']['timestamp'] = array(
+    'title' => t('Feed item created date'),
+    'help' => t('When has the feed item been posted.'),
+    'field' => array(
+      'handler' => 'views_handler_field_date',
+      'click sortable' => TRUE,
+    ),
+    'sort' => array(
+      'handler' => 'views_handler_sort_date',
+      'allow empty' => TRUE,
+      'help' => t('Sort on feeds item created date'),
+    ),
+    'filter' => array(
+      'handler' => 'views_handler_filter_date',
+      'help' => t('Filter on a feeds item created date'),
+    ),
+  );
+
+
+
+  return $data;
+}
-- 
1.7.5.1

