Центр пользователя  |  Ваши сообщения  |  FAQ
Форум поддержки phpBB » phpBB 3.0.x » Модификация phpBB 3.0.x » Моды каталога

AJAX Chat

Обсуждение и поддержка модов, размещённых в каталоге
Пожалуйста, помните, что существуют: Поиск, Правила форума
Возможно, ответ на Ваш вопрос уже имеется: Документация, Статьи, Накопленный опыт
Полезные материалы по этой теме: Инструкция по установке модов

Сообщение 21 янв 2009, 21:34

Название мода: AJAX Chat
Версия мода: 2.0.0B8
Автор: Handyman
Язык: Русский
Сложность установки: Низкая
Длительность установки: 3 мин.
Сборка форума с этим модом: Перейти

Описание:
Чат на AJAX. Администратор может удалять сообщения. Отображается список пользователей, общающихся в чате.

Страница в каталоге модов: Перейти
Раздел каталога модов: Перейти
Размер архива: 37 Kb
mod_robot
Активный участник
 
Сообщений: 60
Зарегистрирован:
18 янв 2009, 15:05
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение 10 фев 2009, 12:51

crash? таак ну это понятно, а над-чем или над-кем вставить "код" мини-чатовский?
maks1192
Активный участник
 
Сообщений: 64
Зарегистрирован:
04 фев 2009, 04:48
Откуда:
ОхА
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение 10 фев 2009, 14:40

Открыть: styles/prosilver/template/index_body.html
Найти: <!-- IF S_DISPLAY_SEARCH or (S_USER_LOGGED_IN and not S_IS_BOT) -->
Добавить после найденного: <!-- INCLUDE chat_body.html -->
Для стиля prosilver
И обязательно очистить кеш в админке
Аватар пользователя
serjan
Разработчик модов
 
Сообщений: 480
Зарегистрирован:
12 янв 2009, 19:18
Благодарил (а): 0 раз.
Поблагодарили: 4 раз.

Сообщение 11 фев 2009, 03:27

serjan, ОК, понял, спасибо!
maks1192
Активный участник
 
Сообщений: 64
Зарегистрирован:
04 фев 2009, 04:48
Откуда:
ОхА
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение 11 фев 2009, 05:15

Всё сделал! Всё хорошо! но одно "но" - можно добавить смайлики?
Отдельно ссылку как-нить, и когда на неё нажимаешь - выходит колонка смайликов. Без смайликов это не чат :) так скучно :(
maks1192
Активный участник
 
Сообщений: 64
Зарегистрирован:
04 фев 2009, 04:48
Откуда:
ОхА
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение 11 фев 2009, 08:54

Таак... ну на локалхосте мини-чат протестил, это со стандартным стилем. А на хосте у меня стиль "AeroBlue". Поставил файлики от "prosilver" - мини чат ваще коряво показывает :shock: ; потом заменил файлики от стиля "subsilver2" - всё ничего, вроде нормально, но имя кто писал - перешло в левую часть, и по бокам нету "красивости (затенения)":

Изображение

Вот так (как все остальные колонки):
Изображение


Если кто в дизайне понимает - помогите пожалуста?
maks1192
Активный участник
 
Сообщений: 64
Зарегистрирован:
04 фев 2009, 04:48
Откуда:
ОхА
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение 12 фев 2009, 05:34

Кстати также очень интересует возможность реализаци в чате смайлов и bbcode как в стандартном сообщении!
lot

 

Сообщение 12 фев 2009, 09:42

lot, вот именно :(
Смайликов и bbCod и вправду очень не хватает. А те кто знает код смайлика, тот вставляет, тот и видит. Ну не все же юзверы умны :)
maks1192
Активный участник
 
Сообщений: 64
Зарегистрирован:
04 фев 2009, 04:48
Откуда:
ОхА
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение 12 фев 2009, 13:32

Вот код файла chat_body.html стиля subsilver2.
Пожалуста, кто-нибудь! Отредактируйте пожалуста для AeroBlue?
Я вообще ничего не понимаю в коде :( , куда, чего вставлять...

Код: выделить все
<!-- IF S_GET_CHAT -->
   <!-- IF S_READ or S_ADD -->
      <!-- BEGIN chatrow -->
         <div id="p{chatrow.MESSAGE_ID}">
            <table class="tablebg" cellpadding="6" cellspacing="0" width="100%">
               <tr class="row{chatrow.CLASS}">
                  <td>
                     <!-- IF U_ACP or U_MCP --><a href="javascript:void({chatrow.MESSAGE_ID})" title="{L_DELETE_POST}" onclick="delete_post('{chatrow.MESSAGE_ID}')"><img src="{T_IMAGESET_LANG_PATH}/icon_post_delete.gif" /></a> <!-- ENDIF -->
                      <b class="postauthor">{chatrow.USERNAME_FULL}</b> « {chatrow.TIME} » &nbsp; <span class="postbody">{chatrow.MESSAGE}</span>
                  </td>
               </tr>
               
            </table>
         </div>
      <!-- END chatrow -->---{LAST_ID}
   <!-- IF S_WHOISONLINE -->---
         <!-- BEGIN whoisrow -->
            <div><img src="{T_IMAGESET_PATH}/{whoisrow.USER_STATUS}.png" class="online_img" /> {whoisrow.USERNAME_FULL}</div>
         <!-- END whoisrow -->---{LAST_TIME}---{DELAY}---{LAST_POST}
      <!-- ENDIF -->
   <!-- ENDIF -->
<!-- ELSE -->
   <!-- IF S_CHAT -->
      <!-- INCLUDE overall_header.html -->
   <!-- ENDIF -->
   <script type="text/javascript">
   <!--
   var fieldname = 'chat';
   var last_time = 0;
   var xmlHttp = http_object();
   var last_id = {LAST_ID};
   var type = 'receive';
   var post_time = {TIME};
   var read_interval = 15000;
   var interval = setInterval('handle_send("read", last_id);', read_interval);

   function handle_send(mode, f)
   {
      if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
      {
         indicator_switch('on');
         type = 'receive';
         param = 'mode=' + mode;   
         param += '&last_id=' + last_id;
         param += '&last_time=' + last_time;         
         param += '&last_post=' + post_time;         
         param += '&read_interval=' + read_interval;         
   
         if (mode == 'add' && document.text.message.value != '')
         {
            type = 'send';
            for(var i = 0; i < f.elements.length; i++)
            {
               elem = f.elements[i];
               param += '&' + elem.name + '=' + encodeURIComponent(elem.value);
            }
            document.text.message.value = '';
         }
         else if (mode == 'delete')
         {
            type = 'delete';
            param += '&chat_id=' + f;
         }
         xmlHttp.open("POST", '{FILENAME}', true);
         xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
         xmlHttp.onreadystatechange = handle_return;
         xmlHttp.send(param);
      }
   }
   
   function handle_return()
   {
      if (xmlHttp.readyState == 4)
      {
         if (type != 'delete')
         {
            results = xmlHttp.responseText.split('---');
            if (results[1])
            {
               if (last_id == 0)
               {
                  document.getElementById(fieldname).innerHTML = results[0];
               }
               else
               {
                  document.getElementById(fieldname).innerHTML = results[0] + document.getElementById(fieldname).innerHTML;
               }
               last_id = results[1];
               if (results[2])
               {
                  document.getElementById('whois_online').innerHTML = results[2];
                  last_time = results[3];
                  if (results[4] != read_interval * 1000)
                  {
                     window.clearInterval(interval);
                     read_interval = results[4] * 1000;
                     interval = setInterval('handle_send("read", last_id);', read_interval);
                     document.getElementById('update_seconds').innerHTML = results[4];
                  }
                  post_time = results[5];
               }
            }
         }
         indicator_switch('off');
      }
   }
   
   function delete_post(chatid)
   {
      document.getElementById('p' + chatid).style.display = 'none';
      handle_send('delete', chatid);
   }
   
   function indicator_switch(mode)
   {
      if(document.getElementById("act_indicator"))
      {
         var img = document.getElementById("act_indicator");   
         if(img.style.visibility == "hidden" && mode == 'on')
         {
            img.style.visibility = "visible";
         }
         else if (mode == 'off')
         {
            img.style.visibility = "hidden"
         }   
      }
   }
   
   function http_object()
   {
      if (window.XMLHttpRequest)
      {
         return new XMLHttpRequest();
      }
      else if(window.ActiveXObject)
      {
         return new ActiveXObject("Microsoft.XMLHTTP");
      }
      else
      {
         document.getElementById('p_status').innerHTML = 'Status: Cound not create XmlHttpRequest Object.  Consider upgrading your browser.';
      }
   }
   -->
   </script>
   <style type="text/css">
   <!--
      .box
      {
         width: 95%;
         margin-left: auto;
         margin-right: auto;
      }
      .shouts {
         width: 100%;
         height:300px;
         overflow:auto;
      }
      #chat {
         width: 100%;
         text-align:left;
      }
      #message {
         width: 65%;
      }
      #whois_online{
         vertical-align:text-top;
         text-align:left;
      }
      .online_img {
         vertical-align:middle;
      }   
      #act_indicator {
         visibility:hidden;
      }
   -->
   </style>
   <div class="box">
      <table class="tablebg" cellspacing="1" width="100%">
            <tr>
               <th align="center" colspan="2">{SITENAME} {L_CHAT}</th>
            </tr>
         <!-- IF S_USER_LOGGED_IN -->
            <tr>
               <td align="center" class="cat nav" width="85%">
                  <form name="text" id="text" method="post" action="javascript:void(0);" onsubmit="handle_send('add', this)" autocomplete="off">{L_MESSAGE}:
                     <input type="text" tabindex="1" name="message" id="message" class="inputbox" size="28" />
                     <input class="button1" type="submit" name="submit" value="{L_SUBMIT}" />
                  </form>
               </td>
               <td align="center" class="cat nav" width="15%">{L_ONLINE_LIST}</td>
         <!-- ENDIF -->
         <tr>
            <td class="row3" style="text-align:left;" height="220">
               <div class="shouts">
                  <div id="chat">
                     <!-- BEGIN chatrow -->
                        <div id="p{chatrow.MESSAGE_ID}">
                           <table class="tablebg" cellpadding="6" cellspacing="0" width="100%">
                              <tr class="row{chatrow.CLASS}">
                                 <td>
                                    <!-- IF U_ACP or U_MCP -->
                                       <a href="javascript:void({chatrow.MESSAGE_ID})" title="{L_DELETE_POST}" onclick="delete_post('{chatrow.MESSAGE_ID}')">
                                          <img src="{T_IMAGESET_LANG_PATH}/icon_post_delete.gif" />
                                       </a>
                                    <!-- ENDIF -->
                                    <b class="postauthor">{chatrow.USERNAME_FULL}</b> « {chatrow.TIME} » &nbsp; <span class="postbody">{chatrow.MESSAGE}</span>
                                 </td>
                              </tr>
                             
                           </table>
                        </div>
                     <!-- END chatrow -->
                  </div>
               </div>
            </td>
            <td class="row1" nowrap="nowrap">
               <div class="shouts">
                  <div id="whois_online">
                     <!-- BEGIN whoisrow -->
                        <div><img src="{T_IMAGESET_PATH}/{whoisrow.USER_STATUS}.png" class="online_img" /> {whoisrow.USERNAME_FULL}</div>
                     <!-- END whoisrow -->
                  </div>
               </div>
            </td>
         </tr>
         <tr>
            <td class="cat" colspan="2" align="center">
               {L_DETAILS}
               <img src="{T_IMAGESET_PATH}/act_indicator.gif" id="act_indicator" />
               <strong>• {L_UPDATES} <span id="update_seconds">{DELAY}</span> {L_UNIT}</strong>
            </td>
         </tr>
      </table>
   </div>
   <!-- IF S_CHAT -->
      <!-- INCLUDE overall_footer.html -->
   <!-- ENDIF -->
<!-- ENDIF -->


пробывал по разному всё вставлять, но получало сь всё наобород коряво :(((
maks1192
Активный участник
 
Сообщений: 64
Зарегистрирован:
04 фев 2009, 04:48
Откуда:
ОхА
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение 15 фев 2009, 16:22

maks1192 писал(а):Здравствуйте!
Скачал чат, установил всё как в инструкции написано.

Я прошу прощения, а где там инструкция?
boRada

 

Сообщение 15 фев 2009, 23:13

У меня вопрос, в данном чате количество строк отображаемых получаеться 3,5)) - 4-е уже нужно прокручевать ползунком.. Это ОЧЕНЬ не удобно если в чате флудят более 3-х человек...даже я б сказал реально не читаемо...можно ли их сделать поуже..тоесть чтобы отображалось одновременно мин. 5-10 сообщений
Стиль prosilver
phpbb 3.0.4
Заранее спс.
..остаеться актуальным вопрос про bbcode и смайлы, если ли возможность их как то прикрутить?
http://sportclub.biz.ua/forum/ - как всегда моды....моды....спорт...
http://www.prognozist.biz.ua - форум любителей футбола
Спорт - это единственное зрелище, в котором, несмотря на количество повторов, конец остается неизвестным.
Аватар пользователя
eddu
Бывалый
 
Сообщений: 146
Зарегистрирован:
12 фев 2009, 23:57
Откуда:
Украина
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.


Вернуться в Моды каталога

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

Форум поддержки phpBB
2008 - 2017 © BB3x.ru - русская поддержка форума phpBB3
Создано на основе phpBB® Forum Software © phpBB Group
авторов модов
разработчиков скинов
русификаторов
и всех поклонников phpBB3