function globallink_entity_dashboard_filter_form_submit in GlobalLink Connect for Drupal 7.6
Same name and namespace in other branches
- 7.7 globallink_entity/globallink_entity_send.inc \globallink_entity_dashboard_filter_form_submit()
- 7.5 globallink_entity/globallink_entity_send.inc \globallink_entity_dashboard_filter_form_submit()
Handles submission of filter form.
File
- globallink_entity/
globallink_entity_send.inc, line 362
Code
function globallink_entity_dashboard_filter_form_submit($form, &$form_state) {
module_load_include('inc', 'globallink', 'globallink');
$op = $form_state['values']['op'];
$filters = globallink_build_filters(FALSE);
switch ($op) {
case t('Filter'):
case t('Refine'):
// Apply every filter that has a choice selected other than 'any'.
foreach ($filters as $filter => $options) {
switch ($filter) {
case 'modified-after':
if (isset($form_state['values'][$filter]) && $form_state['values'][$filter] != '') {
list($month, $day, $year) = explode('/', $form_state['values'][$filter]);
$time_stamp = mktime(0, 0, 0, $month, $day, $year);
$_SESSION['globallink_entity_filter'][$filter] = array(
$filter,
$time_stamp,
);
}
break;
case 'modified':
if (isset($form_state['values'][$filter]) && $form_state['values'][$filter] != '') {
$_SESSION['globallink_entity_filter'][$filter] = array(
$filter,
$form_state['values'][$filter],
);
}
break;
case 'title':
if (isset($form_state['values'][$filter]) && $form_state['values'][$filter] != '') {
$_SESSION['globallink_entity_filter'][$filter] = array(
$filter,
$form_state['values'][$filter],
);
}
break;
case 'node_parent':
if (isset($form_state['values']['node_parent']) && $form_state['values']['node_parent'] != '') {
$_SESSION['globallink_entity_filter']['node_parent'] = array(
'node_parent',
$form_state['values']['node_parent'],
);
}
break;
default:
if ($filter == 'language_name') {
$_SESSION['globallink_entity_source_locale'] = $form_state['values'][$filter];
}
if (isset($form_state['values'][$filter]) && $form_state['values'][$filter] != '[any]') {
// Merge an array of arrays into one if necessary.
$options = $filter == 'type' ? form_options_flatten($filters[$filter]['options']) : $filters[$filter]['options'];
// Only accept valid selections offered on the dropdown, block bad input.
if (isset($options[$form_state['values'][$filter]])) {
if ($filter == 'status') {
$_SESSION['globallink_entity_filter'][$filter] = array(
$filter,
$form_state['values'][$filter],
);
}
else {
if (!isset($_SESSION['globallink_entity_filter'][$filter])) {
$_SESSION['globallink_entity_filter'][$filter] = array(
$filter,
$form_state['values'][$filter],
);
}
}
}
}
}
}
break;
case t('Undo'):
array_pop($_SESSION['globallink_entity_filter']);
break;
case t('Reset'):
$_SESSION['globallink_entity_source_locale'] = '';
$_SESSION['globallink_entity_filter'] = array();
break;
case t('Update'):
return;
}
$form_state['redirect'] = 'admin/globallink-translations/dashboard/entity';
return;
}