Auto Groups

Поддержка старых модов или модов, созданных авторами не из нашего сообщества, а также любые вопросы, связанные с модами для phpBB 3.0.x, кроме относящихся к форуму Для авторов (phpBB 3.0.x).
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
mad_acer
phpBB 1.0.0
Сообщения: 4
Стаж: 16 лет
Благодарил (а): 3 раза

Re: Auto Groups

Сообщение mad_acer »

Друзья, подскажите несколько вопросов. Или я что-то неправильно делаю или просто не понял сути работы мода.

Итак мои требования к моду - пользователь может создавать темы после набора определенного количества сообщений - в функционале мода это есть. Далее я создаю группу, называю её, к примеру, "Новичок", ставлю "пределы сообщений" для группы - минимум 1 максимум 25. Для данной группы определяю форумные права в которых отмечаю, что в определенном форуме эта группа не может создавать темы. Всё теоретически правильно, но ничего не работает. При входе в управление группами в полях, где указывается лимит (мин-макс) сообщений, снова стоят нули, соответственно, насколько я понимаю, мод не работает в полной мере или так и должно быть? Как добавлять пользователя в группу созданную мной, тоже не понятно. подскажите, будьте добры, заранее благодарен за любой ответ.
MAzZY
Бывший член :)
Сообщения: 2925
Стаж: 21 год 4 месяца
Благодарил (а): 79 раз
Поблагодарили: 69 раз
Забанен: Бессрочно

Re: Auto Groups

Сообщение MAzZY »

Сделайте наоборот - группу, которой разрешено создавать темы. В настройках поставьте минимум 25. Остальным создавать запрещено
mad_acer
phpBB 1.0.0
Сообщения: 4
Стаж: 16 лет
Благодарил (а): 3 раза

Re: Auto Groups

Сообщение mad_acer »

MAzZY
Спасибо, как то я этот момент упустил :)

Получил результат:

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

[phpBB Debug] PHP Notice: in file /includes/functions_autogroup.php on line 245: Undefined index: group_auto_default

Warning: Cannot modify header information - headers already sent by (output started at /home2/photokil/public_html/includes/functions.php:3253) in /home2/photokil/public_html/adm/index.php on line 164

Warning: Cannot modify header information - headers already sent by (output started at /home2/photokil/public_html/includes/functions.php:3253) in /home2/photokil/public_html/adm/index.php on line 166

Warning: Cannot modify header information - headers already sent by (output started at /home2/photokil/public_html/includes/functions.php:3253) in /home2/photokil/public_html/adm/index.php on line 167

Warning: Cannot modify header information - headers already sent by (output started at /home2/photokil/public_html/includes/functions.php:3253) in /home2/photokil/public_html/adm/index.php on line 168
По указанным строкам в индексе админки обнаружил такое -

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

	// application/xhtml+xml not used because of IE
	header('Content-type: text/html; charset=UTF-8');

	header('Cache-Control: private, no-cache="set-cookie"');
	header('Expires: 0');
	header('Pragma: no-cache');
Вот такая вот ситуация. Куда копать?
MAzZY
Бывший член :)
Сообщения: 2925
Стаж: 21 год 4 месяца
Благодарил (а): 79 раз
Поблагодарили: 69 раз
Забанен: Бессрочно

Re: Auto Groups

Сообщение MAzZY »

mad_acer
phpBB 1.0.0
Сообщения: 4
Стаж: 16 лет
Благодарил (а): 3 раза

Re: Auto Groups

Сообщение mad_acer »

MAzZY
Спасибо, это я прочел с год назад наверное, как только начал этим увлекаться :)
MAzZY
Бывший член :)
Сообщения: 2925
Стаж: 21 год 4 месяца
Благодарил (а): 79 раз
Поблагодарили: 69 раз
Забанен: Бессрочно

Re: Auto Groups

Сообщение MAzZY »

Ну так прочтите еще раз и установите мод как следует
mad_acer
phpBB 1.0.0
Сообщения: 4
Стаж: 16 лет
Благодарил (а): 3 раза

Re: Auto Groups

Сообщение mad_acer »

Откатил файлы, поставил мод с нуля, ставил внимательно и добросовестно - эффект тот же что я и описывал.
MAzZY
Бывший член :)
Сообщения: 2925
Стаж: 21 год 4 месяца
Благодарил (а): 79 раз
Поблагодарили: 69 раз
Забанен: Бессрочно

Re: Auto Groups

Сообщение MAzZY »

Версия мода и движка?
Ketzer
phpBB 1.2.0
Сообщения: 11
Стаж: 16 лет 6 месяцев
Благодарил (а): 2 раза

Re: Auto Groups

Сообщение Ketzer »

Интересная штука после установки этого мода (1.0.2 на 3.0.7PL-1) обнаружилась - создаю группу, задаю настройки: допустим, минимальное количество дней регистрации 730 и минимальное количество собщений 500, сохраняю. Группа создается, и в ней кого только нет - почему-то в нее зачисляются участники, абсолютно не соответствующие условию. Открываю настройки группы - все параметры на своих местах, ничего не меняю, сохраняю - в группе уже меньшее количество участников, причем полностью соответствующих условию (730 и 500). И так каждый раз - заходишь в настройки группы, меняешь их (не радикально, допустим, 731 и 501), сохраняешь - в группе куча левого народа. Снова заходишь, ничего не меняешь, сохраняешь - в группе только правильные участники. Где-то придется покопаться...
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 20 лет 4 месяца
Откуда: Питер
Благодарил (а): 3 раза
Поблагодарили: 454 раза

Re: Auto Groups

Сообщение Палыч »

Ketzer
МОД для тройки не смотрел, но помню для двойки были параметры на зачисление в группу и на удаление из группы. И чекбокс на пересчёт группы (или нет) при сохранении параметров. Посмотрите, возможно более корректно нужно устанавливать параметры?
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Ketzer
phpBB 1.2.0
Сообщения: 11
Стаж: 16 лет 6 месяцев
Благодарил (а): 2 раза

Re: Auto Groups

Сообщение Ketzer »

На оф.форуме нашел что:
"The problem is that Auto Groups uses an OR switch, either Days OR Post OR Warnings. You can't use 2 or more groups with the same days/posts.", т.е. получается нельзя сочетать условия по количеству постов и количеству дней регистрации, как мне хотелось, только или-или - из-за этого видать и глючит. Покопаюсь завтра в моде, а то как-то неправильно это - зачем, спрашивается, допустим, в той же группе старожилов человек, который давно зарегистрирован, но за все время ни разу рта не раскрыл, или наоборот, недавно зарегистрировавшийся и быстренько наколотивший нужное количество постов?
Ketzer
phpBB 1.2.0
Сообщения: 11
Стаж: 16 лет 6 месяцев
Благодарил (а): 2 раза

Re: Auto Groups

Сообщение Ketzer »

Нашел в чем проблема. Автор поста про OR был неправ.
Делов том, что при создании/редактировании группы идет обращении к функции auto_groups_create и ей передаются следующие параметры: $group_id, auto_groups_create, &$make_default. И если
$group_attributes пустой (что происходит, когда мы сохраняем настройки группы, ничего не изменив), то идет обращение к базе и атрибуты берутся оттуда, а если нет (меняем у группы какой-нить параметр и сохраняем), то работаем с переданными атрибутами. Только вот автор мода не учел, что во втором случае в $group_attributes передаются только изменившиеся атрибуты. Т.е. если ничего не менялось, то мы получаем обращение к базе с учетом всех атрибутов:

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

SELECT user_id FROM phpbb_users WHERE user_type IN (0, 3) AND user_posts >= 501 AND (user_lastvisit - user_regdate) >= 51840000
А если изменили допустим тот же параметр "минимальное количество постов", то получаем уже урезанную версию лишь с измененным параметром:

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

SELECT user_id FROM phpbb_users WHERE user_type IN (0, 3) AND user_posts >= 500
и результат в итоге получаем не тот который ожидали :D

И еще пара нюансов:
Обращение к функции auto_groups_create происходит из функции group_create при создании или апгрейде группы.
И если во втором случае передается нормальный $group_id, то в первом случае его еще нет, он присваивается ниже, а потому в конце auto_groups_create получаем нелепое обращение к группе с номером 0

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

DELETE FROM phpbb_user_group WHERE group_id = 0 AND auto_group = 1 AND user_id NOT IN ('28', '49')
пытаясь удалить из создающейся автогруппы тех, кто ей не соответствует.

Второй нюанс - это то, что срок пребывания на форуме в этом моде (как и в Annual Star) получают, вычитая из текущего времени время регистрации, т.е.

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

time()- $row['user_regdate']
Я считаю, это неправильно - человек может со дня регистрации и не нарисовался не разу, и нафиг спрашивается он такой нужен - считать стаж надо, вычитая время регистрации из времени его последнего появления на форуме, т.е.

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

$row['user_lastvisit']- $row['user_regdate']
, а самым суровым админам - вообще из времени последней публикации :)
Chieftain
phpBB 1.0.0
Сообщения: 9
Стаж: 15 лет 9 месяцев
Благодарил (а): 1 раз

Re: Auto Groups

Сообщение Chieftain »

Кто-то решил проблемму с этой ошибкой?

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

[phpBB Debug] PHP Notice: in file /includes/functions_autogroup.php on line 245: Undefined index: group_auto_default
У меня тоже такая появляется при смене "Максимальное разрешённое число получателей ЛС:" Версия движка 3.0.8
Последний раз редактировалось Айдар 25.03.2011 20:52, всего редактировалось 1 раз.
Причина: Заключил код в BBcode
Chieftain
phpBB 1.0.0
Сообщения: 9
Стаж: 15 лет 9 месяцев
Благодарил (а): 1 раз

Ошибка в Auto Groups

Сообщение Chieftain »

[phpBB Debug] PHP Notice: in file /includes/functions_autogroup.php on line 245: Undefined index: group_auto_default

Такая ошибка появляется при смене "Максимальное разрешённое число получателей ЛС:" Версия движка 3.0.8
Кто посоветует что делать и сколько это будет стоить?
Shwepps
phpBB 1.4.2
Сообщения: 53
Стаж: 15 лет 8 месяцев
Благодарил (а): 15 раз

Re: Auto Groups

Сообщение Shwepps »

А где в админпанели появляются настройки этого мода? Чего-то никак немогу найти, хотя все установил.
з.ы.phpBB 3.0.8

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