ExBB Community » Файловый ExBB » Модификации и дополнения » Мод: Чат на форуме (Beta)

Страниц (17): В начало « ... 6 7 8 9 [10] 11 12 13 14 ... » В конец
 

136. yura3d - 15 июля 2009 — 21:08 - перейти к сообщению
shyuser
На Вашем форуме, помимо чата, не работают и другие Ajax-функции (на главной странице рядом с названием последней темы есть ссылки-стрелки для быстрого просмотра первого и последнего сообщения темы, при нажатии тоже выводится undefined). Проблема либо в хостинге (если реклама вставляется хостером на Ваши страницы автоматически), либо в работе библиотеки Ajax форума
137. shyuser - 15 июля 2009 — 21:14 - перейти к сообщению
yura3d
Рекламу внизу каждой страницы сайта вставляет хостер.
Как можно проверить настройки Ajax форума?
У меня при загрузке главной страницы форума идёт долгая передача данных с top1.mail.ru... и видно безрезультатно. Почему-то на форуме нет рекламы внизу?
В php я чайник, про Ajax только слышал. Поэтому может со временем с новыми версиями решится проблема или я со временем хостинг поменяю.
Форум ExBB мне понравился. Выбрал, т.к. на "моём" хостинге нет баз данных.
Спасибо!
138. electron - 16 июля 2009 — 05:51 - перейти к сообщению
yura3d пишет:
Проблема либо в хостинге (если реклама вставляется хостером на Ваши страницы автоматически)

у чата с этой строкой проблем нет. по крайней мере о каких пишет shyuser. я опробовал форум с чатом на двух разных хостах с подобной строкой и еще на одном бесплатном без строки с графической рекламой хостера на каждой странице - чат везде работает нормально. проблема явно в другом
139. yura3d - 16 июля 2009 — 10:01 - перейти к сообщению
electron пишет:
yura3d пишет:
Проблема либо в хостинге (если реклама вставляется хостером на Ваши страницы автоматически)

у чата с этой строкой проблем нет. по крайней мере о каких пишет shyuser. я опробовал форум с чатом на двух разных хостах с подобной строкой и еще на одном бесплатном без строки с графической рекламой хостера на каждой странице - чат везде работает нормально. проблема явно в другом

Многое зависит от хостера. Некоторые (которых сейчас уже большинство) подходят к вопросам автоматической вставки рекламы профессионально, и не лепят её во всё что под руку попадёт, включая Ajax-запросы. Ничего конкретного про fatal.ru сказать не могу, т.к. ни разу не пользовался их услугами

shyuser пишет:
Как можно проверить настройки Ajax форума?

Откройте файл javascript/hints.js, найдите строку:
CODE:
function processMessage(data, text) {if (data.error == 1) {hideHint();alert(data.errortext);}else if ((data.topic==currentTopic)&&(data.forum==currentForum)) {document.getElementById('HintsBlock').innerHTML=data.divtext;resizeHinter();}}

И замените её строкой:
CODE:
function processMessage(data, text) {if (data.error == 1) {hideHint();alert(text);}else if ((data.topic==currentTopic)&&(data.forum==currentForum)) {document.getElementById('HintsBlock').innerHTML=data.divtext;resizeHinter();}}

Теперь при клике на ссылки-стрелки для просмотра первого или последнего сообщений последней в разделе темы, при наличии ошибок на стороне бакэнда Ajax-библиотеки, будут выводиться сообщения об этих ошибках, что позволит более глубже исследовать проблему

Borman пишет:
В связи с этим есть маленький вопросик, а нельзя где нибудь на форуме "прикрутить" хотябы кто сидит в чате, ибо уже какой никакой информер будет.
Если это конечно возможно сделать

Возможно. Сейчас занят, но чуть позже подумаю над реализацией подобного информера
140. Borman - 16 июля 2009 — 11:50 - перейти к сообщению
yura3d пишет:
но чуть позже подумаю над реализацией подобного информера
С нетерпением буду ждать, ибо такой информер как раз может снять вопрос о выводе чата на главную страницу. Думаю это будет не в ущерб скорости загрузки форума.
Думаю многие поддержат эту идею!!!
141. shyuser - 16 июля 2009 — 15:29 - перейти к сообщению
yura3d
Заменил. Теперь выводится пустое окно.
142. yura3d - 16 июля 2009 — 22:06 - перейти к сообщению
shyuser
Это значит, что по каким-то причинам не работает бакэнд Ajax-библиотеки форума. Что-то конкретное сказать сложно, попробуйте запустить форум на локальном сервере и протестировать работу чата на нём
143. shyuser - 17 июля 2009 — 08:23 - перейти к сообщению
На локальном сервере (Denwer) тоже-самое. Права доступа проверил. Может чего не докачал или недоустановил?
144. yura3d - 17 июля 2009 — 08:54 - перейти к сообщению
shyuser
При установке форума на локальном сервере с нуля проблема сохраняется?

Попробуйте перезакачать папки include и javascript, а также файл jsloader.php, возможно, при закачке по FTP некоторые файлы могли побиться
145. shyuser - 17 июля 2009 — 09:12 - перейти к сообщению
yura3d пишет:
shyuser
При установке форума на локальном сервере с нуля проблема сохраняется?

Попробуйте перезакачать папки include и javascript, а также файл jsloader.php, возможно, при закачке по FTP некоторые файлы могли побиться

Спасибо. Проблема была в jsloader.php. Заменил его с архива и стрелки стали работать. Потом сделал изменение для чата и чат заработал. Улыбка
146. yura3d - 20 июля 2009 — 15:47 - перейти к сообщению
Наконец-то дошли руки до информера чата! Улыбка
Рабочий вариант уже можно посмотреть на главной странице этого форума Хорошо
147. Defenderyk - 20 июля 2009 — 16:38 - перейти к сообщению
прикольно.

но может еще опционально сделать вывод последних сообщений на форуме, например последние 3-5
148. yura3d - 20 июля 2009 — 17:10 - перейти к сообщению
Defenderyk пишет:
прикольно.

но может еще опционально сделать вывод последних сообщений на форуме, например последние 3-5

Можно и так сделать, посмотрим что другие на это скажут

Andr1y и electron в чате на нашем форуме высказались за идею отображения кол-ва сидящих в чате в скобках рядом со ссылкой входа в чат (шапка форума). Поэтому давайте решать, какой вариант будет наиболее удобным, предлагайте Ваши идеи
149. electron - 20 июля 2009 — 17:29 - перейти к сообщению
повторюсь : если можно - озвучьте оба вида (как есть ща и цифрой около ссылки чата), а народ уж пусть выбирает как им по душе
150. yura3d - 20 июля 2009 — 17:55 - перейти к сообщению
Решил выложить первую версию информера для чата (с выводом кол-ва и списка сидящих в чате на главной странице форума). Пример этого информера Вы можете сейчас видеть на нашем форуме. Для установки необходимо проделать следующие изменения
Откройте файл 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:
LOGINS;

И сразу за ней разместите строки:
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:
?>

И над ней разместите строки:
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

Яндекс.Метрика   

Powered by ExBB
[Script Execution time: 0.0566]     [ ]