X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/14feef3679b6ecdce656d56dd754357997084632..refs/pull/806/head:/app/Providers/LdapUserProvider.php diff --git a/app/Providers/LdapUserProvider.php b/app/Providers/LdapUserProvider.php index 98cfc8340..1dc789c3b 100644 --- a/app/Providers/LdapUserProvider.php +++ b/app/Providers/LdapUserProvider.php @@ -2,7 +2,6 @@ namespace BookStack\Providers; - use BookStack\Role; use BookStack\Services\LdapService; use BookStack\User; @@ -86,8 +85,10 @@ class LdapUserProvider implements UserProvider */ public function updateRememberToken(Authenticatable $user, $token) { - $user->setRememberToken($token); - $user->save(); + if ($user->exists) { + $user->setRememberToken($token); + $user->save(); + } } /** @@ -100,7 +101,9 @@ class LdapUserProvider implements UserProvider { // Get user via LDAP $userDetails = $this->ldapService->getUserDetails($credentials['username']); - if ($userDetails === null) return null; + if ($userDetails === null) { + return null; + } // Search current user base by looking up a uid $model = $this->createModel(); @@ -108,11 +111,14 @@ class LdapUserProvider implements UserProvider ->where('external_auth_id', $userDetails['uid']) ->first(); - if ($currentUser !== null) return $currentUser; + if ($currentUser !== null) { + return $currentUser; + } $model->name = $userDetails['name']; $model->external_auth_id = $userDetails['uid']; $model->email = $userDetails['email']; + $model->email_confirmed = false; return $model; }