Forums / National / Russian / Идеи / Предложение по плагину Banlist

12>>>

Yusupov
#1 2014-08-03 05:22

Не плохо было бы добавить возможность банить пользователей по логину,а  не только по IP-адресу. 

Kort
#2 2014-08-04 12:27

Есть же для этого группа Banned
 

SED.by - создание сайтов, разработка плагинов и тем для Котонти
Yusupov
#3 2014-08-04 14:34
#39651 Kort:

Есть же для этого группа Banned
 

Есть, но удобнее когда можно установить срок блокировки. 

Добавлено 22 минуты спустя:

К тому же, в этом плагине есть возможность блокировать только по IP-адресу, а по логину нельзя, что в сегодняшних реалиях в принципе нереально, так как у большинства пользователей динамические адреса, и у провайдеров может быть много подсетей. Поэтому невозможно заблокировать конкретного пользователя только по IP. А по заблокированным IP-адресам могут зайти и другие пользователи этого провайдера, которые из-за этого не смогут зайти на сайт. 

This post was edited by Yusupov (2014-08-04 14:58, 9 years ago)
Kort
#4 2014-08-04 15:20

А какой реальный толк от блокировки по логину? И тогда надо как-то временно помещать их в группу Banned.

SED.by - создание сайтов, разработка плагинов и тем для Котонти
Yusupov
#5 2014-08-04 17:16
#39653 Kort:

А какой реальный толк от блокировки по логину? И тогда надо как-то временно помещать их в группу Banned.

Как какой?! Например стоит задача заблокировать какого-нибудь нарушителя на определенное время, и чтобы после истечения срока блокировки, пользователь смог и дальше пользоваться своим аккаунтом.

Например такая ситуация с форумом. Все говорят, что на Cotonti форум никакой. В плане функционала кроме как создания тем и их перемещение по категориям ничего нет. Даже временно заблокировать пользователя оказывается тоже невозможно. Представьте ситуацию когда у вас таких нарушителей десятки. Вы что будете держать в голове какого из них нужно разблокировать через определенное время? И такая ситуация может возникнуть не только на форуме, например, если пользователь будет спамить в комментариях или в личных сообщениях. Блокировать навсегда конечно можно, но мне кажется это уже последнее к чему надо прибегать.

Какой тогда вообще толк от этого плагина, если он не выполняет свою задачу?

Добавлено 10 минуты спустя:

#39653 Kort:

И тогда надо как-то временно помещать их в группу Banned.

Это не обязательно. Можно просто запрещать авторизацию пользователям указанным в банлисте.

This post was edited by Yusupov (2014-08-04 17:26, 9 years ago)
Kort
#6 2014-08-04 18:47

А что -- новый аккаунт взамен забаненого по логину создать сложно?

SED.by - создание сайтов, разработка плагинов и тем для Котонти
Yusupov
#7 2014-08-05 03:59
#39656 Kort:

А что -- новый аккаунт взамен забаненого по логину создать сложно?

Не проблема конечно, но есть сайты где дорожат своими аккаунтами.

Macik
#8 2014-08-11 01:19
#39654 Yusupov:

Какой тогда вообще толк от этого плагина, если он не выполняет свою задачу?

То, что он старый еще не значит что бесполезный. :)

Это не обязательно. Можно просто запрещать авторизацию пользователям указанным в банлисте.

На сколько я помню, там не только по IP можно, но и по email, что немногим отличается от логина.

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
Yusupov
#9 2014-08-11 04:03
#39676 Macik:

На сколько я помню, там не только по IP можно, но и по email, что немногим отличается от логина.

Когда будете смотреть код обратите внимание, блокировка по email осуществляется только при регистрации (plugins/banlist/banlist.register.php)! Соответственно, существующих пользователей заблокировать по email не получится. В этом то и вся соль!

Macik
#10 2014-08-29 23:47
#39677 Yusupov:

Когда будете смотреть код обратите внимание, блокировка по email осуществляется только при регистрации (plugins/banlist/banlist.register.php)! Соответственно, существующих пользователей заблокировать по email не получится. В этом то и вся соль!

Ок.  В код давно не смотрел. По сути делается добавлением пары условий.

Обновил плагин — https://github.com/macik/cot-banlist  

Потестируйте. Если устраивает можно обновить сборку.

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
Yusupov
#11 2014-08-31 05:50

Спасибо огромнейшее! Блокировка работает!

Надо только тексты перенести в языковые файлы.

И текст об ошибке выводит также пути к файлам, что не есть гуд:

Срок действия блокировки: 07.09.2014 09:43) called at [...plugins/banlist/banlist.global.php:54]
#1  include(...plugins/banlist/banlist.global.php) called at [...system/common.php:633]
#2  require_once(...system/common.php) called at [...index.php:37]

 

Добавлено 1 часа спустя:

И еще, кнопка "Удалить" не работает.

This post was edited by Yusupov (2014-08-31 06:54, 9 years ago)
Macik
#12 2014-09-01 07:43
#39698 Yusupov:

Спасибо огромнейшее! Блокировка работает!

Надо только тексты перенести в языковые файлы.

Вроде перенес их. Или я где-то, что-то упустил? 

И текст об ошибке выводит также пути к файлам, что не есть гуд:

Срок действия блокировки: 07.09.2014 09:43) called at [...plugins/banlist/banlist.global.php:54]
#1  include(...plugins/banlist/banlist.global.php) called at [...system/common.php:633]
#2  require_once(...system/common.php) called at [...index.php:37]

Это результат использования функции `cot_diefatal($disp);` так было в оригинале и я не ничего менял (почему используется она и на сколько она оправдана надо стпросить у Владимира).

Добавлено 1 часа спустя:

И еще, кнопка "Удалить" не работает.

Тут вопрос к исходнику, т.к. эту часть я вообще не трогал.

 

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
Yusupov
#13 2014-09-01 11:16

Вроде перенес их. Или я где-то, что-то упустил? 

Да, точно. Но у меня почему-то выбор сроков со сбитой кодировкой показывает:

Macik
#14 2014-09-01 15:56
#39714 Yusupov:

Вроде перенес их. Или я где-то, что-то упустил? 

Да, точно. Но у меня почему-то выбор сроков со сбитой кодировкой показывает:

Там используются системные языковые паременные:

$time_values = array($L['adm_neverexpire'], '1 '.$Ls['Hours']['0'], '2 '.$Ls['Hours']['0'], '4 '.$Ls['Hours']['0'], '8 '.$Ls['Hours']['0'], '16 '.$Ls['Hours']['0'], '1 '.$Ls['Days']['0'],
		'2 '.$Ls['Days'][0], '4 '.$Ls['Days'][0], '1 '.$L['Week'], '2 '.$L['Weeks'], '3 '.$L['Weeks'], '1 '.$L['Month']);

, так что смотри свою сборку

 

Добавлено 4 месяца спустя:

Да, точно. Но у меня почему-то выбор сроков со сбитой кодировкой показывает:

Покопался... Действительно баг. Часть которого тянется с марта 2013 (когда меняли формат строк локализации $Ls), а вторая часть еще с Генуи, похоже.
 

Это результат использования функции `cot_diefatal($disp);` так было в оригинале и я не ничего менял 

Заменил на более userfriendly `cot_die_message(403,…);`

 

Доработал еще немного — теперь можно блокировать пользователя по имени (логину).

Смотри новую версию здесь

 

Если замечаний не будет волью в основную ветку и закрою #1358.

 

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
This post was edited by Macik (2015-01-06 01:58, 9 years ago)
Kopusha
#15 2017-02-27 15:46
#39676 Macik:
#39654 Yusupov:

Какой тогда вообще толк от этого плагина, если он не выполняет свою задачу?

То, что он старый еще не значит что бесполезный. :)

i am old but not obsolete )))

12>>>