Задействовать второстепенные группы - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

Правила раздела

Здесь обсуждаются вопросы по настройке и администрированию форумов IPB 3.x.
Пожалуйста, не оффтопьте, если зашли сюда случайно, и обратите внимание на соседние разделы.
Установка, настройка и обслуживание форумов IPB 2.x.
Оформление форумов, включая верстку скинов.
Размещение рекламы на форумах.
SEO оптимизация форума.
Техническая поддержка наших скинов и модов.

СвернутьПрикрепленные теги

Теги не найдены

Страница 1 из 1

Задействовать второстепенные группы

#1 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 628
  • Регистрация: 14-Июнь 09
  • Репутация: 15
  • IPB version:3.1.x
 

Отправлено 15 Июль 2012 - 21:46

Есть один хук, который работает на основных группах. Но хотелось бы чтоб он срабатывал и на второстепенных группах.

Вот файл к нему:
Spoiler

И хук-файл:
Spoiler

Что туда нужно добавить чтобы у второстепенных групп также срабатывало?
0

#2 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 720
  • Регистрация: 20-Март 09
  • Репутация: 2 269
  • IPB version:3.1.x
 

Отправлено 15 Июль 2012 - 22:06

		if ( ! strstr( ",{$this->settings['im_toggleVisibility_groupPermission']},", ",{$this->memberData['member_group_id']}," ) )


заменить на
		$groups   = array_filter( explode(',', $this->memberData['mgroup_others']) );
		$groups[] = $this->memberData['member_group_id'];
		$groupPermission = explode(',', $this->settings['im_toggleVisibility_groupPermission']);
		
		if( ! count( array_intersect($groups, $groupPermission) ) )


2

#3 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 628
  • Регистрация: 14-Июнь 09
  • Репутация: 15
  • IPB version:3.1.x
 

Отправлено 15 Июль 2012 - 22:26

siv1987,
При нажатии выдаёт "Bad Request"
0

#4 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 720
  • Регистрация: 20-Март 09
  • Репутация: 2 269
  • IPB version:3.1.x
 

Отправлено 15 Июль 2012 - 22:32

Поправлено. Была пропущена одна скобка.
1

#5 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 628
  • Регистрация: 14-Июнь 09
  • Репутация: 15
  • IPB version:3.1.x
 

Отправлено 15 Июль 2012 - 22:48

siv1987,
Ура получилось - Большое Спасибо!
0

#6 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 628
  • Регистрация: 14-Июнь 09
  • Репутация: 15
  • IPB version:3.1.x
 

Отправлено 15 Июль 2012 - 23:55

И тогда ещё один маленький вопрос.
Есть:
<if test="$this->memberData['member_group_id'] == 1">{показ блока для группы 1}</else></if>

Как сделать чтоб и на доп. группу тоже действовало?
0

#7 Пользователь не на сайте   Ritsuka ответил: »

 
 
  • ***
  • Смотреть галерею
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 908
  • Регистрация: 08-Июнь 09
  • Репутация: 531
  • IPB version:3.4.x
 

Отправлено 16 Июль 2012 - 00:43

Вообще есть стандартный вызов для этого:
	/**
	 * Check to see if a member is in a group or not
	 *
	 * @param	mixed		Either INT (member_id) OR Array of member data [MUST at least include member_group_id and mgroup_others]
	 * @param	mixed		Either INT (group ID) or array of group IDs
	 * @param	boolean		TRUE (default, check secondary groups also), FALSE (check primary only)
	 * @return	boolean		TRUE (is in group) - FALSE (not in group)
	 */
	static public function isInGroup( $member, $group, $checkSecondary=true )


Т.е.:
<if test="IPSMember::isInGroup($this->memberData, 1)">{показ блока для группы 1, включая второстепенные}</else></if>


Или так:
<if test="IPSMember::isInGroup($this->memberData, array(1,2))">{показ блока для групп 1 и 2, включая второстепенные}</else></if>

3

#8 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 628
  • Регистрация: 14-Июнь 09
  • Репутация: 15
  • IPB version:3.1.x
 

Отправлено 16 Июль 2012 - 01:19

Ritsuka,
Спасибо. Выручили. :)
0

#9 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 720
  • Регистрация: 20-Март 09
  • Репутация: 2 269
  • IPB version:3.1.x
 

Отправлено 16 Июль 2012 - 11:35

+1 к стандартному методу. Не знал про него.
0

#10 Пользователь не на сайте   Boris ответил: »

 
 
  • Member
  • **
  • Смотреть галерею
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 69
  • Регистрация: 15-Август 12
  • Репутация: 2
  • IPB version:3.3.x
 

Отправлено 30 Сентябрь 2012 - 18:45

А есть что нибудь стандартное типа:
<if test="isGuest....">   гостям одно </else> остальным другое </if>
????


я пока использовал метод выше и проверял на принадлежность к группе 2
<if test="IPSMember::isInGroup($this->memberData, 2)">


Но интуиция подсказывает, что есть более грамотные варианты.
0

#11 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 720
  • Регистрация: 20-Март 09
  • Репутация: 2 269
  • IPB version:3.1.x
 

Отправлено 30 Сентябрь 2012 - 19:41

Просмотреть сообщениеBoris сказал(а):

Но интуиция подсказывает, что есть более грамотные варианты.

Этот самый грамотный вариант.
0

#12 Пользователь не на сайте   Ritsuka ответил: »

 
 
  • ***
  • Смотреть галерею
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 908
  • Регистрация: 08-Июнь 09
  • Репутация: 531
  • IPB version:3.4.x
 

Отправлено 01 Октябрь 2012 - 07:42

Цитата

А есть что нибудь стандартное типа:

<if test="isGuest...."> гостям одно </else> остальным другое </if>


Да. Де-факто стандартом у самих IPS является конструкция:

<if test="$this->memberData['member_id']">пользователь<else />гость</if>


Посмотрите хотя бы на блок с инфо о пользователе в globalTemplate. Там именно такая проверка.
0

Сообщить об этой теме:


Страница 1 из 1


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2016 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна