[ Index ]

PHP Cross Reference of Drupal 6 (yi-drupal)

title

Body

[close]

/sites/all/modules/nodeformsettings/ -> cckformsettings.module (source)

   1  <?php
   2  // $Id$
   3  
   4  /**
   5   * Implementation of hook_form_alter()
   6   * 
   7   */
   8  function cckformsettings_form_alter(&$form, $form_state, $form_id) {
   9      if ($form_id == 'content_field_edit_form') {
  10          if ($form['#field']['type'] == 'text' && $form['#field']['widget']['type'] == 'text_textarea'){
  11              cckformsettings_admin_form($form);
  12              $form['field']['text_processing']['#weight'] = 1;
  13              $form['field']['text_processing']['#prefix'] = '<div class="cckformsettings-radios">';
  14              $form['field']['text_processing']['#suffix'] = '</div>';
  15              $form['field']['max_length']['#weight'] = 3;
  16              $form['field']['allowed_values_fieldset']['#weight'] = 4;
  17              
  18              drupal_add_js(drupal_get_path('module', 'cckformsettings') .'/cckformsettings.js');
  19              $text_processing = $form['field']['text_processing']['#default_value'];
  20              if($text_processing = 1) {
  21                  $css_class .= 'cckformsettings-show';
  22              }
  23              else {
  24                  $css_class = 'js-hide';
  25              }
  26              $form['field']['cckformsettings_inputformat']['#prefix'] = '<div class="' . $css_class . '">';
  27              $form['field']['cckformsettings_inputformat']['#suffix'] = '</div>';    
  28          }
  29      }    
  30  }
  31  
  32  function cckformsettings_widget_form(&$form, $form_state) {
  33      $node_type = $form['#field']['type_name'];
  34      $field_name = $form['#field']['field_name'];
  35  }
  36  
  37  function _cckformsettings_textprocessing_status(&$form, $form_state) {
  38      return $form['field']['text_processing']['#default_value'];
  39  }
  40  
  41  function cckformsettings_admin_form(&$form) {    
  42      $form['field']['cckformsettings_inputformat'] = array(
  43          '#title' => t("Input Form Fieldset"),
  44          '#type' => 'radios',
  45          '#options' => array('1' => t("Enabled"), '0' => t("Disabled")),
  46          '#default_value' => _cckformsettings_get_default_value($form['widget']['#value'], $form['field_name']['#value'], '1'),
  47          '#weight' => 2,
  48      );
  49      
  50      $form['#submit'][] = 'cckformsettings_submit';
  51  }
  52  
  53  function cckformsettings_submit($form_id, &$form_state) {
  54      $field = content_fields($form_state['values']['field_name'], $form_state['values']['type_name']);
  55      $type = $field['type_name'];
  56      $field_name = $field['field_name'];
  57      
  58      variable_set('cckformsettings_inputformat_' . $type . '_' . $field_name, $form_state['values']['cckformsettings_inputformat']);
  59  }
  60  
  61  function _cckformsettings_get_default_value($type_name, $field_name, $value) {
  62    $field = content_fields($field_name, $type_name);
  63      $type = $field['type_name'];
  64      $field_name = $field['field_name'];
  65      
  66      return variable_get('cckformsettings_inputformat_' . $type . '_' . $field_name, $form_state['values']['cckformsettings_inputformat']);
  67  }
  68  
  69  function cckformsettings_elements() {
  70      return array(
  71          'text_textarea' => array(
  72              '#process' => array('cckformsettings_text_process'),
  73          )
  74      );
  75  }
  76  
  77  function cckformsettings_text_process($element, $edit, $form_state, $form) {
  78      $field = $form['#field_info'][$element['#field_name']];
  79      $field_name = $form['#field_info'][$element['#field_name']]['field_name'];
  80      $type = $form['#field_info'][$element['#field_name']]['type_name'];
  81      
  82      if (!empty($field['text_processing'])) {
  83          $filter_key  = (count($element['#columns']) == 2) ? $element['#columns'][1] : 'format';
  84          $format = isset($element['#value'][$filter_key]) ? $element['#value'][$filter_key] : FILTER_FORMAT_DEFAULT;
  85          $parents = array_merge($element['#parents'] , array($filter_key));
  86          
  87          if (variable_get('cckformsettings_inputformat_' . $type . '_' . $field_name, '') == 1) {
  88              $element[$filter_key] = filter_form($format, 1, $parents);
  89          }
  90          else {
  91              $element[$filter_key] = '';
  92          }
  93    }
  94      
  95      return $element;
  96  }


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