Вы можете установить переменные просмотра внутри самого действия входа в систему в контроллере, указанном вами в конфигурации аутентификации, например:
$this->loadComponent('Auth', [
'loginAction' => [
'controller' => 'Users',
'action' => 'login',
'plugin' => 'Users'
],
Для этой конфигурации в действии UsersController
login
у вас, вероятно, есть что-то вроде этого, где вы можете установить переменные представления и сериализовать их:
public function login()
{
if ($this->request->is('post')) {
$user = $this->Auth->identify();
if ($user) {
$this->Auth->setUser($user);
return $this->redirect($this->Auth->redirectUrl());
} else {
// For example:
$user_id = $this->request->getEnv('PHP_AUTH_USER');
$hash = $request->getEnv('PHP_AUTH_PW');
$timestamp = $request->getEnv('HTTP_X_AUTHORIZATION_TIMESTAMP');
if (!is_string($user_id) || $user_id === '' || !is_string($hash) || $hash === '' || !is_string($timestamp) || $timestamp === '')
{
$this->set('authError', 'Missing essential fields');
}
}
}
$this->set('_serialize', true);
}