Mania wrote:/lockacct [username] [time] - локаккт со временем, например 10 минут и через 10 минут он разбанится
Заранее спасибо.
Так тоже подумал, решил у себя сделать.
Вариант есть такой, добавляем ещё одну таблицу например time_lock в этой таблице будет хранится дата в секундах.
Объясню, пишем /lockacct nick 120 - принцип прост, берем now()+120 и сохраняем в базу.
При логине модернизируем проверку логируемого пользователя где будет две проверки:
сверка стоит ли сам лок это auth_lockk == 1 если да то проверить окончание окончание бана где now()<timelock значит время разбана ещё не наступило и не впускать пользователя. Если же время уже вышло, тогда auth_lock делаем 0, при долговечном бане будем например дату разбана ставить на год вперед.
Принцип простой, зато никаких лишних нагрузок, только при бане и при проверке логина именно забаненного.
Так же как ipban не будет идти проверка раз в минуту, что добавляет приличную нагрузку.
Mania wrote:/lockacct list - покажет список тех кто залочен на время и сколько им осталось(сюда не входят те у кого локакк без времени чтобы не засорять список.)
Заранее спасибо.
Так тогда придется для временных сделать auth_lock == 2 (2-временный, 1-навсегда,0-нет бана)
Отображать весь список в батлнет вот только зачем? представляете их будет 100, куда их отображать?
Поэтому можно сделать скрипт пхп который будет отображать данные на сайте опять же разделять их по переменно auth_lock