function cck_table_widget in CCK Table Field 5
Same name and namespace in other branches
- 6 cck_table.module \cck_table_widget()
Implementation of hook_widget().
File
- ./
cck_table.module, line 156 - Defines a field type that outputs data in a table.
Code
function cck_table_widget($op, &$node, $field, &$items) {
switch ($op) {
case 'form':
$form = array();
$form[$field['field_name']] = array(
'#tree' => TRUE,
);
$form[$field['field_name']][0]['value'] = array(
'#type' => 'textarea',
'#title' => t($field['widget']['label']),
'#default_value' => $items[0]['value'],
'#required' => $field['required'],
'#rows' => $field['widget']['rows'],
'#description' => t('Enter table cell data separated by |, one row per line. The first line contains the table header information.') . '<br />' . t($field['widget']['description']),
'#weight' => $field['widget']['weight'],
);
return $form;
case 'process form values':
// Don't save empty fields except the first value
foreach ($items as $delta => $item) {
if ($item['value'] == '' && $delta > 0) {
unset($items[$delta]);
}
}
break;
}
}