[ Index ]

PHP Cross Reference of Drupal 6 (yi-drupal)

title

Body

[close]

/sites/all/modules/webform/views/ -> webform.views.inc (source)

   1  <?php
   2  
   3  /**
   4   * @file
   5   * Views hooks implemented for the Webform module.
   6   */
   7  
   8  function webform_views_data() {
   9  
  10    /**
  11     * Webform table definitions.
  12     */
  13    $data['webform']['table']['group'] = t('Webform');
  14    $data['webform']['table']['join'] = array(
  15      'node' => array(
  16        'left_field' => 'nid',
  17        'field' => 'nid',
  18        'type' => 'INNER',
  19      ),
  20    );
  21  
  22    // status
  23    $data['webform']['status'] = array(
  24      'title' => t('Status'),
  25      'help' => t('The open or closed status of a webform.'),
  26      'field' => array(
  27        'handler' => 'webform_handler_field_webform_status',
  28        'click sortable' => TRUE,
  29      ),
  30      'filter' => array(
  31        'label' => t('Status'),
  32        'handler' => 'webform_handler_filter_webform_status',
  33        'type' => 'open-closed',
  34      ),
  35      'sort' => array(
  36        'handler' => 'views_handler_sort',
  37      ),
  38    );
  39  
  40    /**
  41     * Submissions table definitions.
  42     */
  43    $data['webform_submissions']['table']['group'] = t('Webform submissions');
  44    $data['webform_submissions']['table']['base'] = array(
  45      'field' => 'sid',
  46      'title' => t('Webform submissions'),
  47      'help' => t('Submissions generated from Webform forms.'),
  48    );
  49  
  50    // sid
  51    $data['webform_submissions']['sid'] = array(
  52      'title' => t('Sid'),
  53      'help' => t('The submission ID of the submission.'),
  54      'field' => array(
  55        'handler' => 'views_handler_field_numeric',
  56        'click sortable' => TRUE,
  57      ),
  58      'filter' => array(
  59        'title' => t('Sid'),
  60        'handler' => 'views_handler_filter_numeric',
  61      ),
  62      'sort' => array(
  63        'handler' => 'views_handler_sort',
  64      ),
  65      'argument' => array(
  66        'handler' => 'views_handler_argument_numeric',
  67      ),
  68    );
  69  
  70    // nid
  71    $data['webform_submissions']['nid'] = array(
  72      'title' => t('Node'),
  73      'help' => t('The webform node this submission was generated from.'),
  74      'relationship' => array(
  75        'base' => 'node',
  76        'field' => 'nid',
  77        'handler' => 'views_handler_relationship',
  78        'label' => t('Webform Node'),
  79      ),
  80    );
  81  
  82    // uid
  83    $data['webform_submissions']['uid'] = array(
  84      'title' => t('User'),
  85      'help' => t('The user who sent the webform submission.'),
  86      'relationship' => array(
  87        'base' => 'users',
  88        'field' => 'uid',
  89        'handler' => 'views_handler_relationship',
  90        'label' => t('Webform Submission User'),
  91      ),
  92    );
  93  
  94    // is_draft
  95    $data['webform_submissions']['is_draft'] = array(
  96      'title' => t('Draft'),
  97      'help' => t('Whether or not the submission is a draft.'),
  98      'field' => array(
  99        'handler' => 'webform_handler_field_is_draft',
 100        'click sortable' => TRUE,
 101      ),
 102      'filter' => array(
 103        'handler' => 'webform_handler_filter_is_draft',
 104      ),
 105      'sort' => array(
 106         'handler' => 'views_handler_sort',
 107      ),
 108    );
 109  
 110    // submitted
 111    $data['webform_submissions']['submitted'] = array(
 112      'title' => t('Submitted'),
 113      'help' => t('The date this submission was submitted.'),
 114      'field' => array(
 115        'handler' => 'views_handler_field_date',
 116        'click sortable' => TRUE,
 117      ),
 118      'filter' => array(
 119        'title' => t('Submitted'),
 120        'handler' => 'views_handler_filter_date',
 121      ),
 122      'sort' => array(
 123        'handler' => 'views_handler_sort_date',
 124      ),
 125    );
 126  
 127    // remote_addr
 128    $data['webform_submissions']['remote_addr'] = array(
 129      'title' => t('Remote address'),
 130      'help' => t('The remote IP address of the user that submitted this submission.'),
 131      'field' => array(
 132        'handler' => 'views_handler_field',
 133        'click sortable' => TRUE,
 134      ),
 135      'filter' => array(
 136        'title' => t('Remote address'),
 137        'handler' => 'views_handler_filter_string',
 138      ),
 139      'sort' => array(
 140        'handler' => 'views_handler_sort',
 141      ),
 142    );
 143  
 144    // view link
 145    $data['webform_submissions']['view_submission'] = array(
 146      'field' => array(
 147        'title' => t('View link'),
 148        'help' => t('Provide a simple link to view the submission.'),
 149        'handler' => 'webform_handler_field_submission_link',
 150        'link_type' => 'view',
 151      ),
 152    );
 153  
 154    // edit link
 155    $data['webform_submissions']['edit_submission'] = array(
 156      'field' => array(
 157        'title' => t('Edit link'),
 158        'help' => t('Provide a simple link to edit the submission.'),
 159        'handler' => 'webform_handler_field_submission_link',
 160        'link_type' => 'edit',
 161      ),
 162    );
 163  
 164    // delete link
 165    $data['webform_submissions']['delete_submission'] = array(
 166      'field' => array(
 167        'title' => t('Delete link'),
 168        'help' => t('Provide a simple link to delete the submission.'),
 169        'handler' => 'webform_handler_field_submission_link',
 170        'link_type' => 'delete',
 171      ),
 172    );
 173  
 174    return $data;
 175  }
 176  
 177  /**
 178   * Implements hook_views_data_alter().
 179   */
 180  function webform_views_data_alter(&$data) {
 181    // Webform submission from node.
 182    $data['node']['webform_submission'] = array(
 183      'title' => t('Webform submission'),
 184      'help' => t('Webform submissions of the given Webform node.'),
 185      'real field' => 'nid',
 186      'relationship' => array(
 187        'base' => 'webform_submissions',
 188        'base field' => 'nid',
 189        'handler' => 'views_handler_relationship',
 190        'label' => t('Webform Submission'),
 191      ),
 192    );
 193    $data['node']['table']['join']['webform_submissions'] = array(
 194      'field' => 'nid',
 195      'left_field' => 'nid',
 196      'left_table' => 'webform_submissions',
 197    );
 198    // Submission count (node).
 199    $data['node']['webform_submission_count_node'] = array(
 200      'group' => t('Webform'),
 201      'field' => array(
 202        'title' => t('Webform submission count'),
 203        'help' => t('The number of webform submissions on this node.'),
 204        'handler' => 'webform_handler_field_submission_count',
 205        'count_type' => 'node',
 206      ),
 207    );
 208  
 209  
 210    // Webform submission of user.
 211    $data['users']['webform_submission'] = array(
 212      'title' => t('Webform submission'),
 213      'help' => t('Webform submissions of the given user.'),
 214      'real field' => 'uid',
 215      'relationship' => array(
 216        'base' => 'webform_submissions',
 217        'base field' => 'uid',
 218        'handler' => 'views_handler_relationship',
 219        'label' => t('Webform Submission'),
 220      ),
 221    );
 222    // Submission count (user).
 223    $data['users']['webform_submission_count_user'] = array(
 224      'field' => array(
 225        'title' => t('Webform submission count'),
 226        'help' => t('The number of webform submissions for this user.'),
 227        'handler' => 'webform_handler_field_submission_count',
 228        'count_type' => 'users',
 229      ),
 230    );
 231  
 232    // Link for editing the webform.
 233    $data['node']['webform_edit'] = array(
 234      'group' => t('Webform'),
 235      'field' => array(
 236        'title' => t('Webform edit link'),
 237        'help' => t('Provide a simple link to edit the webform components and configuration.'),
 238        'handler' => 'webform_handler_field_node_link_edit',
 239      ),
 240    );
 241  
 242    // Link for viewing webform results.
 243    $data['node']['webform_results'] = array(
 244      'group' => t('Webform'),
 245      'field' => array(
 246        'title' => t('Webform results link'),
 247        'help' => t('Provide a simple link to view the results of a webform.'),
 248        'handler' => 'webform_handler_field_node_link_results',
 249      ),
 250    );
 251  
 252    // Webform form content.
 253    $data['node']['webform_form_body'] = array(
 254      'group' => t('Webform'),
 255      'field' => array(
 256        'title' => t('Webform form body'),
 257        'help' => t('The Webform form body display for this node.'),
 258        'handler' => 'webform_handler_field_form_body',
 259      ),
 260    );
 261  }
 262  
 263  /**
 264   * Implements hook_views_handlers().
 265   */
 266  function webform_views_handlers() {
 267    return array(
 268      'info' => array(
 269        'path' => drupal_get_path('module', 'webform') . '/views',
 270      ),
 271      'handlers' => array(
 272        'webform_handler_field_submission_link' => array(
 273          'parent' => 'views_handler_field',
 274          'file' => 'webform_handler_field_submission_link.inc',
 275        ),
 276        'webform_handler_field_submission_count' => array(
 277          'parent' => 'views_handler_field',
 278          'file' => 'webform_handler_field_submission_count.inc',
 279        ),
 280        'webform_handler_field_node_link_edit' => array(
 281          'parent' => 'views_handler_field_node_link',
 282        ),
 283        'webform_handler_field_node_link_results' => array(
 284          'parent' => 'views_handler_field_node_link',
 285        ),
 286        'webform_handler_field_form_body' => array(
 287          'parent' => 'views_handler_field',
 288          'file' => 'webform_handler_field_form_body.inc',
 289        ),
 290        'webform_handler_field_is_draft' => array(
 291          'parent' => 'views_handler_field',
 292          'file' => 'webform_handler_field_is_draft.inc',
 293        ),
 294        'webform_handler_filter_is_draft' => array(
 295          'parent' => 'views_handler_filter_in_operator',
 296          'file' => 'webform_handler_filter_is_draft.inc',
 297        ),
 298        'webform_handler_field_webform_status' => array(
 299          'parent' => 'views_handler_field_boolean',
 300          'file' => 'webform_handler_field_webform_status.inc',
 301        ),
 302        'webform_handler_filter_webform_status' => array(
 303          'parent' => 'views_handler_filter_boolean_operator',
 304          'file' => 'webform_handler_filter_webform_status.inc',
 305        ),
 306      ),
 307    );
 308  }


Generated: Mon Jul 9 18:01:44 2012 Cross-referenced by PHPXref 0.7