Jump to content

Немного усовершенствовать чат Shoutbox


Одмин
 Share

Recommended Posts

Добрый день!

 

Ребят, подскажите, как в чате shoutbox поле ввода текста и кнопки (скрин №1) перенести под чат (как на втором скрине)? Где копать? Спасибо.

 

post-54136-0-47640400-1425205274_thumb.jpg

Link to comment
Share on other sites

В настройках: Shoutbox: Global

Да. А конкретнее

 

Настройки: -> Hook: Global Shoutbox -> Global Shoutbox Look: Theme1 / Theme2

post-57438-0-59221300-1425211943_thumb.jpg

  • Upvote 1
Link to comment
Share on other sites

theme2

Спасибо, но это было уточнение, а не вопрос :)

 

---------

 

Кстати, раз уж зашла тема об "усовершенствовании чата Shoutbox" :-)

 

Имеется такая идея: реализовать дополнительное окно (вкладку, чат-комнату) только для общения определенной группы пользователей (в идеале, конечно, просто мультиокна/вкладки).

Но не знаю в каком направлении двигаться:

- создать отдельную таблицу в БД (а если вкладок несколько сделать ?) ?

- или к сообщениям из отдельно взятой вкладки приаттачивать код-индентификатор, соответственно по нему и сортировать по окнам/вкладкам ?

Link to comment
Share on other sites

Вроде есть такое дополнений, чат для администрации в боковом блоке.

Спасибо, нашёл какой-то Staffbox, он вроде. Но посмотрим, как будет работать. Хотелось, бы конечно на движке одного компонента и не плодить сущности. И две вкладки. На крайний случай сверстать вкладки: в одной Shoutbox, в другой Staffbox <_< . А потом еще надо бы поддержку чата в мобильной версии (как в стиле Customobile)... морока одна.

 

Ладно, если не пойдет, буду дальше крутить Shoutbox

Link to comment
Share on other sites

Подскажите по теме, как из чата shoutbox удалить кнопки "Очистить" и "Обновить"?

Похоже, только удалив из шаблона:

 

Правка стиля -> skin_shoutbox_hooks -> hookGlobalShoutbox (это для глобального хука):

 

искать

<input type='button' id='shoutbox-clear-button'...

и

<input type='button' id='shoutbox-refresh-button'

 

Но зачем? Я бы удалил ВВ-коды (это всего лишь справка по ним, и пользы в глобальном хуке не вижу. Хук он для быстрых коротких сообщений. Кто захочет красиво оформить и использовать ВВ-коды, перейдет на вкладку Чат с полноразмерным редактором). Ну и "очистить" можно, раз мешает.

 

ПС:

Я так понимаю - из-за того, что не влазят в одну строку?

  • Upvote 1
Link to comment
Share on other sites

@Viktar83, да, именно из-за этого, перфекционист мать его :D

BB-коды если честно тоже надо удалить, они там вообще ни к месту. Кнопка "Удалить" вообще непонятно для чего, если можно всё очистить вручную...

А кнопка "Обновить" в моем случае лишняя, ибо у меня чат быстренько обновляется...

Но благодарю за ответ. Иска-искал до Вашего совета, но так и не нашел...

Link to comment
Share on other sites

Ну как знаете )

Если не только для глобального хука, но и для основного чата - то там же в шаблонах skin_shoutbox все должно быть по идее...

 

А когда удалите все лишнее, может получиться так, что останется пустое место справа от кнопок. В таком случае можно растянуть поле ввода текста. Чуть позже выложу, если интересует (пойду гляну, как я это делал)...

  • Upvote 1
Link to comment
Share on other sites

@Viktar83, в общем удалил только ББ-коды... а что касается лишнего места, то у меня там его (справа) не так уж и много осталось. Но в идеале, конечно, желательно бы поле ввода растянуть на максимум, чтобы было идеально))

Link to comment
Share on other sites

@Viktar83, в общем удалил только ББ-коды... а что касается лишнего места, то у меня там его (справа) не так уж и много осталось. Но в идеале, конечно, желательно бы поле ввода растянуть на максимум, чтобы было идеально))

Согласен. Тем более, если ширина у сайта не фиксированная. А к тому же у стандартного стиля она задана в %. Т.е. в зависимости от монитора может быть довольно широкой. И тогда уж точно будет пустое место справа. но мы ведь перфекционисты )) Поэтому:

 

1) из шаблона глобального хука удаляем ненужные более кнопки

 

Вот что было:

 

<input type='text' id='shoutbox-global-shout' size='70' class='input_text' />
<input type='button' id='shoutbox-submit-button' value='{$this->lang->words['shout']}' class='input_submit' />
<input type='button' id='shoutbox-clear-button' value='{$this->lang->words['clear']}' class='input_submit alt' />
<input type='button' id='shoutbox-refresh-button' value='{$this->lang->words['refresh']}' class='input_submit alt' />
<if test="$this->settings['shoutbox_allow_smilies']"> <input type='button' id='shoutbox-smilies-button' value='{$this->lang->words['smilies']}' class='input_submit alt' data-clicklaunch="populateSmilies" data-scope="shoutbox" /></if>
<if test="$this->settings['shoutbox_allow_bbcode']"> <input type='button' id='shoutbox-bbcode-button' value='{$this->lang->words['bbcode']}' class='input_submit alt' /></if>
<input type='button' id='shoutbox-myprefs-button' value='{$this->lang->words['my_prefs']}' class='input_submit alt' />

 

я удалил только кнопку "ВВ-коды"

 

Вот что осталось:

 

<input type='text' id='shoutbox-global-shout' class='input_text' />
<input type='button' id='shoutbox-submit-button' value='{$this->lang->words['shout']}' class='input_submit' />
<input type='button' id='shoutbox-clear-button' value='{$this->lang->words['clear']}' class='input_submit alt' />
<input type='button' id='shoutbox-refresh-button' value='{$this->lang->words['refresh']}' class='input_submit alt' />
<if test="$this->settings['shoutbox_allow_smilies']"> <input type='button' id='shoutbox-smilies-button' value='{$this->lang->words['smilies']}' class='input_submit alt' data-clicklaunch="populateSmilies" data-scope="shoutbox" /></if>
<input type='button' id='shoutbox-myprefs-button' value='{$this->lang->words['my_prefs']}' class='input_submit alt' />

 

 

2) оборачиваем кнопки и поле ввода в разные слои:

 

при этом поле ввода текста теперь смещаем вниз

 

<div id='shoutbox-right'>
<input type='button' id='shoutbox-submit-button' value='{$this->lang->words['shout']}' class='input_submit' />
<input type='button' id='shoutbox-clear-button' value='{$this->lang->words['clear']}' class='input_submit alt' />
<input type='button' id='shoutbox-refresh-button' value='{$this->lang->words['refresh']}' class='input_submit alt' />
<if test="$this->settings['shoutbox_allow_smilies']"> <input type='button' id='shoutbox-smilies-button' value='{$this->lang->words['smilies']}' class='input_submit alt' data-clicklaunch="populateSmilies" data-scope="shoutbox" /></if>
<input type='button' id='shoutbox-myprefs-button' value='{$this->lang->words['my_prefs']}' class='input_submit alt' />
</div>
<div id='shoutbox-left'>
<input type='text' id='shoutbox-global-shout' class='input_text' />
</div>

 

3) прописываем в CSS (ipshoutbox.css) следующие свойства (просто добавляем в конце):

 

#shoutbox-left { margin-right: 480px; }  /* сумма длин кнопок справа + отступы между ними - нужно будет просто подобрать */
#shoutbox-global-shout { width: 100%; }  /* текстовое поле должно быть растянуто на всю ширину родителя */
#shoutbox-right { float: right; }  /* слой с кнопками вправо */
#shoutbox-right input { width: 90px !important; }  /* тут я жестко задал длину для каждой из кнопок, иначе она зависела от вмещающего текста (названия) и могла быть непостоянной */

#shoutbox-shouts  { background: #FFFFFF !important; } /* по желанию */
table.shoutbox_table tr:nth-child(even) { background: #F6F6F6 !important;} /* это по желанию: чередование цвета полосок с сообщениями */
table.shoutbox_table tr:nth-child(odd) { background: #FFFFFF !important; } /* это по желанию: чередование цвета полосок с сообщениями */

 

4) Результат: при разной ширине поле ввода текста всегда растягивается на максимум

post-57438-0-50455600-1425237565_thumb.jpg post-57438-0-48291400-1425237570_thumb.jpg

 

Пробуйте, вроде ничего не упустил...

Edited by Viktar83
  • Upvote 1
Link to comment
Share on other sites

@Viktar83, отлично, благодарствую! Правда на сегодня закончился лимит "спасибок"! ))

Если сможете додумать, как сделать, чтобы при обновлении аякса, когда исчезает кнопка "Обновить", либо растягивалось поле ввода, либо утолщались во всю длину остальные кнопки, - было бы вообще высший пилотаж! А так, теперь когда происходит обновление чата, исчезает кнопка "Обновить" (ну она и раньше исчезала), и соответственно, во время ее исчезания, остается пустое поле. Не совсем красиво...

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...