File size: 4.16Kb
<?php
require 'inc/system.php';
/* Получаем данные с сервера */
$contentEncode = $server->getContent ();
$content = json_decode ($contentEncode);
if (!$content)
{
/* Сервер не ответил */
/* Читаем данные из кеша */
$content = json_decode ($cache->readCache ());
if (!empty ($_POST['msg']))
echo "<font color='grey'>Возможно Ваше сообщение не отправилось</font><br />";
}
elseif (isset ($content->serverMsg) && $content->serverMsg == 'no_result')
{
/* Сервер ответил, но не дал новых данных */
/* Читаем данные из кеша */
$content = json_decode ($cache->readCache ());
}
else
{
/* Сервер ответил, все круто )) */
/* Записываем в кеш */
$cache->writeCache ($contentEncode);
}
/* Выводим ошибки */
if (!empty ($content->error))
{
echo "<div class='".DIV_ERROR."'>".$content->error."</div>";
if (!empty ($content->foot))
$server->readContent ($content->foot);
require 'inc/end.php';
exit ();
}
/* Выводим сообщения */
if (!empty ($content->msg))
echo "<div class='".DIV_MSG."'>".$content->msg."</div>";
if (!empty ($content->clientNewVersion) && $content->clientNewVersion !== $chat->clientVersion)
echo "<div class='".DIV_MSG."'>GlobalChat<br />
Поздравляем! Вышла новая модернизированная версия скрипта GlobalChat<br />
<a href='http://globalscripts.ru/'>Скачать новую версию клиента</a></div>";
if (empty ($_GET['room']))
{
$server->readContent ($content->head);
/* Выводим список комнат */
echo $chat->readRooms ($content->rooms);
}
else
{
if (is_web_browser ())
{
?>
<script type="text/javascript" src="inc/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
var status = 1;
// звуковое уведомление
function sound(){
$('body').append('<object><embed src="inc/sound.swf" autostart="1" width="0" height="0" type="application/x-flashplayer"></embed></object>')
}
// проверяем текущее действие пользователя
function autoupdate(updatestatus)
{
status = updatestatus;
}
// перезагружаем страницу, если есть новые сообщения
$(document).ready(setInterval(function () {
$.ajax(
{
url: 'check_new_msgs.php',
type: 'GET',
data:
{
'last_msg_time': '<?php echo $content->lastMsgTime; ?>',
'room': '<?php echo $chat->room; ?>'
},
dataType: 'text',
success: function (result)
{
if (result == '1' && status == '1')
{
location.replace('<?php echo "?room=$chat->room&sound=1&update_mode=2"; ?>');
}
}
});
}, 3000));
<?php
if (isset ($_GET['sound']))
echo "sound();";
?>
</script>
<?php
}
else
{
?>
<script type="text/javascript">
function autoupdate(updatestatus)
{
}
</script>
<?php
}
/* Выводим форму ввода */
if (!empty ($_GET['answer']))
$_GET['update_mode'] = 2;
if (isset ($_GET['update_mode']))
{
if ($_GET['update_mode'] == 1)
$_SESSION['update_mode'] = 1;
else
$_SESSION['update_mode'] = 0;
}
if (empty ($_SESSION['update_mode']))
echo $chat->formMsg ();
/* Выводим навигацию */
echo "<div class='".DIV_NAVIGATION."'>".$chat->navigation ().'</div>';
$server->readContent ($content->head);
if (empty ($_GET['module']))
{
/* Выводим список сообщений */
echo $chat->readMsgs ($content->msgs);
/* Выводим листинг */
echo pagination ('?room='.(int) $chat->room.'&', $content->pages, (int) $chat->page);
}
else
{
if ($_GET['module'] == 'smiles')
{
/* Выводим смайлы */
require 'inc/smiles.list.php';
}
elseif ($_GET['module'] == 'bbcodes')
{
/* Выводим BB-коды */
require 'inc/bbcodes.list.php';
}
}
}
$server->readContent ($content->foot);
require 'inc/end.php';