function GetMessages($threadid, $meth, $isvisitor, &$lastid, $forceShowingRates = false) { if ($forceShowingRates || $isvisitor == false && Operator::getInstance()->isCurrentUserAdmin()) { $crm = MapperFactory::getMapper('Rate'); $rates = $crm->getByThreadidWithOperator($threadid); $current_rate = array_shift($rates); } else { $current_rate = null; } $res = MapperFactory::getMapper("Message")->getListMessages($threadid, $lastid, $isvisitor); $messages = array(); foreach ($res as $msg) { $message = ""; switch ($meth) { case 'xml': if ($msg['kind'] == KIND_AVATAR) { $message = "<avatar>" . Browser::AddCdata($msg['message']) . "</avatar>"; } else { $message = "<message>" . Browser::AddCdata($this->messageToHtml($msg)) . "</message>\n"; } break; case 'text': $message = $this->messageToText($msg); break; case 'html': if ($current_rate && $current_rate['date'] < $msg['created']) { $messages[] = $this->rateToHtml($current_rate); $current_rate = array_shift($rates); } $isvisitor = verify_param("visitor", "/^true\$/", "false") == 'true'; $cleanup_special_tags = !$isvisitor; $message = $this->messageToHtml($msg, $cleanup_special_tags); break; } if (!empty($message)) { $messages[] = $message; } if ($msg['messageid'] > $lastid) { $lastid = $msg['messageid']; } } return $messages; }
static function displayAjaxError($text) { $message = Resources::Get('agent.not_logged_in'); $message = Browser::AddCdata($message); echo "<error type=\"1\"><descr>" . $message . "</descr></error>"; }