function oa_core_og_group_ref_views_handler_filter_entityreference_autocomplete::value_form in Open Atrium Core 7.2
File
- plugins/
views/ oa_core_og_group_ref_views_handler_filter_entityreference_autocomplete.inc, line 24 - Code to override field to add in auto option.
Class
- oa_core_og_group_ref_views_handler_filter_entityreference_autocomplete
- @file Code to override field to add in auto option.
Code
function value_form(&$form, &$form_state) {
$saved_value = $this->value;
$this->value = array();
parent::value_form($form, $form_state);
$field = field_info_field('og_group_ref');
$value_key = key($field['columns']);
// Below is mocking what og/select2widget does so it thinks this is a
// select2 element.
$type = 'select2widgetajax';
$required = !empty($form['value']['#required']);
$instance = _oa_core_get_og_group_ref_mocked_field_instance();
$settings = $instance['widget']['settings'];
$id = 'NULL';
$admin_form = !empty($form_state['form_id']) && $form_state['form_id'] == 'views_ui_config_item_form';
$autocomplete_path = ($admin_form ? 'oacoreselect2widgetpanes' : 'oacoreselect2widget') . '/ajax/' . $field['field_name'] . '/' . $instance['entity_type'] . '/' . $instance['bundle'] . '/' . $id . '?field_mode=all';
if (variable_get('oa_core_group_reference_default_current', TRUE)) {
$entity_labels = is_string($saved_value) ? _oa_core_select2widget_process_entity_labels($saved_value) : array();
$default_value = $saved_value == OA_SPACE_CURRENT ? OA_SPACE_CURRENT : implode(', ', $entity_labels);
}
else {
$default_value = _oa_core_select2widget_all_label();
}
$form['value'] = array(
'#type' => 'textfield',
'#default_value' => $default_value,
'#autocomplete_path' => $autocomplete_path,
'#element_validate' => array(
'oa_core_select2widget_entity_validate_field',
),
'#settings' => $instance['widget']['settings'],
'#process' => array(
'oa_core_exposed_og_group_ref_fix_cardinality',
'select2widget_entity_process_callback',
'ajax_process_form',
),
'#maxlength' => 1024,
'#init' => $entity_labels,
'#field_name' => 'og_group_ref',
'#language' => LANGUAGE_NONE,
'#bundle' => $instance['bundle'],
'#entity_type' => 'node',
'#field' => $field,
'#field_parents' => array(),
'#convert_empty_to_current' => variable_get('oa_core_group_reference_default_current', TRUE),
'#oa_core_select2_set_value' => TRUE,
) + $form['value'];
$form['value']['#settings']['select2widgetajax']['min_char'] = 0;
$form_state['field'][$form['value']['#field_name']][$form['value']['#language']]['field'] = $field;
}