ГлавнаяБлогЕсли нужно сделать User Update и сразу Authorize(id)

Если нужно сделать User Update и сразу Authorize(id)

Рамиль Юналиев
Рамиль Юналиев
E-Commerce Lead
30 июля 2019 г.
1 мин чтения

При обновлении пользователя (CUser::Update) и попытке сразу авторизовать его по ID (CUser::Authorize) — авторизация не срабатывает.

Решение: добавить CheckAuthActions() после Authorize().

$user = new \CUser();
$resultUpdate = $user->Update($userId, $filedsUpdate);
if ($resultUpdate) {
    $user->Authorize($userId);
    $user->CheckAuthActions(); // вся соль тут
}

CheckAuthActions() завершает процесс авторизации — без него состояние сессии не обновляется.