source: sipes/modules_contrib/date/date/date.views_convert.inc @ ca33cb0

stableversion-3.0
Last change on this file since ca33cb0 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 100755
File size: 3.7 KB
Línea 
1<?php
2
3/**
4 * Implementation of hook_views_convert().
5 */
6function date_views_convert($display, $type, &$view, $field, $id = NULL) {
7  static $date_fields;
8  if (!isset($date_fields)) {
9    $date_fields = array();
10    $content_types = content_types();
11    foreach ($content_types as $content_type) {
12      foreach ($content_type['fields'] as $content_field) {
13        if ($content_field['module'] == 'date') {
14          $date_fields["$content_field[field_name]_value_default"] = 'default';
15          $date_fields["$content_field[field_name]_value_year"] = 'year';
16          $date_fields["$content_field[field_name]_value_month"] = 'month';
17          $date_fields["$content_field[field_name]_value_day"] = 'day';
18          $date_fields["$content_field[field_name]_value_to|default"] = 'to|default';
19          $date_fields["$content_field[field_name]_value_to|year"] = 'to|year';
20          $date_fields["$content_field[field_name]_value_to|month"] = 'to|month';
21          $date_fields["$content_field[field_name]_value_to|day"] = 'to|day';
22        }
23      }
24    }
25  }
26  switch ($type) {
27    case 'filter':
28      if (isset($date_fields[$field['field']])) {
29        $item = $view->get_item($display, 'filter', $id);
30        switch ($date_fields[$field['field']]) {
31          case 'default':
32            $field_name = drupal_substr($field['field'], 0, -14);
33            $item['date_fields'] = array('node_data_'. $field_name .'.'. $field_name .'_value');
34            $item['granularity'] = 'second';
35            break;
36          case 'year':
37            $field_name = drupal_substr($field['field'], 0, -11);
38            $item['date_fields'] = array('node_data_'. $field_name .'.'. $field_name .'_value');
39            $item['granularity'] = 'year';
40            break;
41          case 'month':
42            $field_name = drupal_substr($field['field'], 0, -12);
43            $item['date_fields'] = array('node_data_'. $field_name .'.'. $field_name .'_value');
44            $item['granularity'] = 'month';
45            break;
46          case 'day':
47            $field_name = drupal_substr($field['field'], 0, -10);
48            $item['date_fields'] = array('node_data_'. $field_name .'.'. $field_name .'_value');
49            $item['granularity'] = 'day';
50            break;
51          case 'to|default':
52            $field_name = drupal_substr($field['field'], 0, -17);
53            $item['date_fields'] = array('node_data_'. $field_name .'.'. $field_name .'_value2');
54            $item['granularity'] = 'second';
55            break;
56          case 'to|year':
57            $field_name = drupal_substr($field['field'], 0, -14);
58            $item['date_fields'] = array('node_data_'. $field_name .'.'. $field_name .'_value2');
59            $item['granularity'] = 'year';
60            break;
61          case 'to|month':
62            $field_name = drupal_substr($field['field'], 0, -15);
63            $item['date_fields'] = array('node_data_'. $field_name .'.'. $field_name .'_value2');
64            $item['granularity'] = 'month';
65            break;
66          case 'to|day':
67            $field_name = drupal_substr($field['field'], 0, -13);
68            $item['date_fields'] = array('node_data_'. $field_name .'.'. $field_name .'_value2');
69            $item['granularity'] = 'day';
70            break;
71        }
72        $item['table'] = 'node';
73        $item['field'] = 'date_filter';
74        $item['form_type'] = 'date_text';
75        $item['operator'] = $field['operator'] == '<>' ? '!=' : $field['operator'];
76        if ($field['value'] == 'now' || $field['options'] == 'now') {
77          $item['default_date'] = 'now';
78        }
79        else {
80          $item['value'] = $field['value'];
81          $item['default_date'] = $field['options'];
82        }
83        $view->set_item($display, 'filter', $id, $item);
84      }
85      break;
86  }
87}
Nota: Vea TracBrowser para ayuda de uso del navegador del repositorio.