1: <?php
2: 3: 4:
5: if (!defined('XOOPS_ROOT_PATH')) exit();
6: function smarty_function_message_newmessage($params, &$smarty)
7: {
8: $name = isset($params['name']) ? trim($params['name']) : 'new_messages';
9: $open = isset($params['open']) ? trim($params['open']) : 'open_message_alert';
10:
11: $new_messages = false;
12: $root = XCube_Root::getSingleton();
13: if ($root->mContext->mUser->isInRole('Site.RegisteredUser')) {
14: $modHand = xoops_getmodulehandler('inbox', 'message');
15: $new_messages = $modHand->getCountUnreadByFromUid($root->mContext->mXoopsUser->get('uid'));
16: if ( empty($_SESSION[$name]) ) {
17: $_SESSION[$name] = 0;
18: }
19: if ( $_SESSION['new_messages'] < $new_messages ) {
20: $smarty->assign($open, 1);
21: }
22: $_SESSION[$name] = $new_messages ;
23: }
24: $smarty->assign($name, $new_messages);
25: }
26: ?>
27: