Иногда требуется узнать идентификаторы пользователей с заданными полномочиями на форуме. Делается в несколько строк.
Где искать
Нужная функция находится в /Sources/Subs-Members.php
и называется membersAllowedTo:
array membersAllowedTo(string permission, int board_id = null)
- получает список пользователей, которым разрешено указанное разрешение (permission).
- если указан board_id, проверка будет произведена только внутри соответствующего раздела.
- учитывает настройки имеющихся прав доступа.
- принимает во внимание возможных модераторов.
- возвращает массив с идентификаторами пользователей.
Пример запроса:
global $sourcedir;
require_once($sourcedir . '/Subs-Members.php');
$members = membersAllowedTo('post_new');
Готово! Теперь в переменной $members хранится массив пользователей, с правами создания новых тем на форуме. Можно и сузить зону поиска, ограничившись конкретным разделом:
$members = membersAllowedTo('post_new', 1);
Как видите, дополнительным параметром указывается идентификатор нужного раздела.
P. S. В табличной форме увидеть разрешения разных групп пользователей можно с помощью генератора отчётов (см. Основные настройки).