function viewreference_autocomplete_process in View reference 6.3
Same name and namespace in other branches
- 6 viewreference.module \viewreference_autocomplete_process()
- 6.2 viewreference.module \viewreference_autocomplete_process()
- 7.3 viewreference.module \viewreference_autocomplete_process()
Process an individual element.
Build the form element. When creating a form using FAPI #process, note that $element['#value'] is already set.
1 string reference to 'viewreference_autocomplete_process'
- viewreference_elements in ./
viewreference.module - Implementation of FAPI hook_elements().
File
- ./
viewreference.module, line 530 - Defines a field type for referencing a view from a node.
Code
function viewreference_autocomplete_process($element, $edit, $form_state, $form) {
$field = $form['#field_info'][$element['#field_name']];
$element[$element['#columns'][0]] = array(
'#type' => 'text_textfield',
'#default_value' => isset($element['#value']) ? $element['#value'] : '',
'#autocomplete_path' => 'viewreference/autocomplete/' . $element['#field_name'],
'#element_validate' => array(
'viewreference_autocomplete_validate',
),
'#prefix' => t('<div class="viewreference-wrapper" id="viewreference-!field_id">', array(
"!field_id" => str_replace('_', '-', $element['#field_name']) . '-' . $element['#delta'],
)),
// localized for customisations
// The following values were set by the content module and need
// to be passed down to the nested element.
'#field_name' => $element['#field_name'],
'#delta' => $element['#delta'],
'#columns' => $element['#columns'],
'#title' => $element['#title'],
'#required' => $element['#required'],
'#description' => $element['#description'],
);
if ($field['dsv_arguments'] == 1 || $field['php_arguments'] == 1) {
if ($field['rows'] == 1) {
$args_widget = 'textfield';
}
else {
$args_widget = 'textarea';
}
$element[$element['#columns'][1]] = array(
'#type' => $args_widget,
'#default_value' => isset($element['#value'][$element['#columns'][1]]) ? $element['#value'][$element['#columns'][1]] : '',
'#element_validate' => array(
'viewreference_arguments_validate',
),
'#title' => $element['#title'] . ' ' . t('arguments'),
'#suffix' => t('</div>'),
'#rows' => $field['rows'],
// The following values were set by the content module and need
// to be passed down to the nested element.
'#field_name' => $element['#field_name'] . t(" arguments"),
'#delta' => $element['#delta'],
'#columns' => $element['#columns'],
'#required' => $element['#required'],
'#description' => $element['#description'],
);
}
else {
$element[$element['#columns'][0]]['#suffix'] = t('</div>');
}
return $element;
}