|
@@ -10,3 +10,375 @@
|
|
|
* http://views2.logrus.com/doc/html/index.html.
|
|
|
*/
|
|
|
|
|
|
+/**
|
|
|
+ *
|
|
|
+ * @ingroup tripal_pub_views
|
|
|
+ */
|
|
|
+function tripal_pub_views_default_views() {
|
|
|
+ $views = array();
|
|
|
+
|
|
|
+ if (!module_exists('tripal_views')) {
|
|
|
+ return $views;
|
|
|
+ }
|
|
|
+
|
|
|
+ // Main default view
|
|
|
+ $view = new view;
|
|
|
+ $view->name = 'pub_listing';
|
|
|
+ $view->description = 'This view lists all pubs by default.';
|
|
|
+ $view->tag = 'chado default';
|
|
|
+ $view->base_table = 'pub';
|
|
|
+ $view->core = 0;
|
|
|
+ $view->api_version = '2';
|
|
|
+ $view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
|
|
|
+ $handler = $view->new_display('default', 'Defaults', 'default');
|
|
|
+ $handler->override_option('fields', array(
|
|
|
+ 'title' => array(
|
|
|
+ 'label' => 'Title',
|
|
|
+ 'alter' => array(
|
|
|
+ 'alter_text' => 0,
|
|
|
+ 'text' => '',
|
|
|
+ 'make_link' => 0,
|
|
|
+ 'path' => '',
|
|
|
+ 'link_class' => '',
|
|
|
+ 'alt' => '',
|
|
|
+ 'prefix' => '',
|
|
|
+ 'suffix' => '',
|
|
|
+ 'target' => '',
|
|
|
+ 'help' => '',
|
|
|
+ 'trim' => 0,
|
|
|
+ 'max_length' => '',
|
|
|
+ 'word_boundary' => 1,
|
|
|
+ 'ellipsis' => 1,
|
|
|
+ 'html' => 0,
|
|
|
+ 'strip_tags' => 0,
|
|
|
+ ),
|
|
|
+ 'empty' => '',
|
|
|
+ 'hide_empty' => 0,
|
|
|
+ 'empty_zero' => 0,
|
|
|
+ 'link_to_node' => 1,
|
|
|
+ 'exclude' => 0,
|
|
|
+ 'id' => 'title',
|
|
|
+ 'table' => 'pub',
|
|
|
+ 'field' => 'title',
|
|
|
+ 'relationship' => 'none',
|
|
|
+ ),
|
|
|
+ 'pyear' => array(
|
|
|
+ 'label' => 'Year',
|
|
|
+ 'alter' => array(
|
|
|
+ 'alter_text' => 0,
|
|
|
+ 'text' => '',
|
|
|
+ 'make_link' => 0,
|
|
|
+ 'path' => '',
|
|
|
+ 'link_class' => '',
|
|
|
+ 'alt' => '',
|
|
|
+ 'prefix' => '',
|
|
|
+ 'suffix' => '',
|
|
|
+ 'target' => '',
|
|
|
+ 'help' => '',
|
|
|
+ 'trim' => 0,
|
|
|
+ 'max_length' => '',
|
|
|
+ 'word_boundary' => 1,
|
|
|
+ 'ellipsis' => 1,
|
|
|
+ 'html' => 0,
|
|
|
+ 'strip_tags' => 0,
|
|
|
+ ),
|
|
|
+ 'empty' => '',
|
|
|
+ 'hide_empty' => 0,
|
|
|
+ 'empty_zero' => 0,
|
|
|
+ 'exclude' => 0,
|
|
|
+ 'id' => 'name',
|
|
|
+ 'table' => 'pub',
|
|
|
+ 'field' => 'pyear',
|
|
|
+ 'relationship' => 'none',
|
|
|
+ ),
|
|
|
+ 'type' => array(
|
|
|
+ 'label' => 'Type',
|
|
|
+ 'alter' => array(
|
|
|
+ 'alter_text' => 0,
|
|
|
+ 'text' => '',
|
|
|
+ 'make_link' => 0,
|
|
|
+ 'path' => '',
|
|
|
+ 'link_class' => '',
|
|
|
+ 'alt' => '',
|
|
|
+ 'prefix' => '',
|
|
|
+ 'suffix' => '',
|
|
|
+ 'target' => '',
|
|
|
+ 'help' => '',
|
|
|
+ 'trim' => 0,
|
|
|
+ 'max_length' => '',
|
|
|
+ 'word_boundary' => 1,
|
|
|
+ 'ellipsis' => 1,
|
|
|
+ 'html' => 0,
|
|
|
+ 'strip_tags' => 0,
|
|
|
+ ),
|
|
|
+ 'empty' => '',
|
|
|
+ 'hide_empty' => 0,
|
|
|
+ 'empty_zero' => 0,
|
|
|
+ 'exclude' => 0,
|
|
|
+ 'id' => 'type',
|
|
|
+ 'table' => 'cvterm',
|
|
|
+ 'field' => 'name',
|
|
|
+ 'relationship' => 'none',
|
|
|
+ ),
|
|
|
+ ));
|
|
|
+ $handler->override_option('sorts', array(
|
|
|
+ 'pyear' => array(
|
|
|
+ 'order' => 'ASC',
|
|
|
+ 'id' => 'year',
|
|
|
+ 'table' => 'pub',
|
|
|
+ 'field' => 'pyear',
|
|
|
+ 'relationship' => 'none',
|
|
|
+ ),
|
|
|
+ 'title' => array(
|
|
|
+ 'order' => 'ASC',
|
|
|
+ 'id' => 'title',
|
|
|
+ 'table' => 'pub',
|
|
|
+ 'field' => 'title',
|
|
|
+ 'relationship' => 'none',
|
|
|
+ ),
|
|
|
+ 'type' => array(
|
|
|
+ 'order' => 'ASC',
|
|
|
+ 'id' => 'type',
|
|
|
+ 'table' => 'cvterm',
|
|
|
+ 'field' => 'name',
|
|
|
+ 'relationship' => 'none',
|
|
|
+ ),
|
|
|
+ ));
|
|
|
+ $handler->override_option('filters', array(
|
|
|
+ 'search_results' => array(
|
|
|
+ 'operator' => '=',
|
|
|
+ 'value' => '',
|
|
|
+ 'group' => '0',
|
|
|
+ 'exposed' => FALSE,
|
|
|
+ 'expose' => array(
|
|
|
+ 'operator' => FALSE,
|
|
|
+ 'label' => '',
|
|
|
+ ),
|
|
|
+ 'id' => 'search_results',
|
|
|
+ 'table' => 'views',
|
|
|
+ 'field' => 'search_results',
|
|
|
+ 'relationship' => 'none',
|
|
|
+ 'apply_button' => 'Show',
|
|
|
+ 'no_results_text' => 'Click "Show" to see a list of all pubs matching the entered criteria. If you leave a any of the criteria blank then the pubs will be not be filtered based on that field. Furthermore, if you leave all criteria blank then all pubs will be listed.',
|
|
|
+ ),
|
|
|
+ 'title' => array(
|
|
|
+ 'operator' => '=',
|
|
|
+ 'value' => array(),
|
|
|
+ 'group' => '0',
|
|
|
+ 'exposed' => TRUE,
|
|
|
+ 'expose' => array(
|
|
|
+ 'use_operator' => 0,
|
|
|
+ 'operator' => 'title_op',
|
|
|
+ 'identifier' => 'pub_title',
|
|
|
+ 'label' => 'Title',
|
|
|
+ 'remember' => 0,
|
|
|
+ ),
|
|
|
+ 'case' => 1,
|
|
|
+ 'id' => 'title',
|
|
|
+ 'table' => 'pub',
|
|
|
+ 'field' => 'title',
|
|
|
+ 'relationship' => 'none',
|
|
|
+ ),
|
|
|
+ 'type_id' => array(
|
|
|
+ 'operator' => '=',
|
|
|
+ 'value' => '',
|
|
|
+ 'group' => '0',
|
|
|
+ 'exposed' => TRUE,
|
|
|
+ 'expose' => array(
|
|
|
+ 'use_operator' => 0,
|
|
|
+ 'operator' => 'type_id_op',
|
|
|
+ 'identifier' => 'type_id',
|
|
|
+ 'label' => 'Type',
|
|
|
+ 'remember' => 0,
|
|
|
+ ),
|
|
|
+ 'case' => 1,
|
|
|
+ 'id' => 'type_id',
|
|
|
+ 'table' => 'pub',
|
|
|
+ 'field' => 'type_id',
|
|
|
+ 'relationship' => 'none',
|
|
|
+ 'values_form_type' => 'select',
|
|
|
+ 'multiple' => 1,
|
|
|
+ 'optional' => 0,
|
|
|
+ 'show_all' => 0,
|
|
|
+ 'agg' => array(
|
|
|
+ 'records_with' => 1,
|
|
|
+ 'aggregates_with' => 1,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ 'year' => array(
|
|
|
+ 'operator' => '=',
|
|
|
+ 'value' => '',
|
|
|
+ 'group' => '0',
|
|
|
+ 'exposed' => TRUE,
|
|
|
+ 'expose' => array(
|
|
|
+ 'use_operator' => 0,
|
|
|
+ 'operator' => 'name_op',
|
|
|
+ 'identifier' => 'name',
|
|
|
+ 'label' => 'Name Contains',
|
|
|
+ 'remember' => 0,
|
|
|
+ ),
|
|
|
+ 'case' => 0,
|
|
|
+ 'id' => 'name',
|
|
|
+ 'table' => 'pub',
|
|
|
+ 'field' => 'name',
|
|
|
+ 'relationship' => 'none',
|
|
|
+ 'values_form_type' => 'select',
|
|
|
+ 'multiple' => 1,
|
|
|
+ 'optional' => 0,
|
|
|
+ 'show_all' => 0,
|
|
|
+ 'agg' => array(
|
|
|
+ 'records_with' => 1,
|
|
|
+ 'aggregates_with' => 1,
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ ));
|
|
|
+ $handler->override_option('access', array(
|
|
|
+ 'type' => 'perm',
|
|
|
+ 'perm' => 'access chado_pub content',
|
|
|
+ ));
|
|
|
+ $handler->override_option('cache', array(
|
|
|
+ 'type' => 'none',
|
|
|
+ ));
|
|
|
+ $handler->override_option('title', 'Publications');
|
|
|
+ $handler->override_option('header', 'Click "Show" to see a list of all publications matching the entered criteria. If you leave a any of the criteria blank then the pubs will be not be filtered based on that field. Furthermore, if you leave all criteria blank then all publications will be listed.');
|
|
|
+ $handler->override_option('header_format', '2');
|
|
|
+ $handler->override_option('header_empty', 0);
|
|
|
+ $handler->override_option('empty', 'No publications match the supplied criteria.');
|
|
|
+ $handler->override_option('empty_format', '1');
|
|
|
+ $handler->override_option('items_per_page', 50);
|
|
|
+ $handler->override_option('use_pager', '1');
|
|
|
+ $handler->override_option('style_plugin', 'table');
|
|
|
+ $handler->override_option('style_options', array(
|
|
|
+ 'grouping' => '',
|
|
|
+ 'override' => 1,
|
|
|
+ 'sticky' => 0,
|
|
|
+ 'order' => 'asc',
|
|
|
+ 'columns' => array(
|
|
|
+ 'title' => 'title',
|
|
|
+ 'pyear' => 'pyear',
|
|
|
+ 'type' => 'type',
|
|
|
+ 'all_dbxref' => 'all_dbxref',
|
|
|
+ 'all_properties' => 'all_properties',
|
|
|
+ 'all_relationships' => 'all_relationships',
|
|
|
+ ),
|
|
|
+ 'info' => array(
|
|
|
+ 'title' => array(
|
|
|
+ 'sortable' => 1,
|
|
|
+ 'separator' => '',
|
|
|
+ ),
|
|
|
+ 'type' => array(
|
|
|
+ 'sortable' => 1,
|
|
|
+ 'separator' => '',
|
|
|
+ ),
|
|
|
+ 'pyear' => array(
|
|
|
+ 'sortable' => 1,
|
|
|
+ 'separator' => '',
|
|
|
+ ),
|
|
|
+ 'all_dbxref' => array(
|
|
|
+ 'separator' => '',
|
|
|
+ ),
|
|
|
+ 'all_properties' => array(
|
|
|
+ 'separator' => '',
|
|
|
+ ),
|
|
|
+ 'all_relationships' => array(
|
|
|
+ 'separator' => '',
|
|
|
+ ),
|
|
|
+ ),
|
|
|
+ 'default' => '-1',
|
|
|
+ ));
|
|
|
+ $default_handler = $handler;
|
|
|
+ $handler = $view->new_display('page', 'Page', 'page_1');
|
|
|
+ $handler->override_option('path', 'chado/pubs');
|
|
|
+ $handler->override_option('menu', array(
|
|
|
+ 'type' => 'normal',
|
|
|
+ 'title' => 'Publications',
|
|
|
+ 'description' => 'A published article, book, conference proceeding, etc.',
|
|
|
+ 'weight' => '10',
|
|
|
+ 'name' => 'navigation',
|
|
|
+ ));
|
|
|
+ $handler->override_option('tab_options', array(
|
|
|
+ 'type' => 'none',
|
|
|
+ 'title' => '',
|
|
|
+ 'description' => '',
|
|
|
+ 'weight' => 0,
|
|
|
+ 'name' => 'navigation',
|
|
|
+ ));
|
|
|
+ // Add code specific to a local chado installation
|
|
|
+ // NOTE: Edit $handler above to $default_handler for the default display
|
|
|
+ if (tripal_core_chado_schema_exists()) {
|
|
|
+ // Add nid field
|
|
|
+ $fields = $view->get_items('field', 'default');
|
|
|
+ $new_fields = array(
|
|
|
+ 'nid' => array(
|
|
|
+ 'label' => 'Nid',
|
|
|
+ 'alter' => array(
|
|
|
+ 'alter_text' => 0,
|
|
|
+ 'text' => '',
|
|
|
+ 'make_link' => 0,
|
|
|
+ 'path' => '',
|
|
|
+ 'absolute' => 0,
|
|
|
+ 'link_class' => '',
|
|
|
+ 'alt' => '',
|
|
|
+ 'rel' => '',
|
|
|
+ 'prefix' => '',
|
|
|
+ 'suffix' => '',
|
|
|
+ 'target' => '',
|
|
|
+ 'help' => '',
|
|
|
+ 'trim' => 0,
|
|
|
+ 'max_length' => '',
|
|
|
+ 'word_boundary' => 1,
|
|
|
+ 'ellipsis' => 1,
|
|
|
+ 'html' => 0,
|
|
|
+ 'strip_tags' => 0,
|
|
|
+ ),
|
|
|
+ 'empty' => '',
|
|
|
+ 'hide_empty' => 0,
|
|
|
+ 'empty_zero' => 0,
|
|
|
+ 'hide_alter_empty' => 1,
|
|
|
+ 'link_to_node' => 0,
|
|
|
+ 'exclude' => 1,
|
|
|
+ 'id' => 'nid',
|
|
|
+ 'table' => 'node',
|
|
|
+ 'field' => 'nid',
|
|
|
+ 'relationship' => 'none',
|
|
|
+ )
|
|
|
+ );
|
|
|
+ $fields = $new_fields + $fields;
|
|
|
+ // Change analysis.name to have a link to the node
|
|
|
+ $fields['name_2']['alter']['link_to_node'] = 1;
|
|
|
+ $default_handler->override_option('fields', $fields);
|
|
|
+ // Adds pub => Node relationship
|
|
|
+ $default_handler->override_option('relationships', array(
|
|
|
+ 'nid' => array(
|
|
|
+ 'label' => 'Publication to Node',
|
|
|
+ 'required' => 0,
|
|
|
+ 'id' => 'nid',
|
|
|
+ 'table' => 'chado_pub',
|
|
|
+ 'field' => 'nid',
|
|
|
+ 'relationship' => 'none',
|
|
|
+ ),
|
|
|
+ ));
|
|
|
+ // Only show records with published nodes
|
|
|
+ /**
|
|
|
+ $filters = $view->get_items('filter', 'default');
|
|
|
+ $filters['status'] = array(
|
|
|
+ 'operator' => '=',
|
|
|
+ 'value' => '1',
|
|
|
+ 'group' => '0',
|
|
|
+ 'exposed' => FALSE,
|
|
|
+ 'expose' => array(
|
|
|
+ 'operator' => FALSE,
|
|
|
+ 'label' => '',
|
|
|
+ ),
|
|
|
+ 'id' => 'status',
|
|
|
+ 'table' => 'node',
|
|
|
+ 'field' => 'status',
|
|
|
+ 'relationship' => 'none',
|
|
|
+ );
|
|
|
+ $default_handler->override_option('filters', $filters);
|
|
|
+ */
|
|
|
+ }
|
|
|
+ $views[$view->name] = $view;
|
|
|
+
|
|
|
+ return $views;
|
|
|
+}
|