Перейти к содержимому
Русский язык для Invision Community 5

Проблемы с доп. группами

Привет.

Есть небольшая проблемка с доп. группами у пользователей.

Ну вот к примеру, есть группа_1, выбираю список пользователей с фильтром по этой группе, в результате отображаются только те пользователи, у которых эта группа назначена как основная.

И второе. Создал форум с входом по паролю и выбрал освобожденной от ввода пароля группу_1. В результате опять же не спрашивает пароль только у тех, у кого эта группа как основная. Чувствую, что эти баги схожи и решение, возможно, одно для обоих, но вот куда копать уже даже и не знаю...

Заранее спасибо!

Рекомендованные сообщения

  • Автор

Вторую проблему решил так:

В файле /sources/classes/class_forums.php добавил

//-----------------------------------------
	// Do we have permission to even see the password page?
	//-----------------------------------------

	if ( $deny_access == 0 )
	{
		$group_exempt = 0;

		if ( isset($this->forum_by_id[$fid]['password']) AND $this->forum_by_id[$fid]['password'] AND $this->forum_by_id[$fid]['sub_can_post'] )
		{
			if ( isset($this->forum_by_id[$fid]['password_override']) )
			{
				if( in_array( $this->ipsclass->member['mgroup'], explode(",", $this->forum_by_id[$fid]['password_override']) ) )
				{
					$group_exempt = 1;
					$deny_access = 0;
				}
				//--- Добавил для проверки доступа доп.групп 
				$bypass_groups = explode( ",", $this->forum_by_id[$fid]['password_override'] );
				$my_groups = array( $this->ipsclass->member['mgroup'] );

				if( $this->ipsclass->member['mgroup_others'] )
				{
					$my_groups = array_merge( $my_groups, explode( ",", $this->ipsclass->clean_perm_string( $this->ipsclass->member['mgroup_others'] ) ) );
				}

				foreach( $my_groups as $g_id )
				{
					if( in_array( $g_id, $bypass_groups ) )
					{
						$group_exempt = 1;
					    $deny_access = 0;
					}
				}
				//--- конец --

			}

Первую проблему стандартными средствами тоже никак не решить.

не ищется по доп. группе

Создайте аккаунт или войдите в него для комментирования

Важная информация

При использовании данного сайта, вы согласаетесь с Условия использования и Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим..

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.