Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
СообщениеДобавлено: 2010-12-04 03:29 
Не в сети
Администратор
Администратор
Аватара пользователя
Раздал: 51.58 ТБ
Скачал: 620.08 ГБ
Ратио: 85.182


Зарегистрирован: 2010-11-09 02:24
Сообщения: 44886
Откуда: Земля Санникова
Данный мод позволяет скрыть ссылки от незарегистрированных и не набравших определенное количество сообщений на форуме.

Управление через админ панель.

Есть возможность скрывать и от модераторов.

Установка

Делаем запрос в базу данных

#
#-----[ SQL ]-------------------------------------------

Код:
INSERT INTO `bb_config` SET `config_name`='necessary_post_number', `config_value`='0';
INSERT INTO `bb_config` SET `config_name`='mods_priority', `config_value`='1';


#
#-----[ открыть ]------------------------------------------
#
admin/admin_board.php

#
#-----[ найти ]------------------------------------------
#
Код:
$board_email_form_yes = ( $new['board_email_form'] ) ? "checked=\"checked\"" : "";
$board_email_form_no = ( !$new['board_email_form'] ) ? "checked=\"checked\"" : "";


#
#-----[ добавить после ]------------------------------------
#
Код:
$mods_priority_yes = ( $new['mods_priority'] ) ? "checked=\"checked\"" : "";
$mods_priority_no = ( !$new['mods_priority'] ) ? "checked=\"checked\"" : "";


#
#-----[ найти ]------------------------------------------
#
Код:
   "L_HOT_THRESHOLD" => $lang['Hot_threshold'],


#
#-----[ добавить после ]------------------------------------
#
Код:
   "L_NECESSARY_POST_NUMBER" => $lang['Necessary_Post_Number'],
   "L_MODS_PRIORITY" => $lang['Mods_Priority'],
   "L_MODS_PRIORITY_EXPLAIN" => $lang['Mods_Priority_Explain'],

#
#-----[ найти]------------------------------------------
#
Код:
   "HOT_TOPIC" => $new['hot_threshold'],


#
#-----[добавить после]------------------------------------
#
Код:
   "NECESSARY_POST_NUMBER" => $new['necessary_post_number'],
   "MODS_PRIORITY_YES" => $mods_priority_yes,
   "MODS_PRIORITY_NO" => $mods_priority_no,


#
#-----[ открыть ]------------------------------------------
#
includes/bbcode.php

#
#-----[ найти ]------------------------------------------
#

Код:
function prepare_bbcode_template($bbcode_tpl)
{
   global $lang;


#
#-----[ заменить]------------------------------------
#
Код:
function prepare_bbcode_template($bbcode_tpl)
{
   global $lang, $board_config, $phpEx, $u_login_logout;


#
#-----[ найти ]------------------------------------------
#
Код:
   $bbcode_tpl['email'] = str_replace('{EMAIL}', '\\1', $bbcode_tpl['email']);


#
#-----[ добавить после ]------------------------------------
#
Код:
$bbcode_tpl['login_request'] = str_replace('{L_WARNING}', $lang['Links_Allowed_For_Registered_Only'], $bbcode_tpl['login_request']);
   $bbcode_tpl['login_request'] = str_replace('{GET_REGISTERED}', sprintf($lang['Get_Registered'], "<a href=\"" . append_sid('profile.' . $phpEx . '?mode=register') . "\">", "</a>"), $bbcode_tpl['login_request']);
   $bbcode_tpl['login_request'] = str_replace('{ENTER_FORUM}', sprintf($lang['Enter_Forum'], "<a href=\"" . append_sid($u_login_logout) . "\">", "</a>"), $bbcode_tpl['login_request']);

   $bbcode_tpl['post_count_request'] = str_replace('{L_WARNING}', sprintf($lang['Post_Limit'], $board_config['necessary_post_number']), $bbcode_tpl['post_count_request']);


#
#-----[ найти ]------------------------------------------
#
Код:
function bbencode_second_pass($text, $uid)
{
   global $lang, $bbcode_tpl;


#
#-----[ заменить ]------------------------------------
#
Код:
function bbencode_second_pass($text, $uid)
{
   global $lang, $bbcode_tpl, $userdata, $board_config, $is_auth;


#
#-----[ найти ]------------------------------------------
#
Код:
// matches a [url]xxxx://www.phpbb.com[/url] code..
   $patterns[] = "#\[url\]([\w]+?://([\w\#$%&~/.\-;:=,?@\]+]+|\[(?!url=))*?)\[/url\]#is";
   $replacements[] = $bbcode_tpl['url1'];

   // [url]www.phpbb.com[/url] code.. (no xxxx:// prefix).
   $patterns[] = "#\[url\]((www|ftp)\.([\w\#$%&~/.\-;:=,?@\]+]+|\[(?!url=))*?)\[/url\]#is";
   $replacements[] = $bbcode_tpl['url2'];

   // [url=xxxx://www.phpbb.com]phpBB[/url] code..
   $patterns[] = "#\[url=([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*?)\]([^?\n\r\t].*?)\[/url\]#is";
   $replacements[] = $bbcode_tpl['url3'];

   // [url=www.phpbb.com]phpBB[/url] code.. (no xxxx:// prefix).
   $patterns[] = "#\[url=((www|ftp)\.[\w\#$%&~/.\-;:=,?@\[\]+]*?)\]([^?\n\r\t].*?)\[/url\]#is";
   $replacements[] = $bbcode_tpl['url4'];

   // [email]user@domain.tld[/email] code..
   $patterns[] = "#\[email\]([a-z0-9&\-_.]+?@[\w\-]+\.([\w\-\.]+\.)?[\w]+)\[/email\]#si";
   $replacements[] = $bbcode_tpl['email'];

#
#-----[ заменить ]------------------------------------
#
Код:
$url_replacer = ( !$userdata['session_logged_in'] ) ? $bbcode_tpl['login_request'] : ( ( ( $userdata['user_posts'] >= $board_config['necessary_post_number'] ) || ( $userdata['user_level'] == 1 ) || ( ( $is_auth['auth_mod'] == 1 ) && ( $board_config['mods_priority'] == 1 ) ) ) ? '' : $bbcode_tpl['post_count_request'] );

   // matches a [url]xxxx://www.phpbb.com[/url] code..
   $patterns[] = "#\[url\]([\w]+?://([\w\#$%&~/.\-;:=,?@\]+]+|\[(?!url=))*?)\[/url\]#is";
   $replacements[] = ( $url_replacer ) ? $url_replacer : $bbcode_tpl['url1'];

   // [url]www.phpbb.com[/url] code.. (no xxxx:// prefix).
   $patterns[] = "#\[url\]((www|ftp)\.([\w\#$%&~/.\-;:=,?@\]+]+|\[(?!url=))*?)\[/url\]#is";
   $replacements[] = ( $url_replacer ) ? $url_replacer : $bbcode_tpl['url2'];

   // [url=xxxx://www.phpbb.com]phpBB[/url] code..
   $patterns[] = "#\[url=([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*?)\]([^?\n\r\t].*?)\[/url\]#is";
   $replacements[] = ( $url_replacer ) ? $url_replacer : $bbcode_tpl['url3'];

   // [url=www.phpbb.com]phpBB[/url] code.. (no xxxx:// prefix).
   $patterns[] = "#\[url=((www|ftp)\.[\w\#$%&~/.\-;:=,?@\[\]+]*?)\]([^?\n\r\t].*?)\[/url\]#is";
   $replacements[] = ( $url_replacer ) ? $url_replacer : $bbcode_tpl['url4'];

   // [email]user@domain.tld[/email] code..
   $patterns[] = "#\[email\]([a-z0-9&\-_.]+?@[\w\-]+\.([\w\-\.]+\.)?[\w]+)\[/email\]#si";
   $replacements[] = ( $url_replacer ) ? $url_replacer : $bbcode_tpl['email'];


#
#-----[ найти ]------------------------------------------
#
Код:
function make_clickable($text)
{


#
#-----[ добавить после ]------------------------------------
#
Код:
   global $bbcode_tpl, $userdata, $board_config, $is_auth;


#
#-----[ найти ]------------------------------------------
#
Код:
// matches an "xxxx://yyyy" URL at the start of a line, or after a space.
   // xxxx can only be alpha characters.
   // yyyy is anything up to the first space, newline, comma, double quote or <
   $ret = preg_replace("#(^|[\n ])([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*)#is", "\\1<a href=\"\\2\" target=\"_blank\">\\2</a>", $ret);

   // matches a "www|ftp.xxxx.yyyy[/zzzz]" kinda lazy URL thing
   // Must contain at least 2 dots. xxxx contains either alphanum, or "-"
   // zzzz is optional.. will contain everything up to the first space, newline,
   // comma, double quote or <.
   $ret = preg_replace("#(^|[\n ])((www|ftp)\.[\w\#$%&~/.\-;:=,?@\[\]+]*)#is", "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>", $ret);

   // matches an email@domain type address at the start of a line, or after a space.
   // Note: Only the followed chars are valid; alphanums, "-", "_" and or ".".
   $ret = preg_replace("#(^|[\n ])([a-z0-9&\-_.]+?)@([\w\-]+\.([\w\-\.]+\.)*[\w]+)#i", "\\1<a href=\"mailto:\\2@\\3\">\\2@\\3</a>", $ret);


#
#-----[ заменить ]------------------------------------
#
Код:
$url_replacer = ( !$userdata['session_logged_in'] ) ? $bbcode_tpl['login_request'] : ( ( ( $userdata['user_posts'] >= $board_config['necessary_post_number'] ) || ( $userdata['user_level'] == 1 ) || ( ( $is_auth['auth_mod'] == 1 ) && ( $board_config['mods_priority'] == 1 ) ) ) ? '' : $bbcode_tpl['post_count_request'] );

   if ( $url_replacer )
   {
      // matches an "xxxx://yyyy" URL at the start of a line, or after a space.
      // xxxx can only be alpha characters.
      // yyyy is anything up to the first space, newline, comma, double quote or <
      $ret = preg_replace("#(^|[\n ])([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*)#is", $url_replacer, $ret);

      // matches a "www|ftp.xxxx.yyyy[/zzzz]" kinda lazy URL thing
      // Must contain at least 2 dots. xxxx contains either alphanum, or "-"
      // zzzz is optional.. will contain everything up to the first space, newline,
      // comma, double quote or <.
      $ret = preg_replace("#(^|[\n ])((www|ftp)\.[\w\#$%&~/.\-;:=,?@\[\]+]*)#is", $url_replacer, $ret);

      // matches an email@domain type address at the start of a line, or after a space.
      // Note: Only the followed chars are valid; alphanums, "-", "_" and or ".".
      $ret = preg_replace("#(^|[\n ])([a-z0-9&\-_.]+?)@([\w\-]+\.([\w\-\.]+\.)*[\w]+)#i", $url_replacer, $ret);
   }
   else
   {
      // matches an "xxxx://yyyy" URL at the start of a line, or after a space.
      // xxxx can only be alpha characters.
      // yyyy is anything up to the first space, newline, comma, double quote or <
      $ret = preg_replace("#(^|[\n ])([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*)#is", "\\1<a href=\"\\2\" target=\"_blank\">\\2</a>", $ret);

      // matches a "www|ftp.xxxx.yyyy[/zzzz]" kinda lazy URL thing
      // Must contain at least 2 dots. xxxx contains either alphanum, or "-"
      // zzzz is optional.. will contain everything up to the first space, newline,
      // comma, double quote or <.
      $ret = preg_replace("#(^|[\n ])((www|ftp)\.[\w\#$%&~/.\-;:=,?@\[\]+]*)#is", "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>", $ret);

      // matches an email@domain type address at the start of a line, or after a space.
      // Note: Only the followed chars are valid; alphanums, "-", "_" and or ".".
      $ret = preg_replace("#(^|[\n ])([a-z0-9&\-_.]+?)@([\w\-]+\.([\w\-\.]+\.)*[\w]+)#i", "\\1<a href=\"mailto:\\2@\\3\">\\2@\\3</a>", $ret);
   }


#
#-----[ открыть ]------------------------------------------
#
language/lang_russian/lang_admin.php

#
#-----[ найти ]------------------------------------------
#
$lang['Login_reset_time_explain'] =

#
#-----[ добавить после ]------------------------------------
#
Код:
//
// Hide links mod
//
$lang['Necessary_Post_Number'] = 'Количество сообщений, без которых люди не могут видеть ссылки';
$lang['Mods_Priority'] = 'Модераторы форума видят все ссылки';
$lang['Mods_Priority_Explain'] = 'Модераторы форума могут видеть все ссылки на форуме, даже если они не имеют достаточно сообщений';


#
#-----[ открыть ]------------------------------------------
#
language/lang_russian/lang_main.php

#
#-----[ найти ]------------------------------------------
#
Код:
$lang['Please_remove_install_contrib'] =


#
#-----[ добавить ниже ]------------------------------------
#

Код:
//
// Hide links mod
//
$lang['Links_Allowed_For_Registered_Only'] = 'Only registered users can see links on this board!';
$lang['Get_Registered'] = 'Get %sregistred%s or ';
$lang['Enter_Forum'] = '%senter%s the forums!';
$lang['Post_Limit'] = 'You must have <b>%s</b> posts to see links on this board';


#
#-----[ открыть ]------------------------------------------
#
Код:
templates/subSilver/bbcode.tpl


#
#-----[ найти ]------------------------------------------
#
Код:
<!-- BEGIN email --><a href="mailto:{EMAIL}">{EMAIL}</a><!-- END email -->


#
#-----[ добавить ниже ]------------------------------------
#
Код:
<!-- BEGIN login_request --></span><table width="40%" cellspacing="1" cellpadding="3" border="0">
<tr>
   <td class="quote">{L_WARNING}<br />{GET_REGISTERED}{ENTER_FORUM}</td>
</tr>
</table><span class="postbody"><!-- END login_request -->

<!-- BEGIN post_count_request --> </span><table width="40%" cellspacing="1" cellpadding="3" border="0">
<tr>
   <td class="quote">{L_WARNING}</td>
</tr>
</table><span class="postbody"><!-- END post_count_request -->


#
#-----[ открыть ]------------------------------------------
#
templates/subSilver/admin/admin_board.tpl
#
#-----[ найти ]------------------------------------------
#
Код:
<tr>
      <td class="row1">{L_HOT_THRESHOLD}</td>
      <td class="row2"><input class="post" type="text" name="hot_threshold" size="3" maxlength="4" value="{HOT_TOPIC}" /></td>
   </tr>


#
#-----[ добавить ниже ]------------------------------------
#
Код:
<tr>
      <td class="row1">{L_NECESSARY_POST_NUMBER}</td>
      <td class="row2"><input class="post" type="text" name="necessary_post_number" size="3" maxlength="4" value="{NECESSARY_POST_NUMBER}" /></td>
   </tr>
   <tr>
      <td class="row1">{L_MODS_PRIORITY}<br /><span class="gensmall">{L_MODS_PRIORITY_EXPLAIN}</span></td>
      <td class="row2"><input type="radio" name="mods_priority" value="1" {MODS_PRIORITY_YES} />{L_YES}&nbsp; &nbsp;<input type="radio" name="mods_priority" value="0" {MODS_PRIORITY_NO} />{L_NO}</td>
   </tr>


#
#-----[ сохранить и закрыть все ]--------------------------
#
#

Готово!


Вернуться к началу
 Профиль  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 3 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Переместиться наверх
 Главная |  Список форумов |   Time : 4.217s | 14 Queries | GZIP : Off |