/** * Returns rendered message. * * @param WiseChatMessage $message * * @return string HTML source */ public function getRenderedMessage($message) { $this->templater->setTemplateFile(WiseChatThemes::getInstance()->getMessageTemplate()); $data = array('baseDir' => $this->options->getBaseDir(), 'messageId' => $message->getId(), 'messageUser' => $message->getUserName(), 'messageChatUserId' => $message->getUserId(), 'isAuthorWpUser' => $this->usersDAO->getWpUserByID($message->getWordPressUserId()) !== null, 'isAuthorCurrentUser' => $this->authentication->getUserIdOrNull() == $message->getUserId(), 'showDeleteButton' => $this->options->isOptionEnabled('enable_message_actions') && $this->usersDAO->hasCurrentWpUserRight('delete_message'), 'showBanButton' => $this->options->isOptionEnabled('enable_message_actions') && $this->usersDAO->hasCurrentWpUserRight('ban_user'), 'messageTimeUTC' => gmdate('c', $message->getTime()), 'renderedUserName' => $this->getRenderedUserName($message), 'messageContent' => $this->getRenderedMessageContent($message), 'isTextColorSet' => $this->options->isOptionEnabled('allow_change_text_color') && $message->getUser() !== null && strlen($message->getUser()->getDataProperty('textColor')) > 0, 'textColor' => $message->getUser() !== null ? $message->getUser()->getDataProperty('textColor') : ''); return $this->templater->render($data); }
private function checkUserRight($rightName) { if (!$this->usersDAO->hasCurrentWpUserRight($rightName)) { throw new WiseChatUnauthorizedAccessException('Not enough privileges to execute this request'); } }