Исключить группу из показа на страницах команды сайта

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 9 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Исключить группу из показа на страницах команды сайта

Сообщение Alecto »

Помогите пожалуйста создать условие, исключающее заданную группу, например по ее ID, из показа на странице Команда сайта.

Раскопал не много: редактируемый файл memberlist_leaders.html
строка с которой работал:

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

<!-- BEGIN mod -->
	<tr class="<!-- IF mod.S_ROW_COUNT is even -->bg1<!-- ELSE -->bg2<!-- ENDIF -->">
Но, толкового ничего не получилось. Решил обратиться за помощью к опытным коллегам. Заранее благодарен за ответы.
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Исключить группу из показа на страницах команды сайта

Сообщение Пчелкин »

Поставьте мод Legend Repositioning и не мучьтесь.
http://www.phpbb.com/customise/db/mod/l ... sitioning/
Да и в админке есть настройки показать-не показать..В чем проблемма?
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 9 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Исключить группу из показа на страницах команды сайта

Сообщение Alecto »

в админке есть опция отображать или нет групп в легенде, которая собственное никак к задаче не относится.
но, если группе предоставлены права модератора на какой-либо раздел, то ее пользователи отображаются на странице КОМАНДА САЙТА.
мне же нужно добавить условие, исключающее вывод определенной группы (легче всего привязаться по ID) только(!) на странице КОМАНДА САЙТА

За ссылку на мод спасибо, но я не сторонник вносить большое количество модификаций на сайт без крайней на то нужды.
Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3365
Стаж: 17 лет 6 месяцев
Благодарил (а): 37 раз
Поблагодарили: 1454 раза

Re: Исключить группу из показа на страницах команды сайта

Сообщение Nekstati »

Попробуйте найти в memberlist.php

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

			if (!$s_forum_select && $undisclosed_forum)
			{
//				$s_forum_select = '<option value="">' . $user->lang['FORUM_UNDISCLOSED'] . '</option>';
				continue;
			}
и добавить после

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

			if ($row['group_id'] == 123)
			{
				continue;
			}
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 9 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Исключить группу из показа на страницах команды сайта

Сообщение Alecto »

Огромное спасибо! Именно то, что и было нужно. заменил 123 на 2 - группа по-умолчанию зарегистрированные пользователи.



Добавлено спустя 29 минут 58 секунд:
Nekstati, помогите пожалуйста еще немного. Спросить решил здесь, а не в теме портала, чтобы не дублировать описание вопроса.
Пытался сделать тоже самое для блока КОМАНДА на странице портала Board3 Portal, но безуспешно. В админке РАСИШИРЕННЫЙ ВИД этого блока отключен.


Нашел файл /portal/block/leaders.php
в нем нашел код:

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

	if ($row['group_type'] == GROUP_HIDDEN && !$auth->acl_gets('a_group', 'a_groupadd', 'a_groupdel') && $row['ug_user_id'] != $user->data['user_id'])
	{
		$group_name = $user->lang['GROUP_UNDISCLOSED'];
		$u_group = '';
	}
к этой строке

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

	if ($row['group_type'] == GROUP_HIDDEN && !$auth->acl_gets('a_group', 'a_groupadd', 'a_groupdel') && $row['ug_user_id'] != $user->data['user_id'])
дописал условие

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

$row['group_id'] == 2
а результата нет :( перепробовал еще много всяких разных вариантов - безтолку :(
Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3365
Стаж: 17 лет 6 месяцев
Благодарил (а): 37 раз
Поблагодарили: 1454 раза

Re: Исключить группу из показа на страницах команды сайта

Сообщение Nekstati »

Точно так же. Добавьте туда (перед $template->assign_block_vars)

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

	if ($row['group_id'] == 2)
	{
		continue;
	}
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 9 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Исключить группу из показа на страницах команды сайта

Сообщение Alecto »

еще раз спасибо. сработало.
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: Исключить группу из показа на страницах команды сайта

Сообщение HAMMER663 »

А как включить группу в нашу команду, не выставляя ей модераторских прав?
VaNnOrus
phpBB 1.0.0
Сообщения: 4
Стаж: 13 лет 10 месяцев

Re: Исключить группу из показа на страницах команды сайта

Сообщение VaNnOrus »

HAMMER663 писал(а):А как включить группу в нашу команду, не выставляя ей модераторских прав?
Да, ответьте пожалуйста :)

UPD.
В общем-то разобрался.
Может кому понадобится:
Идем в memberlist.php, который в корневой папке форума.
Ищем строку

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

// We sort out admins not within the 'Administrators' group.
Поднимаемся чуть выше к строке

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

'WHERE'		=> $db->sql_in_set('u.user_id', array_unique(array_merge($admin_id_ary, $mod_id_ary)), false, true) . '
AND u.group_id = g.group_id',
Меняем строку

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

AND u.group_id = g.group_id',
На

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

AND u.group_id = g.group_id OR (u.group_id = *** AND u.group_id = g.group_id)',
Где *** - id нужной вам группы

После проделанного пользователи группы будут отображаться вместе с модераторами.

Вернуться в «Запросы модов для phpBB 3.0.x»