22 декабря 201114 г Делал для себя, все желающие могут переделать.открываем public\js\shoutbox.jsспускаемся в самый низ видим там такие строчки://Event.stop(); } });заменяем все это действо на://Event.stop(); }, /* * Insert Nickname to editor */ addTextToEditor: function(text) { var val = ''; if (text == null) { return false; } if ( ipshoutbox.global_on ) { $('shoutbox-global-shout').focus(); ipshoutbox.insertAtCursor(text); } else { ipb.textEditor.getEditor().insert(text, false); } } });сохраняем заливаем, дальше идем admin\applications_addon\other\shoutbox\xml\shoutbox_root_templates.xmlоткрываем. и топаем в строку 496в той строчке видим:<if test="$this->settings['shoutbox_show_photos']"><td style='width: 1%; white-space: nowrap;'>{$d['photo']}</td></if> заменяем на:<if test="$this->settings['shoutbox_show_photos']"><td style='width: 1%; white-space: nowrap;'><a onclick='return ipshoutbox.addTextToEditor("[b]{$d['members_display_name']}, [/b]");'>{$d['photo']}</a></td></if>перекешируем шаблоны и бинго!проделано было в 3.2.3версия shoutbox 1.2.5 Изменено 22 декабря 201114 г пользователем Fil
22 декабря 201114 г Автор обновился до 1.2.6 во втором файле строчка под номером 518 полет нормальный
29 декабря 201114 г Автор @Fil, А на 3.1.4 такое возможно сделать (чат - 1.1.3)да, конечно, если есть картинка в чате, то тоже самое можно проделать
1 января 201214 г да, конечно, если есть картинка в чате, то тоже самое можно проделатьНеполучилось у меня...
7 января 201214 г Автор Неполучилось у меня...чем не получилось ? чего делали ? скорее всего не правильно вставили первую строчку, там нечаянно слепилось(строчка не работает ибо за комментировано) сейчас попробую вставить так как должно быть: //Event.stop(); }, /* * Insert Nickname to editor */ addTextToEditor: function(text) { var val = ''; if (text == null) { return false; } if ( ipshoutbox.global_on ) { $('shoutbox-global-shout').focus(); ipshoutbox.insertAtCursor(text); } else { ipb.textEditor.getEditor().insert(text, false); } } });
7 января 201214 г скорее всего не правильно вставили первую строчку, там нечаянно слепилось(строчка не работает ибо за комментировано) сейчас попробую вставить так как должно быть:Спасибо, теперь получилось!
12 января 201214 г Я тоже для себя такое делал. Выложу свой вариант, если ТС не против.Для Shoutbox 1.2.7 (да с любым 1.2.х должно работать).Исходные файлы править не будем, все через админку. 1. Заходим в редактирование стиля и ищем в шаблонах категорию skin_shoutbox_hooks, открываем шаблон hookGlobalShoutbox. Добавляем под строкуipb.shoutbox.shoutboxGLOBAL = true;следующий код:function insertNick(nick) { document.getElementById('shoutbox-global-shout').value += '[b]'+nick+'[/b], '; }2. В категории skin_shoutbox открываем шаблон shout_row. Ищем код{IPSMember::makeProfileLink($d['_members_display_name'], $d['member_id'], $d['members_seo_name'])}И заменяем его на такой:{IPSMember::makeProfileLink($d['_members_display_name'], $d['member_id'], $d['members_seo_name'])} <img onclick="insertNick('{$d['members_display_name']}');" src="{$this->settings['img_url']}/shoutbox/plus.png" alt="" title="Нажмите, чтобы обратиться по нику" class="insert_nick" />При этом вам понадобиться изображение plus.png (ну, назвать можете по-своему, конечно), которое вы положите в папка вашего скина/shoutbox/ — по клику на нем будет вставляться ник. У меня картинка такая, используйте, если вам подойдет: Можно также задать нужные вам CSS-свойства, для этого используйте класс .insert_nick (я задал cursor: pointer).
13 января 201214 г Я тоже для себя такое делал. Выложу свой вариант, если ТС не против.Для Shoutbox 1.2.7 (да с любым 1.2.х должно работать).Исходные файлы править не будем, все через админку. Попробовал для 1.2.5 - не работает. Поправил, перестроил кеш, выводится плюс, скрипт не отрабатывает. В 1.2.5 нет ipb.shoutbox.shoutboxGLOBAL = true; есть shoutboxGLOBAL = true;
13 января 201214 г Попробовал для 1.2.5 - не работает. Поправил, перестроил кеш, выводится плюс, скрипт не отрабатывает. В 1.2.5 нет ipb.shoutbox.shoutboxGLOBAL = true; есть shoutboxGLOBAL = true;В этом решении нет зависимости от версии. Добавляется своя картинка, на нее вешается свой триггер, который запускает свою функцию.Та строка, которой, как вы говорите, нет, не важна. Просто сверху там есть место, куда удобно вставить эту функцию. А под или над — всё равно.
31 января 201214 г @Fil, в 1.2.7 не получается. //Event.stop(); } });после этого там много ещё чего,а что конкретно заменять?
16 февраля 201214 г Автор @Fil, в 1.2.7 не получается. //Event.stop(); } });после этого там много ещё чего,а что конкретно заменять?начиная с этой строчки все что ниже меняем на то, что я написал. Если не получиться скиньте мне ваш файлик, я поменяю и обратно вам его пришлю.
Делал для себя, все желающие могут переделать.
открываем public\js\shoutbox.js
спускаемся в самый низ видим там такие строчки:
заменяем все это действо на:
//Event.stop(); }, /* * Insert Nickname to editor */ addTextToEditor: function(text) { var val = ''; if (text == null) { return false; } if ( ipshoutbox.global_on ) { $('shoutbox-global-shout').focus(); ipshoutbox.insertAtCursor(text); } else { ipb.textEditor.getEditor().insert(text, false); } } });сохраняем заливаем, дальше идем
admin\applications_addon\other\shoutbox\xml\shoutbox_root_templates.xml
открываем. и топаем в строку 496
в той строчке видим:
<if test="$this->settings['shoutbox_show_photos']"><td style='width: 1%; white-space: nowrap;'>{$d['photo']}</td></if>заменяем на:
<if test="$this->settings['shoutbox_show_photos']"><td style='width: 1%; white-space: nowrap;'><a onclick='return ipshoutbox.addTextToEditor("[b]{$d['members_display_name']}, [/b]");'>{$d['photo']}</a></td></if>перекешируем шаблоны и бинго!
проделано было в 3.2.3
версия shoutbox 1.2.5
Изменено пользователем Fil