summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--apps/user_ldap/lib/access.php5
-rw-r--r--apps/user_ldap/lib/user/offlineuser.php7
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
*/