Архив - только для чтения | |
Модератор форума: JonMagon |
Сообщество uCoz Модули uCoz Форум Бан по нику или IP (запрет доступа, разбан, бан, блокировка пользователя) |
Бан по нику или IP |
Бан по нику Осуществляется с помощью замечаний. Бан по IP адресу Осуществляется через админбар и действует как запрет активности по всему сайту. Админбар » Управление » Блокировка IP адресов 1. Каждый IP адрес должен быть введен с новой строки.
Бан как по нику, так и по IP только запрещает активность пользователя, но не препятствует ему просматривать сайт. Для того, чтобы запретить кому-либо просматривать сайт следует воспользоваться правами групп. Для этого предусмотрены следующие опции: 1. Просмотр пользовательских страниц Следует отдавать себе отчёт, что бан по IP не означает, что вы распрощались с хулиганом навсегда. До сих пор у многих динамические IP, некоторые используют прокси, а у части пользователей корпоративные сети и забанив одного вы баните ещё с десяток ни в чём не повинных пользователей. Также не следует думать, что забанив по нику вы перекрыли зловреде кислород - новый ник зарегистрировать не проблема. На опыте отработано несколько приёмов защиты от нежелательных персон на сайте и форуме. 1. Создаётся специальная группа, которой почти ничего не разрешено (это на ваше админское усмотрение) и все провинившиеся ВРЕМЕННО переносятся туда.
Китайские хитрости 1. Если вы хотите запретить на сайте или форуме регистрацию определённых ников, то зарегистрируйте такие ники сами и перенестите их в группу без прав (на всякий случай). Или поставьте бан навсегда через замечания. 2. Запрет просмотра сайта от vitaly576 - сделать группу забаненные, настроить права доступа, сделать все страницы такого вида:
Code <?if($GROUP_ID$=[b]7[/b])?>[b]$GLOBAL_BANPAGE$[/b]<?else?> содержимое страницы<?endif?> где 7 - id группы забаненные $GLOBAL_BANPAGE$: Code <html> <head> <title>Аккаунт заблокирован</title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <style type="text/css"> body{ font-family: Verdana, Tahoma, Arial, Trebuchet MS, Sans-Serif, Georgia, Courier, Times New Roman, Serif; font-size: 11px; margin: 0; padding: 0; /* required for Opera to have 0 margin */ } .errorwrap { background: #F2DDDD; border: 1px solid #992A2A; border-top: 0; margin: 5px; padding: 0; } .errorwrap h4 { background: #E3C0C0; border: 1px solid #992A2A; border-left: 0; border-right: 0; color: #992A2A; font-size: 12px; font-weight: bold; margin: 0; padding: 5px; } .errorwrap p { background: transparent; border: 0; color: #992A2A; margin: 0; padding: 8px; font-size: 11px; } </style> </head> <body> <table border="0" width="750" cellspacing="1" cellpadding="75" align="center"> <tr> <td width="100%"> <div class="errorwrap"> <h4>Ваш аккаунт на сайте заблокирован: Администрацией</h4> Ваша учетная запись (<b>$USERNAME$</b>) на сайте была заблокирована администратором. При этом были указаны следующие причины:</p> Стандартный бан для всех непослужников</p> Если видишь это, значит ты просто забанен!</p> Возможные причины этого:</p> - Обсуждение действий/оскорбление Администрации сайта</p> - Реклама сайтов (в комментариях, на форуме, в гостевой)</p> - За мат</p> - За спам</p> Срок окончания блокировки: <b>Не</b>ограничено</p> Это полностью автоматический процесс блокировки и вас не требуется ничего делать для его ускорения или прекращения.</p> </div> </td> </tr> </table> </body> </html>
Если пользователь после переноса в другую группу или бана хитрит и сопротивляется, нужно очистить пользователю куки, заставить сделать выход. Временно вставьте в шаблон любой страницы, куда точно зайдет пользователь, следующий код (лучше сразу перед < /head>) Code <script type="text/javascript">if('$USERNAME$'=='логин_юзера')window.location.href="http://имя_сайта/index/10-0-0";</script> только замените логин_юзера и имя_сайта на то, что нужно (с учетом регистра логин). В остальном код скопируйте точно.
Рецепт от Admin-a |
Хм...а можно,допустим чтоб модератору,не были видны ип-адреса на форуме каждого пользователя?
|
Joker_okda, примерно так
Quote <?if($GROUP_ID$=4)?><?if($USER_IP$)?><div class="postip">[ <a class="postIpLink" href="http://www.ripe.net/perl/whois?$USER_IP$" target="_blank">$USER_IP$</a><?if($POST_COUNTRY_ID$)?> (<a href="javascript://" rel="nofollow" onclick='prompt("","$POST_COUNTRY$");return false;'>$POST_COUNTRY_ID$</a>)<?endif?> ]</div><?endif?><?else?>ничего<?endif?></td> в этом случае ип будет виден только админу |
webanet, А куда вставить?
|
Joker_okda,
Quote А куда вставить? ПУ --- управление дизайном --- форум --- вид материалов ищи строчку: Code <?if($USER_IP$)?><div class="postip">................................. ]</div><?else?><?endif?></td> и заменяй на то, что написала webanet, |
Что-то не получается
вот код Code <tr><td class="postBottom" align="center"><?if($USER_IP$)?><div class="postip">[ <a class="postIpLink" href="http://www.ripe.net/perl/whois?$USER_IP$" target="_blank">$USER_IP$</a><?if($POST_COUNTRY_ID$)?> (<a href="javascript://" rel="nofollow" onclick="prompt("","$POST_COUNTRY$");return false;">$POST_COUNTRY_ID$</a>)<?endif?> ]</div><?else?> <?endif?></td><td class="postBottom"> <table border="0" width="100%" cellspacing="0" cellpadding="0"> <tbody><tr><td>$USER_DETAILS_ICON_BAR$</td><td align="right" style="padding-right:15px;">$ENTRY_MANAGE_ICON_BAR$</td><td width="2%" nowrap="" align="right">$ON_TOP_ICON$$DEL_ENTRY_FIELD$</td></tr> </tbody></table></td></tr></tbody></table> |
Joker_okda, так:
Quote <tr><td class="postBottom" align="center"><?if($GROUP_ID$=4)?><?if($USER_IP$)?><div class="postip"> [ <a class="postIpLink" href="http://www.ripe.net/perl/whois?$USER_IP$" target="_blank">$USER_IP$</a><?if($POST_COUNTRY_ID$)?> (<a href="javascript://" rel="nofollow" onclick="prompt("","$POST_COUNTRY$");return false;">$POST_COUNTRY_ID$</a>)<?endif?> ]</div><?endif?><?else?>ничего<?endif?> </td><td class="postBottom"> <table border="0" width="100%" cellspacing="0" cellpadding="0"> <tbody><tr><td>$USER_DETAILS_ICON_BAR$</td><td align="right" style="padding-right:15px;">$ENTRY_MANAGE_ICON_BAR$</td><td width="2%" nowrap="" align="right">$ON_TOP_ICON$$DEL_ENTRY_FIELD$</td></tr> </tbody></table></td></tr></tbody></table> Сообщение отредактировал bandjuk - Вторник, 24 Янв 2012, 16:23:23
|
webanet, bandjuk, спасибо помогли)
|
В общем не уверен конечно что пишу в нужную тему, но тем не менее.
Дано: Модуль Форум. Есть разделы. Есть подразделы. Задача: Блокировка по IP посетителя для конкретных РАЗДЕЛОВ (не ВЫБОРОЧНЫХ тем в разделах, а ВСЕХ тем в РАЗДЕЛЕ). До изменений по тэгу $FORUM_TITLE$ у меня подобное работало. Тэг содержал название не только конкретной темы форума, но и подраздела, раздела. И я соответственно в общем шаблоне страниц форума использовал $FORUM_TITLE$ и $IP_ADDRESS$ для построения соответствующих условий. Сейчас тэг $FORUM_TITLE$ содержит только название темы форума. Каким образом на уровне шаблона "Общий вид страниц форума" мне получить идентификатор раздела/подраздела форума для текущей темы? Каким образом теперь мне решить требуемую задачу, ума не приложу. Раньше все работало, а теперь... Получается какой-то замкнутый круг: На уровне шаблона "общий вид..." я могу вычислить IP-адрес, но не вижу решения по идентификатору раздела. На уровне шаблона "вид материалов" я могу вычислить идентификатор раздела ($FID$), но не могу вычислить IP-адрес посетителя. Какой смысл теперь в разделах/подразделах, если на уровне предлагаемых шаблонов я не могу даже считать базовые вещи? Только внешний эффект? Прошу консультации. Мой сайт: http://www.kamzilla.ru
Сообщение отредактировал Sowyer - Среда, 16 Май 2012, 10:33:03
|
Sowyer,
Quote (Sowyer) Сейчас тэг $FORUM_TITLE$ содержит только название темы форума. Каким образом на уровне шаблона "Общий вид страниц форума" мне получить идентификатор раздела/подраздела форума для текущей темы? Скриптом, по URL - цифры до первого тире - ID форума, между первым и вторым - ID темы. Так же, id форума можно получить из $URI_ID$, но там сложнее, значение разное - в категории выдаёт ID категории, в форуме - ID форума, в теме - ID темы, так что проверку нужно строить сложнее. Проще всего скриптом. Всё написанное выше - моё личное мнение и на абсолютную правоту не претендует.
Есть вопросы лично ко мне - пиши сюда: http://likbezz.ru/forum/8 Сообщение отредактировал fflesh - Среда, 16 Май 2012, 10:10:42
|
fflesh, каким скриптом? javascript-ом, который работает на стороне абонента?
Хочется избежать возможности обмана (отключением javascipt в браузере и т.п.). Quote (fflesh) $URI_ID$ ... в категории выдаёт ID категории, в форуме - ID форума Это неплохо, но все портит Quote (fflesh) $URI_ID$ ... в теме - ID темы т.к. номер темы никак не связан с "родителями"... к примеру у меня форум = frForum100, а тема в этом форуме = frTread22406. Никак не свяжешь. А лочить просмотр темы тоже нужно, т.к. на нее можно выйти по ссылкам из информеров, поисковых систем и т.п. прямых линков. Или я где-то не понял? Мой сайт: http://www.kamzilla.ru
|
Sowyer,
Quote (Sowyer) каким скриптом? javascript-ом, который работает на стороне абонента? Да. Quote (Sowyer) Или я где-то не понял? Так, поняли, так. Тогда вот ещё вариант - вяжите это дело дело к $USER_IP$ в шаблоне Вид материалов форума, и просто не выводите их или выводите соответствующую надпись. Не фонтан решение, но всё же. Всё написанное выше - моё личное мнение и на абсолютную правоту не претендует.
Есть вопросы лично ко мне - пиши сюда: http://likbezz.ru/forum/8 Сообщение отредактировал fflesh - Среда, 16 Май 2012, 10:46:50
|
В шаблоне "Вид материалов форума" $USER_IP$ не равно IP посетителя, а равно IP автора поста в теме, который не может быть предметом сравнения с "черным" списком.
Я уже писал об этом Quote (Sowyer) На уровне шаблона "общий вид..." я могу вычислить IP-адрес, но не вижу решения по идентификатору раздела. На уровне шаблона "вид материалов" я могу вычислить идентификатор раздела ($FID$), но не могу вычислить IP-адрес посетителя. Мой сайт: http://www.kamzilla.ru
Сообщение отредактировал Sowyer - Среда, 16 Май 2012, 12:28:15
|
| |||