Проверить заданный permission у пользователя в Drupal

В Drupal (7) новые флажки — права пользователей добавляются через hook модуля MODULENAME_permission.

В зацепке вы формируете массив описаний прав, который возвращаете при выходе из функции. Пример:

После того, как вы создали в своём модуле дополнительные права (permissions), в коде вы можете использовать функцию API user_access() для проверки флажка.

Если требуется проверить не текущего пользователя, а какого то другого, то объект $user, нужно передать вторым параметром в user_access().

Система прав в Drupal построена на основе ролей, права выдаются не напрямую пользователям, а в соответствии с их ролями. Потому чтобы выдать permissions пользователю, надо отредактировать набор прав выданной ему роли.

/admin/people/permissions/roles

Мало букафф? Читайте есчо !

Многоязычность в Drupal 7

Март 31, 2015 г.

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

Читать

Как получить FID по URI в Drupal?

Ноябрь 7, 2017 г.

При работе с private файлами в Drupal, можно использовать зацепку hook_file_download($uri), в которой вы можете реализовать проверку прав доступа к скачиваемому файлу. Но на входе функции - только uri, вместо fid, по которому было бы удобно вытащить всю ...

Читать

Ошибка поля Autocomplete - found no valid option

Октябрь 28, 2014 г.

У меня эта ошибка всплыла для поля с автозаполнением, когда список значений генерировался из PHP кода. Занималась генерацией списка значений вот такая функция: [crayon-6aa7a0ae81871087526951/] Грабли обнаружились в случаях, когда поле title содержал ...

Читать

Форма поиска товаров на Drupal

Май 11, 2023 г.

Здесь подробно рассмотрим небольшую задачу для сайта под управлением CMS Drupal. Требуется выводить поисковую форму для товаров в виде блока. Форма ...

Читать
 

Комментарии к «Проверить заданный permission у пользователя в Drupal»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: