function notifications_notifications_templates in Notifications 7
Same name and namespace in other branches
- 6.4 includes/templates.inc \notifications_notifications_templates()
Implementation of hook_notifications_templates()
File
- includes/
templates.inc, line 121 - Notifications templates
Code
function notifications_notifications_templates($op = 'info', $type = 'all', $language = NULL) {
switch ($op) {
case 'info':
$info = array();
// Generic notifications event
if ($type == 'all' || $type == 'notifications-event') {
$info['notifications-event'] = array(
'module' => 'notifications',
'name' => t('Notifications event'),
'description' => t('Common parts for all Notifications messages for a single event. This is useful for defining a common header and/or footer for all these messages.'),
'fallback' => FALSE,
);
}
if ($type == 'digest' || $type == 'notifications-digest') {
$info['notifications-digest'] = array(
'module' => 'notifications',
'name' => t('Notifications digest'),
'description' => t('Depending on your settings for each Send interval, Notifications may be digested, this is grouped and summarized in a single message. These are the common parts for Notifications digests.'),
'fallback' => FALSE,
);
}
return $info;
case 'parts':
switch ($type) {
case 'notifications-event':
case 'notifications-message':
case 'notifications-user-unsubscribe':
case 'notifications-destination-unsubscribe':
// Event notifications
return array(
'subject' => t('Subject'),
'header' => t('Header'),
'main' => t('Content'),
'footer' => t('Footer'),
);
case 'notifications-digest':
return array(
'subject' => t('Subject'),
'header' => t('Header'),
'main' => t('Line for digested events'),
'closing' => t('Group closing'),
'footer' => t('Footer'),
);
}
break;
case 'defaults':
switch ($type) {
// Event notifications
case 'notifications-event':
return array(
'subject' => t('Event notification for [user] from [site-name]', array(), $language->language),
'header' => t("Greetings [user],", array(), $language->language),
'main' => t("A item to which you are subscribed has been updated", array(), $language->language),
'footer' => array(
t('This is an automatic message from [site-name]', array(), $language->language),
t('To manage your subscriptions, browse to [subscriptions-manage]', array(), $language->language),
t('You can unsubscribe at [unsubscribe-url]', array(), $language->language),
),
);
case 'notifications-message':
return array(
'subject' => t('This is a message for [user] from [site-name]', array(), $language->language),
'header' => t("Greetings [user],", array(), $language->language),
'footer' => array(
t('This is an automatic message from [site-name]', array(), $language->language),
),
);
// Digested messages
case 'notifications-digest':
return array(
'subject' => t('[site-name] subscription update for [user]', array(), $language->language),
'header' => t("Greetings, [user].\n\nThese are your messages", array(), $language->language),
'main' => t("A [type] has been updated: [title]\n\n[event_list]", array(), $language->language),
'closing' => '...',
'footer' => array(
t('This is an automatic message from [site-name]', array(), $language->language),
t('To manage your subscriptions, browse to [subscriptions-manage]', array(), $language->language),
),
);
case 'notifications-user-unsubscribe':
return array(
'subject' => t('Cancel all subscriptions to [site-name]', array(), $language->language),
'header' => t("Greetings [user],\n\nSomeone has requested to cancel all subscriptions for your account.", array(), $language->language),
'main' => array(
t("To cancel all your subscriptions, browse to [unsubscribe-url-global]", array(), $language->language),
t('To edit your subscriptions, browse to [subscriptions-manage]', array(), $language->language),
),
);
case 'notifications-destination-unsubscribe':
return array(
'subject' => t('Cancel all subscriptions to [site-name]', array(), $language->language),
'header' => t("Greetings from [site-name]\n\nSomeone has requested to cancel all subscriptions for [destination-address]", array(), $language->language),
'main' => array(
t("To cancel all your subscriptions, browse to [destination-unsubscribe-url]", array(), $language->language),
t('To edit your subscriptions, browse to [destination-manage-url]', array(), $language->language),
),
);
}
break;
case 'tokens':
$args = explode('-', $type);
$tokens = array();
switch ($type) {
case 'notifications-user-unsubscribe':
// This one has all of the following two plus 'user'
$tokens[] = 'user';
case 'notifications-destination-unsubscribe':
case 'notifications-message':
$tokens[] = 'destination';
break;
default:
// These are the token groups that will be used for this module's messages
if ($args[0] == 'notifications') {
$tokens = array(
'subscription',
'user',
);
if ($args[1] == 'event') {
// If the template is for a single event, it can use event tokens
$tokens[] = 'event';
}
elseif ($args[1] == 'digest') {
// Template for multiple events, can use events (note the plural) tokens
$tokens[] = 'events';
}
}
}
return $tokens;
}
}