|
Поделиться

Разделение права в правах групп?

Форум для решения проблем в работе движка версии 3.0.

Сообщение apollion » 09.11.17 21:15

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

Права групп-Зарегистррованные пользователи

"Может просматривать профили, список пользователей и страницу «Кто сейчас на конференции»"

На:

1. "Может просматривать профили, список пользователей" и

2. "Может просматривать страницу «Кто сейчас на конференции»"

Чтобы можно было разрешить 1-й п. и запретить 2-й п. независимо друг от друга.
Сделав это не средствами в админке, это понятно, а изменениями в движке.
Для чего: не хочу чтобы юзеры каких-то конкретных групп видели страницу «Кто сейчас на конференции».

В общем: надо, чтобы страницу «Кто сейчас на конференции» ни одна из групп кроме Админа-основателя не могла смотреть.
Но при этом любой из любой группы если для группы стоит "ДА", мог посмотреть список юзеров и профили, будучи залогиненным, ну т. е. как это сейчас по умолчанию.
Аватара пользователя
apollion
 
Сообщения: 24
Зарегистрирован: 21.10.15 18:13
Откуда: Россия

Сообщение Shredder » 10.11.17 01:47

apollion писал(а):В общем: надо, чтобы страницу «Кто сейчас на конференции» ни одна из групп кроме Админа-основателя не могла смотреть.

"Разное" - "Может видеть статус присутствия" - это разве не оно? Поставьте это право только Админу.

Добавлено спустя 15 минут 39 секунд:
Если нет, то добавьте новое право доступа, например u_viewonline_2 (т.к. просто u_viewonline уже есть в движке): Добавление нового права доступа в phpBB

Установите это право только Админу. Затем откройте файл viewonline.php, найдите там строку:
Код: Выделить всё
if (!$auth->acl_gets('u_viewprofile', 'a_user', 'a_useradd', 'a_userdel'))

и замените её на:
Код: Выделить всё
if (!$auth->acl_gets('u_viewprofile', 'a_user', 'a_useradd', 'a_userdel') || !$auth->acl_get('u_viewonline_2'))

Должно сработать.

Ещё более простой вариант, позволяющий обойтись без добавления права - сделать страницу видимой исключительно основателю. Для этого искомую строку надо заменить на:
Код: Выделить всё
if ($user->data['user_type'] != USER_FOUNDER)
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.
Shredder
Администратор
 
Сообщения: 882
Зарегистрирован: 22.08.13 09:05

Сообщение apollion » 10.11.17 02:43

Нет.

Там сразу в одной строке:
Может видеть: профиль зера+список юзеров+страницу "Кто сейчас на конференции?"
Если я переключаю свитчер в этой строке с Да на Нет или Никогда, то тогда юзер не может посмотреть списки и профиль - даже никнейм перестает быть активной ссылкой.

Задача у меня: Чтобы всё осталось как есть для всех групп, кроме возможности кому-либо кроме Основателя и админа видеть эту страницу с "Кто сейчас..." и ссылка для них чтобы не активная была. (Основателей-админов 1 штука всего - я)


Завтра попробую оба варианта, которые вы посоветовали. Спасибо.
Аватара пользователя
apollion
 
Сообщения: 24
Зарегистрирован: 21.10.15 18:13
Откуда: Россия

Сообщение Shredder » 10.11.17 03:06

apollion писал(а):и ссылка для них чтобы не активная была

Тогда в дополнение к первой правке, в includes/functions.php найдите часть строки:
Код: Выделить всё
($auth->acl_gets('u_viewprofile', 'a_user', 'a_useradd', 'a_userdel'))

И дополните её тем же способом, что я написал, например:
Код: Выделить всё
($auth->acl_gets('u_viewprofile', 'a_user', 'a_useradd', 'a_userdel') && $auth->acl_get('u_viewonline_2'))

или:
Код: Выделить всё
($auth->acl_gets('u_viewprofile', 'a_user', 'a_useradd', 'a_userdel') && $user->data['user_type'] == USER_FOUNDER)
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.
Shredder
Администратор
 
Сообщения: 882
Зарегистрирован: 22.08.13 09:05

Сообщение apollion » 11.11.17 00:03

Спасибо.
Аватара пользователя
apollion
 
Сообщения: 24
Зарегистрирован: 21.10.15 18:13
Откуда: Россия


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

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1