Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Guests less anonymous

Ответы на вопросы, связанные с модами для phpBB 2.0.x, кроме относящихся к форуму Для авторов (phpBB 2.0.x).
Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Стаж: 19 лет 5 месяцев
Поблагодарили: 1 раз

Guests less anonymous

Сообщение VVVas »

Есть вот такой мод Guests less anonymous, который легко находиться на phpbbhacks.com

Так вот для начала, я привел всё к одному виду изображения

Код: Выделить всё

	if ( $poster_id == ANONYMOUS )
		if ($postrow[$i]['post_username'] != '') 
		{
			$poster_rank = $lang['Guest'] . ' ' . decode_ip($postrow[$i]['poster_ip']);
			$poster = $postrow[$i]['post_username'];
		}
		else
		{
			$poster_rank = $lang['Guest'] . ' ' . decode_ip($postrow[$i]['poster_ip']);
			$poster = $lang['Guest'];
А потом очень хороший человек по имени sunchess (его сайт lab.com.ru) сделал маскировку, которая заменяет посление цифры в IP звездочкой, вот так

Код: Выделить всё

	if ( $poster_id == ANONYMOUS )
		if ($postrow[$i]['post_username'] != '') 
		{
$ip_vvvas = decode_ip($postrow[$i]['poster_ip']);
$ip_vvvas = preg_replace('/^(\d{1,3}\.\d{1,3}\.\d{1,3}\.)\d{1,3}$/','\\1*', $ip_vvvas);
			$poster_rank = $lang['Guest'] . ' ' . $ip_vvvas;
			$poster = $postrow[$i]['post_username'];
		}
		else
		{
$ip_vvvas = decode_ip($postrow[$i]['poster_ip']);
$ip_vvvas = preg_replace('/^(\d{1,3}\.\d{1,3}\.\d{1,3}\.)\d{1,3}$/','\\1*', $ip_vvvas);
			$poster_rank = $lang['Guest'] . ' ' . $ip_vvvas;
$poster = $lang['Guest'];
Как это выглядит можно посмотреть в любом посте гостя у меня на форуме. Просто может кому надо - делайте. Поправки тоже принимаються.
И ещё раз от меня большое спасибо sunchess.
я люблю daft punk | новый sugoi.ru
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Стаж: 19 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

VVVas
благодарю... мод действительно нужный =))) только не знал о нем =)))
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
Vladson
Former team member
Сообщения: 816
Стаж: 20 лет
Откуда: Estonia, Tallinn

Сообщение Vladson »

Мод не плохой, но вот рекомендовать я бы его не стал, требует доработки и причём не слабой...
Серый цвет - светлый (светлее чёрного), но он и тёмный (темнее белого), он же промежуточный (между чёрным и белым). Теорию относительности никто не отменял. Истина в целом - понятие виртуально-ситуативное.
Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Стаж: 19 лет 5 месяцев
Поблагодарили: 1 раз

Сообщение VVVas »

Vladson писал(а):Мод не плохой, но вот рекомендовать я бы его не стал, требует доработки и причём не слабой...
Можно поинтересоваться доработки в каком направлении? Ну и что бы вы рекомендовали доработать в первую очередь? А так же как, потому как я не умею?

Добавлено спустя 53 секунды:

[R: R@m$e$ :U]
Нужность его далеко не доказательна, просто я бы такой хотел.
я люблю daft punk | новый sugoi.ru
Аватара пользователя
IGO
phpBB 2.0.1
Сообщения: 297
Стаж: 19 лет

Сообщение IGO »

[R: R@m$e$ :U] писал(а):VVVas
благодарю... мод действительно нужный =))) только не знал о нем =)))
Чего-то я не понял, а зачём этот мод? :? :? :? :roll:
Терпение и труд - всё перетрут
Я на этом форуме уже чуть больше года.. спасибо вам за помощь!
Аватара пользователя
Vladson
Former team member
Сообщения: 816
Стаж: 20 лет
Откуда: Estonia, Tallinn

Сообщение Vladson »

Вот реализация которую рекомендовал бы я

Код: Выделить всё

##############################################################
## MOD Title: mod_title_goes_here
## MOD Author: your_phpBB_username < your_email > (your_real_name) your_url
## MOD Description: some_description_goes_here
## MOD Version: x.x.x
##
## Installation Level: (Easy/Intermediate/Advanced)
## Installation Time: x Minutes
## Files To Edit: file_1, file_2, file_3, etc
## Included Files: (n/a, or list of included/required files)
##############################################################
## For Security Purposes, Please Check: http://phpbbguru.net/mods/ for the
## latest version of this MOD. Downloading this MOD from other sites could cause malicious code
## to enter into your phpBB Forum. As such, phpBB will not offer support for MOD's not offered
## in our MOD-Database, located at: http://phpbbguru.net/mods/
##############################################################
## Author Notes:
##
##############################################################
## MOD History:
##
##   YYYY-MM-DD - Version x.x.x
##      - version notes go here
##
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
############################################################## 

#
#-----[ OPEN ]------------------------------------------
#
includes/functions.php

#
#-----[ FIND ]------------------------------------------
#
function decode_ip($int_ip)
{

#
#-----[ BEFORE, ADD ]------------------------------------------
#
function decode_ip_masked($int_ip)
{
	$hexipbang = explode('.', chunk_split($int_ip, 2, '.'));
	return hexdec($hexipbang[0]). '.' . hexdec($hexipbang[1]) . '.*.*';
}

#
#-----[ OPEN ]------------------------------------------
#
viewtopic.php

#
#-----[ FIND ]------------------------------------------
#
	$poster_rank = '';
	$rank_image = '';
	if ( $postrow[$i]['user_id'] == ANONYMOUS )
	{

#
#-----[ AFTER, ADD ]------------------------------------------
#
		$poster_rank = decode_ip_masked($postrow[$i]['poster_ip']);

#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM
Добавлено спустя штаны:

Поясню что просто функция preg_replace является давольно ресурсоёмкой и в данном случае неуместной

Добавлено спустя штаны:

Вот ещё вариант, но какой из них лучше я не уверен

Код: Выделить всё

##############################################################
## MOD Title: mod_title_goes_here
## MOD Author: your_phpBB_username < your_email > (your_real_name) your_url
## MOD Description: some_description_goes_here
## MOD Version: x.x.x
##
## Installation Level: (Easy/Intermediate/Advanced)
## Installation Time: x Minutes
## Files To Edit: file_1, file_2, file_3, etc
## Included Files: (n/a, or list of included/required files)
##############################################################
## For Security Purposes, Please Check: http://phpbbguru.net/mods/ for the
## latest version of this MOD. Downloading this MOD from other sites could cause malicious code
## to enter into your phpBB Forum. As such, phpBB will not offer support for MOD's not offered
## in our MOD-Database, located at: http://phpbbguru.net/mods/
##############################################################
## Author Notes:
##
##############################################################
## MOD History:
##
##   YYYY-MM-DD - Version x.x.x
##      - version notes go here
##
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
############################################################## 

#
#-----[ OPEN ]------------------------------------------
#
includes/functions.php

#
#-----[ FIND ]------------------------------------------
#
function decode_ip($int_ip)
{
	$hexipbang = explode('.', chunk_split($int_ip, 2, '.'));
	return hexdec($hexipbang[0]). '.' . hexdec($hexipbang[1]) . '.' . hexdec($hexipbang[2]) . '.' . hexdec($hexipbang[3]);
}

#
#-----[ REPLACE WITH ]------------------------------------------
#
function decode_ip($int_ip, $masked=false)
{
	$hexipbang = explode('.', chunk_split($int_ip, 2, '.'));
	return $masked ? hexdec($hexipbang[0]). '.' . hexdec($hexipbang[1]) . '.*.*' : hexdec($hexipbang[0]). '.' . hexdec($hexipbang[1]) . '.' . hexdec($hexipbang[2]) . '.' . hexdec($hexipbang[3]);
}

#
#-----[ OPEN ]------------------------------------------
#
viewtopic.php

#
#-----[ FIND ]------------------------------------------
#
	$poster_rank = '';
	$rank_image = '';
	if ( $postrow[$i]['user_id'] == ANONYMOUS )
	{

#
#-----[ AFTER, ADD ]------------------------------------------
#
		$poster_rank = decode_ip($postrow[$i]['poster_ip'], true);

#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM
Серый цвет - светлый (светлее чёрного), но он и тёмный (темнее белого), он же промежуточный (между чёрным и белым). Теорию относительности никто не отменял. Истина в целом - понятие виртуально-ситуативное.
Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Стаж: 19 лет 5 месяцев
Поблагодарили: 1 раз

Сообщение VVVas »

Vladson
Поставил первый вариант, было несколько дополнительных изменений во viewtopic.php. Всё работает, но хотелось бы скрывать только после последней точки, такое можно?

Со вторым вариантом проверю чуть позже - есть сейчас иду.
я люблю daft punk | новый sugoi.ru
Аватара пользователя
Vladson
Former team member
Сообщения: 816
Стаж: 20 лет
Откуда: Estonia, Tallinn

Сообщение Vladson »

В первом варианте делается так (хотя это настолько простой код что можно было и догадаться)

Код: Выделить всё

#
#-----[ OPEN ]------------------------------------------
#
includes/functions.php

#
#-----[ FIND ]------------------------------------------
#
function decode_ip_masked($int_ip)
{
   $hexipbang = explode('.', chunk_split($int_ip, 2, '.'));
   return hexdec($hexipbang[0]). '.' . hexdec($hexipbang[1]) . '.*.*';
}

#
#-----[ REPLACE WITH ]------------------------------------------
#
function decode_ip_masked($int_ip)
{
   $hexipbang = explode('.', chunk_split($int_ip, 2, '.'));
   return hexdec($hexipbang[0]). '.' . hexdec($hexipbang[1]) . '.' . hexdec($hexipbang[2]) . '.*';
}

А вот на счёт разницы вариантов тут вопрос сложный, скорее всего первый даже лучше
Серый цвет - светлый (светлее чёрного), но он и тёмный (темнее белого), он же промежуточный (между чёрным и белым). Теорию относительности никто не отменял. Истина в целом - понятие виртуально-ситуативное.
Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Стаж: 19 лет 5 месяцев
Поблагодарили: 1 раз

Сообщение VVVas »

Если б меня не гнали есть, то возможно. И ещё я почему-то хотел поменять

Код: Выделить всё

$int_ip, 2, '.'
на

Код: Выделить всё

$int_ip, 3, '.'
Ну и в конце убирал звездочку.

Добавлено спустя 52 секунды:

И ещё раз спасибо, просто огроменное спасибо. И ещё раз спасибо за EasyReply.
я люблю daft punk | новый sugoi.ru
Аватара пользователя
Vladson
Former team member
Сообщения: 816
Стаж: 20 лет
Откуда: Estonia, Tallinn

Сообщение Vladson »

VVVas писал(а):И ещё раз спасибо за EasyReply.
А вот это не за что, я там только концепцию предложил, реализация 99% ваша
Серый цвет - светлый (светлее чёрного), но он и тёмный (темнее белого), он же промежуточный (между чёрным и белым). Теорию относительности никто не отменял. Истина в целом - понятие виртуально-ситуативное.
Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Стаж: 19 лет 5 месяцев
Поблагодарили: 1 раз

Сообщение VVVas »

VVVas писал(а):Поставил первый вариант, было несколько дополнительных изменений во viewtopic.php
Делал так
найти

Код: Выделить всё

   $poster_rank = ''; 
   $rank_image = ''; 
   if ( $postrow[$i]['user_id'] == ANONYMOUS ) 
   {
добавил

Код: Выделить всё

	$poster_rank = $lang['Guest'] . ' ' . decode_ip_masked($postrow[$i]['poster_ip']);
И ниже

Код: Выделить всё

	//
	// Handle anon users posting with usernames
	//
	if ( $poster_id == ANONYMOUS && $postrow[$i]['post_username'] != '' )
	{
		$poster = $postrow[$i]['post_username'];
		$poster_rank = $lang['Guest'];
В найденном удалил

Код: Выделить всё

$poster_rank = $lang['Guest'];
Добавлено спустя 3 минуты 25 секунд:

В противном случае что-то не отображалось.
я люблю daft punk | новый sugoi.ru
Аватара пользователя
Vladson
Former team member
Сообщения: 816
Стаж: 20 лет
Откуда: Estonia, Tallinn

Сообщение Vladson »

VVVas писал(а):В найденном удалил

Код: Выделить всё

$poster_rank = $lang['Guest'];
Я бы всё-же не удалял, а заменил на

Код: Выделить всё

$poster_rank = $lang['Guest'] . ' ' . decode_ip_masked($postrow[$i]['poster_ip']);
(Разницы никакой, но что-то мне подсказывает что было бы правильнее)
Серый цвет - светлый (светлее чёрного), но он и тёмный (темнее белого), он же промежуточный (между чёрным и белым). Теорию относительности никто не отменял. Истина в целом - понятие виртуально-ситуативное.
Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Стаж: 19 лет 5 месяцев
Поблагодарили: 1 раз

Сообщение VVVas »

Vladson
Поправил. Живет.
Могу предположить, что без этого возможно залипание IP для двух последовательных гостей в случае если первый не заполняет поле Имя, а второй не заполняет?
Хотя вероятно я не так понимаю логику этого места во viewtopic.php.

Добавлено спустя 55 секунд:

Но только в определенной хитрой ситуации, это наверное возможно.
я люблю daft punk | новый sugoi.ru
Аватара пользователя
Vladson
Former team member
Сообщения: 816
Стаж: 20 лет
Откуда: Estonia, Tallinn

Сообщение Vladson »

VVVas писал(а):это наверное возможно.
Это возможно и не возможно, но если поставить какой нибудь левый мод (который делал бы это возможным) то возможно это было бы возможно именно так.. :D (ИМХО)
Серый цвет - светлый (светлее чёрного), но он и тёмный (темнее белого), он же промежуточный (между чёрным и белым). Теорию относительности никто не отменял. Истина в целом - понятие виртуально-ситуативное.
Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 5284
Стаж: 19 лет 3 месяца
Откуда: Питер
Благодарил (а): 186 раз
Поблагодарили: 793 раза

Сообщение Siava »

Я этот мод ещё весной поставил, только полностью переписал :lol:
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb 2.0.x 3.5.x)

Вернуться в «Поддержка модов для phpBB 2.0.x»