/** * View a message * * @param object $database Database * @param string $option Name of the component * @param object $member Current member * @param integer $mid Message ID * @return string */ public function message($database, $option, $member, $mid) { $xmessage = Hubzero\Message\Message::oneOrFail($mid); $recipient = Hubzero\Message\Recipient::oneByMessageAndUser($mid, $member->get('id')); if (substr($xmessage->get('component'), 0, 4) == 'com_') { $xmessage->set('component', substr($xmessage->get('component'), 4)); } if (User::get('id') == $member->get('id')) { if (!$recipient->markAsRead()) { $this->setError($recipient->getError()); } } $view = $this->view('message', 'default')->set('option', $option)->set('member', $member)->set('xmr', $recipient)->set('xmessage', $xmessage)->setErrors($this->getErrors()); return $view->loadTemplate(); }
/** * Show a message * * @return string */ protected function _view() { //get the message id $message = Request::getVar('msg', '', 'get'); //if there is no message id show all sent messages if (!$message) { return $this->_sent(); } //insantiate db $database = App::get('db'); // Load the message and parse it $xmessage = Hubzero\Message\Message::oneOrFail($message); if (substr($xmessage->get('component'), 0, 4) == 'com_') { $xmessage->set('component', substr($xmessage->get('component'), 4)); } // Instantiate the view $view = $this->view('default', 'message'); // Pass the view some info $view->option = $this->_option; $view->group = $this->group; $view->authorized = $this->authorized; $view->xmessage = $xmessage; $view->no_html = Request::getInt('no_html', 0); foreach ($this->getErrors() as $error) { $view->setError($error); } // Return the output return $view->loadTemplate(); }