Перейти к контенту

Правила из поста форума


Рекомендуемые сообщения

Может быть кому-то будет интересен такой мод. Я очень серьезно отношусь к правилам и стремлюсь к тому, чтобы их можно было централизованно контролировать. При регистрации пользователя, в первую очередь выводится экран с правилами, текст которых в 2.0.0 редактируется в админке

 

System Settings // All General Settings // Board Guidelines // Registration Terms & Rules

 

По умолчанию там вбит большой кусок текста с правила с Html форматированием. Однако, воспользовавшись средставами форума можно создать правила в отдельном посте (в отдельной теме, в отдельном форуме например). При этом их можно очень удобно форматировать и редактировать, не заходя в админку, можно даже вставлять смайлы и любые коды форума.

 

Создаем такой пост и запоминаем его номер. Номер записываем вместо правил в админке (туда, где написано выше).

 

Теперь открываем /sources/register.php

 

Найти:

$this->output .= $this->html->show_terms( $std->my_nl2br($text), $coppa );

Заменить на:

// MOD Board Rules from post number
$DB->query("SELECT pid, post FROM ibf_posts WHERE pid=".$std->my_nl2br($text));
$row=$DB->fetch_row();
$getrules=$row['post'];
$this->output .= $this->html->show_terms( $getrules, $coppa );
// source string:
// $this->output .= $this->html->show_terms( $std->my_nl2br($text), $coppa );

 

Теперь при регистрации будет отображаться не номер, а содержимое поста с этим номером.

 

Быть может есть какие-то исправления, добавления, замечания...

Я подумала, это может быть полезно.

Ссылка на комментарий
Поделиться на других сайтах

Anna

$DB->query("SELECT pid, post FROM ibf_posts WHERE pid=".$std->my_nl2br($text));

Честно не понял суть этой операции. Тебе нужно в качестве pid целое число - а ты пытаешься в $text все переносы строки (CR/LF) заменить на тэги <br />. ;)

Насколько я понимаю, должно быть так:

// MOD Board Rules from post number
$DB->query("SELECT pid, post FROM ibf_posts WHERE pid=".intval($text));
$row=$DB->fetch_row();
// $getrules=$row['post']; - лишняя операция
$this->output .= $this->html->show_terms( $std->my_nl2br($row['post']), $coppa );
// source string:
// $this->output .= $this->html->show_terms( $std->my_nl2br($text), $coppa );

Кроме того, вчера я тоже сидел весь вечер над правилами, до того они меня задолбали, что обработку их при помощи nl2br я у себя вообще убрал. Она только мешает, блин! Бегаешь потом по тексту и ищешь, где там лишний перевод строки затерялся - потому что они преобразовываются в <br /> некстати и портят весь вид странички.

Хотя для данной модификации это не столь актуально. :D

 

И ещё - в принципе, можно поступить проще и указывать ссылку на пост с правилами в админке как внешний URL. Тогда только оформления соответствующего не будет (типа отдельного окошка с правилами). Так что тут всё на вкус и цвет.

Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя...

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.