[FINAL] Warnings Mod

Здесь авторы постили бета-версии своих модификаций для phpBB 2.0.x. Внимание! Не устанавливайте бета-версии модов на работающие форумы!
dnk
phpBB 2.0.4
Сообщения: 432
Стаж: 18 лет 8 месяцев
Благодарил (а): 5 раз
Поблагодарили: 1 раз

Сообщение dnk »

Посмотрел Ваш мод:
интересно сделали.Причем вроде нет возможности установить нужный период предупреждения (любое число дней), а только из списка.
Если у администраторов установлен мод Глобальных модераторов, то в скрипте warnings.php нужно в массиве

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

array(ADMIN,MOD) 
заменить на

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

array(ADMIN,GLOBAL_MOD,MOD)
везде, где встретится.
А также найти

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

$userdata['user_level'] != ADMIN
и заменить на

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

 $userdata['user_level'] != ADMIN || $userdata['user_level'] != GLOBAL_MOD
, если Вы хотите дать супермодераторам админские полномочия по выдаче предупреждений и блокировок и редактрования, снятия и удаления их.
Если установлен мод Супермодераторов, то константа будет не GLOBAL_MOD , а SUPER_MOD - т.е. та, что определена у вас в includes/constants.php
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 21 год 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

go
Поправим в следующей версии.

dnk
Да уж, приходится изворачиваться в поисках решений, обеспечиващих максимально возможную производительность.
За рецепты спасибо, только уточню что еще есть проверка $postrow[$i]['user_level'] во viewtopic.php, возможно и там потребуется внести коррективы.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
dnk
phpBB 2.0.4
Сообщения: 432
Стаж: 18 лет 8 месяцев
Благодарил (а): 5 раз
Поблагодарили: 1 раз

Сообщение dnk »

Xpert писал(а):go
только уточню что еще есть проверка $postrow[$i]['user_level'] во viewtopic.php, возможно и там потребуется внести коррективы.
Да-да, это я чуть позже вспомнил - возможно для отображения мини-иконки желтой карты в постах рядом с простыми юзерами.Да, собственно, и ставится в разы быстрее, чем "Демократия" - так как, собственно фич содержит мало (последнюю версию "Демократии" просто "раздули" ими).Отсутсвует система репутации - ну тут, я думаю, мод предполагался только как цель обеспечить администрацию функциями предупреждения, а модераторов еще и функциями блокировки, в т.ч. на время, а не только перманентно.Можно, по идее, если есть модер-панель modcp, взять и скопировать скрипт admin_user_ban.php в нее (подправив, разумеется, футер внизу файла внутри), но бывают такие модеры, которые смогут, используя этот скрипт, типа шутки ради, забанить админа по IP...
Unix_spv

Сообщение Unix_spv »

Небольшой баг при удалении юзеров из админки. В файле admin/admin_users.php ругается на запрос:

$sql = "SELECT warning_id FROM " . WARNINGS_TABLE . " WHERE warning_userid = $user_id";

тут поле warning_userid неправильно написано, нужно warning_user_id.

Соотвественно правильный запрос такой:

$sql = "SELECT warning_id FROM " . WARNINGS_TABLE . " WHERE warning_user_id = $user_id";
Аватара пользователя
go
phpBB 2.0.1
Сообщения: 261
Стаж: 19 лет 1 месяц

Сообщение go »

Unix_spv писал(а):$sql = "SELECT warning_id FROM " . WARNINGS_TABLE . " WHERE warning_userid = $user_id";
она же(ошибка) не даст назначать модераторов в рубрику....
Изображение
Это лох-неское чудовище потеряло свое озеро и бегает, пока его кто-нибудь не пристрелит.
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 21 год 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

go писал(а):она же(ошибка) не даст назначать модераторов в рубрику....
А конкретнее можно, как воспроизвести?
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
go
phpBB 2.0.1
Сообщения: 261
Стаж: 19 лет 1 месяц

Сообщение go »

Панель администратора->Пользователи->Права пользователя->Попытка просмосмотра прав пользователя->Вывод ошибки:
Общая ошибка
Could not select all users private messages

DEBUG MODE

SQL Error : 1054 Unknown column 'warning_userid' in 'where clause'

SELECT warning_id FROM phpbb_warnings WHERE warning_userid = 458

Line : 195
File : admin_users.php
==============
на строке 194:$sql = "SELECT warning_id FROM " . WARNINGS_TABLE . " WHERE warning_userid = $user_id";
на строке 195:$result = $db->sql_query($sql) or message_die(GENERAL_ERROR, 'Could not select all users private messages', '', __LINE__, __FILE__, $sql);
==============
Тоже самое при попытке удалить юзеря.Благополучно исправлено)
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 21 год 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

Да это-то понятно, интересно другое - почему он при просмотре пытается этот запрос выполнить...
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
Mr. Anderson
phpBB Guru
phpBB Guru
Сообщения: 7522
Стаж: 21 год 1 месяц
Откуда: СССР
Благодарил (а): 4 раза
Поблагодарили: 94 раза

Сообщение Mr. Anderson »

go писал(а):Could not select all users private messages
private messages? Я не ослышался? :? :shock: :?
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 21 год 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

Там все ок, оттуда был запрос взят и переделан.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
natali
phpBB 2.0.1
Сообщения: 293
Стаж: 19 лет 11 месяцев
Откуда: Киев

Сообщение natali »

$lang['Warning_cannot_remove_expired'] = 'Вы не можете снять истекщее предупреждение';

а гед можно псомотреть его в работе?
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 21 год 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

Эту языковую переменную? Или мод?
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
natali
phpBB 2.0.1
Сообщения: 293
Стаж: 19 лет 11 месяцев
Откуда: Киев

Сообщение natali »

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

сам мод посмотреть...
Аватара пользователя
go
phpBB 2.0.1
Сообщения: 261
Стаж: 19 лет 1 месяц

Сообщение go »

на счет языковой переменной. в моде присуствует такая языковая переменная:
$lang['Warnings_not_enough_params'] = 'Недостаточно данных';
в каких случаях она появляется?
при использовании мода заметил , что только в одном: когда пытается модаратор дать предупреждение и не вводит тект с объяснением за что дано предупреждение или же бан.
Многие модераторы откровенно тупят видя такое сообщение...Возможно .правильней было бы написать "Вы должны объяснить за что Вы даете предупреждение или бан"

тупят,имеется ввиду,входят в ступор.а так они умные.)
Lektor
phpBB 2.0.7
Сообщения: 574
Стаж: 19 лет

Сообщение Lektor »

Идея для аддона:
Выводить причину бана, когда пользователь патается зайти на форум(причина берется та, которую указал модератор при бане), а если он получил бан по совокупности предупреждений, то так и пишется: Бан по совокупности предупреждений и перечисляются.

Вернуться в «Бета-версии модов для phpBB 2.0.x»