Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

[beta] Topic moderator (Куратор темы)

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Booker
phpBB 2.0.7a
Сообщения: 627
Стаж: 12 лет 9 месяцев
Благодарил (а): 165 раз
Поблагодарили: 21 раз

Re: [beta] Topic moderator (Куратор темы)

Сообщение Booker »

Кто-нибудь использует данный мод? На 3.0.11 он работоспособен?
Аватара пользователя
angst66
phpBB 3.0.0 RC1
Сообщения: 1469
Стаж: 12 лет 2 месяца
Благодарил (а): 86 раз
Поблагодарили: 149 раз

Re: [beta] Topic moderator (Куратор темы)

Сообщение angst66 »

Booker
Да
lerich23
phpBB 1.0.0
Сообщения: 2
Стаж: 12 лет 5 месяцев

Re: [beta] Topic moderator (Куратор темы)

Сообщение lerich23 »

Установил на phpbb 3.0.11 Кураторка заработала, но в теме не показывает кто куратор. Не могу найти проблему подскажите.
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12372
Стаж: 12 лет 7 месяцев
Благодарил (а): 223 раза
Поблагодарили: 3517 раз
Контактная информация:

Re: [beta] Topic moderator (Куратор темы)

Сообщение Татьяна5 »

lerich23
"Показывать куратора на странице просмотра темы" - в админке включено?
Такой код в файлах есть?

viewtopic.php

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

$template->assign_vars(array(
			'TOPIC_MODERATOR'	=> get_username_string('full', $topic_data['topic_moderator']['id'], $tm_row['username'], $tm_row['user_colour']),
		));
viewtopic_body.html используемого стиля

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

<!-- IF TOPIC_MODERATOR -->
	<p><strong>{L_TOPIC_MODERATOR}:</strong> {TOPIC_MODERATOR}</p>
<!-- ENDIF -->
language/ru/common.php

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

'TOPIC_MODERATOR'
Jons
phpBB 2.0.4
Сообщения: 418
Стаж: 15 лет 6 месяцев
Благодарил (а): 65 раз
Поблагодарили: 2 раза

Re: [beta] Topic moderator (Куратор темы)

Сообщение Jons »

3.0.11
в файле posting.php вместо

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

if ($auth->acl_get('m_delete', $forum_id) || ($post_data['poster_id'] == $user->data['user_id'] && $user->data['is_registered'] && $auth->acl_get('f_delete', $forum_id) && $post_id == $post_data['topic_last_post_id'] && !$post_data['post_edit_locked'] && ($post_data['post_time'] > time() - ($config['edit_time'] * 60) || !$config['edit_time'])))
находит только

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

if ($auth->acl_get('m_delete', $forum_id) || ($post_data['poster_id'] == $user->data['user_id'] && $user->data['is_registered'] && $auth->acl_get('f_delete', $forum_id) && $post_id == $post_data['topic_last_post_id'] && !$post_data['post_edit_locked'] && ($post_data['post_time'] > time() - ($config['delete_time'] * 60) || !$config['delete_time'])))
Разница в самом конце ($config['edit_time'] * 60) || !$config['edit_time']))) и ($config['delete_time'] * 60) || !$config['delete_time'])))

Так что, вместо неё код вставлять или нет?

И какой?

такой

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

if ($auth->acl_get('m_delete', $forum_id) || $tm_can_delete || ($post_data['poster_id'] == $user->data['user_id'] && $user->data['is_registered'] && $auth->acl_get('f_delete', $forum_id) && $post_id == $post_data['topic_last_post_id'] && !$post_data['post_edit_locked'] && ($post_data['post_time'] > time() - ($config['edit_time'] * 60) || !$config['edit_time']))) // Topic Moderator MOD (original string modified)

или такой

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

if ($auth->acl_get('m_delete', $forum_id) || $tm_can_delete || ($post_data['poster_id'] == $user->data['user_id'] && $user->data['is_registered'] && $auth->acl_get('f_delete', $forum_id) && $post_id == $post_data['topic_last_post_id'] && !$post_data['post_edit_locked'] && ($post_data['post_time'] > time() - ($config['delete_time'] * 60) || !$config['delete_time']))) // Topic Moderator MOD (original string modified)


А то тут внятного ответа не последовало
Jons
phpBB 2.0.4
Сообщения: 418
Стаж: 15 лет 6 месяцев
Благодарил (а): 65 раз
Поблагодарили: 2 раза

Re: [beta] Topic moderator (Куратор темы)

Сообщение Jons »

Питер писал(а):Я просто еще раз проверял.

Мод работал. Просто я проверял методом "Проверить права пользователя". И кнопка правки не появляясь. Когда пришел куратор темы под своим профилем, у него была кнопка правки и мод выполнял свои функции. Я создал профиль для проверки, сделал его куратором и войдя под этим профилем, убедился что все в порядке. Видимо предусмотренный штатным способом "Проверить права пользователя" работает только при проверке штатных функций - модерторские, пользователи с разными степенями доступов и т.д. При прикрученном моде, этот вариант не проходит.

Дебаг дает только одну ошибку - при входе в подфорум (где нет хотя бы на одной теме куратора) над шапкой такая строка:

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

PHP Notice: in file /viewforum.php on line 557: Undefined variable: tm_data
viewforum.php

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

'S_TOPIC_MODERATORS'	=>	(sizeof($tm_data) ? true : false)
Если назначаю в любой одной теме раздела куратора, строка исчезает. И если так сделаю, то ошибочная строка исчезнет.
У меня не на всех разделах есть кураторы.
Назначил куратора на 1 тему подфорума. Строка с ошибкой над шапкой не исчезла!
Решение для нулевого числа модераторов, приведенное на 3 стр этого топика, проблему не решает. Я просто удалил с viewforum.php эту злополучную строку
Код: Выделить всё
'S_TOPIC_MODERATORS' => (sizeof($tm_data) ? true : false)
и все. Все работает, ошибок, по крайней мере, пока, нету. Мод корзины где происходит некоторые совместные с модом куратора действия, работает как часы. Дебаг не дает ни одной ошибки.
Уверены что это правильное решение проблемы? Для чего-то же автором был написан этот код!?

Добавлено спустя 20 минут 33 секунды:
а правильно ли что в коде:

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

foreach ($topic_moderators as $topic_id_ => $tm_id_)
в конце переменных знак нижнего подчёркивания?

Добавлено спустя 27 минут 13 секунд:
Когда в насройках автоназначения кураторов устанавлиешь Показывать кураторов на страницах просмотра этих форумов: ДА, - то ошибка исчезает, но только если есть модераторы

Добавлено спустя 14 минут 28 секунд:
Чтобы исчезла вот эта ошибка
Jons писал(а):PHP Notice: in file /viewforum.php on line 557: Undefined variable: tm_data
нужно изменить код:

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

if (sizeof($topic_moderators))
		{
			$sql = 'SELECT user_id, username, user_colour
				FROM ' . USERS_TABLE . '
				WHERE ' . $db->sql_in_set('user_id', array_unique($topic_moderators));
			$result = $db->sql_query($sql);
			$tm_names = array();
			while ($row = $db->sql_fetchrow($result))
			{
				$tm_names[$row['user_id']]['name'] = $row['username'];
				$tm_names[$row['user_id']]['colour'] = $row['user_colour'];
			}
			$db->sql_freeresult($result);
			$tm_data = array();
			foreach ($topic_moderators as $topic_id_ => $tm_id_)
			{
				if (isset($tm_names[$tm_id_]))
				{
					$tm_data[$topic_id_]['id'] = $tm_id_;
					$tm_data[$topic_id_]['name'] = $tm_names[$tm_id_]['name'];
					$tm_data[$topic_id_]['colour'] = $tm_names[$tm_id_]['colour'];
				}
			}
		}
		unset($topic_moderators);
		unset($tm_names);
		$template->assign_vars(array(
			'S_TOPIC_MODERATORS'	=>	(sizeof($tm_data) ? true : false)
		));
на

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

if (sizeof($topic_moderators))
		{
			$sql = 'SELECT user_id, username, user_colour
				FROM ' . USERS_TABLE . '
				WHERE ' . $db->sql_in_set('user_id', array_unique($topic_moderators));
			$result = $db->sql_query($sql);
			$tm_names = array();
			while ($row = $db->sql_fetchrow($result))
			{
				$tm_names[$row['user_id']]['name'] = $row['username'];
				$tm_names[$row['user_id']]['colour'] = $row['user_colour'];
			}
			$db->sql_freeresult($result);
			$tm_data = array();
			foreach ($topic_moderators as $topic_id_ => $tm_id_)
			{
				if (isset($tm_names[$tm_id_]))
				{
					$tm_data[$topic_id_]['id'] = $tm_id_;
					$tm_data[$topic_id_]['name'] = $tm_names[$tm_id_]['name'];
					$tm_data[$topic_id_]['colour'] = $tm_names[$tm_id_]['colour'];
				}
			}

			  $template->assign_vars(array(
			'S_TOPIC_MODERATORS'	=>	(sizeof($tm_data) ? true : false)
		    ));

		}
		unset($topic_moderators);
		unset($tm_names);
перенеся

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

  $template->assign_vars(array(
			'S_TOPIC_MODERATORS'	=>	(sizeof($tm_data) ? true : false)
		    ));

под условие if (sizeof($topic_moderators))



Считаю, что так будет правильно, поскольку массив $tm_data = array(); определяется внутри условия if (sizeof($topic_moderators)), а стало быть внутри данного условия и должно быть использование переменной tm_data, иначе теряется смысл.

Возражения принимаются
Аватара пользователя
angst66
phpBB 3.0.0 RC1
Сообщения: 1469
Стаж: 12 лет 2 месяца
Благодарил (а): 86 раз
Поблагодарили: 149 раз

Re: [beta] Topic moderator (Куратор темы)

Сообщение angst66 »

Jons
Такое чувство что последний кусок не ты писал
Jons
phpBB 2.0.4
Сообщения: 418
Стаж: 15 лет 6 месяцев
Благодарил (а): 65 раз
Поблагодарили: 2 раза

Re: [beta] Topic moderator (Куратор темы)

Сообщение Jons »

Какой именно кусок, - я ничего не писал, я только переставил код под условие и всё.
Если об этом, - то сам понял, достаточно было в код немного вглядеться.
Аватара пользователя
southklad
phpBB 3.1.0 RC2
Сообщения: 3232
Стаж: 12 лет 2 месяца
Благодарил (а): 797 раз
Поблагодарили: 175 раз

Re: [beta] Topic moderator (Куратор темы)

Сообщение southklad »

Установил , вроде все добавил, кеш обновил, но в центре модератора не появилось модуля "Куратор темы" Права выставил тоже
Изображение
Jons
phpBB 2.0.4
Сообщения: 418
Стаж: 15 лет 6 месяцев
Благодарил (а): 65 раз
Поблагодарили: 2 раза

Re: [beta] Topic moderator (Куратор темы)

Сообщение Jons »

Аватара пользователя
southklad
phpBB 3.1.0 RC2
Сообщения: 3232
Стаж: 12 лет 2 месяца
Благодарил (а): 797 раз
Поблагодарили: 175 раз

Re: [beta] Topic moderator (Куратор темы)

Сообщение southklad »

Посмотрел , но в Выбор метода использования: у меня не появляется куратор темы
Изображение
Jons
phpBB 2.0.4
Сообщения: 418
Стаж: 15 лет 6 месяцев
Благодарил (а): 65 раз
Поблагодарили: 2 раза

Re: [beta] Topic moderator (Куратор темы)

Сообщение Jons »

Если вы это выполнили
4. Добавить модераторский модуль "Куратор темы" (Администраторский раздел - Система - Управление модулями - Модераторский раздел - "Главная" - Добавить модуль "Куратор темы" и включить его).
и всё включили

то при открытии модераторского раздела на странице темы должен повиться Куратор темы в Главная
Аватара пользователя
southklad
phpBB 3.1.0 RC2
Сообщения: 3232
Стаж: 12 лет 2 месяца
Благодарил (а): 797 раз
Поблагодарили: 175 раз

Re: [beta] Topic moderator (Куратор темы)

Сообщение southklad »

Я сначала добавил раздел, но понял что ошибся , но исправить не могу, в "Администраторский раздел - Система - Управление модулями - Модераторский раздел - "Главная" не могу добавить именно модуль Куратор темы
Изображение
Аватара пользователя
angst66
phpBB 3.0.0 RC1
Сообщения: 1469
Стаж: 12 лет 2 месяца
Благодарил (а): 86 раз
Поблагодарили: 149 раз

Re: [beta] Topic moderator (Куратор темы)

Сообщение angst66 »

Jons
Ошибки нет больше в форумах где куратор не назначен?
Jons
phpBB 2.0.4
Сообщения: 418
Стаж: 15 лет 6 месяцев
Благодарил (а): 65 раз
Поблагодарили: 2 раза

Re: [beta] Topic moderator (Куратор темы)

Сообщение Jons »

angst66 писал(а):Jons
Ошибки нет больше в форумах где куратор не назначен?

У меня пропала ошибка в таких форумах. И у вас пропадёт, если измените код (перенесёте в нужное место) как я написал выше.

Добавлено спустя 1 минуту 4 секунды:
igorbond писал(а):Я сначала добавил раздел, но понял что ошибся , но исправить не могу, в "Администраторский раздел - Система - Управление модулями - Модераторский раздел - "Главная" не могу добавить именно модуль Куратор темы
почему, его что нет в списке добавляемых?
Закрыто

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