# =========================================================================== #
# NG CMS // Плагины // AJAX Based Чат                                         #
# =========================================================================== #

Плагин позволяет добавить WEB чат на страницах вашего сайта, при этом
обновление чата происходит с использованием технологий AJAX и JSON, что позволяет
значительно экономить трафик, передаваемый клиенту.

Основные особенности:
* Управление правилами доступа для гостей (доступ запрещен / только просмотр /
  просмотр + собственные посты)
* Управление периодом обновления чат-страницы у пользователя.
  Рекомендованное значние: обновление каждые 30 секунд
* Управление кол-вом сообщений, отображаемых в истории сообщений в чате
* Защита от флуда
* Возможность остановки обновлений чата в случае, если польвательно не оставлял
  своих сообщений в заданных период (защита от ситуации, когда пользователь открывает
  и не обновляет страницу в течении очень долгого времени, к примеру - может держать
  открытой страницу с чатом в течении суток или даже недель).
  Рекомендованное значение: 1200 секунд (т.е. 20 минут)
* Авторазделение длинных слов. Необходимо для того, чтобы дизайн чата не "плыл" при 
  написании слишком длинных слов. При активации данной функции в слишком длинные слова
  будут вставляться пробелы
* Задание максимального размера (в символах) сообщения
* Минимальный трафик: при отсутствии новых комментариев пользователь получает всего
  около 20 байт (+HTTP заголовки) информации, при наличии новых комментариев - пользователь
  получает только их
* Отображение как в боковой панели так и на собственной страничке
* Собственная страница может быть как внутри дизайна сайта, так и полностью отдельно



Отображение плагина:
--------------------------------------------------------------------
За вывод чата отвечает переменная {plugin_jchat}, которая доступна в шаблоне main.tpl
За отображение содержимого чата отвечает шаблон jchat.tpl



[ВНИМАНИЕ!]
Шаблон содержит не только дизайн-часть, но и необходимые для работы JScript'ы!
В самом шаблоне в HTML комментариях указано какие блоки можно а какие крайне 
нежелательно (если вы не осознаёте последствий изменений) менять.

Для особо интересующихся - формат строки чата определяется в шаблоне tpl/jchat.script.header.js, строки #125-139:
// **                                                                  **
// ** NOTIFICATION FOR ADMIN                                           **
// ** YOU CAN MAKE CHANGES IN THIS LINE TO CHANGE VIEW OF jChat RECORD **
// **                                                                  **
cell.innerHTML = 
	// 1. Поле для отображения даты&времени записи (со стилем float: right)
	'<div style="float: right; font-size: 75%;" title="'+rec['datetime']+'">'+rec['time']+'</div>'+
	// 2. Изображение-признак зарегистрированного пользователя, оно также является ссылкой на профиль пользователя (если включен плагин uprofile)
	((rec['author_id']>0)?('[isplugin uprofile]<a target="_blank" href="'+rec['profile_link']+'">[/isplugin]<img src="{skins_url}/images/profile.png" width="13" height="13" border="0"/>[isplugin uprofile]</a>[/isplugin] '):'')+
	// 3. Имя автора [жирным, используется специальный класс jchat_userName для автовставки имени]
	'<span class="jchat_userName">'+rec['author']+'</span>'+
	// 4. Переход на новую страницу
	'<br/> '+
	// 5. Сам текст сообщения
	rec['text'];

