function composite_views_filter_config_item_form_submit in Composite Views Filter 7
Submit handler for views_ui_config_item_form().
1 string reference to 'composite_views_filter_config_item_form_submit'
File
- ./
composite_views_filter.module, line 76
Code
function composite_views_filter_config_item_form_submit($form, &$form_state) {
$view = $form_state['view'];
$view
->set_display($form_state['display_id']);
$view
->init_handlers();
if ($composite_views_filters = _composite_views_filter_view_has_composite_filters($view)) {
$filter_id = $form_state['id'];
$group = $form_state['values']['options']['composite_views_filter_group'];
// Unset option.
foreach ($composite_views_filters as $filter_handler) {
unset($filter_handler->options['composite_views_filter']['classification'][$filter_id]);
}
// Set option.
if ($group) {
foreach ($composite_views_filters as $filter_handler) {
$groups = $filter_handler
->get_groups();
if (isset($groups[$group])) {
$filter_handler->options['composite_views_filter']['classification'][$filter_id] = $group;
break;
}
}
}
// Manual save. Not perfect, but probably the simplest way to save one handler
// in another's submit.
// @see views_ui_config_item_form_submit()
foreach ($composite_views_filters as $filter_handler) {
$view
->set_item($form_state['display_id'], $form_state['type'], $filter_handler->options['id'], $filter_handler->options);
}
views_ui_cache_set($view);
}
}