Есть задача сделать разные формы регистрации для разных ролей. Для каждой формы своя ссылка.
Роли создал. Для пользователя прописал все необходимые поля. С помощью модуля Field Permissions, указал какие поля для какой роли должны отображаться. Дальше, создаю свой модуль. В нем реализую hook_form_id_form_alter, в котором, в зависимости от адреса страницы пользователю назначается соответствующая роль.
Проверяю добавилась ли роль
<?php
var_dump($form['#user']->roles);
?>
Роль есть. Но поля, назначенные на эту роль не отображаются.
Собственно, есть предположение, что модуль Field Permissions отрабатывает раньше моего. Вопрос, что можно сделать в данной ситуации?
Комментарии
вес модуля в бд измените
Пробовал, не помогает. Вероятно, тут сами хуки в разной последовательности обрабатываются, так как Field Permissions работает с полями через hook_field_access.
Собственно, на данный момент решил свою задачу через Profile2 и Profile2 Regpath. Но чисто академический интерес к теме остался.