Решил выложить первую версию информера для чата (с выводом кол-ва и списка сидящих в чате на главной странице форума). Пример этого информера Вы можете сейчас видеть на нашем форуме. Для установки необходимо проделать следующие изменения
Откройте файл language/russian/lang_front_all.php, найдите строку:
CODE:$this->LANG['Chat'] = 'Чат на форуме';
И сразу за ней вставьте строки:
CODE:$this->LANG['ChatEmpty'] = 'В чате никого нет';
$this->LANG['ChatNow'] = 'Сейчас в чате:';
$this->LANG['ChatOnline'] = 'Кто именно?';
$this->LANG['ChatUpdate'] = 'Обновить список';
$this->LANG['ChatWait'] = 'Подождите, загружаются данные чата...';
Далее откройте файл index.php, найдите строки:
CODE:/* ДЕНЬ РОЖДЕНИЯ */
include ('modules/birstday/birst.php');
И сразу за ними вставьте строки:
CODE:// Chat Informer for ExBB FM 1.0 RC2 by yura3d (http://www.exbb.org/)
if ($fm->exbb['chat'])
$fm->_Link .= "\n".'<script type="text/javascript" language="JavaScript">
<!--'."
var ChatLang = {
ChatEmpty: '{$fm->LANG['ChatEmpty']}',
ChatNow: '{$fm->LANG['ChatNow']}',
ChatOnline: '{$fm->LANG['ChatOnline']}',
ChatUpdate: '{$fm->LANG['ChatUpdate']}',
ChatWait: '{$fm->LANG['ChatWait']}'
};
//-->
</script>";
Теперь откройте файл templates/ваш_скин/board_body.tpl, найдите строку:
И сразу за ней разместите строки:
CODE:/*
Chat informer
*/
$chat_informer = '';
if ($fm->exbb['chat'])
$chat_informer = <<<DATA
<div align="center" id="chat_informer"><br /><br /></div>
<script language="JavaScript" src="modules/chat/javascript/informer.js"></script>
DATA;
Теперь в этом же файле найдите строки:
CODE:/*
Board body
*/
echo <<<DATA
<br/>
<table border="0" width="100%" cellpadding="0" cellspacing="0">
И разместите информер (переменная {$chat_informer}):
CODE:/*
Board body
*/
echo <<<DATA
<br/>{$chat_informer}
<table border="0" width="100%" cellpadding="0" cellspacing="0">
Далее откройте файл modules/chat/backend.php, найдите строки:
CODE:require_once('modules/chat/common.php');
if (!$fm->user['id']) die;
И удалите из этого фрагмента строку:
CODE:if (!$fm->user['id']) die;
Далее в этом же файле найдите строки:
CODE: case 'send': send();
break;
И разместите за ними строки:
CODE: case 'informer': informer();
break;
И, наконец, в этом же файле найдите последнюю строку:
И над ней разместите строки:
CODE:function informer() {
global $fm;
$online = $fm->_Read(CHAT_ONLINE);
$now = 0;
$show_online = array();
foreach ($online as $id => $user)
if ($fm->_Nowtime - $user['time'] <= 30) {
$now++;
$show_online[] = '<a href="profile.php?action=show&member='.$id.'"'.status_class($user['st']).'>'.$user['name'].'</a>';
}
$GLOBALS['_RESULT'] = array(
'error' => 0,
'now' => $now,
'online' => implode(', ', $show_online)
);
}
Осталось только скачать файл informer.js (прикреплён к этому сообщению) и закачать его к себе на форум в папку modules/chat/javascript |