Как модуль должен изменить значение global $user
, выполнить собственный код и восстановить исходное значение, $user
не вызывая выхода текущего пользователя в случае ошибки?
Существует старая проблема, связанная с этим, которая добавляет функцию, которая может правильно обрабатывать это, даже если вызывается несколько раз. См. Drupal.org/node/287292 . Пожалуйста, просмотрите и протестируйте патч там.
—
Бердир
Создана документация сообщества, в которой есть решение выдать себя за другого пользователя для Drupal 6, Drupal 7 и Drupal 8 на drupal.org: Безопасное олицетворение другого пользователя .
—
iStryker