![[мод] xShow XXX [мод] xShow XXX](https://mastermind.pp.ua/datalife-engine/uploads/posts/2007-12/1198668483_1191416654_1189368765_u_copy.png)
Версия движка: 5.7 - 6.0
SQL Запросов: 2 запроса
Описание: в профайле пользователя добавляется возможность запрета просмотра XXX матерялов
Открываем engine/engine.php
Ищем:
Ниже вставляем:
И удаляем ниже всё до этого:
Дальше ищем:
И еще ниже вставляем:
И удаляем все ниже до строчки:
Открываем файл profile.php:
Ищем
Ниже добавляем:
И в файле userinfo.tpl добавляем:
Все!!!
Ищем:
if ($config['news_msort'] == "") $config['news_msort'] = "DESC";
Ниже вставляем:
// ###### xShow XXX ###### //
// НАСТРОЙКИ //
$stop_xxx = "5"; // ID категорий, которые нужно скрыть (через запятую).
$xxx_default = "yes"; // Показывать по-умолчанию категории 18+ или нет. (yes или no)
// НАСТРОЙКИ //
if (isset($_COOKIE['show_xxx']) && ($_COOKIE['show_xxx'] == "yes" || $_COOKIE['show_xxx'] == "no"))
$xxx = $_COOKIE['show_xxx'];
else
$xxx = $xxx_default;
$allow_list = explode (',', $user_group[$member_id['user_group']]['allow_cats']);
if ($allow_list[0] != "all" || $xxx == "no")
{
$allow_xxx_list = '';
if ($xxx == "no")
{
$config['allow_cache'] = false;
$allow_xxx = array();
$cat_list = explode(',', $stop_xxx);
$cat_info_tmp = $cat_info;
foreach ($cat_list as $element)
{
if (!empty($element)) unset($cat_info_tmp[$element]);
}
foreach ($cat_info_tmp as $cats)
{
$allow_xxx[] = $cats['id'];
}
$allow_xxx_list = (!empty($cat_info_tmp)) ? implode ('|', $allow_xxx) : "";
}
$allow_group_list = ($allow_list[0] != "all") ? implode ('|', $allow_list) : "";
$stop_list_category = $allow_group_list.$allow_xxx_list;
$stop_list = ($stop_list_category) ? "category regexp '[[::]]' AND " : "";
}
else $stop_list = "";
// ###### xShow XXX ###### //
// НАСТРОЙКИ //
$stop_xxx = "5"; // ID категорий, которые нужно скрыть (через запятую).
$xxx_default = "yes"; // Показывать по-умолчанию категории 18+ или нет. (yes или no)
// НАСТРОЙКИ //
if (isset($_COOKIE['show_xxx']) && ($_COOKIE['show_xxx'] == "yes" || $_COOKIE['show_xxx'] == "no"))
$xxx = $_COOKIE['show_xxx'];
else
$xxx = $xxx_default;
$allow_list = explode (',', $user_group[$member_id['user_group']]['allow_cats']);
if ($allow_list[0] != "all" || $xxx == "no")
{
$allow_xxx_list = '';
if ($xxx == "no")
{
$config['allow_cache'] = false;
$allow_xxx = array();
$cat_list = explode(',', $stop_xxx);
$cat_info_tmp = $cat_info;
foreach ($cat_list as $element)
{
if (!empty($element)) unset($cat_info_tmp[$element]);
}
foreach ($cat_info_tmp as $cats)
{
$allow_xxx[] = $cats['id'];
}
$allow_xxx_list = (!empty($cat_info_tmp)) ? implode ('|', $allow_xxx) : "";
}
$allow_group_list = ($allow_list[0] != "all") ? implode ('|', $allow_list) : "";
$stop_list_category = $allow_group_list.$allow_xxx_list;
$stop_list = ($stop_list_category) ? "category regexp '[[::]]' AND " : "";
}
else $stop_list = "";
// ###### xShow XXX ###### //
И удаляем ниже всё до этого:
$sql_select = "SELECT id, autor, date, short_story, full_story, xfields, title, category, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read FROM " . PREFIX . "_post WHERE {$stop_list}approve = '1' AND allow_main = '1'".$where_date." ORDER BY fixed desc, ".$config['news_sort']." ".$config['news_msort']." LIMIT ".$cstart.",".$config['news_number'];
$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post WHERE {$stop_list}approve = '1' AND allow_main = '1'".$where_date;
$sql_news = "";
$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post WHERE {$stop_list}approve = '1' AND allow_main = '1'".$where_date;
$sql_news = "";
Дальше ищем:
$url_page = $config['http_home_url'].get_url($category_id);
И еще ниже вставляем:
// ###### xShow XXX ###### //
$sql_select = "SELECT id, autor, date, short_story, full_story, xfields, title, category, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read FROM " . PREFIX . "_post where category regexp '[[::]]' AND approve = '1'".$where_date." ORDER BY fixed desc, ".$config['news_sort']." ".$config['news_msort']." LIMIT ".$cstart.",".$config['news_number'];
// ###### xShow XXX ###### //
$sql_select = "SELECT id, autor, date, short_story, full_story, xfields, title, category, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read FROM " . PREFIX . "_post where category regexp '[[::]]' AND approve = '1'".$where_date." ORDER BY fixed desc, ".$config['news_sort']." ".$config['news_msort']." LIMIT ".$cstart.",".$config['news_number'];
// ###### xShow XXX ###### //
И удаляем все ниже до строчки:
$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post where category regexp '[[::]]' AND approve = '1'".$where_date;
Открываем файл profile.php:
Ищем
$tpl->set('{allowed-ip}', stripslashes($row['allowed_ip']));
Ниже добавляем:
// ###### xShow XXX ###### //
if ($xxx == "yes")
{
$tpl->set('{xxx_yes}', ' checked');
$tpl->set('{xxx_no}', '');
}
else if ($xxx == "no")
{
$tpl->set('{xxx_yes}', '');
$tpl->set('{xxx_no}', ' checked');
}
// ###### xShow XXX ###### //
if ($xxx == "yes")
{
$tpl->set('{xxx_yes}', ' checked');
$tpl->set('{xxx_no}', '');
}
else if ($xxx == "no")
{
$tpl->set('{xxx_yes}', '');
$tpl->set('{xxx_no}', ' checked');
}
// ###### xShow XXX ###### //
И в файле userinfo.tpl добавляем:
<!-- XXX -->
<tr valign="middle">
<td width="120" height="25">Показывать новости из категории "18+"?</td>
<td height="25"><input type="radio" name="show_xxx" value="yes" /> Да <input type="radio" name="show_xxx" value="no" /> Нет</td>
</tr>
<tr valign="middle">
<td width="120" height="10"> </td>
<td colspan="2 height=10"> </td>
</tr>
<!-- XXX -->
<tr valign="middle">
<td width="120" height="25">Показывать новости из категории "18+"?</td>
<td height="25"><input type="radio" name="show_xxx" value="yes" /> Да <input type="radio" name="show_xxx" value="no" /> Нет</td>
</tr>
<tr valign="middle">
<td width="120" height="10"> </td>
<td colspan="2 height=10"> </td>
</tr>
<!-- XXX -->
Все!!!