Вот и готова вторая, детально протестированная, продуманная и проработанная версия ApoChat 2.0
Огромное спасибо выражаю следующим людям: leonP4, Арман, Angry, Vovchik, Enrek, Fang, Tamik, iLonz
Именно эти люди придумывали идеи, а я их разрабатывал. Также эти люди безустанно тестировали каждый этап разработки и за это им низкий поклон! Спасибо, парни!
Список возможностей:
1) Антифлуд для группы пользователи
2) Премодерация сообщений пользователей с удобным управлением сообщениями(!)
3) Подсветка своих сообщений и сообщений, оставленных вам. Также всплывает уведомление с ником того, кто оставил сообщение и уведомлением, если это сообщение оставлено Вам (!)
4) Быстрое редактирование сообщений пользователей в модальном окне (!)
5) Новое оригинальное оформление чата
6) Смайлы и ВВ коды в модальном окне
7) Включение панели онлайн пользователей
8) Возможность отправки сообщений по ENTER (Выбор запоминается на cookie)
9) Быстрая проверка новых сообщений (ЛС) с темами и с удобной подгрузкой управления ими
10) Возможность отключения (отдельно) звуков отправки и звуков новых сообщений (Выбор запоминается на cookie)
11) Подгрузка мини-профилей пользователей
12) Удобная выезжающая панель дополнений (Положение запоминается на cookie)
13) Автообновление чата каждые 20 секунд
14) Все функции выполняются на ajax запросах без перехода на другие страницы
Приступим к установке:
1.a) Настроим права групп пользователей для мини-чата по скриншоту:
1.b) Мини-чат -- Настройка модуля. Настройте всё по скриншоту:
2) На персональной странице пользователя в самый верх:
Code
<span style="display:none;">
<div id="loader">
<span id="ava"><a title="Клик для перехода в профиль" href="/index/8-$_USER_ID$" target="_blank"><?if($_AVATAR$)?>$_AVATAR$<?else?><img src="/images/noavatar.png" border="0"><?endif?></a></span> [<?if($_STATUS$)?>$_STATUS$<?else?><font color="green">Olnine</font><?endif?>]
<b>Группа:</b> $_GROUP_NAME$<br><br>
<?if($_NAME$)?><b>Имя:</b> $_NAME$<br><?endif?>
<b>Добавлено файлов:</b> <a href="$_LOAD_ACTIVITY_URL$" target="_blank">$_LOAD_ENTRIES$</a><br>
<b>Оставлено комментариев:</b> $_COM_ENTRIES$<br>
<b>Последний раз был на сайте:</b><br>$_LOG_TIME$
</div>
<div id="onu">$ONLINE_USERS_LIST$</div>
</span>
3) В Виде материалов замените всё на:
Code
<div class="cBlock" style="padding:0 4px 5px 2px;margin-bottom:3px;">
<?if($CUSTOM1$="moder")?>
<div class="nmop2" id="nmop2">
<?else?>
<div class="nmop" id="nmop">
<?endif?>
<div style="float:right;font-size:8px;" title="$DATE$">$TIME$</div>
<div style="text-align:left;">
<?if($USERNAME$)?><img title="Клик для просмотра мини-профиля" id="prof" md="$USER_ID$" src="http://s36.ucoz.net/img/icon/profile.png" width="13" border="0" style="vertical-align:-2px" /> <?endif?>
<span class="dert" title="$NAME$,">
<a id="user" href="javascript:void('Apply to')" onclick="parent.window.document.getElementById('mchatMsgF').focus(); parent.window.document.getElementById('mchatMsgF').value+='[i]$NAME$[/i], ';return false;"><b id="name">$NAME$ </b></a>
<img id="edm" title="Редактирование сообщения" src="/apo/edmes.png" width="12px" border="0" style="vertical-align:-2px;display:none;" /> <span id="thmes"style="display:none;">$MESSAGE$</span></span>
<?if($EMAIL$)?> <a href="$EMAIL_JS$" title="$STR_EMAIL$">E</a><?endif?>
<?if($SITE$)?> <a rel="nofollow" href="$SITE$" target="_blank" title="$STR_URL$">W</a><?endif?>
</div>
<div class="cMessage" style="text-align:left;"><?if($CUSTOM1$="moder")?>$MESSAGE$<?else?><?if($CUSTOM1$="no-moder")?><img src="/apo/attent.png" width="20px" /> <font title="Сообщение заблокировано в связи с нарушением правил сайта<?if($CUSTOM2$)?> °°° $CUSTOM2$ °°°<?endif?>" color="red"><b>Заблокировано модератором</b></font><?else?><img src="/apo/attent2.png" width="20px" /> <font title="Сообщение будет доступно лишь после проверки модератором" color="orange"><b>Сообщение на модерации</b></font><?endif?><?endif?>
<span style="display:none;">
<?if($CUSTOM1$)?><br>$STR_CUSTOM1$: $CUSTOM1$<?endif?>
<?if($CUSTOM2$)?><br>$STR_CUSTOM2$: $CUSTOM2$<?endif?>
</span>
</div>
<?ifnot($CUSTOM1$="moder")?>
</div>
<?endif?>
</div>
4) В форме добавления сообщений мини-чата замените всё на:
Code
<?ifnot($USER_LOGGED_IN$)?><div align="center"><?if($LOGIN_LINK$)?><a href="$LOGIN_LINK$">Для добавления необходима авторизация</a><?else?>Доступ запрещен<?endif?></div><?else?>
<table border="0" cellpadding="1" cellspacing="1" width="100%">
<tr><td>$FLD_AUTOUPD$</td>
<td width="70%" align="right">
<a href="$RELOAD_URI$" title="Обновить"><img alt="" border="0" align="absmiddle" src="http://s36.ucoz.net/img/fr/mcr.gif" width="13" height="15"></a>
<?if($SMILES_URI$)?> <a href="$SMILES_URI$" title="Вставить смайл"><img alt="" border="0" align="absmiddle" src="http://s36.ucoz.net/img/fr/mcs.gif" width="13" height="15"></a><?endif?>
<?if($BBCODES_URI$)?> <a href="$BBCODES_URI$" title="BB-Коды"><img alt="" border="0" align="absmiddle" src="http://s36.ucoz.net/img/fr/mcb.gif" width="13" height="15"></a><?endif?>
<?if($MSGCTRL_URI$)?> <a href="$MSGCTRL_URI$" title="Управление сообщениями"><img alt="" border="0" align="absmiddle" src="http://s36.ucoz.net/img/fr/mcm.gif" width="15" height="15"></a><?endif?>
</td></tr></table>
<?if(!$USER_LOGGED_IN$)?>
<table style="display:none;" border="0" cellpadding="1" cellspacing="1" width="100%">
<tr><td colspan="2">$FLD_NAME$</td></tr>
<tr><td width="50%">$FLD_EMAIL$</td><td>$FLD_URL$</td></tr>
</table>
<?endif?>
<?if($FLD_CUSTOM1$ || $FLD_CUSTOM2$)?>
<table border="0" cellpadding="1" cellspacing="1" width="100%">
<tr><td width="50%">$FLD_CUSTOM1$</td><td>$FLD_CUSTOM2$</td></tr>
</table>
<?endif?>
<?if($FLD_SECURE$)?>
<table border="0" cellpadding="1" cellspacing="1" width="100%">
<tr><td width="50%">$FLD_SECURE$</td><td align="right">$IMG_SECURE$</td></tr>
</table>
<?endif?>
<table border="0" cellpadding="1" cellspacing="1" width="100%">
<tr><td width="95%" rowspan="2">$FLD_MESSAGE$</td>
<td align="center" valign="top"><div style="font-size:10px;">$LENGTH_COUNTER$</div></td>
</tr><tr><td align="center" valign="bottom">
<input type="image" src="/apo/bOK.png" value="OK" class="mchat" id="mchatBtn" style="width:30px;">
<img alt="" style="display:none;" id="mchatAjax" src="http://s36.ucoz.net/img/fr/ajax3.gif" border="0" width="16">
</td></tr></table>
<div id="setter">
<div class="setall">
<table>
<tr>
<td valign="top" width="25px"><img src="/apo/bpm.png" width="25px" title="Проверить личные сообщения" id="pmnshow" /></td>
<td width="25px"><img src="/apo/bmuzkey.png" width="25px" title="Отключить звуки отправки сообщений" id="muzickey" /></td>
<td width="25px"><img src="/apo/bmuznpm.png" width="25px" title="отключить звуки получения сообщений" id="muzicnpm" /></td>
<td valign="top" width="25px"><img src="/apo/benter.png" width="25px" title="Отправка сообщений через ENTER" id="entr" /></td>
</tr>
</table>
</div>
</div>
<?endif?>
5) Замените $CHAT_BOX$ (Обычно находится в глобальном блоке) на: