Как сделать дополнительные BB коды в форуме

Например, как на IPB

#61 20 ноября 2012 в 13:56
• Mike •, А для 1.10 тоже нужны правки из поста #24 ?

открываем /components/users/frontend.php строка ~1872

• Mike •
Похоже тоже конфликт с сообщениями.
#62 20 ноября 2012 в 13:58

я вообще другой нашел попроще чуток, как сделаю выложу…
в этом много наворотов не задействованных)

• Mike •
Ждемс с нетерпением!!!
#63 20 ноября 2012 в 15:33

Похоже тоже конфликт с сообщениями.

Алфей

в чём выражается? я проверял на “чистой” 1.10

правки из 24 поста относились к предыдущему плагину(с табличкой цветов)…
#64 20 ноября 2012 в 16:21

в чём выражается?

• Mike •
В мозиле не подгружается окно сообщения.
#65 20 января 2014 в 20:36


я вообще другой нашел попроще чуток, как сделаю выложу…
в этом много наворотов не задействованных)

• Mike •

есть продвижения?
#66 29 июня 2014 в 04:00

  1. public function execute($event, $html){
  2.  
  3. parent::execute();
  4.  
  5. $html .= '<a class="usr_bb_button" href="javascript:addTag(\''.$field_id.'\', \'[h1]\', \'[/h1]\')" title="Большой заголовок">
  6. <img src="/includes/bbcode/images/h1.png" border="0" alt="Большой заголовок" />
  7. </a>
  8. <a class="usr_bb_button" href="javascript:addTag(\''.$field_id.'\', \'[h2]\', \'[/h2]\')" title="Средний заголовок">
  9. <img src="/includes/bbcode/images/h2.png" border="0" alt="Средний заголовок" />
  10. </a>
  11. <a class="usr_bb_button" href="javascript:addTag(\''.$field_id.'\', \'[h3]\', \'[/h3]\')" title="Маленький заголовок">
  12. <img src="/includes/bbcode/images/h3.png" border="0" alt="Маленький заголовок" />';
  13.  
  14. return $html;
  15. }
В 10,3 этот код не работает. Думал добавить парочку тегов. Не получилось. В браузере показывает ошибку

Uncaught TypeError: Cannot read property 'focus' of null

Может кто подскажет, как в 10,3 добавить кнопочки через плагин, приведенным Майклом в посте #6 ?

Заранее благодарю.
#67 29 июня 2014 в 18:13
Есть уже готовые решения

Естественно нужно настроить на «отлов» необходимого события…
#68 29 июня 2014 в 19:04
• Mike •, имел в виду не сам плагин, как создать, а в самом плагине, как заставить кнопку работать.
  1. <a class="usr_bb_button" href="javascript:addTag(\''.$field_id.'\', \'[h1]\', \'[/h1]\')" title="Большой заголовок">
  2. <img src="/includes/bbcode/images/h1.png" border="0" alt="Большой заголовок" />
  3. </a>
Данный код в плагине выводит кнопку в редактор, но по нажатию по ней ничего не происходит. Притом, если добавлять свою, как я понимаю, необходимо ее еще предварительно обработать, как в файле includes\bbcode\bbcode.lib.php:

  1. // Функция - обработчик тега [b]
  2. function b_2html($elem) {
  3. return '<strong>'.$this -> get_html($elem['val']).'</strong>';
  4. }
Собственно в этом и вопрос, как сделать рабочую кнопочку…
#69 30 июня 2014 в 11:21
Смотреть по ааналогии с существующими.

Коды кнопок ( html ) — /templates/_default_/special/bbcode_panel.php
Функции кнопок /core/js/smiles.js
Обработчик /includes/bbcode/bbcode.lib.php…

+ посмотреть как реализованы плагины кнопок тут в блогах, для 1.10.3 были по-моему бесплатные решения
#70 10 августа 2014 в 19:39
Прописал вот так вот, в общем:
  1. $html .= '<a class="usr_bb_button" href="javascript:addTag($(\'textarea\').attr(\'id\'), \'[divs]\', \'[/divs]\')" title="Маленький заголовок"> <img src="/includes/bbcode/images/h3.png" border="0" alt="Маленький заголовок" />';
Добавил функцию которая парсит якобы теги
  1. function parseSmiles($divs) {
  2.  
  3. require_once (PATH.'/includes/bbcode/bbcode.lib.php');
  4. $bb = new bbcode($divs);
  5. $divs = $this->cleanAttrValue($elem['attrib']['divs']);
  6. return '<div style="color:blue;">'.$this -> get_html($elem['val']).'</div>';
  7. return $divs;
  8. }
Но почему-то не парсит. Что не так или что упустил из виду? Подскажите, пожалуйста.
#71 10 августа 2014 в 21:05
Скачал плагин из поста #58 проверил на 1,10,4 работает спасибо +++
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.