source: sipes/modules_contrib/revisioning/views/revisioning.views.inc @ 3514c84

stableversion-3.0
Last change on this file since 3514c84 was 177a560, checked in by José Gregorio Puentes <jpuentes@…>, 8 años ago

se agrego el directorio de modulos contribuidos de drupal

  • Propiedad mode establecida a 100644
File size: 4.4 KB
Línea 
1<?php
2
3/**
4 * @file
5 *  Declare new node and node_revisions fields and filters.
6 */
7
8/**
9 * Implementation of hook_views_data().
10 *
11 * Ommitted, we're altering existing groups, not creating a new one.
12 *
13function revisioning_views_data() {
14}
15 */
16
17/**
18 * Implementation of hook_views_data_alter().
19 *
20 * We define a pseudo-field 'state' (values: pending, current, archived) for
21 * both node and node_revisions tables.
22 */
23function revisioning_views_data_alter(&$data) {
24
25    $data['node']['last_editor'] = array(
26    'title' => t('Last edited by'),
27    'help' => t('The name of the user who last edited this content.'),
28    'field' => array(
29      'handler' => 'revisioning_handler_field_node_last_editor',
30      'click sortable' => TRUE
31    ),
32/*  See WhoWhatWhen for sort ideas
33    'filter' => array(
34      'handler' => 'revisioning_handler_filter_node_last_editor',
35    ),
36    'sort' => array(
37      'handler' => 'revisioning_handler_sort_node_last_editor',
38    ),*/
39  );
40  $data['node']['state'] = array(
41    'title' => t('State'),
42    'help' => t('One of: pending, current, archived'),
43    'field' => array(
44      'handler' => 'revisioning_handler_field_node_state',
45      'click sortable' => TRUE,
46    ),
47    'filter' => array(
48      'handler' => 'revisioning_handler_filter_node_state',
49    )
50    // Cannot support sort as 'state' cannot be expressed as ORDER BY clause
51  );
52  $data['node']['number_of_revisions'] = array(
53    'title' => t('Revisions'),
54    'help' => t('Number of revisions.'),
55    'field' => array(
56      'handler' => 'revisioning_handler_field_node_number_of_revisions',
57      'click sortable' => TRUE,
58    ),
59    'filter' => array(
60      'handler' => 'revisioning_handler_filter_node_number_of_revisions',
61    ),
62    // Cannot support sort as 'number of revisions' cannot be expressed as ORDER BY clause
63  );
64  $data['node']['revision_moderation'] = array(
65    'title' => t('Revision moderation'),
66    'help' => t('Whether the node is subject to revision moderation.'),
67    'field' => array(
68      'handler' => 'revisioning_handler_field_node_revision_moderation',
69      'click sortable' => TRUE,
70    ),
71    'filter' => array(
72      'handler' => 'revisioning_handler_filter_node_revision_moderation',
73    ),
74    // Cannot support sort as this flag cannot be expressed as ORDER BY clause
75  );
76  $data['node_revisions']['latest'] = array(
77    'title' => t('Latest revision'),
78    'help' => t('Include only the most recent revision of a node.'),
79    'filter' => array(
80      'handler' => 'revisioning_handler_filter_revision_latest',
81    )
82    // Cannot support sort as 'latest' cannot be expressed as ORDER BY clause
83  );
84  $data['node_revisions']['title']['help'] = t('The title of the revision.');
85  $data['node_revisions']['state'] = array(
86    'title' => t('State'),
87    'help' => t('One of: pending, current, archived'),
88    'field' => array(
89      'handler' => 'revisioning_handler_field_revision_state',
90      'click sortable' => TRUE,
91    ),
92    'filter' => array(
93      'handler' => 'revisioning_handler_filter_revision_state',
94    )
95    // Cannot support sort as 'state' cannot be expressed as ORDER BY clause
96  );
97}
98
99/**
100 * Implementation of hook_views_handlers().
101 *
102 * Register all of the handlers (fields and filters) used in Revisioning views.
103 */
104function revisioning_views_handlers() {
105  return array(
106    'info' => array(
107      'path' => drupal_get_path('module', 'revisioning') .'/views',
108    ),
109    'handlers' => array(
110      'revisioning_handler_field_node_state' => array('parent' => 'views_handler_field'),
111      'revisioning_handler_field_node_last_editor' => array('parent' => 'views_handler_field'),
112      'revisioning_handler_field_revision_state' => array('parent' => 'views_handler_field'),
113      'revisioning_handler_field_node_number_of_revisions' => array('parent' => 'views_handler_field'),
114      'revisioning_handler_field_node_revision_moderation' => array('parent' => 'views_handler_field'),
115      'revisioning_handler_filter_node_state' => array('parent' => 'views_handler_filter_in_operator'),
116      'revisioning_handler_filter_node_number_of_revisions' => array('parent' => 'views_handler_filter_numeric'),
117      'revisioning_handler_filter_node_revision_moderation' => array('parent' => 'views_handler_filter_in_operator'),
118      'revisioning_handler_filter_revision_state' => array('parent' => 'views_handler_filter_in_operator'),
119      'revisioning_handler_filter_revision_latest' => array('parent' => 'views_handler_filter_boolean_operator'),
120    )
121  );
122}
Nota: Vea TracBrowser para ayuda de uso del navegador del repositorio.