1: <?php
2: 3: 4: 5:
6:
7: if (!defined('XOOPS_ROOT_PATH')) exit();
8: class Message_Block extends Legacy_BlockProcedure
9: {
10: public function __construct(&$block)
11: {
12: parent::Legacy_BlockProcedure($block);
13: }
14:
15: public function prepare()
16: {
17: }
18:
19: public function getTitle()
20: {
21: return _MI_MESSAGE_NAME;
22: }
23:
24: public function isDisplay()
25: {
26: $root = XCube_Root::getSingleton();
27: return $root->mContext->mUser->isInRole('Site.RegisteredUser');
28: }
29:
30: public function execute()
31: {
32: $root = XCube_Root::getSingleton();
33: $root->mLanguageManager->loadModinfoMessageCatalog(basename(dirname(dirname(__FILE__))));
34: $root->mLanguageManager->loadModuleMessageCatalog(basename(dirname(dirname(__FILE__))));
35:
36: $render = $this->getRenderTarget();
37: $render->setTemplateName($this->_mBlock->get('template'));
38: $render->setAttribute('mid', $this->_mBlock->get('mid'));
39: $render->setAttribute('bid', $this->_mBlock->get('bid'));
40:
41: $service = $root->mServiceManager->getService('privateMessage');
42: $uid = $root->mContext->mXoopsUser->get('uid');
43: if ($service != null) {
44: $client = $root->mServiceManager->createClient($service);
45: $render->setAttribute('block', $client->call('getCountUnreadPM', array('uid' => $uid)));
46: }
47:
48: if ($root->mServiceManager->getService('UserSearch') != null ) {
49: $render->setAttribute('UserSearch', true);
50: }
51:
52: $modHand = xoops_getmodulehandler('inbox', 'message');
53: $render->setAttribute('incount', $modHand->getInboxCount($uid));
54:
55: $modHand = xoops_getmodulehandler('outbox', 'message');
56: $render->setAttribute('outcount', $modHand->getOutboxCount($uid));
57: $render->setAttribute('message_url', XOOPS_URL.'/modules/message/index.php');
58: $renderSystem = $root->getRenderSystem($this->getRenderSystemName());
59: $renderSystem->renderBlock($render);
60: }
61: }
62: ?>
63: