function notifications_object_options_fieldset in Notifications 6.4
Build fieldset with subscription options
2 calls to notifications_object_options_fieldset()
- notifications_object_options_form in includes/
object.inc - Form for object (node, user, term...) subscriptions
- notifications_object_options_subform in includes/
object.inc - Subform with subscription options so it can be reused for a fieldset on a bigger form
File
- includes/
object.inc, line 522 - Notifications object and fields
Code
function notifications_object_options_fieldset($subscriptions, $title = FALSE) {
$elements = array(
'#tree' => TRUE,
);
// Process all options building the array of indexed params for each
$options = $params = $defaults = array();
$index = 1;
// Index to map checkboxes to subscriptions
$number = 0;
// Number of active subscriptions
foreach ($subscriptions as $subscription) {
$options[$index] = $subscription
->get_name();
$params[$index] = $subscription;
// Check wether user is subscribed
if ($subscription
->is_instance()) {
$defaults[] = $index;
$number++;
}
$index++;
}
$elements['params'] = array(
'#type' => 'value',
'#value' => $params,
);
$elements['options'] = array(
'#type' => 'checkboxes',
'#default_value' => $defaults,
'#options' => $options,
);
if ($title) {
$elements['#title'] = t('Subscriptions (@number)', array(
'@number' => $number,
));
}
return $elements;
}