function notifications_subscriptions_filter_form in Notifications 6.4
Same name and namespace in other branches
- 6 notifications.manage.inc \notifications_subscriptions_filter_form()
- 6.2 notifications.manage.inc \notifications_subscriptions_filter_form()
- 6.3 notifications.manage.inc \notifications_subscriptions_filter_form()
Return form for node administration filters.
Parameters
$admin: Whether this is for the site admin page, will display more options
2 calls to notifications_subscriptions_filter_form()
- notifications_admin_manage_subscriptions in ./
notifications.admin.inc - Menu callback: subscriptions administration.
- notifications_manage_user_subscriptions in ./
notifications.manage.inc - Menu callback: user subscriptions management
2 string references to 'notifications_subscriptions_filter_form'
- notifications_admin_manage_subscriptions in ./
notifications.admin.inc - Menu callback: subscriptions administration.
- notifications_manage_user_subscriptions in ./
notifications.manage.inc - Menu callback: user subscriptions management
File
- ./
notifications.manage.inc, line 442 - Common functions for bulk management of subscriptions
Code
function notifications_subscriptions_filter_form($admin = FALSE) {
$session =& $_SESSION['subscriptions_overview_filter'];
$session = is_array($session) ? $session : array();
$filters = notifications_subscriptions_filters($admin);
$i = 0;
$form['filters'] = array(
'#type' => 'fieldset',
'#title' => t('Show only items where'),
'#theme' => 'node_filters',
);
$form['#submit'][] = 'notifications_subscriptions_filter_form_submit';
foreach ($session as $filter) {
list($type, $value) = $filter;
$value = $filters[$type]['options'][$value];
$form['filters']['current'][] = array(
'#value' => t('<strong>%a</strong> is <strong>%b</strong>', array(
'%a' => $filters[$type]['title'],
'%b' => $value,
)),
);
}
foreach ($filters as $key => $filter) {
$names[$key] = $filter['title'];
$form['filters']['status'][$key] = array(
'#type' => 'select',
'#options' => $filter['options'],
);
}
$form['filters']['filter'] = array(
'#type' => 'radios',
'#options' => $names,
'#default_value' => 'status',
);
$form['filters']['buttons']['submit'] = array(
'#type' => 'submit',
'#value' => count($session) ? t('Refine') : t('Filter'),
);
if (count($session)) {
$form['filters']['buttons']['undo'] = array(
'#type' => 'submit',
'#value' => t('Undo'),
);
$form['filters']['buttons']['reset'] = array(
'#type' => 'submit',
'#value' => t('Reset'),
);
}
drupal_add_js('misc/form.js', 'core');
return $form;
}