Cotonti / Cotonti

Fast, reliable and flexible PHP CMF/CMS
https://www.cotonti.com
BSD 3-Clause "New" or "Revised" License
92 stars 51 forks source link

User ban expire date #1784

Open Alex300 opened 1 month ago

Alex300 commented 1 month ago

[RU]

У нас есть и используется поле в БД users.user_banexpire для хранения даты/времени истечения бана пользователя. Но в modules/users/inc/users.edit.php не генерится тег для вывода этого поля на форму редактирования пользователя. Только импорт этого знаяения как INT и сохранение в БД.

Нужно:

seditio commented 1 month ago

Предлагаю добавить еще поле с датой добавления IP / email и сортировать по убыванию этой даты. Иначе добавил запись, а она где-то на второй или третьей странице оказывается. По мере возможности, поиск и сортировка бы не помешала. И еще один момент: может быть имеет смысл к действиям (обновить и удалить) добавить паузу. Это помогло бы "ставить на проверку" спамерские айпишники вместо удаления и необходимости где-то там помечать подозрительный адрес.

Alex300 commented 1 month ago

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

Dayver commented 1 month ago
  • Заменить тип поля в БД с INT на DATETIME DEFAULT NULL
  • места где оно используется - учесть что в этом поле больше не INT.

А какая логика в этих действиях? Везде в движке для дат преимущественно используется INT

Alex300 commented 1 month ago

Удобство использования. Например написание прямых запросов к БД - не надо конвертить дату в INT чтобы вставить в запрос. И при просмотре данных в таблице удобнее видеть даты а не целые числа. Да и отлаживать запросы удобнее с текстовым представлением даты.

К тому же, с типом INT не работают специализированные функции: https://dev.mysql.com/doc/refman/8.4/en/date-and-time-functions.html

На PHP строковое представление даты также легко сортируется, сравнивается и т.д. И для отладки через XDebug проще когда видишь дату а не INT.

При этом нет потерь в скорости.

Вообще думаю отказаться от использования INT для хранения дат. Пока в новом коде, и там где не сломается совместимость.

Dayver commented 1 month ago

Удобство использования...Вообще думаю отказаться от использования INT для хранения дат. Пока в новом коде, и там где не сломается совместимость.

Прочитал весь комментарий но увидел главенствующее - "удобство". То есть в угоду банальному удобству отказываться от более-менее за года стандартизированного подхода, при этом не имея других значимых плюсов? Что бы опять получить кашу, теперь и в структуре (как это сейчас с стилем кодирования), пусть даже в перспективе когда-то это изменится но будет ли стоит это затраченных усилий? Сравним

TIMESTAM vs DATETIME:

То есть если бы систему движка делали с нуля и стоял холивар "какой тип дат" то простыми словами он бы описывался вопросом - "Или производительность конечного продукта или удобство в процессе разработки?" то руководствуясь концепцией думаю производительность победила бы (уже не помню но по моему сейчас timestam это внутренний стандарт именно поэтому).

Даже решил погуглить актуальное состояние дел в этом вопросе - не нашёл признаков что сейчас всё перевернулось кардинально в сторону DATETIME, и опять же максимум паритет. Так зачем тогда прикладывать усилия что б одно менять на другое?

Или вот даже вопрос удобства и понятности кода новичку - будет ли удобно и понятно если одни столбцы DATETIME а другие TIMESTAM ? Стандартизированность всегда лучше. Ведь как оказалось стратегия затрагивает не только конкретно колонку user_banexpire, потому пол дела если каша будет во время переходного периода другое дело если ведущий разработчик пропадёт (как это уже не раз бывало с движком ... причём в некоторых случая уже точно никто не вставлял палки в колёса но человек все равно пропадал) и все так и зависнет - уж простите но этот вопрос тоже очень беспокоит.

webitproff commented 1 month ago

The whole community is already laughing at you. obsessed with banning users! what have you done for them? Alexey, this doesn’t concern you!

webitproff commented 1 month ago

Пашенька подводное и сиденье старое сэд_БИ - вы убьете не только движок супер умники, вы уже кончили сообщество. больные

webitproff commented 1 month ago

Павло, Копуша - прихлоп из СБУ. не надейся. ты за это заплатишь. как и старое потертое седло на котором ты трешься. Расскажу Владимиру Сибирову какой херней маетесь - рано или поздно он согласится - вы убиваете движок! вы угроза!

webitproff commented 1 month ago

Прям компашка - страны воюют - они друг-другу яйца лижут

webitproff commented 1 month ago

Павло, Копушенька, - колаборация - разведка, СБУ.... пузик прийдется сбросить падаль пузатая - и вообще чмо йобаное какое право ты комок одело чмо зарыганое

webitproff commented 1 month ago

Сэд_БИ - звучит же да, правда отдаёт пидариной ))) ну всмысле предводителем голубых

webitproff commented 1 month ago

я вас пидарасы в покое не оставлю

webitproff commented 1 month ago

без Алексея вы дно пробитое. да павлуша ты, алена - капуша и сиденьн от унитаза - вы безрукие типа разработчики- тьфу мразота

webitproff commented 1 month ago

себя уже забаньте дебилы а не разработчики. бановеды херовы.

webitproff commented 1 month ago

Копуша. в СБУ письмо отправил - пусть тебя проверят. капуша или капуша - вообщем броник тебе больше не носить.

webitproff commented 1 month ago

you need to ban crazy developers like crazy - this will count for you. пидары ты паша и чмо твое с беларусии тоже гомосятко

webitproff commented 1 month ago

я буду вас наковыривать еще долго - вы обьект внимания - я вас сука соберу и достану.

webitproff commented 1 month ago

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

webitproff commented 1 month ago

ты залупа не забывай - всем СБУ на лапу ты не дашь, а мне тебя достать - раз плюнуть - я в рот ебал тебя и вашу страну

webitproff commented 1 month ago

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

webitproff commented 1 month ago

Павло Ткаченко - ты ж мой котик, моя ты целочка, ты стрелочка моя - сука поверь я не знаю когда я отступлю - я тебя пидараса кончу рано или поздно!

webitproff commented 1 month ago

седитио - а потом ты залупка, а капучино - оно порОлельно с пассинькой - эти 2 пидара обо пойдут в СБУ

webitproff commented 1 month ago

бан вам не поможет - поможет то что забанят вас - уйобки. ебучие дэбилы назвывающие себя разработчиками

webitproff commented 1 month ago

Павло ткаченко - ищи себя в поиске - я создал 10 аккаунтов - ну чтоб ты лицо не потерял пидарас ты не просто залупа - ты мой "тык" если мне что не нравится

webitproff commented 1 month ago

Корт, ты собака на очереди, паралельно с пидарком на копуше - ну такое дырявое - ну вы в курсе

webitproff commented 1 month ago

Белявская, ты уже лукашенку напсал что ты только по "БИ" ?

webitproff commented 1 month ago

ну или откровенный хрыч старый который тупо в очко?)

webitproff commented 1 month ago

белявская дима - моя ты динозаврика ))) падаль ты йобаная, как я тебя ненавижу и сука с павликом подводником я вас шмары достану

webitproff commented 1 month ago

кстати, донышки - удачи с баном - математики тупейшие

webitproff commented 1 month ago

если бы не Кальнов - ваши имена в интернете вообще имели бы место забвения - Дмитрий Пидарасовч - сука риспект - ты еще не подох? Павло чмошница Ткаченко - - я посодейдствую - всю твою семью и близких разьбут челез СБУ! падаленок в бронижилете - тебе соизмеримо, но не совсем - НАБУ - а потом пусть тобой лайствуют те, кому законы не писаны.

webitproff commented 1 month ago

ура команда в сборе! - что Вот Сибиров скажет про вас дятлов то ебучих? недоразработчики обрыганные

webitproff commented 1 month ago

уёбки подводные - всех перебанили?))) сука ржу с пидарасов ПАША МРАЗЬ, уЁбок Беляшь, и парнокоптное "КОПУША"