You are here

function cck_list_process in CCK List 6

1 string reference to 'cck_list_process'
cck_list_elements in ./cck_list.module
Implementation of FAPI hook_elements().

File

./cck_list.module, line 267
Defines a field type that outputs data in a list.

Code

function cck_list_process($element, $edit, $form_state, $form) {
  $field = $form['#field_info'][$element['#field_name']];
  $field_key = $element['#columns'][0];
  if (!empty($element['#description'])) {
    $description = t($element['#description']);
  }
  else {
    $description = t('Enter list data, one row per line. ' . 'To nest a list item add a hypen to the beginning. ' . 'To nest list item N times, add N hypens to the beginning of the line.');
  }
  $element[$field_key] = array(
    '#type' => 'textarea',
    '#default_value' => isset($element['#value'][$field_key]) ? $element['#value'][$field_key] : NULL,
    '#rows' => !empty($field['widget']['rows']) ? $field['widget']['rows'] : 5,
    '#weight' => 0,
    '#description' => $description,
    // The following values were set by the content module and need
    // to be passed down to the nested element.
    '#title' => $element['#title'],
    '#required' => $element['#required'],
    '#field_name' => $element['#field_name'],
    '#type_name' => $element['#type_name'],
    '#delta' => $element['#delta'],
    '#columns' => $element['#columns'],
  );

  // Used so that hook_field('validate') knows where to flag an error.
  $element['_error_element'] = array(
    '#type' => 'value',
    '#value' => implode('][', array_merge($element['#parents'], array(
      $field_key,
    ))),
  );
  return $element;
}