function spam_filter_custom_admin_settings_submit in Spam 6
Perform bulk operations on the filters.
File
- filters/
spam_filter_custom/ spam_filter_custom.module, line 425 - Custom spam filter module Copyright(c) 2007-2009 Jeremy Andrews <jeremy@tag1consulting.com>.
Code
function spam_filter_custom_admin_settings_submit($form, &$form_state) {
if (is_array($form_state['values']['spam_filter_custom'])) {
foreach ($form_state['values']['spam_filter_custom'] as $cid => $selected) {
if ($selected) {
$process[] = $cid;
}
}
}
if (!empty($process)) {
foreach (module_invoke_all('spam_filter_custom_operations') as $operation => $op) {
$options[$operation] = $op;
}
$operation = $form_state['values']['operation'];
if (isset($options[$operation])) {
$function = $options[$operation]['callback'];
$arguments = $options[$operation]['callback arguments'];
//TODO: Why is order different than spam.module, and why 1 at a time?
foreach ($process as $cid) {
call_user_func_array($function, array_merge($arguments, array(
$cid,
)));
}
}
}
}