Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”

0 Пользователей и 1 Гость просматривают эту тему.

*

muldy

  • ***
  • 222
  • +9/-1
    • Просмотр профиля
Здравствуйте!
Собственно вопрос, требуется получить страницу, на которую пользовтаель имеет права редактиования!
Изучал API, не нашел примера, как быть?
« Последнее редактирование: 28 Сентября 2014, 21:06:46 от muldy »

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Зависит от того, что именно вам надо проверить.
В любом случае смотрите на функционал класса permissionsCollection

hasUserPermissions() — Узнать, имеет ли пользователь или группа в принципе права на какие-нибудь страницы
getUsersByElementPermissions() — Получить список всех пользователей или групп, имеющих права на страницу $elementId
isAllowedObject() — Узнать, разрешен ли пользователю или группе $owner_id доступ на чтение страницы $object_id (класс umiHierarchyElement)

Я думаю, вам нужен последний метод. На всякий случай пример его вызова
$ownerId = 11;// id пользователя или группы пользователей
$object_id = 22; // id объекта, являющегося основой страницы для которой вы проверяете права
$perm = permissionsCollection::getInstance();
$res = $perm->isAllowedObject($ownerId,$object_id); // $res - массив, содержащий 5 элементов. Ключи 0-4 соответствуют правам на 5 осноных действий пользователя (чтение, редактирование, создание, удаление, перемещение)

*

muldy

  • ***
  • 222
  • +9/-1
    • Просмотр профиля
Не много не то, мне надо получить именно объект зная Id  пользователя!
В вашем примере я должен знать сам объект.
Посмотрел как при помощи selector  это сделать, но ступор и не пойму как найти страницу.
Грубо говоря, это личный кабинет пользователя с возможностью редактирования страниц.