Не работает лимит сообщений для новых пользователей

Проблемы с установкой или работой phpBB 3.0.x? Получите помощь здесь!
С 1 января 2017 года phpBB Group прекращает поддержку phpBB версии 3.0.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.0 до 1 июля 2017 года.
Подробнее: Окончание поддержки phpBB 3.0.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
dimavsr
phpBB 2.0.4
Сообщения: 409
Стаж: 16 лет 7 месяцев
Благодарил (а): 33 раза

Re: Не работает лимит сообщений для новых пользователей

Сообщение dimavsr »

Pazh
за первую ссылку боюсь даже браться)
вторая мод. не подскажете какой функционал он дает? судя по описанию : "Дает варианты администраторов разместить пользователей в группы, основанные на почтовом количестве, дни членства и предупреждение пунктов"

Добавлено спустя 3 минуты 7 секунд:
angst66 писал(а):Назначь новым пользователям свой цвет( для наглядности). Возьми любого нового пользователя и удали его из группы новые. Цвет его ника измениться?
изменился.

Добавлено спустя 1 минуту 43 секунды:
angst66что это нам дает?... не могу сообразить
Аватара пользователя
Pazh
Former team member
Сообщения: 2317
Стаж: 16 лет 10 месяцев
Благодарил (а): 42 раза
Поблагодарили: 506 раз

Re: Не работает лимит сообщений для новых пользователей

Сообщение Pazh »

dimavsr писал(а):вот у меня примерно 23000 пользователей. из них около 300 человек на форуме у которых сообщений более 30, указанные пользователи должны быть в группе зарегистрированные, остальные в новых. итого 22500 в новых, а 300 в зарегистрированных. так?
так, только чтобы убрать юзера автоматически из группы Новые пользователи должно сработать условие:
if ($this->data['user_id'] != ANONYMOUS && !empty($config['new_member_post_limit']) && $this->data['user_new'] && $config['new_member_post_limit'] <= $this->data['user_posts'])
т.е. юзер не Гость, установлен лимит сообщений для группы Новые пользователи, у юзера постов больше чем предыдущий лимит и самое главное - в БД у юзера должна стоять 1 в поле user_new - это поле заполняется только после включения Новых пользователей.
Сделай запрос в БД update phpbb_users set user_new=1 where user_type=0

Добавлено спустя 2 минуты 42 секунды:
Gives administrators options to place users in groups based on post count, membership days, and warning points
Дает администратору возможность помещать пользователей в группы на основе кол-ва сообщений, даты регистрации, кол-ве предупреждений
Помощь в ЛС/email только за WM или ЮMoney
dimavsr
phpBB 2.0.4
Сообщения: 409
Стаж: 16 лет 7 месяцев
Благодарил (а): 33 раза

Re: Не работает лимит сообщений для новых пользователей

Сообщение dimavsr »

Pazh писал(а):Сделай запрос в БД update phpbb_users set user_new=1 where user_type=0
запрос сделал. ничего не изменилось по количеству тех или иных пользователей в группах.
что нужно далее сделать?

Добавлено спустя 1 минуту 21 секунду:
Pazh писал(а):Дает администратору возможность помещать пользователей в группы на основе кол-ва сообщений
но мне придется тогда всех вручную перемещать... имею ввиду в дальнейшем, при наборе 30 сообщений. нет?
Последний раз редактировалось dimavsr 03.07.2013 17:59, всего редактировалось 1 раз.
Аватара пользователя
Pazh
Former team member
Сообщения: 2317
Стаж: 16 лет 10 месяцев
Благодарил (а): 42 раза
Поблагодарили: 506 раз

Re: Не работает лимит сообщений для новых пользователей

Сообщение Pazh »

оно измениться когда эти юзеры зайдут на форум и сработает автоматическая проверка на группу если остальные описанные мной условия выставлены правильно
Помощь в ЛС/email только за WM или ЮMoney
dimavsr
phpBB 2.0.4
Сообщения: 409
Стаж: 16 лет 7 месяцев
Благодарил (а): 33 раза

Re: Не работает лимит сообщений для новых пользователей

Сообщение dimavsr »

Pazh писал(а):описанные мной условия выставлены правильно
какие именно?

а имеющихся с помощью указанного мод переместить? там последняя версия форума 3.0.7, у меня 10-ая, пойдет?
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Не работает лимит сообщений для новых пользователей

Сообщение Sheer »

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

update phpbb_users set group_id=2 where group_id=7
Удалит всех из группы Новые и назначит группу Зарегистрированные по умолчанию
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
Pazh
Former team member
Сообщения: 2317
Стаж: 16 лет 10 месяцев
Благодарил (а): 42 раза
Поблагодарили: 506 раз

Re: Не работает лимит сообщений для новых пользователей

Сообщение Pazh »

dimavsr писал(а):какие именно?
Pazh писал(а):юзер не Гость, установлен лимит сообщений для группы Новые пользователи, у юзера постов больше чем предыдущий лимит
где-то на форуме выкладывал ручное перенесение при синхронизации сообщений - можешь в поиске поискать

Добавлено спустя 2 минуты 9 секунд:
Sheer писал(а):Удалит всех из группы Новые и назначит группу Зарегистрированные по умолчанию
этот запрос только установит группу по-умолчанию на Зарегистрированные пользователи, но никак не затронет вхождение в группу Новые пользователи, т..к. это храниться в таблице phpbb_user_group
Помощь в ЛС/email только за WM или ЮMoney
dimavsr
phpBB 2.0.4
Сообщения: 409
Стаж: 16 лет 7 месяцев
Благодарил (а): 33 раза

Re: Не работает лимит сообщений для новых пользователей

Сообщение dimavsr »

В итоге, теперь с помощью мода, перенесу (это значит удалю из новых и добавлю в зарегистрированные) вручную всех пользователей, у которых более 30 сообщений. И с учетом,
Pazh писал(а):update phpbb_users set user_new=1 where user_type=0
в дальнейшем это будет автоматически. Все верно?
Начинать ставить мод? Pazh давайте отмашку)
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Не работает лимит сообщений для новых пользователей

Сообщение Sheer »

А ну да... про нее забыл

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

DELETE FROM phpbb_user_group WHERE group_id=7
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
dimavsr
phpBB 2.0.4
Сообщения: 409
Стаж: 16 лет 7 месяцев
Благодарил (а): 33 раза

Re: Не работает лимит сообщений для новых пользователей

Сообщение dimavsr »

Sheer писал(а):DELETE FROM phpbb_user_group WHERE group_id=7
это мне тоже в БД добавить?
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Не работает лимит сообщений для новых пользователей

Сообщение Sheer »

Не парься.
ACP-->ПОЛЬЗОВАТЕЛИ И ГРУППЫ-->Управление группами-->Новые пользователи - Участники
Отмечаешь всех и в выпадающем списке Удалить пользователя из группы

Добавлено спустя 1 минуту 7 секунд:
Информация
Пользователи удалены из группы и для них успешно установлены новые группы по умолчанию.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
dimavsr
phpBB 2.0.4
Сообщения: 409
Стаж: 16 лет 7 месяцев
Благодарил (а): 33 раза

Re: Не работает лимит сообщений для новых пользователей

Сообщение dimavsr »

Sheer писал(а):Отмечаешь всех и в выпадающем списке Удалить пользователя из группы
пользователи, у которых менее 30 сообщений, как они вновь окажутся в группе Новые пользователи?

Добавлено спустя 58 секунд:
сразу же автоматически вновь окажутся в этой же группе (нов польз)?
Аватара пользователя
Pazh
Former team member
Сообщения: 2317
Стаж: 16 лет 10 месяцев
Благодарил (а): 42 раза
Поблагодарили: 506 раз

Re: Не работает лимит сообщений для новых пользователей

Сообщение Pazh »

Короче, Склифасовский (С)
выполнить запрос для удаления всех из группы Новые пользователи:

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

DELETE FROM phpbb_user_group WHERE group_id=7

выполнить запрос для назначения группы "Зарегистрированные пользователи" группой по-умолчанию для тех у кого ранее группой по-умолчанию стояла "Новые пользователи":

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

update phpbb_users set group_id=2 where group_id=7

в файле includes/acp/acp_main.php найти:

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

							$start += $step;
						}

						add_log('admin', 'LOG_RESYNC_POSTCOUNTS');
добавить после

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

//Pazh SyncUserGroup
						if ($config['new_member_group_default'] && $config['new_member_post_limit'] && $auth->acl_get('a_group'))
						{
							$sql = 'SELECT group_id
								FROM ' . GROUPS_TABLE . "
								WHERE group_name = 'NEWLY_REGISTERED'
									AND group_type = " . GROUP_SPECIAL;
							$result = $db->sql_query($sql);
							$newly_group_id = (int) $db->sql_fetchfield('group_id');
							$db->sql_freeresult($result);
							$sql = 'SELECT u.user_id
									FROM ' . USERS_TABLE . ' u,
									' . USER_GROUP_TABLE . " ug
									WHERE ug.user_id = u.user_id 
									AND u.user_posts < {$config['new_member_post_limit']}
									AND ug.group_id = 2
									AND not exists(select 1 from " . USER_GROUP_TABLE . " ug1 WHERE ug1.user_id = u.user_id and group_id = $newly_group_id)"; //Смотрим ТОЛЬКО кто в группе ЗАРЕГИСТРИРОВАННЫЕ
							$result = $db->sql_query($sql);
							$user_id_list = array();
							while($row = $db->sql_fetchfield('user_id'))
							{
								$user_id_list[] = $row;
							}	
							$db->sql_freeresult($result);
							if (sizeof($user_id_list))
							{
								$sql = 'SELECT group_id
								FROM ' . GROUPS_TABLE . "
								WHERE group_name = 'REGISTERED'
								AND group_type = " . GROUP_SPECIAL;
								$result = $db->sql_query($sql);
								$reg_group_id = (int) $db->sql_fetchfield('group_id');
								$db->sql_freeresult($result);
								include_once($phpbb_root_path . 'includes/functions_user.' . $phpEx);
								// Add user(s) to "newly registered users" group and set to default group if admin specified so.
								if ($error = group_user_add($newly_group_id, $user_id_list, false, false, true))
								{
									trigger_error("Error: $error", E_USER_WARNING);//$user->lang[$error]
								}
								$sql = 'UPDATE ' . USERS_TABLE . ' SET user_new=1 WHERE ' . $db->sql_in_set('user_id',$user_id_list);
								$db->sql_query($sql);
							}
							unset($user_id_list);
						}
						//--Pazh SyncUserGroup
Зайти в Админку -> Общие -> Регистрация пользователей и выставить значение Лимит сообщений для новых пользователей в 30, а Установить группу «Новые пользователи» как группу по умолчанию в Да
Кликнуть на вкладку Общие для перехода на главную страницу и нажать Синхронизировать счётчики сообщений
Всё... кол-во сообщений всех юзеров пересчитается и если у кого-то окажется менее 30, они автоматом попадут в группу Новые пользователи
Помощь в ЛС/email только за WM или ЮMoney
dimavsr
phpBB 2.0.4
Сообщения: 409
Стаж: 16 лет 7 месяцев
Благодарил (а): 33 раза

Re: Не работает лимит сообщений для новых пользователей

Сообщение dimavsr »

Pazh
сделал как написали. В действиях администрации тысячи пользователей "Добавлены пользователи в группу Новые пользователи"
Однако, в результате особо ничего, почему-то не изменилось, новых 22775, зареганных 22927.

ПС. Все обновлял.
Аватара пользователя
Pazh
Former team member
Сообщения: 2317
Стаж: 16 лет 10 месяцев
Благодарил (а): 42 раза
Поблагодарили: 506 раз

Re: Не работает лимит сообщений для новых пользователей

Сообщение Pazh »

dimavsr зайди в "Список пользователей", отсортируй по полю "Сообщения" и пролистай по страницам - сколько людей у которых < 30 сообщений - должно быть по твоим словам 22775 (смотри в адресной строке что стоит после слова start чтобы "руками" не считать). Ну а дальше в видеочате можешь ограничить доступ для группы "Новые пользователи"
Помощь в ЛС/email только за WM или ЮMoney

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