Пропустить

Мод для выравнивания текста.

Форум для авторов модов для phpBB 2.0.x.

Сообщение [R: R@m$e$ :U] » 30.09.2005 21:45

Exploder
хык =) честно говоря нормальный шаблон тобой был сильно из коверкан...

вот это ближе к нормальному шаблону...
########################################################################################## 
## MOD Title: BBcode [align=xxx]..[/align] 
## MOD Author: Exploder < exploder@land.ru > (Roman) http://www.scienceinfo.de/ 
## MOD Description: Adds new set BBcode for various alignment of the text. 
## MOD Version: 1.0.0
## 
## Installation Level: Easy 
## Installation Time: ~10 Minutes 
## 
## Files to edit:
##      posting.php 
##      privmsg.php 
##      includes/bbcode.php 
##      languages/lang_russian/lang_main.php 
##      templates/xxx/bbcode.tpl 
##      templates/xxx/posting_body.tpl 
## 
## Included Files: 
##          N/A
 ## License: http://opensource.org/licenses/gpl-license.php GNU Public License v2 
########################################################################################## 
## For security purposes, please check: http://www.phpbb.com/mods/ 
## for the latest version of this MOD. Although MODs are checked 
## before being allowed in the MODs Database there is no guarantee 
## that there are no security problems within the MOD. No support 
## will be given for MODs not found within the MODs Database which 
## can be found at http://www.phpbb.com/mods/ 
########################################################################################## 
## MOD History: 
## 
##   2005-07-23 - Version 1.0.0 RC1 { MMP }
##      - Initial Release...  
## 
########################################################################################## 
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD 
########################################################################################## 

# 
#-----[ OPEN ]--------------------------------------------- 
# 

posting.php

# 
#-----[ FIND ]--------------------------------------------- 
# 

	'L_BBCODE_F_HELP' => $lang['bbcode_f_help'], 

# 
#-----[ ADD, AFTER ]---------------------------------------- 
# 

	'L_BBCODE_AL_HELP' => $lang['bbcode_al_help'], 

# 
#-----[ FIND ]--------------------------------------------- 
# 

	'L_FONT_HUGE' => $lang['font_huge'], 

# 
#-----[ ADD, AFTER ]---------------------------------------- 
# 

	'L_ALIGN' => $lang['Align'], 
	'L_ALIGN_DEFAULT' => $lang['ALIGN_DEFAULT'], 
	'L_WIDTH' => $lang['Width'], 
	'L_LEFT' => $lang['left'], 
	'L_CENTER' => $lang['center'], 
	'L_RIGHT' => $lang['right'], 

# 
#-----[ OPEN ]--------------------------------------------- 
# 

privmsg.php

# 
#-----[ FIND ]--------------------------------------------- 
# 

	'L_BBCODE_F_HELP' => $lang['bbcode_f_help'], 

# 
#-----[ ADD, AFTER ]---------------------------------------- 
# 

	'L_BBCODE_AL_HELP' => $lang['bbcode_al_help'], 

# 
#-----[ FIND ]--------------------------------------------- 
# 

	'L_FONT_HUGE' => $lang['font_huge'], 

# 
#-----[ ADD, AFTER ]---------------------------------------- 
#  

	'L_ALIGN' => $lang['Align'], 
	'L_ALIGN_DEFAULT' => $lang['ALIGN_DEFAULT'], 
	'L_WIDTH' => $lang['Width'], 
	'L_LEFT' => $lang['left'], 
	'L_CENTER' => $lang['center'], 
	'L_RIGHT' => $lang['right'], 

# 
#-----[ OPEN ]--------------------------------------------- 
# 

includes/bbcode.php 

# 
#-----[ FIND ]--------------------------------------------- 
# 

	// [i] and [/i] for italicizing text. 
	$text = str_replace("[i:$uid]", $bbcode_tpl['i_open'], $text); 
	$text = str_replace("[/i:$uid]", $bbcode_tpl['i_close'], $text); 

# 
#-----[ ADD, AFTER ]---------------------------------------- 
#  

	// [width] and [/width] Alignment on width. 
	$text = str_replace("[align=width:$uid]", $bbcode_tpl['width_open'], $text); 
	$text = str_replace("[/align:$uid]", $bbcode_tpl['width_close'], $text); 

	// [center] and [/center] for centered text. 
	$text = str_replace("[align=center:$uid]", $bbcode_tpl['center_open'], $text); 
	$text = str_replace("[/align:$uid]", $bbcode_tpl['center_close'], $text); 

	// [left] and [/left] For the text with it is left. 
	$text = str_replace("[align=left:$uid]", $bbcode_tpl['left_open'], $text); 
	$text = str_replace("[/align:$uid]", $bbcode_tpl['left_close'], $text); 

	// [right] and [/right] For the text with it is right. 
	$text = str_replace("[align=right:$uid]", $bbcode_tpl['right_open'], $text); 
	$text = str_replace("[/align:$uid]", $bbcode_tpl['right_close'], $text); 

# 
#-----[ FIND ]--------------------------------------------- 
# 

	// [i] and [/i] for italicizing text. 
	$text = preg_replace("#\[i\](.*?)\[/i\]#si", "[i:$uid]\\1[/i:$uid]", $text); 

# 
#-----[ ADD, AFTER ]---------------------------------------- 
# 

	// [center] and [/center] for centered text. 
	$text = preg_replace("#\[align=center\](.*?)\[/align\]#si", "[align=center:$uid]\\1[/align:$uid]", $text); 

	// [left] and [/left] For the text with it is left 
	$text = preg_replace("#\[align=left\](.*?)\[/align\]#si", "[align=left:$uid]\\1[/align:$uid]", $text); 

	// [right] and [/right] For the text with it is right 
	$text = preg_replace("#\[align=right\](.*?)\[/align\]#si", "[align=right:$uid]\\1[/align:$uid]", $text); 

	// [width] and [/width] Alignment on width 
	$text = preg_replace("#\[align=width\](.*?)\[/align\]#si", "[align=width:$uid]\\1[/align:$uid]", $text); 

#
#-----[ OPEN ]--------------------------------------------- 
# 

languages/lang_russian/lang_main.php 

# 
#-----[ FIND ]--------------------------------------------- 
# 

$lang['bbcode_f_help'] = 'Размер шрифта: [size=x-small]маленький тест[/size]'; 

# 
#-----[ ADD, AFTER ]---------------------------------------- 
# 

$lang['bbcode_al_help'] = 'Выравнивание текста: [align=xxx]текст[/align] xxx - width, left, center, right'; 

# 
#-----[ FIND ]--------------------------------------------- 
# 

$lang['font_huge'] = 'Огромный'; 

# 
#-----[ ADD, AFTER ]---------------------------------------- 
# 

$lang['Align'] = 'Выравнивание текста'; 
$lang['ALIGN_DEFAULT'] = 'По умолчанию'; 
$lang['Width'] = 'По ширине'; 
$lang['left'] = 'Слева'; 
$lang['center'] = 'По центру'; 
$lang['right'] = 'Справа'; 

# 
#-----[ OPEN ]--------------------------------------------- 
# 

templates/subSilver/bbcode.tpl 

# 
#-----[ FIND ]--------------------------------------------- 
# 

<!-- BEGIN i_open --><span style="font-style: italic"><!-- END i_open --> 
<!-- BEGIN i_close --></span><!-- END i_close --> 

# 
#-----[ ADD, AFTER ]---------------------------------------- 
# 

<!-- BEGIN width_open --><div align="justify"><!-- END width_open --> 
<!-- BEGIN width_close --></div><!-- END width_close --> 
<!-- BEGIN center_open --><div align="center"><!-- END center_open --> 
<!-- BEGIN center_close --></div><!-- END center_close --> 
<!-- BEGIN left_open --><div align="left"><!-- END left_open --> 
<!-- BEGIN left_close --></div><!-- END left_close --> 
<!-- BEGIN right_open --><div align="right"><!-- END right_open --> 
<!-- BEGIN right_close --></div><!-- END right_close --> 

# 
#-----[ OPEN ]--------------------------------------------- 
# 

templates/subSilver/posting_body.tpl 

# 
#-----[ FIND ]--------------------------------------------- 
# 

f_help = "{L_BBCODE_F_HELP}"; 

# 
#-----[ ADD, AFTER ]---------------------------------------- 
# 

al_help = "{L_BBCODE_AL_HELP}"; 

# 
#-----[ FIND ]--------------------------------------------- 
# 

         <option  value="24">{L_FONT_HUGE}</option> 

# 
#-----[ ADD, AFTER ]---------------------------------------- 
# 
# 

         </select>&nbsp;{L_ALIGN}:<select name="addbbcode22" onChange="bbfontstyle('[align=' + this.form.addbbcode22.options[this.form.addbbcode22.selectedIndex].value + ']', '[/align]')" onMouseOver="helpline('al')"> 

<option value="">{L_ALIGN_DEFAULT}</option> 
<option value="width">{L_WIDTH}</option> 
<option value="left">{L_LEFT}</option> 
<option value="center">{L_CENTER}</option> 
<option value="right">{L_RIGHT}</option> 

# 
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------ 
# 
# EoM
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
 
Сообщения: 1466
Зарегистрирован: 16.01.2005 14:04
Откуда: Novosibirsk,RU
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Exploder » 01.10.2005 0:30

[R: R@m$e$ :U]

Ну просто не натренерован еще :)

Exploder
phpBB 1.4.2
 
Сообщения: 56
Зарегистрирован: 08.08.2005 21:46
Откуда: Германия
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение [R: R@m$e$ :U] » 01.10.2005 7:54

Exploder
да ладно... я кстати тоже промахнулся...
исправь
2005-07-23 - Version 1.0.0 RC1 { MMP }

на
2005-07-23 - Version 1.0.0

это от одного из моих совместных модов.. =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
 
Сообщения: 1466
Зарегистрирован: 16.01.2005 14:04
Откуда: Novosibirsk,RU
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение quazi » 02.10.2005 20:21

Exploder, это пробовали? помогло?

quazi
phpBB 2.0.8
 
Сообщения: 306
Зарегистрирован: 15.03.2005 19:49
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Exploder » 03.10.2005 2:53

quazi
Ошибку которую описывал я уже исправил.

А преминяя вот это
$text = preg_replace("\[align=(center|left|right|width)\]((?:(?!\[\/?align\]).)+)\[\/align\]/si", "[align=\\1:$uid]\\2[/align:$uid]", $text);


вылазит ошибка

Warning: preg_replace(): Delimiter must not be alphanumeric or backslash in /var/www/web69/html/includes/bbcode.php on line 321


Вы бы не могли расписать, что выполнят "$text".

Exploder
phpBB 1.4.2
 
Сообщения: 56
Зарегистрирован: 08.08.2005 21:46
Откуда: Германия
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение quazi » 03.10.2005 3:06

корректный код представлен в посте
http://phpbbguru.net/community/viewtopi ... 4215#44215
Последний раз редактировалось quazi 04.10.2005 10:41, всего редактировалось 2 раз(а).

quazi
phpBB 2.0.8
 
Сообщения: 306
Зарегистрирован: 15.03.2005 19:49
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Exploder » 03.10.2005 12:32

quazi
Все, теперь работает.

Исправил первый пост.
Заменил:
// [center] and [/center] for centered text.
	$text = preg_replace("#\[align=center\](.*?)\[/align\]#si", "[align=center:$uid]\\1[/align:$uid]", $text);

      // [left] and [/left] For the text with it is left
	$text = preg_replace("#\[align=left\](.*?)\[/align\]#si", "[align=left:$uid]\\1[/align:$uid]", $text);

      // [right] and [/right] For the text with it is right
	$text = preg_replace("#\[align=right\](.*?)\[/align\]#si", "[align=right:$uid]\\1[/align:$uid]", $text);

      // [width] and [/width] Alignment on width 
      $text = preg_replace("#\[align=width\](.*?)\[/align\]#si", "[align=width:$uid]\\1[/align:$uid]", $text);


на:

// [align=xxx] and [align]
$text = preg_replace("/\[align=(center|left|right|width)\]((?:(?!\[\/?align\]).)+)\[\/align\]/si","[align=\\1:$uid]\\2[/align:$uid]", $text);

Exploder
phpBB 1.4.2
 
Сообщения: 56
Зарегистрирован: 08.08.2005 21:46
Откуда: Германия
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение quazi » 03.10.2005 13:44

Exploder
не забудьте проверить такие варианты как
[align=left]123456[/align]
[align=right]abcdef[/align]

[align=left]
123456
[align=right]abcdef[/align]
qwertyuiop
[/align]


если мне не изменяет память
в 1 варианте
123456 - выравнивается влево
abcdef - выравнивается вправо

во 2 варианте
выравнивается только вправо и только текст
abcdef
остальной текст выводится как есть включая ВВ-коды

это нормальная и правильная вабота

quazi
phpBB 2.0.8
 
Сообщения: 306
Зарегистрирован: 15.03.2005 19:49
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Exploder » 03.10.2005 14:11

хм..
и вправду, такой вариант не работает :cry:

если использовать вот такой код:
[align=right] 
123456 

[align=left]abcdef[/align] 

qwertyuiop 
[/align]


то
123456 и abcdef выравниваются в правую сторону, причем abcdef с открытым кодом. Вообщем вот так получается

123456 

[align=left]abcdef

Это в правую уходит

а вот это
qwertyuiop 
[/align]

в левой остается

Exploder
phpBB 1.4.2
 
Сообщения: 56
Зарегистрирован: 08.08.2005 21:46
Откуда: Германия
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Exploder » 04.10.2005 9:58

А в чем проблема, ктонить может посказать.

Exploder
phpBB 1.4.2
 
Сообщения: 56
Зарегистрирован: 08.08.2005 21:46
Откуда: Германия
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение quazi » 04.10.2005 10:42

еще раз сюда http://phpbbguru.net/community/viewtopi ... 4215#44215

я там кое-что забыл

quazi
phpBB 2.0.8
 
Сообщения: 306
Зарегистрирован: 15.03.2005 19:49
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Exploder » 04.10.2005 16:54

quazi
Использую:

[align=right] 
123456 

[align=left]abcdef[/align] 

qwertyuiop 
[/align]


Получается :
в левой

[align=right] 
123456

Получается что тег вообще не окрывается

В левой, как и должно быть


И опять в левой:
qwertyuiop 
[/align]

Exploder
phpBB 1.4.2
 
Сообщения: 56
Зарегистрирован: 08.08.2005 21:46
Откуда: Германия
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение quazi » 04.10.2005 17:46

это нормально!
так и должно быть. не рекомендуется вкладывать стили. если надо
выровнять влево
выровнять вправо
выровнять влево

то так и надо писать
[align=left]выровнять влево[/align]
[align=right]выровнять вправо[/align]
[align=left]выровнять влево[/align]


а не так
[align=left]выровнять влево
[align=right]выровнять вправо[/align]
выровнять влево[/align]


правило которое я написал работает именно так

quazi
phpBB 2.0.8
 
Сообщения: 306
Зарегистрирован: 15.03.2005 19:49
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Exploder » 04.10.2005 18:11

quazi
Все понятно!
Спасибо за оказанную помощь!!!

Exploder
phpBB 1.4.2
 
Сообщения: 56
Зарегистрирован: 08.08.2005 21:46
Откуда: Германия
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение quazi » 04.10.2005 18:45

Exploder
не за что :)

quazi
phpBB 2.0.8
 
Сообщения: 306
Зарегистрирован: 15.03.2005 19:49
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Пред.

Вернуться в Для авторов (phpBB 2.0.x)

 

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Кто сейчас на конференции

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

Бессрочный конкурс phpBB-ориентированных материалов
FastVPS — надёжный и доступный хостинг для phpBB
Место для вашей рекламы