Update last_login_at and last_login_ip on login via auth action

This commit is contained in:
Elias Luhr
2024-03-07 18:47:00 +01:00
parent 780feea552
commit 5d8dadfaae
2 changed files with 9 additions and 3 deletions

View File

@ -2,6 +2,7 @@
## dev ## dev
- Fix: Update last_login_at and last_login_ip on social networt authenticate (e.luhr)
- Enh: Keycloak auth client (e.luhr) - Enh: Keycloak auth client (e.luhr)
- Fix: Social Network Auth (eluhr) - Fix: Social Network Auth (eluhr)
- Enh #532: /user/registration/register now shows form validation errors - Enh #532: /user/registration/register now shows form validation errors

View File

@ -74,9 +74,14 @@ class SocialNetworkAuthenticateService implements ServiceInterface
Yii::$app->session->setFlash('danger', Yii::t('usuario', 'Your account has been blocked.')); Yii::$app->session->setFlash('danger', Yii::t('usuario', 'Your account has been blocked.'));
$this->authAction->setSuccessUrl(Url::to(['/user/security/login'])); $this->authAction->setSuccessUrl(Url::to(['/user/security/login']));
} else { } else {
Yii::$app->user->login($account->user, $this->controller->module->rememberLoginLifespan); $result = Yii::$app->user->login($account->user, $this->controller->module->rememberLoginLifespan);
if ($result) {
$account->user->updateAttributes([
'last_login_at' => time(),
'last_login_ip' => $this->controller->module->disableIpLogging ? '127.0.0.1' : Yii::$app->request->getUserIP(),
]);
$this->authAction->setSuccessUrl(Yii::$app->getUser()->getReturnUrl()); $this->authAction->setSuccessUrl(Yii::$app->getUser()->getReturnUrl());
$result = true; }
} }
} else { } else {
$this->authAction->setSuccessUrl($account->getConnectionUrl()); $this->authAction->setSuccessUrl($account->getConnectionUrl());