function purr_messages_status_messages in Purr Messages 7
Same name and namespace in other branches
- 8.2 purr_messages.module \purr_messages_status_messages()
- 6.2 purr_messages.module \purr_messages_status_messages()
- 6 purr_messages.module \purr_messages_status_messages()
- 7.2 purr_messages.module \purr_messages_status_messages()
Checks options and determines which type of message to return to the theme layer.
Parameters
$variables: Array containing theme variables.
Return value
A string containing a formatted message, either purr or original style.
1 string reference to 'purr_messages_status_messages'
- purr_messages_theme_registry_alter in ./
purr_messages.module - Implements hook_theme_registry_alter().
File
- ./
purr_messages.module, line 140 - Purr Messages A jQuery based override of Drupal's core message system
Code
function purr_messages_status_messages($variables) {
$display = $variables['display'];
$output = '';
$purr = NULL;
foreach (drupal_get_messages($display) as $type => $messages) {
if (user_access('view purr messages') && variable_get('purr_enabled', TRUE) == TRUE) {
if (variable_get('purr_messages_admin_path', FALSE) && path_is_admin(substr(request_uri(), 1))) {
$output .= theme('original_status_messages', array(
'type' => $type,
'messages' => $messages,
));
}
else {
if (variable_get('purr_messages_explicit', FALSE)) {
if ($type == 'purr') {
$purr[] = _purr_messages_purr($type, $messages);
}
else {
$output .= theme('original_status_messages', array(
'type' => $type,
'messages' => $messages,
));
}
}
else {
if (_purr_messages_devel_check($messages)) {
$output .= theme('original_status_messages', array(
'type' => $type,
'messages' => $messages,
));
}
else {
$purr[] = _purr_messages_purr($type, $messages);
}
}
}
}
else {
// Return the message using the original theme function.
$output .= theme('original_status_messages', array(
'type' => $type,
'messages' => $messages,
));
}
}
$module_path = drupal_get_path('module', 'purr_messages');
$custom_css = purr_messages_status($themelayer = TRUE);
$custom_css ? drupal_add_css($custom_css) : drupal_add_css($module_path . '/purrcss/purr.css');
if ($purr) {
drupal_add_js($module_path . '/js/jquery.purr.js');
$output .= "<script type=\"text/javascript\">";
$output .= "(function (\$) {\nDrupal.behaviors.purr_messages = {\n \n attach: function(context) {\n var notice = ";
foreach ($purr as $purr_message) {
$script[] = $purr_message['script'];
}
$output .= implode(' + ', $script);
// Gets the settings if they've been set, otherwise use some defaults.
$output .= variable_get('purr_messages_code', _purr_messages_defaults());
// Finish off the script.
$output .= "}\n};\n})(jQuery);</script>\n";
$output .= "<noscript>\n";
foreach ($purr as $purr_message) {
$output .= $purr_message['noscript'];
}
$output .= "</noscript>\n";
}
return $output;
}