 |
 |
Форум сетевых администраторов » Веб Форумы » VBulletin 3.x.x » Хаки от Netadmin или "Сделай сам" » Хак скрытия линков от гостей.
| Автор |
| Тема |
 |
|
 |
|
|
|
Участник+
|
| Хак скрытия линков от гостей. |
[сооб. #68289]
24-06-2004 03:34 |
|
Участник+


Зарегистрирован: Apr 2002
Место проживания: Земля
Публикаций: 135
Статус:  |
Я тут на каком-то форуме наткнулся на класную фишку - когда по форуму лазиет незарегистрированный гость, то он может читать свободно, но вместо линков видит надпись открыть линк, и когда нажимает на нее, то попадает на страницу регистрации.
Очень полезная фишка для таких форумов, как у меня, где выкладывается куча софта.
А то весь раздел закрывать от гостей не хочется..
Хак нужен для vb3.
__________________
Перхоть - это опилки от спиленных рогов
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
24-06-2004 03:34 |
|
|
Незнайка
|
| Вобщем в разделе Ломаем я разместил нечто... |
[сооб. #68326]
25-06-2004 08:15 |
|
Незнайка


Зарегистрирован: Nov 2001
Место проживания: Mосква
Публикаций: 539
Статус:  |
Вобщем в разделе Ломаем я разместил нечто подобное. Гляньте может быть то.
__________________
Functional Upgraded Construct Kernel for Offensive and Faultless Fighting
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
25-06-2004 08:15 |
|
|
Участник+
|
| я так понимаю, надо, чтобы для гостей/неавторизованных... |
[сооб. #68360]
26-06-2004 14:42 |
|
Участник+

Зарегистрирован: Apr 2004
Место проживания: Питер
Публикаций: 38
Статус:  |
я так понимаю, надо, чтобы для гостей/неавторизованных вырезался тэг [ url ] [/ url ]?
есть мысль..
файл includes/functions_bbcodeparse.php
функция handle_bbcode_url (примерно 1400 строка)
находим
PHP:
global $wysiwygparse;
меняем на PHP:
global $wysiwygparse,$bbuserinfo;
чуть ниже
PHP:
if($type == 'url' AND !preg_match('#^[a-z0-9]+://#si', $rightlink))
{
$rightlink = "http://$rightlink";
}
после этого добавляем
PHP:
if($type == 'url' AND !$bbuserinfo['userid'])
{
$rightlink="register.php?$session[sessionurl]";
$text='[открыть линк]';
}
вместо "[открыть линк]" может быть, разумеется, любой текст =)
__________________
вот так вот...
ICQ 937160
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
26-06-2004 14:42 |
|
|
MuZzClub.ru
|
| а можно еще сделать, чтоб надо было набрать... |
[сооб. #68365]
26-06-2004 19:45 |
|
MuZzClub.ru


Зарегистрирован: Jul 2002
Место проживания: Ireland
Публикаций: 2710
Статус:  |
а можно еще сделать, чтоб надо было набрать например 50 постов, прежде чем линк откроеца?
__________________
yMC.ru - хомяк музыканта
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
26-06-2004 19:45 |
|
|
Участник+
|
| хм, можешь туда вместо проверки userid вбить... |
[сооб. #68366]
26-06-2004 20:34 |
|
Участник+

Зарегистрирован: Apr 2004
Место проживания: Питер
Публикаций: 38
Статус:  |
хм, можешь туда вместо проверки userid вбить любое условие - хоть наличие непрочитанных приваток. 
в данном случае условие будет не PHP:
if($type == 'url' AND !$bbuserinfo['userid'])
а PHP:
if($type == 'url' AND $bbuserinfo['posts']<50)
__________________
вот так вот...
ICQ 937160
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
26-06-2004 20:34 |
|
|
Участник
|
| А какое должно быть условие, что бы пользователь... |
[сооб. #68376]
27-06-2004 13:03 |
|
|
Участник+
|
if($type == 'url' AND !($bbuserinfo['permissions']['forumpermissions'] & CANREPLYOTHERS))
вообще,... |
[сооб. #68380]
27-06-2004 17:10 |
|
Участник+

Зарегистрирован: Apr 2004
Место проживания: Питер
Публикаций: 38
Статус:  |
if($type == 'url' AND !($bbuserinfo['permissions']['forumpermissions'] & CANREPLYOTHERS))
вообще, сделайте print_r($bbuserinfo) - там много полезной инфы о юзере. 
__________________
вот так вот...
ICQ 937160
Сообщение было отредактировано DimonT 27-06-2004 в 17:13
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
27-06-2004 17:10 |
|
|
Участник+
|
| О!... а такую же для vB 2 можно как-то реализовать... |
[сооб. #68411]
28-06-2004 21:18 |
|
Участник+


Зарегистрирован: Mar 2002
Место проживания:
Публикаций: 211
Статус:  |
О!... а такую же для vB 2 можно как-то реализовать ?
__________________
**censored** ->> Уникальный графичесчкий чат
Поймала мыша - ешь неспеша...
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
28-06-2004 21:18 |
|
|
Участник
|
[QUOTE]Первоначальное сообщение от DimonT
[B]if($type... |
[сооб. #68487]
30-06-2004 18:10 |
|
Участник

Зарегистрирован: Feb 2004
Место проживания:
Публикаций: 51
Статус:  |
quote: Первоначальное сообщение от DimonT
if($type == 'url' AND !($bbuserinfo['permissions']['forumpermissions'] & CANREPLYOTHERS))
вообще, сделайте print_r($bbuserinfo) - там много полезной инфы о юзере.
Что-то не работает условие
Точнее работает, но не во всех темах. Даже в одном разделе, в одной теме работает, а в соседней - не.
Сообщение было отредактировано DarkShaman 01-07-2004 в 08:45
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
30-06-2004 18:10 |
|
|
Участник+
|
Katie, можно, разумеется.
файл admin/functions.php
после... |
[сооб. #68529]
01-07-2004 11:27 |
|
Участник+

Зарегистрирован: Apr 2004
Место проживания: Питер
Публикаций: 38
Статус:  |
Katie, можно, разумеется.
файл admin/functions.php
после этого
PHP:
function checkurl($url, $hyperlink="") {
$righturl = $url;
if(!preg_match("![a-z]://!si", $url)) {
$righturl = "http://$righturl";
}
добавить вот это
PHP:
global $bbuserinfo;
if(!$bbuserinfo['userid'])
{
$righturl="register.php?s=$bbuserinfo[sessionhash]&action=signup";
$hyperlink="[открыть линк]";
}
опять-таки, условие и текст линка можно задать любые. 
DarkShaman, мда, ошибочка вышла.. так проверяются только глобальные настройки юзергруппы.
нашел другой метод - подписываем в globals переменную $session, и условие тогда примет такой вид:
if($type == 'url' AND !($bbuserinfo['forumpermissions']["$session[inforum]"] & CANREPLYOTHERS))
__________________
вот так вот...
ICQ 937160
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
01-07-2004 11:27 |
|
|
Участник
|
Хм, всё равно не работает.
Точнее вот тут http://forum.dinfo.ru/showthread.php?t=5669... |
[сооб. #68534]
01-07-2004 12:34 |
|
Участник

Зарегистрирован: Feb 2004
Место проживания:
Публикаций: 51
Статус:  |
Хм, всё равно не работает.
Точнее вот тут http://forum.dinfo.ru/showthread.php?t=5669 работает, а вот тут http://forum.dinfo.ru/showthread.php?t=7049&page=1&pp=15 не работает.
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
01-07-2004 12:34 |
|
|
Участник+
|
а у тебя кэширование постов случайно не включено?
с... |
[сооб. #68535]
01-07-2004 13:11 |
|
Участник+

Зарегистрирован: Apr 2004
Место проживания: Питер
Публикаций: 38
Статус:  |
а у тебя кэширование постов случайно не включено?
с ним наверняка работать неправильно будет...
DimonT добавил 01-07-2004 в 13:15:10:
собственно, именно на это и похоже, т.к. первый твой линк - старая тема, а второй - новая. 
кэширование, разумеется, надо отключить (vB Options >> Cached Posts Lifespan >> 0), т.к. тут надо для каждого юзера по-своему обрабатывать BB-коды.
__________________
вот так вот...
ICQ 937160
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
01-07-2004 13:11 |
|
|
|
Формат времени GMT. Текущее время 23:06.
|
Правила форума:
Вы не можете создавать новые темы.
Вы не можете отвечать на существующие темы.
Вы не можете прикреплять файлы.
Вы не можете редактировать свои сообщения. |
HTML теги выкл.
Спец. код вкл.
Смайлики вкл.
[IMG] тег выкл.
|
|
|
|
| |
Page generated in 0.37248802 seconds (98.11% PHP - 1.89% MySQL) with 27 queries.
|
 |