Рейтинг:0

Условная проверка формы по роли

флаг us

Я потерялся в том, как это сделать. Мне нужно, чтобы гостевые пользователи полностью проверяли форму (с использованием модуля проверки на стороне клиента) при создании, но не проверяли подлинность пользователя.

тлдр;

Клиент (всегда гость) сможет разместить заказ на получение в определенную дату, эта дата не может быть ранее, чем через 5 дней с «сегодня». Клиент должен всегда соблюдать правила проверки. Легко, они настроены и работают.

Когда сотрудник (всегда аутентифицированный пользователь) размещает заказ по телефону для клиента, он должен иметь возможность переопределить эту дату, даже если до даты меньше 5 дней, пропуская проверку.

Точно так же, когда сотрудник редактирует/обновляет веб-форму, он должен иметь возможность сделать это менее чем за 5 дней. Текущий модуль проверки на стороне клиента запрещает кому-либо редактировать форму менее чем за пять дней, если только я не скрою от них дату.

Я изо всех сил пытаюсь найти процесс или модуль, который сделает эту работу. Любые идеи?

Рейтинг:0
флаг cn

Самое простое — применить проверку, как обычно, а затем написать hook_form_alter(), который делает следующее:

  1. Определите, вошел ли текущий пользователь в систему или имеет ли он определенную роль.
  2. Если вы вошли в систему, удалите части проверки из массива рендеринга формы этого конкретного поля.

Ответить или комментировать

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