Добабление BB-тегов left, center и right

0
Клиент (DLE Edition)
+ 11
Активный участник
В общем решил добавить у себя кнопки выравнивания текста по левому краю, по центру, по правому краю. Нарисовал кнопки, залил их в /components/scripts/bbcode/bbcode/ и в /templates/Standart/bbcode/.

в файле /components/scripts/bbcode/bbcode.php

после:
php code:
  1. if (!count($bb_allowed_out) OR (count($bb_allowed_out) AND in_array("email", $bb_allowed_out)))
  2. {                      
  3. $bbcode .= <<<HTML
  4.                                                 <li><a href="#" onclick="bb_promt('email', '{$lang_bbcode['email_window']}', true, true); return false;" title="письмо"><img src="&#123;TEMPLATE}/bbcode/bb_17.png" alt="{$lang_bbcode['email']}" /></a></li>
  5. HTML;
  6. }


добавил:

php code:
  1. {                      
  2. $bbcode .= <<<HTML
  3.                                                 <li><a href="#" onclick="bb('left'); return false;" title="Выравнивание по левому краю"><img src="&#123;TEMPLATE}/bbcode/bb_21.png" alt="Выравнивание по левому краю" /></a></li>
  4. HTML;
  5. }
  6.  
  7. {                      
  8. $bbcode .= <<<HTML
  9.                                                 <li><a href="#" onclick="bb('center'); return false;" title="По центру"><img src="&#123;TEMPLATE}/bbcode/bb_20.png" alt="По центру" /></a></li>
  10. HTML;
  11. }
  12.  
  13. {                      
  14. $bbcode .= <<<HTML
  15.                                                 <li><a href="#" onclick="bb('right'); return false;" title="Выравнивание по правому краю"><img src="&#123;TEMPLATE}/bbcode/bb_19.png" alt="Выравнивание по правому краю" /></a></li>
  16. HTML;
  17. }



в файле /components/scripts/bbcode/bbcode_cc.php

после:

php code:
  1. if (!count($bb_allowed_out) OR (count($bb_allowed_out) AND in_array("email", $bb_allowed_out)))
  2. {                      
  3. $bbcode .= <<<HTML
  4.                                                 <li><a href="#" onclick="bb_promt('email', 'Введите email адресс', true, true); return false;" title="письмо"><img src="{$cache_config['general_site']['conf_value']}components/scripts/bbcode/bbcode/bb_17.png" width="30" height="26" alt="письмо" /></a></li>
  5. HTML;
  6. }


добавил:

php code:
  1. {                      
  2. $bbcode .= <<<HTML
  3.                                                 <li><a href="#" onclick="bb('left'); return false;" title="Выравнивание по левому краю"><img src="{$cache_config['general_site']['conf_value']}components/scripts/bbcode/bbcode/bb_21.png" width="30" height="26" alt="Выравнивание по левому краю" /></a></li>
  4. HTML;
  5. }
  6.  
  7. {                      
  8. $bbcode .= <<<HTML
  9.                                                 <li><a href="#" onclick="bb('center'); return false;" title="По центру"><img src="{$cache_config['general_site']['conf_value']}components/scripts/bbcode/bbcode/bb_20.png" width="30" height="26" alt="По центру" /></a></li>
  10. HTML;
  11. }
  12.  
  13. {                      
  14. $bbcode .= <<<HTML
  15.                                                 <li><a href="#" onclick="bb('right'); return false;" title="Выравнивание по правому краю"><img src="{$cache_config['general_site']['conf_value']}components/scripts/bbcode/bbcode/bb_19.png" width="30" height="26" alt="Выравнивание по правому краю" /></a></li>
  16. HTML;
  17. }


в файле /components/scripts/bbcode/function.php

после:

php code:
  1. if (!count($bb_allowed) OR (count($bb_allowed) AND in_array("center", $bb_allowed)))
  2.         $msg = preg_replace("#\[center\](.+?)\[/center\]#is", "<center>\\1</center>", $msg); //center


добавил:

php code:
  1. if (!count($bb_allowed) OR (count($bb_allowed) AND in_array("left", $bb_allowed)))
  2.         $msg = preg_replace("#\[left\](.+?)\[/left\]#is", "<left>\\1</left>", $msg); //left
  3.                
  4.         if (!count($bb_allowed) OR (count($bb_allowed) AND in_array("right", $bb_allowed)))
  5.         $msg = preg_replace("#\[right\](.+?)\[/right\]#is", "<right>\\1</right>", $msg); //right


ниже после:

php code:
  1. $msg = preg_replace("#<center>(.+?)</center>#is", "<center>\\1</center>", $msg); //center


добавил:

php code:
  1. $msg = preg_replace("#<left>(.+?)</left>#is", "[left]\\1[/left]", $msg); //left
  2.         $msg = preg_replace("#<right>(.+?)</right>#is", "[right]\\1[/right]", $msg); //right


но теги не работают - Подскажите, что я не так сделал?
Прикрепленная картинка
Администратор
+ 133
Автор LogicBoard

cinemamir (03.08.2011, 14:44) писал:но теги не работают


В чём это выражается?
Клиент (DLE Edition)
+ 11
Активный участник

ShapeShifter (03.08.2011, 14:51) писал:

cinemamir (03.08.2011, 14:44) писал:но теги не работают


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



ну вот


как видно на картинке, работает только выравнивание по центру
Прикрепленная картинка
Администратор
+ 133
Автор LogicBoard
Если не ошибаюсь, то нет такоих тегов в html как <left> и <right>
Для выравнивания нужно обернуть в див например и задать свойство float:left или float:right например.
Клиент (DLE Edition)
+ 11
Активный участник
ShapeShifter, а можно наглядный пример? ато что-то у меня ничего не получается
Прикрепленная картинка
Администратор
+ 133
Автор LogicBoard
HTML code:
  1. <div align="left">ТЕКСТ</div>
  2. <div align="right">ТЕКСТ</div>
Клиент (DLE Edition)
+ 11
Активный участник
ShapeShifter, так я пробовал, потом форум не пашет, пустая страница выводится
Прикрепленная картинка
Пользователи
0
Новичок
ShapeShifter
18:53, 03.08.2011
HTML code:
  1. <div align=\"left\">ТЕКСТ</div>
  2. <div align=\"right\">ТЕКСТ</div>
Клиент (DLE Edition)
+ 11
Активный участник
вот теперь все работает!!!
СПАСИБО за помощь !
Прикрепленная картинка
Пользователи
+ 1
Участник
Скажите а в следующих версиях форума может будут эти кнопки добавлены?
Пользователи
+ 1
Участник
MonomaX
14:07, 13.08.2011
У меня не получилось не понял где задать свойство float:left или float:right ??
да и вообще запутался по представленым скринам
Администратор
+ 133
Автор LogicBoard

MonomaX (13.08.2011, 13:12) писал:Скажите а в следующих версиях форума может будут эти кнопки добавлены?


Возможно будет.
Пользователи
+ 1
Участник
а что подразумевается под словом "ТЕКСТ" в данном случае?
HTML code:
  1. <div align=\"left\">ТЕКСТ</div>
  2. <div align=\"right\">ТЕКСТ</div>

подскажите пожалуйста.
Клиент (DLE Edition)
+ 11
Активный участник
MonomaX, делай все как я выше написал, только вместо этого:

Цитата:в файле /components/scripts/bbcode/function.php

после:

php code:
  1. if (!count($bb_allowed) OR (count($bb_allowed) AND in_array("center", $bb_allowed)))
  2.         $msg = preg_replace("#\[center\](.+?)\[/center\]#is", "<center>\\1</center>", $msg); //center


добавил:

php code:
  1. if (!count($bb_allowed) OR (count($bb_allowed) AND in_array("left", $bb_allowed)))
  2.         $msg = preg_replace("#\[left\](.+?)\[/left\]#is", "<left>\\1</left>", $msg); //left
  3.                
  4.         if (!count($bb_allowed) OR (count($bb_allowed) AND in_array("right", $bb_allowed)))
  5.         $msg = preg_replace("#\[right\](.+?)\[/right\]#is", "<right>\\1</right>", $msg); //right


ниже после:

php code:
  1. $msg = preg_replace("#<center>(.+?)</center>#is", "<center>\\1</center>", $msg); //center


добавил:

php code:
  1. $msg = preg_replace("#<left>(.+?)</left>#is", "[left]\\1[/left]", $msg); //left
  2.         $msg = preg_replace("#<right>(.+?)</right>#is", "[right]\\1[/right]", $msg); //right



делай так:

в файле /components/scripts/bbcode/function.php

после:

php code:
  1. if (!count($bb_allowed) OR (count($bb_allowed) AND in_array("center", $bb_allowed)))
  2.         $msg = preg_replace("#\[center\](.+?)\[/center\]#is", "<center>\\1</center>", $msg); //center


добавить:

php code:
  1. if (!count($bb_allowed) OR (count($bb_allowed) AND in_array("left", $bb_allowed)))
  2.         $msg = preg_replace("#\[left\](.+?)\[/left\]#is", "<div align=\"left\">\\1</div>", $msg); //left
  3.                
  4.         if (!count($bb_allowed) OR (count($bb_allowed) AND in_array("right", $bb_allowed)))
  5.         $msg = preg_replace("#\[right\](.+?)\[/right\]#is", "<div align=\"right\">\\1</div>", $msg); //right


ниже после:

php code:
  1. $msg = preg_replace("#<center>(.+?)</center>#is", "<center>\\1</center>", $msg); //center


добавить:

php code:
  1. $msg = preg_replace("#<div align=\"left\">(.+?)</div>#is", "[left]\\1[/left]", $msg); //left
  2.         $msg = preg_replace("#<div align=\"right\">(.+?)</div>#is", "[right]\\1[/right]", $msg); //right
Прикрепленная картинка
Пользователи
+ 1
Участник
MonomaX
19:25, 13.08.2011
Вот блин как я и делал! белая страница хоть убей при нажатии на кнопку "создать новую тему" . Еще попробую. Спасибо за помощь
 
Доступ закрыт.
  • Вам запрещено отвечать в темах данного форума.