function redirect_list_form_operations_submit in Redirect 7.2
Same name and namespace in other branches
- 7 redirect.admin.inc \redirect_list_form_operations_submit()
Process redirect_list_form form submissions.
Execute the chosen 'Update option' on the selected redirects.
2 string references to 'redirect_list_form_operations_submit'
- redirect_list_form in ./
redirect.admin.inc - @file Administrative page callbacks for the redirect module.
- redirect_list_form_operations_confirm_form in ./
redirect.admin.inc
File
- ./
redirect.admin.inc, line 251 - Administrative page callbacks for the redirect module.
Code
function redirect_list_form_operations_submit($form, &$form_state) {
$operations = $form['#operations'];
$operation = $operations[$form_state['values']['operation']];
// Filter out unchecked redirects
$rids = array_filter($form_state['values']['rids']);
if (!empty($operation['confirm']) && empty($form_state['values']['confirm'])) {
// We need to rebuild the form to go to a second step. For example, to
// show the confirmation form for the deletion of redirects.
$form_state['rebuild'] = TRUE;
}
else {
$function = $operation['callback'];
// Add in callback arguments if present.
if (isset($operation['callback arguments'])) {
$args = array_merge(array(
$rids,
), $operation['callback arguments']);
}
else {
$args = array(
$rids,
);
}
call_user_func_array($function, $args);
// We display the number of redirects the user selected, regardless of
// how many redirects actually changed status. Eg. if 1 enabled and 1
// disabled redirects are checked for being enabled, we'll still display
// "Enabled 1 redirect."
$count = count($form_state['values']['rids']);
watchdog('redirect', '@action @count redirects.', array(
'@action' => $operation['action_past'],
'@count' => $count,
));
drupal_set_message(format_plural(count($rids), '@action @count redirect.', '@action @count redirects.', array(
'@action' => $operation['action_past'],
'@count' => $count,
)));
}
}