function oa_core_form_views_content_views_panes_content_type_edit_form_alter in Open Atrium Core 7.2
Implements hook_form_FORM_ID_alter().
File
- ./
oa_core.module, line 1169
Code
function oa_core_form_views_content_views_panes_content_type_edit_form_alter(&$form, &$form_state, $form_id) {
$conf = $form_state['conf'];
$pane = $form_state['pane'];
// Add in the Active options
// @todo be a bit smarter on this, check type of field.
$group = oa_core_get_space_context();
if (isset($form['exposed']['filter-oa_parent_space_target_id']['oa_parent_space_target_id'])) {
$form['exposed']['filter-oa_parent_space_target_id']['oa_parent_space_target_id']['#options'] = array(
'' => t('- Active Group -'),
) + $form['exposed']['filter-oa_parent_space_target_id']['oa_parent_space_target_id']['#options'];
if (!isset($pane->configuration['exposed']['oa_parent_space_target_id'])) {
$pane->configuration['exposed']['oa_parent_space_target_id'] = '';
}
}
if (isset($form['exposed']['filter-og_group_ref_target_id']['og_group_ref_target_id'])) {
if (!isset($pane->configuration['exposed']['og_group_ref_target_id'])) {
$pane->configuration['exposed']['og_group_ref_target_id'] = '';
}
$form['exposed']['filter-og_group_ref_target_id']['og_group_ref_target_id_mine'] = array(
'#title' => t('Limit to groups of current user'),
'#type' => 'checkbox',
'#default_value' => !empty($conf['exposed']['og_group_ref_target_id_mine']),
'#parents' => array(
'exposed',
'og_group_ref_target_id_mine',
),
);
// Replace autocomplete path to one that returns Current Space as an option.
if (isset($form['exposed']['filter-og_group_ref_target_id']['og_group_ref_target_id']['#autocomplete_path'])) {
$form['exposed']['filter-og_group_ref_target_id']['og_group_ref_target_id']['#autocomplete_path'] = str_replace('oacoreselect2widget', 'oacoreselect2widgetpanes', $form['exposed']['filter-og_group_ref_target_id']['og_group_ref_target_id']['#autocomplete_path']);
$form['exposed']['filter-og_group_ref_target_id']['og_group_ref_target_id']['#oa_core_in_pane_config'] = TRUE;
}
$form['exposed']['filter-og_group_ref_target_id']['og_group_ref_target_id']['#states'] = array(
'visible' => array(
':input[name="exposed[og_group_ref_target_id_mine]"]' => array(
'checked' => FALSE,
),
),
);
$form['exposed']['filter-og_group_ref_target_id']['og_group_ref_target_id']['#after_build'][] = 'oa_core_adjust_og_group_ref_for_select2';
}
if (isset($form['exposed']['filter-oa_section_ref_target_id']['oa_section_ref_target_id'])) {
// Add a process that change ajax path so can return multiple changes.
if (isset($form['exposed']['filter-og_group_ref_target_id']['og_group_ref_target_id'])) {
$form['buttons']['#process'] = array(
'oa_core_form_views_content_views_panes_content_type_edit_process',
'form_process_actions',
'form_process_container',
);
}
// Refresh the sections with currently selected group if not currently active group but not empty.
if (!empty($pane->configuration['exposed']['og_group_ref_target_id']) && !isset($_POST['exposed']['og_group_ref_target_id']) && $pane->configuration['exposed']['og_group_ref_target_id'] != $group && is_numeric($pane->configuration['exposed']['og_group_ref_target_id'])) {
_oa_sections_get_current_selected_space(NULL, $pane->configuration['exposed']['og_group_ref_target_id']);
}
$form['exposed']['filter-oa_section_ref_target_id']['oa_section_ref_target_id']['#after_build'][] = 'oa_core_refresh_section_values';
$form['exposed']['filter-oa_section_ref_target_id']['oa_section_ref_target_id']['#options'] = array(
'' => t('- Active Section -'),
) + $form['exposed']['filter-oa_section_ref_target_id']['oa_section_ref_target_id']['#options'];
if (!isset($pane->configuration['exposed']['oa_section_ref_target_id'])) {
$pane->configuration['exposed']['oa_section_ref_target_id'] = '';
}
}
if (!empty($form['exposed']['filter-uid'])) {
$form['exposed']['filter-uid']['oa_core_default_to_current_user'] = array(
'#type' => 'checkbox',
'#title' => t('Default to current user'),
'#parents' => array(
'exposed',
'oa_core_default_to_current_user',
),
'#default_value' => !empty($conf['exposed']['oa_core_default_to_current_user']),
);
$form['exposed']['filter-uid']['uid']['#states'] = array(
'visible' => array(
':input[name="exposed[oa_core_default_to_current_user]"]' => array(
'checked' => FALSE,
),
),
);
}
// Set exposed form to be disabled at first.
if (isset($form['show_exposed_form'])) {
$form['show_exposed_form']['#default_value'] = isset($form_state['conf']['show_exposed_form']) ? $form_state['conf']['show_exposed_form'] : FALSE;
$form['display_settings']['show_exposed_form'] = $form['show_exposed_form'];
$form['display_settings']['show_exposed_form']['#weight'] = 10;
unset($form['show_exposed_form']);
if (!isset($pane->configuration['show_exposed_form'])) {
$pane->configuration['show_exposed_form'] = FALSE;
}
}
}