Garret Опубликовано 3 Октября 2005 Жалоба Поделиться Опубликовано 3 Октября 2005 Мод: Еще одни модерские тэгиКатегория: МодификацииСовместимость: 2.0.xОписание:Проект закрыт Подробнее...Скачать Ссылка на комментарий Поделиться на других сайтах Прочее
Bayanick Опубликовано 3 Октября 2005 Жалоба Поделиться Опубликовано 3 Октября 2005 Fatal error: Call to undefined function: regex_build_warn() in /home/neombiru/www/forum/sources/lib/post_parser.php on line 318 $txt = preg_replace( "#\(c\)#i" , "©" , $txt ); $txt = preg_replace( "#\(tm\)#i" , "(tm)" , $txt ); $txt = preg_replace( "#\(r\)#i" , "®" , $txt ); // email tags // [email]matt@index.com[/email] [email=matt@index.com]Email me[/email] $txt = preg_replace( "#\[email\](\S+?)\[/email\]#i" , "<a href='mailto:\\1'>\\1</a>", $txt ); $txt = preg_replace( "#\[email\s*=\s*\"\;([\.\w\-]+\@[\.\w\-]+\.[\.\w\-]+)\s*\"\;\s*\](.*?)\[\/email\]#i" , "<a href='mailto:\\1'>\\2</a>", $txt ); $txt = preg_replace( "#\[email\s*=\s*([\.\w\-]+\@[\.\w\-]+\.[\w\-]+)\s*\](.*?)\[\/email\]#i" , "<a href='mailto:\\1'>\\2</a>", $txt ); // url tags // [url]http://www.index.com[/url] [url=http://www.index.com]ibforums![/url] $txt = preg_replace( "#\[url\](\S+?)\[/url\]#ie" , "\$this->regex_build_url(array('html' => '\\1', 'show' => '\\1'))", $txt ); $txt = preg_replace( "#\[url\s*=\s*\"\;\s*(\S+?)\s*\"\;\s*\](.*?)\[\/url\]#ie" , "\$this->regex_build_url(array('html' => '\\1', 'show' => '\\2'))", $txt ); $txt = preg_replace( "#\[url\s*=\s*(\S+?)\s*\](.*?)\[\/url\]#ie" , "\$this->regex_build_url(array('html' => '\\1', 'show' => '\\2'))", $txt ); //Warn tag [w]text[/w] if ($ibforums->member['mgroup'] == 4) { (Строка 318) $txt = $this->regex_build_warn($txt); } //Moder tag [m]text[/m] if ($ibforums->member['mgroup'] == 4) { $txt = $this->regex_build_moder($txt); } [1128345744:1128346950]Строка:$txt = preg_replace( "#\[url\s*=\s*(\S+?)\s*\](.*?)\[\/url\]#ie" , "\$this->regex_build_url(array('html' => '\\1', 'show' => '\\2'))", $txt ); Встречаеться 2 раза в файле post_parser.php Ссылка на комментарий Поделиться на других сайтах Прочее
Garret Опубликовано 3 Октября 2005 Автор Жалоба Поделиться Опубликовано 3 Октября 2005 Встречаеться 2 раза в файле post_parser.phpНедосмотрел. После:// url tags // [url]http://www.index.com[/url] [url=http://www.index.com]ibforums![/url] $txt = preg_replace( "#\[url\](\S+?)\[/url\]#ie" , "\$this->regex_build_url(array('html' => '\\1', 'show' => '\\1'))", $txt ); $txt = preg_replace( "#\[url\s*=\s*\"\;\s*(\S+?)\s*\"\;\s*\](.*?)\[\/url\]#ie" , "\$this->regex_build_url(array('html' => '\\1', 'show' => '\\2'))", $txt ); $txt = preg_replace( "#\[url\s*=\s*(\S+?)\s*\](.*?)\[\/url\]#ie" , "\$this->regex_build_url(array('html' => '\\1', 'show' => '\\2'))", $txt );[1128350504:1128350782]if ($ibforums->member['mgroup'] == 4){(Строка 318) $txt = $this->regex_build_warn($txt);}У тебя потом в названии функции нет очепятки?//*****************************************// // Warn tag [w]text[/w] //*****************************************// function regex_build_warn($in) { ... Ссылка на комментарий Поделиться на других сайтах Прочее
Jax Опубликовано 3 Октября 2005 Жалоба Поделиться Опубликовано 3 Октября 2005 Вот мой вариант, только до конца не дописан: ///////////////////////////////////// // Автор мода: Jax // Форум: www.NewAge.gcnet.ru // Версия: 1.0 // Для версии форума: 2.х // Название: простой ББ код предупреждений (Simple Warm Tag) // Пользоваться могут только админы // Вопросы сюда: ibresource.ru ///////////////////////////////////// ------------------------------------------------------------ Открыть файл sources/lib/post_parser.php ------------------------------------------------------------ Найти: ********************************************************************* $txt = preg_replace( "~^(/warn){1,2}\s?(.+?)$~im", '<div class="w">[b][color=red]Предупреждение:[/b][/color] \\2</div>', $txt); Ниже добавить: ********************************************************************* if ($ibforums->member['mgroup'] == 4) { $txt = preg_replace( "~^(/warn){1,2}\s?(.+?)$~im", '<div class="w"> \\2</div>', $txt); } Примечание: если хотите, чтобы этой фишкой пользовался не только админ, но и кодер к примеру, вместо "== 4", поставьте "==ID" групп Найти: ********************************************************************* $txt = preg_replace( "#<u>(.+?)</u>#is" , "\[u\]\\1\[/u\]" , $txt ); Ниже добавить: ********************************************************************* $txt = preg_replace( "#<div class=['\"]w['\"]>(.+?)</div>#is", "\/warn \\1", $txt ); Сохраните post_parser.php Скины и шаблоны > Ваш скин > Стили > Редактировать Найдите там: ********************************************************************* #QUOTE { font-family: Verdana, Arial; font-size: 8pt; color: #333333; background-color: #FAFCFE; border: 1px solid Black; padding-top: 2px; padding-right: 2px; padding-bottom: 2px; padding-left: 2px } ********************************************************************* Выше добавьте: ********************************************************************* #w { font-family: Verdana, Arial; font-size: 11px; color: #e90606; background-color: #ffe0e0; border: 1px solid #b2081d; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px } ********************************************************************* Жмите [Редактировать стиль] Там в общем после отправки поста, не появляется слово предупреждение, а после едита - есть. В общем, кто хочет, пишите дальше. Ссылка на комментарий Поделиться на других сайтах Прочее
pikachu Опубликовано 4 Октября 2005 Жалоба Поделиться Опубликовано 4 Октября 2005 замечательно работает...а как можно расширить группу тех, кто может юзать эти тэги? хочется модерам раздать Ссылка на комментарий Поделиться на других сайтах Прочее
Garret Опубликовано 4 Октября 2005 Автор Жалоба Поделиться Опубликовано 4 Октября 2005 if ($ibforums->member['mgroup'] == 4) {заменить на if (($ibforums->member['mgroup'] == 4) || ($ibforums->member['mgroup'] == {номер нужной группы})){ Ссылка на комментарий Поделиться на других сайтах Прочее
dfc_darkman Опубликовано 5 Октября 2005 Жалоба Поделиться Опубликовано 5 Октября 2005 if ($ibforums->member['mgroup'] == 4) {заменить на if (($ibforums->member['mgroup'] == 4) || ($ibforums->member['mgroup'] == {номер нужной группы})){<{POST_SNAPBACK}>Что-то у меня из-за этого выводит:Parse error: parse error, unexpected '{' in /home/dance/domains/dancegalaxy.net/public_html/forums/sources/lib/post_parser.php on line 309 Ссылка на комментарий Поделиться на других сайтах Прочее
Garret Опубликовано 5 Октября 2005 Автор Жалоба Поделиться Опубликовано 5 Октября 2005 Возможно у тебя там где то очепятка, я только что у себя сделал - работает. Может у тебя одна фигурная скобка лишняя? Ссылка на комментарий Поделиться на других сайтах Прочее
dfc_darkman Опубликовано 5 Октября 2005 Жалоба Поделиться Опубликовано 5 Октября 2005 Корочевот кусок кода который у меня получается: //Warn tag [w]text[/w] if (($ibforums->member['mgroup'] == 4) || ($ibforums->member['mgroup'] == {10})) { $txt = $this->regex_build_warn($txt); } //Moder tag [m]text[/m] if (($ibforums->member['mgroup'] == 4) || ($ibforums->member['mgroup'] == {10})) { $txt = $this->regex_build_moder($txt); }Ошибка такая:Parse error: parse error, unexpected '{' in /home/dance/domains/dancegalaxy.net/public_html/forums/sources/lib/post_parser.php on line 304Строка 304 - это и есть строка с назначениями групп!со стандартной строкой т.е. только для админов - всё окставлю код что дал ты - ошибка! Ссылка на комментарий Поделиться на других сайтах Прочее
Garret Опубликовано 6 Октября 2005 Автор Жалоба Поделиться Опубликовано 6 Октября 2005 if (($ibforums->member['mgroup'] == 4) || ($ibforums->member['mgroup'] == {10}))вот так:if (($ibforums->member['mgroup'] == 4) || ($ibforums->member['mgroup'] == 10))Фигурных скобок не нужно Ссылка на комментарий Поделиться на других сайтах Прочее
dfc_darkman Опубликовано 6 Октября 2005 Жалоба Поделиться Опубликовано 6 Октября 2005 работаетспасибо Ссылка на комментарий Поделиться на других сайтах Прочее
0z0n Опубликовано 7 Октября 2005 Жалоба Поделиться Опубликовано 7 Октября 2005 А как дать возможность использовать эти теги модераторам? Ссылка на комментарий Поделиться на других сайтах Прочее
Garret Опубликовано 7 Октября 2005 Автор Жалоба Поделиться Опубликовано 7 Октября 2005 Только что ж объяснялось как дать тэги еще одной группе, хоть модеров, хоть забаненых Ссылка на комментарий Поделиться на других сайтах Прочее
0z0n Опубликовано 7 Октября 2005 Жалоба Поделиться Опубликовано 7 Октября 2005 GarretMСпасибо, извини за невнимательность, виноват. Больше не повторится. ЗЫ: Ты бы предупредил, что еще нужно провериь валидность группы модеров, а то у меня они, к примеру не 10 а 6 Ссылка на комментарий Поделиться на других сайтах Прочее
dfc_darkman Опубликовано 7 Октября 2005 Жалоба Поделиться Опубликовано 7 Октября 2005 хмвот заметил недочёт:когда даёшь предупреждение и если его юзверь цитирует получается вот что:[m]<font color=red>я уже запарился переносить твои топикиСоблюдай правила</font>[/m]не красиво как-токолор=ред думаю можно просто поправить и заменить на бб кода что делать с тегами?или может както запретить цитировать предупреждения? Ссылка на комментарий Поделиться на других сайтах Прочее
Garret Опубликовано 8 Октября 2005 Автор Жалоба Поделиться Опубликовано 8 Октября 2005 Посмотрю.[1128775283:1128779174]dfc_darkman, спасибо, переделал на бб-тэги. Заменить://*****************************************// // Moder tag [m]text[/m] //*****************************************// function regex_build_moder($in) { preg_match_all("#\[m\]#is", $in, $num); $i = count($num[0]); $a = 0; $v = 0; while($a < $i) { $out = "<!--MODER BEGIN--><div class=\"quotetop\" onClick=\"Open('".$obj=md5(microtime()); $out .= "')\" style=\"cursor: hand\"><b><img border=0 src=style_images/<#IMG_DIR#>/alert.png>Предупреждение модератора</b></div>"; $out .= "<div class=\"quotemain\" id=\"".$obj."\"><!--MODER END--><font color=red>"; $in = preg_replace("#\[m\]#is", $out, $in, 1); $a++; } while($v < $i) { $in = preg_replace("#\[\/m\]#is", "</font><!--MODER DIV--></div><!--MODER DIV-->", $in, 1); $v++; } return $in; }На://*****************************************// // Moder tag [m]text[/m] //*****************************************// function regex_build_moder($in) { preg_match_all("#\[m\]#is", $in, $num); $i = count($num[0]); $a = 0; $v = 0; while($a < $i) { $out = "<!--MODER BEGIN--><div class=\"quotetop\" onClick=\"OpenSpoiler('".$obj=md5(microtime()); $out .= "')\" style=\"cursor: hand\"><b><img border=0 src=style_images/<#IMG_DIR#>/alert.png>Предупреждение модератора</b></div>"; $out .= "<div class=\"quotemain\" id=\"".$obj."\"><!--MODER END-->[color=red]"; $in = preg_replace("#\[m\]#is", $out, $in, 1); $a++; } while($v < $i) { $in = preg_replace("#\[\/m\]#is", "[/color]<!--MODER DIV--></div><!--MODER DIV-->", $in, 1); $v++; } return $in; }[1128779174:1128779237]А предупреждение пользователю, временно удалено из мода для глобальной переделки. Ссылка на комментарий Поделиться на других сайтах Прочее
pikachu Опубликовано 8 Октября 2005 Жалоба Поделиться Опубликовано 8 Октября 2005 Кстати, а нельзя сделать так, чтобы при написании [m]ник_юзера[/m] юзеру автоматом зачислялось предупреждение ? (на форуме стоит система замечаний) Ссылка на комментарий Поделиться на других сайтах Прочее
Garret Опубликовано 8 Октября 2005 Автор Жалоба Поделиться Опубликовано 8 Октября 2005 Учту пожелания. Ссылка на комментарий Поделиться на других сайтах Прочее
sNc-WicKeD Опубликовано 9 Октября 2005 Жалоба Поделиться Опубликовано 9 Октября 2005 один вопрос !!!я скачал архив, сделал как написано но , не чего не меняется просто пишет [m]![/m] или что напишу, что делать??? Ссылка на комментарий Поделиться на других сайтах Прочее
dfc_darkman Опубликовано 9 Октября 2005 Жалоба Поделиться Опубликовано 9 Октября 2005 Сделай еще раз всё зановоможет ты забыл залить обновлённый файл на хост? Ссылка на комментарий Поделиться на других сайтах Прочее
Garret Опубликовано 9 Октября 2005 Автор Жалоба Поделиться Опубликовано 9 Октября 2005 Может ты пишешь не под админом? Ссылка на комментарий Поделиться на других сайтах Прочее
sNc-WicKeD Опубликовано 9 Октября 2005 Жалоба Поделиться Опубликовано 9 Октября 2005 да нет я все сделал, но чето не работает[1128875305:1128875399]я пишу под ФТП Ссылка на комментарий Поделиться на других сайтах Прочее
dfc_darkman Опубликовано 11 Октября 2005 Жалоба Поделиться Опубликовано 11 Октября 2005 гычёта вобще не продумано как-то у меня при цитировании [w]получается такое:<font color=red id="">Предупреждение пользователю: </font><!--WARN END-->Пожалуйста, не делай такие большие пробелы менжу цитатой и твоим текстом.<!--WARN DIV--> <img border=0 src=style_images/skin/alert.png><!--WARN DIV-->ужоснахи когда нажимаешь "редактировать" - в тексте тоже самое Ссылка на комментарий Поделиться на других сайтах Прочее
Garret Опубликовано 12 Октября 2005 Автор Жалоба Поделиться Опубликовано 12 Октября 2005 Это уже исправлено в обновлении. Ссылка на комментарий Поделиться на других сайтах Прочее
dfc_darkman Опубликовано 12 Октября 2005 Жалоба Поделиться Опубликовано 12 Октября 2005 А де оно!?Этож вроде всё что ты выкладывалЕще одни модерские тэгии я это поставил или ты еще что то обновил? Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения