diff options
author | Thomas Müller <thomas.mueller@tmit.eu> | 2013-10-30 22:11:19 +0100 |
---|---|---|
committer | Thomas Müller <thomas.mueller@tmit.eu> | 2013-10-30 22:11:19 +0100 |
commit | 261cd87efa5623b51bbfa466f94d243bb7b49336 (patch) | |
tree | 25dd1d72e0a1e7563dc4bb6deabc937afd7946ec /lib/private/user.php | |
parent | 0e92a4896df11d6fd3ee4ed73dfa1cb121d66895 (diff) | |
parent | c1730d241c52b5e5c1719b6086d05cb30783e665 (diff) | |
download | nextcloud-server-261cd87efa5623b51bbfa466f94d243bb7b49336.tar.gz nextcloud-server-261cd87efa5623b51bbfa466f94d243bb7b49336.zip |
Merge branch 'master' into home-storage
Diffstat (limited to 'lib/private/user.php')
-rw-r--r-- | lib/private/user.php | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/lib/private/user.php b/lib/private/user.php index 6b350d4cf1b..f15fdf1dbbc 100644 --- a/lib/private/user.php +++ b/lib/private/user.php @@ -187,18 +187,25 @@ class OC_User { public static function deleteUser($uid) { $user = self::getManager()->get($uid); if ($user) { - $user->delete(); + $result = $user->delete(); - // We have to delete the user from all groups - foreach (OC_Group::getUserGroups($uid) as $i) { - OC_Group::removeFromGroup($uid, $i); + // if delete was successful we clean-up the rest + if ($result) { + + // We have to delete the user from all groups + foreach (OC_Group::getUserGroups($uid) as $i) { + OC_Group::removeFromGroup($uid, $i); + } + // Delete the user's keys in preferences + OC_Preferences::deleteUser($uid); + + // Delete user files in /data/ + OC_Helper::rmdirr(\OC_User::getHome($uid)); + + // Remove it from the Cache + self::getManager()->delete($uid); } - // Delete the user's keys in preferences - OC_Preferences::deleteUser($uid); - // Delete user files in /data/ - OC_Helper::rmdirr(OC_Config::getValue('datadirectory', OC::$SERVERROOT . '/data') . '/' . $uid . '/'); - return true; } else { return false; |