Browse Source

Views: Added default admin view and views integration

Lacey Sanderson 11 years ago
parent
commit
c33fc3af48

+ 8 - 0
tripal_core/tripal_core.views.inc

@@ -373,6 +373,14 @@ function tripal_core_views_data_mviews($data) {
     'weight' => 10,
   );
 
+    // Implicit Join to Tripal Views
+  $data['tripal_mviews']['table']['join'] = array(
+    'tripal_views' => array(
+      'left_field' => 'mview_id',
+      'field' => 'mview_id',
+    ),
+  );
+
   // Mview ID
   $data['tripal_mviews']['mview_id'] = array(
     'title' => t('Materialized View ID'),

+ 0 - 0
tripal_views/theme/tripal_views_admin.tpl.php → tripal_views/theme/tripal_views_help.tpl.php


+ 50 - 13
tripal_views/tripal_views.module

@@ -17,7 +17,6 @@ function tripal_views_menu() {
   $items['chado'] = array(
     'title' => 'Search Biological Data',
     'description' => 'Listings of the various biological data available categorized by type.',
-    'page callback' => 'tripal_views_biological_data_page',
     'access arguments' => array('access content'),
     'expanded' => TRUE,
     'type' => MENU_NORMAL_ITEM,
@@ -26,13 +25,13 @@ function tripal_views_menu() {
   $items['admin/tripal/views-integration'] = array(
     'title' => 'Views Integration',
     'description' => 'Integration of all the chado tables and fields with Drupal Views.',
-    //'page callback' => 'theme',
-    //'page arguments' => array('tripal_views_admin'),
+    'page callback' => 'tripal_views_admin_integration_view',
     'access arguments' => array('manage tripal_views_integration'),
     'type' => MENU_NORMAL_ITEM,
     'weight' => 2
   );
 
+  /**
   $items['admin/tripal/views-integration/list'] = array(
     'title' => 'List of Integrated Tables',
     'description' => 'Provide a list of all integrated tables and allows for adding new tables or editing already integrated tables.',
@@ -41,6 +40,7 @@ function tripal_views_menu() {
     'type' => MENU_NORMAL_ITEM,
     'weight' => 0,
   );
+  */
 
   $items['admin/tripal/views-integration/new'] = array(
     'title' => 'Integrate A Table',
@@ -48,7 +48,7 @@ function tripal_views_menu() {
     'page callback' => 'drupal_get_form',
     'page arguments' => array('tripal_views_integration_form'),
     'access arguments' => array('manage tripal_views_integration'),
-    'type' => MENU_NORMAL_ITEM,
+    'type' => MENU_CALLBACK,
     'weight' => 1,
   );
 
@@ -57,7 +57,7 @@ function tripal_views_menu() {
     'page callback' => 'drupal_get_form',
     'page arguments' => array('tripal_views_integration_form', 4),
     'access arguments' => array('manage tripal_views_integration'),
-    'type' => MENU_NORMAL_ITEM,
+    'type' => MENU_CALLBACK,
   );
 
   $items['admin/tripal/views-integration/delete/%'] = array(
@@ -82,7 +82,7 @@ function tripal_views_menu() {
     'page callback' => 'drupal_get_form',
     'page arguments' => array('tripal_views_integration_import_form'),
     'access arguments' => array('manage tripal_views_integration'),
-    'type' => MENU_NORMAL_ITEM,
+    'type' => MENU_CALLBACK,
     'weight' => 2,
   );
 
@@ -92,7 +92,7 @@ function tripal_views_menu() {
     'page callback' => 'drupal_get_form',
     'page arguments' => array('tripal_views_integration_export_form', 4),
     'access arguments' => array('manage tripal_views_integration'),
-    'type' => MENU_NORMAL_ITEM,
+    'type' => MENU_CALLBACK,
     'weight' => 3,
   );
 
@@ -109,10 +109,18 @@ function tripal_views_menu() {
     'title' => 'Help',
     'description' => "A description of the Tripal Views module including a short description of it's usage.",
     'page callback' => 'theme',
-    'page arguments' => array('tripal_views_admin'),
+    'page arguments' => array('tripal_views_help'),
     'access arguments' => array('manage tripal_views_integration'),
-    'type' => MENU_NORMAL_ITEM,
-    'weight' => 4,
+    'type' => MENU_LOCAL_TASK,
+    'weight' => 10,
+  );
+
+  $items['admin/tripal/views-integrations/views/integrations/enable'] = array(
+    'title' => 'Enable Integrations Administrative View',
+    'page callback' => 'tripal_views_admin_enable_view',
+    'page arguments' => array('tripal_views_admin_integrations', 'admin/tripal/views-integrations'),
+    'access arguments' => array('administer tripal_bulk_loader'),
+    'type' => MENU_CALLBACK,
   );
 
   return $items;
@@ -142,7 +150,7 @@ function tripal_views_init() {
  */
 function tripal_views_help ($path, $arg) {
   if ($path == 'admin/help#tripal_views') {
-    return theme('tripal_views_admin', array());
+    return theme('tripal_views_help', array());
   }
 }
 
@@ -197,8 +205,8 @@ function tripal_views_theme($existing, $type, $theme, $path) {
       'variables' => array('element' => NULL)
     ),
     // instructions page for the views module
-    'tripal_views_admin' => array(
-      'template' => 'tripal_views_admin',
+    'tripal_views_help' => array(
+      'template' => 'tripal_views_help',
       'variables' =>  array(NULL),
       'path' => drupal_get_path('module', 'tripal_views') . '/theme'
     ),
@@ -253,4 +261,33 @@ function tripal_views_form_alter($form, $form_state, $form_id) {
     }
     */
   }
+}
+
+function tripal_views_admin_integration_view() {
+  $output = '';
+
+  // set the breadcrumb
+  $breadcrumb = array();
+  $breadcrumb[] = l('Home', '<front>');
+  $breadcrumb[] = l('Administration', 'admin');
+  $breadcrumb[] = l('Tripal', 'admin/tripal');
+  $breadcrumb[] = l('Intgrations', 'admin/tripal/views-integrations');
+  drupal_set_breadcrumb($breadcrumb);
+
+  // Add the view
+  $view = views_embed_view('tripal_views_admin_integrations','default');
+  if (isset($view)) {
+    $output .= $view;
+  }
+  else {
+    $output .= '<p>The Tripal Views Module uses primarily views to provide an '
+      . 'administrative interface. Currently one or more views needed for this '
+      . 'administrative interface are disabled. <strong>Click each of the following links to '
+      . 'enable the pertinent views</strong>:</p>';
+    $output .= '<ul>';
+      $output .= '<li>'.l('Tripal Views Admin', 'admin/tripal/views-integrations/views/integrations/enable').'</li>';
+    $output .= '</ul>';
+  }
+
+  return $output;
 }

+ 151 - 0
tripal_views/tripal_views.views.inc

@@ -147,6 +147,9 @@ function tripal_views_views_pre_render(&$view) {
 function tripal_views_views_data() {
   $data = array();
 
+  // Manually integrate the drupal.tripal_views* tables
+  $data = tripal_views_views_data_tripal_views_tables($data);
+
   // MAKE SURE ALL CHADO TABLES ARE INTEGRATED
   tripal_views_integrate_all_chado_tables();
 
@@ -367,6 +370,154 @@ function tripal_views_views_data() {
   return $data;
 }
 
+/**
+ *
+ */
+function tripal_views_views_data_tripal_views_tables($data) {
+
+  $data['tripal_views']['table']['group'] = t('Tripal Views Integration');
+  $data['tripal_views']['table']['base'] = array(
+    'field' => 'setup_id', // This is the identifier field for the view.
+    'title' => t('Tripal Views Integration'),
+    'help' => t('Specifications on how to integrate various tables with Drupal Views'),
+    'weight' => -10,
+  );
+
+  // Implicit Join to Materialized Views
+  $data['tripal_views']['table']['join'] = array(
+    'tripal_mviews' => array(
+      'left_field' => 'mview_id',
+      'field' => 'mview_id',
+    ),
+  );
+
+  // setup_id
+  $data['tripal_views']['setup_id'] = array(
+    'title' => t('Setup ID'),
+    'help' => t('Primary key of the integration'),
+    'field' => array(
+      'handler' => 'views_handler_field_numeric',
+      'click sortable' => TRUE,
+    ),
+    'filter' => array(
+      'handler' => 'views_handler_filter_numeric',
+    ),
+    'sort' => array(
+      'handler' => 'views_handler_sort',
+    ),
+  );
+
+  // mview_id
+  $data['tripal_views']['mview_id'] = array(
+    'title' => t('Materialized View ID'),
+    'help' => t('The primary key of the Mview integrated.'),
+    'field' => array(
+      'handler' => 'views_handler_field_numeric',
+      'click sortable' => TRUE,
+    ),
+    'filter' => array(
+      'handler' => 'views_handler_filter_numeric',
+    ),
+    'sort' => array(
+      'handler' => 'views_handler_sort',
+    ),
+  );
+
+  // base_table
+  $data['tripal_views']['base_table'] = array(
+    'title' => t('Base Table?'),
+    'help' => t('Whether the table being integrated should be considered a base table.'),
+    'field' => array(
+      'handler' => 'views_handler_field_boolean',
+      'click sortable' => TRUE,
+    ),
+    'filter' => array(
+      'handler' => 'views_handler_filter_boolean_operator',
+      'label' => t('Base Table?'),
+      'type' => 'yes-no',
+      'use equal' => TRUE,
+    ),
+    'sort' => array(
+      'handler' => 'views_handler_sort',
+    ),
+  );
+
+  // table_name
+  $data['tripal_views']['table_name'] = array(
+    'title' => t('Chado Table Name'),
+    'help' => t('The name of the table being integrated'),
+    'field' => array(
+      'handler' => 'views_handler_field',
+      'click sortable' => TRUE, // This is use by the table display plugin.
+    ),
+    'sort' => array(
+      'handler' => 'views_handler_sort',
+    ),
+    'filter' => array(
+      'handler' => 'views_handler_filter_string',
+    ),
+    'argument' => array(
+      'handler' => 'views_handler_argument_string',
+    ),
+  );
+
+  // priority
+  $data['tripal_views']['priority'] = array(
+    'title' => t('Priority'),
+    'help' => t('The priority of the integration.'),
+    'field' => array(
+      'handler' => 'views_handler_field_numeric',
+      'click sortable' => TRUE,
+    ),
+    'filter' => array(
+      'handler' => 'views_handler_filter_numeric',
+    ),
+    'sort' => array(
+      'handler' => 'views_handler_sort',
+    ),
+  );
+
+  // name
+  $data['tripal_views']['name'] = array(
+    'title' => t('Name'),
+    'help' => t('The name of the integration'),
+    'field' => array(
+      'handler' => 'views_handler_field',
+      'click sortable' => TRUE, // This is use by the table display plugin.
+    ),
+    'sort' => array(
+      'handler' => 'views_handler_sort',
+    ),
+    'filter' => array(
+      'handler' => 'views_handler_filter_string',
+    ),
+    'argument' => array(
+      'handler' => 'views_handler_argument_string',
+    ),
+  );
+
+  // comment
+  $data['tripal_views']['comment'] = array(
+    'title' => t('Description'),
+    'help' => t('Short description or comment about this integration.'),
+    'field' => array(
+      'handler' => 'views_handler_field',
+      'click sortable' => TRUE, // This is use by the table display plugin.
+    ),
+    'sort' => array(
+      'handler' => 'views_handler_sort',
+    ),
+    'filter' => array(
+      'handler' => 'views_handler_filter_string',
+    ),
+    'argument' => array(
+      'handler' => 'views_handler_argument_string',
+    ),
+  );
+
+  return $data;
+}
+
 /**
  * Implements hook_views_data_alter().
  * Used to add Chado <-> Node Joins & Relationships

+ 315 - 0
tripal_views/tripal_views.views_default.inc

@@ -0,0 +1,315 @@
+<?php
+
+/**
+ *
+ *
+ * @ingroup tripal_views
+ */
+function tripal_views_views_default_views() {
+  $views = array();
+
+  $view = tripal_views_defaultview_admin_integrations();
+  $views[$view->name] = $view;
+
+  return $views;
+}
+
+function tripal_views_defaultview_admin_integrations() {
+
+  $view = new view();
+  $view->name = 'tripal_views_admin_integrations';
+  $view->description = 'DO NOT DISABLE';
+  $view->tag = 'tripal admin';
+  $view->base_table = 'tripal_views';
+  $view->human_name = 'Tripal Views Admin';
+  $view->core = 7;
+  $view->api_version = '3.0';
+  $view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
+
+  /* Display: Master */
+  $handler = $view->new_display('default', 'Master', 'default');
+  $handler->display->display_options['title'] = 'Tripal Views Integrations';
+  $handler->display->display_options['use_more_always'] = FALSE;
+  $handler->display->display_options['access']['type'] = 'perm';
+  $handler->display->display_options['access']['perm'] = 'manage tripal_views_integration';
+  $handler->display->display_options['cache']['type'] = 'none';
+  $handler->display->display_options['query']['type'] = 'views_query';
+  $handler->display->display_options['exposed_form']['type'] = 'basic';
+  $handler->display->display_options['exposed_form']['options']['submit_button'] = 'Filter';
+  $handler->display->display_options['pager']['type'] = 'full';
+  $handler->display->display_options['pager']['options']['items_per_page'] = '25';
+  $handler->display->display_options['style_plugin'] = 'table';
+  $handler->display->display_options['style_options']['columns'] = array(
+    'name' => 'name',
+    'table_name' => 'table_name',
+    'mv_table' => 'mv_table',
+    'comment' => 'comment',
+    'base_table' => 'base_table',
+    'priority' => 'priority',
+  );
+  $handler->display->display_options['style_options']['default'] = '-1';
+  $handler->display->display_options['style_options']['info'] = array(
+    'name' => array(
+      'sortable' => 1,
+      'default_sort_order' => 'asc',
+      'align' => '',
+      'separator' => '',
+      'empty_column' => 0,
+    ),
+    'table_name' => array(
+      'sortable' => 1,
+      'default_sort_order' => 'asc',
+      'align' => '',
+      'separator' => '',
+      'empty_column' => 0,
+    ),
+    'mv_table' => array(
+      'sortable' => 1,
+      'default_sort_order' => 'asc',
+      'align' => '',
+      'separator' => '',
+      'empty_column' => 0,
+    ),
+    'comment' => array(
+      'sortable' => 0,
+      'default_sort_order' => 'asc',
+      'align' => '',
+      'separator' => '',
+      'empty_column' => 0,
+    ),
+    'base_table' => array(
+      'sortable' => 1,
+      'default_sort_order' => 'asc',
+      'align' => '',
+      'separator' => '',
+      'empty_column' => 0,
+    ),
+    'priority' => array(
+      'sortable' => 1,
+      'default_sort_order' => 'asc',
+      'align' => '',
+      'separator' => '',
+      'empty_column' => 0,
+    ),
+  );
+  /* Header: Global: Text area */
+  $handler->display->display_options['header']['area']['id'] = 'area';
+  $handler->display->display_options['header']['area']['table'] = 'views';
+  $handler->display->display_options['header']['area']['field'] = 'area';
+  $handler->display->display_options['header']['area']['label'] = 'Description';
+  $handler->display->display_options['header']['area']['empty'] = TRUE;
+  $handler->display->display_options['header']['area']['content'] = '<p>The following tables are available for integration with Drupal Views. If a table is integrated more than once, then the setup with the lightest priority will be used. For example, if you have created a custom setup with a priority of -5 then that will be used instead of the default setup with priority 10. Priorities range from -10 to +10 where a setup with -10 has greater precedent than any other and +10 has the least.</p>';
+  $handler->display->display_options['header']['area']['format'] = 'filtered_html';
+  /* Header: Global: Action Links */
+  $handler->display->display_options['header']['action_links_area']['id'] = 'action_links_area';
+  $handler->display->display_options['header']['action_links_area']['table'] = 'views';
+  $handler->display->display_options['header']['action_links_area']['field'] = 'action_links_area';
+  $handler->display->display_options['header']['action_links_area']['label'] = 'Add Links';
+  $handler->display->display_options['header']['action_links_area']['empty'] = TRUE;
+  $handler->display->display_options['header']['action_links_area']['link-1'] = array(
+    'label-1' => 'Add New Integration',
+    'path-1' => 'admin/tripal/views-integration/new',
+  );
+  $handler->display->display_options['header']['action_links_area']['link-2'] = array(
+    'label-2' => 'Import Integration',
+    'path-2' => 'admin/tripal/views-integration/import',
+  );
+  $handler->display->display_options['header']['action_links_area']['link-3'] = array(
+    'label-3' => '',
+    'path-3' => '',
+  );
+  $handler->display->display_options['header']['action_links_area']['link-4'] = array(
+    'label-4' => '',
+    'path-4' => '',
+  );
+  /* Header: Global: Action Links */
+  $handler->display->display_options['header']['action_links_area_1']['id'] = 'action_links_area_1';
+  $handler->display->display_options['header']['action_links_area_1']['table'] = 'views';
+  $handler->display->display_options['header']['action_links_area_1']['field'] = 'action_links_area';
+  $handler->display->display_options['header']['action_links_area_1']['label'] = 'Delete Links';
+  $handler->display->display_options['header']['action_links_area_1']['empty'] = TRUE;
+  $handler->display->display_options['header']['action_links_area_1']['link-1'] = array(
+    'label-1' => 'Delete ALL Integrations',
+    'path-1' => 'admin/tripal/views-integration/delete-all/confirm',
+  );
+  $handler->display->display_options['header']['action_links_area_1']['link-2'] = array(
+    'label-2' => '',
+    'path-2' => '',
+  );
+  $handler->display->display_options['header']['action_links_area_1']['link-3'] = array(
+    'label-3' => '',
+    'path-3' => '',
+  );
+  $handler->display->display_options['header']['action_links_area_1']['link-4'] = array(
+    'label-4' => '',
+    'path-4' => '',
+  );
+  /* Field: Tripal Views Integration: Setup ID */
+  $handler->display->display_options['fields']['setup_id']['id'] = 'setup_id';
+  $handler->display->display_options['fields']['setup_id']['table'] = 'tripal_views';
+  $handler->display->display_options['fields']['setup_id']['field'] = 'setup_id';
+  $handler->display->display_options['fields']['setup_id']['exclude'] = TRUE;
+  $handler->display->display_options['fields']['setup_id']['separator'] = '';
+  /* Field: Tripal Views Integration: Name */
+  $handler->display->display_options['fields']['name']['id'] = 'name';
+  $handler->display->display_options['fields']['name']['table'] = 'tripal_views';
+  $handler->display->display_options['fields']['name']['field'] = 'name';
+  /* Field: Tripal Views Integration: Chado Table Name */
+  $handler->display->display_options['fields']['table_name']['id'] = 'table_name';
+  $handler->display->display_options['fields']['table_name']['table'] = 'tripal_views';
+  $handler->display->display_options['fields']['table_name']['field'] = 'table_name';
+  /* Field: Tripal Materialized Views: Table */
+  $handler->display->display_options['fields']['mv_table']['id'] = 'mv_table';
+  $handler->display->display_options['fields']['mv_table']['table'] = 'tripal_mviews';
+  $handler->display->display_options['fields']['mv_table']['field'] = 'mv_table';
+  $handler->display->display_options['fields']['mv_table']['label'] = 'Materialized View';
+  /* Field: Tripal Views Integration: Description */
+  $handler->display->display_options['fields']['comment']['id'] = 'comment';
+  $handler->display->display_options['fields']['comment']['table'] = 'tripal_views';
+  $handler->display->display_options['fields']['comment']['field'] = 'comment';
+  /* Field: Tripal Views Integration: Base Table? */
+  $handler->display->display_options['fields']['base_table']['id'] = 'base_table';
+  $handler->display->display_options['fields']['base_table']['table'] = 'tripal_views';
+  $handler->display->display_options['fields']['base_table']['field'] = 'base_table';
+  $handler->display->display_options['fields']['base_table']['not'] = 0;
+  /* Field: Tripal Views Integration: Priority */
+  $handler->display->display_options['fields']['priority']['id'] = 'priority';
+  $handler->display->display_options['fields']['priority']['table'] = 'tripal_views';
+  $handler->display->display_options['fields']['priority']['field'] = 'priority';
+  $handler->display->display_options['fields']['priority']['separator'] = '';
+  /* Field: Global: Custom text */
+  $handler->display->display_options['fields']['nothing']['id'] = 'nothing';
+  $handler->display->display_options['fields']['nothing']['table'] = 'views';
+  $handler->display->display_options['fields']['nothing']['field'] = 'nothing';
+  $handler->display->display_options['fields']['nothing']['label'] = 'Edit Link';
+  $handler->display->display_options['fields']['nothing']['exclude'] = TRUE;
+  $handler->display->display_options['fields']['nothing']['alter']['text'] = 'edit';
+  $handler->display->display_options['fields']['nothing']['alter']['make_link'] = TRUE;
+  $handler->display->display_options['fields']['nothing']['alter']['path'] = 'admin/tripal/views-integration/edit/[setup_id]';
+  /* Field: Global: Custom text */
+  $handler->display->display_options['fields']['nothing_1']['id'] = 'nothing_1';
+  $handler->display->display_options['fields']['nothing_1']['table'] = 'views';
+  $handler->display->display_options['fields']['nothing_1']['field'] = 'nothing';
+  $handler->display->display_options['fields']['nothing_1']['label'] = 'Delete Link';
+  $handler->display->display_options['fields']['nothing_1']['exclude'] = TRUE;
+  $handler->display->display_options['fields']['nothing_1']['alter']['text'] = 'delete';
+  $handler->display->display_options['fields']['nothing_1']['alter']['make_link'] = TRUE;
+  $handler->display->display_options['fields']['nothing_1']['alter']['path'] = 'admin/tripal/views-integration/delete/[setup_id]';
+  /* Field: Global: Custom text */
+  $handler->display->display_options['fields']['nothing_2']['id'] = 'nothing_2';
+  $handler->display->display_options['fields']['nothing_2']['table'] = 'views';
+  $handler->display->display_options['fields']['nothing_2']['field'] = 'nothing';
+  $handler->display->display_options['fields']['nothing_2']['label'] = 'Export Link';
+  $handler->display->display_options['fields']['nothing_2']['exclude'] = TRUE;
+  $handler->display->display_options['fields']['nothing_2']['alter']['text'] = 'export';
+  $handler->display->display_options['fields']['nothing_2']['alter']['make_link'] = TRUE;
+  $handler->display->display_options['fields']['nothing_2']['alter']['path'] = 'admin/tripal/views-integration/export/[setup_id]';
+  /* Field: Global: Custom text */
+  $handler->display->display_options['fields']['nothing_3']['id'] = 'nothing_3';
+  $handler->display->display_options['fields']['nothing_3']['table'] = 'views';
+  $handler->display->display_options['fields']['nothing_3']['field'] = 'nothing';
+  $handler->display->display_options['fields']['nothing_3']['label'] = '';
+  $handler->display->display_options['fields']['nothing_3']['alter']['text'] = '[nothing]   [nothing_1]<br />
+  [nothing_2]';
+  $handler->display->display_options['fields']['nothing_3']['element_class'] = 'short-column';
+  $handler->display->display_options['fields']['nothing_3']['element_label_class'] = 'short-column';
+  $handler->display->display_options['fields']['nothing_3']['element_label_colon'] = FALSE;
+  /* Sort criterion: Tripal Views Integration: Chado Table Name */
+  $handler->display->display_options['sorts']['table_name']['id'] = 'table_name';
+  $handler->display->display_options['sorts']['table_name']['table'] = 'tripal_views';
+  $handler->display->display_options['sorts']['table_name']['field'] = 'table_name';
+  /* Sort criterion: Tripal Views Integration: Priority */
+  $handler->display->display_options['sorts']['priority']['id'] = 'priority';
+  $handler->display->display_options['sorts']['priority']['table'] = 'tripal_views';
+  $handler->display->display_options['sorts']['priority']['field'] = 'priority';
+  /* Filter criterion: Tripal Views Integration: Name */
+  $handler->display->display_options['filters']['name']['id'] = 'name';
+  $handler->display->display_options['filters']['name']['table'] = 'tripal_views';
+  $handler->display->display_options['filters']['name']['field'] = 'name';
+  $handler->display->display_options['filters']['name']['operator'] = 'contains';
+  $handler->display->display_options['filters']['name']['group'] = 1;
+  $handler->display->display_options['filters']['name']['exposed'] = TRUE;
+  $handler->display->display_options['filters']['name']['expose']['operator_id'] = 'name_op';
+  $handler->display->display_options['filters']['name']['expose']['label'] = 'Integration Name Contains';
+  $handler->display->display_options['filters']['name']['expose']['operator'] = 'name_op';
+  $handler->display->display_options['filters']['name']['expose']['identifier'] = 'name';
+  $handler->display->display_options['filters']['name']['expose']['remember_roles'] = array(
+    2 => '2',
+    1 => 0,
+    3 => 0,
+  );
+  /* Filter criterion: Tripal Views Integration: Chado Table Name */
+  $handler->display->display_options['filters']['table_name']['id'] = 'table_name';
+  $handler->display->display_options['filters']['table_name']['table'] = 'tripal_views';
+  $handler->display->display_options['filters']['table_name']['field'] = 'table_name';
+  $handler->display->display_options['filters']['table_name']['group'] = 1;
+  $handler->display->display_options['filters']['table_name']['exposed'] = TRUE;
+  $handler->display->display_options['filters']['table_name']['expose']['operator_id'] = 'table_name_op';
+  $handler->display->display_options['filters']['table_name']['expose']['label'] = 'Chado Table Name';
+  $handler->display->display_options['filters']['table_name']['expose']['operator'] = 'table_name_op';
+  $handler->display->display_options['filters']['table_name']['expose']['identifier'] = 'table_name';
+  $handler->display->display_options['filters']['table_name']['expose']['remember_roles'] = array(
+    2 => '2',
+    1 => 0,
+    3 => 0,
+  );
+  /* Filter criterion: Tripal Materialized Views: Table */
+  $handler->display->display_options['filters']['mv_table']['id'] = 'mv_table';
+  $handler->display->display_options['filters']['mv_table']['table'] = 'tripal_mviews';
+  $handler->display->display_options['filters']['mv_table']['field'] = 'mv_table';
+  $handler->display->display_options['filters']['mv_table']['group'] = 1;
+  $handler->display->display_options['filters']['mv_table']['exposed'] = TRUE;
+  $handler->display->display_options['filters']['mv_table']['expose']['operator_id'] = 'mv_table_op';
+  $handler->display->display_options['filters']['mv_table']['expose']['label'] = 'Materialized View Table Name';
+  $handler->display->display_options['filters']['mv_table']['expose']['operator'] = 'mv_table_op';
+  $handler->display->display_options['filters']['mv_table']['expose']['identifier'] = 'mv_table';
+  $handler->display->display_options['filters']['mv_table']['expose']['remember_roles'] = array(
+    2 => '2',
+    1 => 0,
+    3 => 0,
+  );
+  /* Filter criterion: Tripal Views Integration: Priority */
+  $handler->display->display_options['filters']['priority']['id'] = 'priority';
+  $handler->display->display_options['filters']['priority']['table'] = 'tripal_views';
+  $handler->display->display_options['filters']['priority']['field'] = 'priority';
+  $handler->display->display_options['filters']['priority']['group'] = 1;
+  $handler->display->display_options['filters']['priority']['exposed'] = TRUE;
+  $handler->display->display_options['filters']['priority']['expose']['operator_id'] = 'priority_op';
+  $handler->display->display_options['filters']['priority']['expose']['label'] = 'Priority';
+  $handler->display->display_options['filters']['priority']['expose']['operator'] = 'priority_op';
+  $handler->display->display_options['filters']['priority']['expose']['identifier'] = 'priority';
+  $handler->display->display_options['filters']['priority']['expose']['remember_roles'] = array(
+    2 => '2',
+    1 => 0,
+    3 => 0,
+  );
+  /* Filter criterion: Tripal Views Integration: Base Table? */
+  $handler->display->display_options['filters']['base_table']['id'] = 'base_table';
+  $handler->display->display_options['filters']['base_table']['table'] = 'tripal_views';
+  $handler->display->display_options['filters']['base_table']['field'] = 'base_table';
+  $handler->display->display_options['filters']['base_table']['value'] = 'All';
+  $handler->display->display_options['filters']['base_table']['group'] = 1;
+  $handler->display->display_options['filters']['base_table']['exposed'] = TRUE;
+  $handler->display->display_options['filters']['base_table']['expose']['operator_id'] = '';
+  $handler->display->display_options['filters']['base_table']['expose']['label'] = 'Integrates a Base Table?';
+  $handler->display->display_options['filters']['base_table']['expose']['operator'] = 'base_table_op';
+  $handler->display->display_options['filters']['base_table']['expose']['identifier'] = 'base_table';
+  $handler->display->display_options['filters']['base_table']['expose']['remember_roles'] = array(
+    2 => '2',
+    1 => 0,
+    3 => 0,
+  );
+
+  /* Display: Page */
+  $handler = $view->new_display('page', 'Page', 'page');
+  $handler->display->display_options['path'] = 'admin/tripal/views-integration/integrations';
+  $handler->display->display_options['menu']['type'] = 'default tab';
+  $handler->display->display_options['menu']['title'] = 'Integrations';
+  $handler->display->display_options['menu']['weight'] = '-10';
+  $handler->display->display_options['menu']['name'] = 'management';
+  $handler->display->display_options['menu']['context'] = 0;
+  $handler->display->display_options['menu']['context_only_inline'] = 0;
+  $handler->display->display_options['tab_options']['weight'] = '0';
+
+  return $view;
+}