function viewreference_autocomplete_process in View reference 7.3
Same name and namespace in other branches
- 6.3 viewreference.module \viewreference_autocomplete_process()
- 6 viewreference.module \viewreference_autocomplete_process()
- 6.2 viewreference.module \viewreference_autocomplete_process()
Process callback for a viewreference_autocomplete element.
See also
1 string reference to 'viewreference_autocomplete_process'
- viewreference_element_info in ./
viewreference.module - Implements hook_element_info().
File
- ./
viewreference.module, line 1059 - Defines a field type for referencing a view from a node.
Code
function viewreference_autocomplete_process($element, $form_state, $form) {
$field_parents = $element['#field_parents'];
$field_name = $element['#field_name'];
$language = $element['#language'];
$field_state = field_form_get_state($field_parents, $field_name, $language, $form_state);
$field = $field_state['field'];
$instance = $field_state['instance'];
$bundle = $instance['bundle'];
$settings = $field['settings'];
$element[$element['#columns'][0]] = array(
'#type' => 'textfield',
'#default_value' => isset($element['#value'][$element['#columns'][0]]) ? $element['#value'][$element['#columns'][0]] : '',
'#autocomplete_path' => 'viewreference/autocomplete/' . $bundle . '/' . $field_name,
'#element_validate' => array(
'viewreference_autocomplete_validate',
),
'#field_name' => $field_name,
'#field_parents' => $field_parents,
'#language' => $language,
'#delta' => $element['#delta'],
'#columns' => $element['#columns'],
'#title' => $element['#title'],
'#required' => $element['#required'],
'#description' => isset($element['#description']) ? $element['#description'] : '',
);
if ($settings['arguments']['dsv_arguments'] || $settings['arguments']['php_arguments']) {
$element[$element['#columns'][1]] = array(
'#type' => $settings['arguments']['rows'] == 1 ? 'textfield' : 'textarea',
'#default_value' => isset($element['#value'][$element['#columns'][1]]) ? $element['#value'][$element['#columns'][1]] : '',
'#title' => $instance['label'] . ' ' . t('arguments'),
'#rows' => $settings['arguments']['rows'],
'#delta' => $element['#delta'],
'#columns' => $element['#columns'],
'#required' => $element['#required'],
'#description' => isset($element['#description']) ? $element['#description'] : '',
);
}
return $element;
}