Projet

Général

Profil

Paste
Télécharger (1,31 ko) Statistiques
| Branche: | Révision:

root / drupal7 / sites / all / modules / webform / views / webform_handler_field_webform_status.inc @ 651307cd

1
<?php
2

    
3
/**
4
 * @file
5
 * Views handler to display the open or closed status of a webform.
6
 */
7
class webform_handler_field_webform_status extends views_handler_field_boolean {
8

    
9
  function options_form(&$form, &$form_state) {
10
    parent::options_form($form, $form_state);
11
    $form['type']['#options'] = array('open-closed' => t('Open/Closed')) + $form['type']['#options'];
12
  }
13

    
14
  function option_definition() {
15
    $options = parent::option_definition();
16
    $options['type']['default'] = 'open-closed';
17
    return $options;
18
  }
19

    
20
  function render($values) {
21
    $value = $values->{$this->field_alias};
22
    if (!empty($this->options['not'])) {
23
      $value = !$value;
24
    }
25
    switch ($this->options['type']) {
26
      case 'yes-no':
27
        return $value ? t('Yes') : t('No');
28
      case 'true-false':
29
        return $value ? t('True') : t('False');
30
      case 'unicode-yes-no':
31
        return $value ? t('✔') : t('✖');
32
      case 'enabled-disabled':
33
        return $value ? t('Enabled') : t('Disabled');
34
      case 'boolean':
35
        return $value ? 1 : 0;
36
      case 'on-off':
37
        return $value ? t('On') : t('Off');
38
      case 'custom':
39
        return $value ? $this->options['type_custom_true'] : $this->options['type_custom_false'];
40
      case 'open-closed':
41
      default:
42
        return $value ? t('Open') : t('Closed');
43
    }
44
  }
45
}