diff options
-rw-r--r-- | apps/user_ldap/lib/access.php | 5 | ||||
-rw-r--r-- | apps/user_ldap/lib/user/offlineuser.php | 7 |
2 files changed, 12 insertions, 0 deletions
diff --git a/apps/user_ldap/lib/access.php b/apps/user_ldap/lib/access.php index dd8ffe14bca..bb423ecb016 100644 --- a/apps/user_ldap/lib/access.php +++ b/apps/user_ldap/lib/access.php @@ -35,6 +35,7 @@ namespace OCA\user_ldap\lib; +use OCA\user_ldap\lib\user\OfflineUser; use OCA\User_LDAP\Mapping\AbstractMapping; /** @@ -696,6 +697,10 @@ class Access extends LDAPUtility implements user\IUserTools { $ocName = $this->dn2ocname($userRecord['dn'][0], $userRecord[$displayNameAttribute]); $this->cacheUserExists($ocName); $user = $this->userManager->get($ocName); + if($user instanceof OfflineUser) { + $user->unmark(); + $user = $this->userManager->get($ocName); + } $user->processAttributes($userRecord); } } diff --git a/apps/user_ldap/lib/user/offlineuser.php b/apps/user_ldap/lib/user/offlineuser.php index 72c02427928..3456a27b412 100644 --- a/apps/user_ldap/lib/user/offlineuser.php +++ b/apps/user_ldap/lib/user/offlineuser.php @@ -86,6 +86,13 @@ class OfflineUser { } /** + * remove the Delete-flag from the user. + */ + public function unmark() { + $this->config->setUserValue($this->ocName, 'user_ldap', 'isDeleted', '0'); + } + + /** * exports the user details in an assoc array * @return array */ |