public function actionGoogleResponse() { try { $me = $this->google->getProfile(); $this->registerOrLogin($me, function ($id) { return $this->orm->users->getByGoogleId($id); }, function (User $user, $me) { $user->googleId = $me->id; $token = $this->google->getAccessToken()['access_token']; $user->googleAccessToken = $this->aes->encrypt($token); }, 'google'); } catch (Google_Exception $e) { $this->log->addAlert('Google login request failed', ['error' => $e->getMessage()]); $this->flashError('auth.flash.google.error'); } $this->redirect('Auth:in'); }