From 6dda30b5a2adc48a79aff05221020d07f773dffb Mon Sep 17 00:00:00 2001 From: Bjoern Schiessle Date: Fri, 8 Aug 2014 12:16:54 +0200 Subject: remove share permissions if user is excluded from sharing --- lib/private/files/view.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lib/private/files/view.php b/lib/private/files/view.php index 85af4a9abef..2a28e6fce88 100644 --- a/lib/private/files/view.php +++ b/lib/private/files/view.php @@ -960,6 +960,10 @@ class View { $content['permissions'] = $storage->getPermissions($content['path']); $cache->update($content['fileid'], array('permissions' => $content['permissions'])); } + // if sharing was disabled for the user we remove the share permissions + if (\OCP\Util::isSharingDisabledForUser()) { + $content['permissions'] = $content['permissions'] & ~\OCP\PERMISSION_SHARE; + } $files[] = new FileInfo($path . '/' . $content['name'], $storage, $content['path'], $content); } @@ -1008,6 +1012,12 @@ class View { } } $rootEntry['path'] = substr($path . '/' . $rootEntry['name'], strlen($user) + 2); // full path without /$user/ + + // if sharing was disabled for the user we remove the share permissions + if (\OCP\Util::isSharingDisabledForUser()) { + $content['permissions'] = $content['permissions'] & ~\OCP\PERMISSION_SHARE; + } + $files[] = new FileInfo($path . '/' . $rootEntry['name'], $subStorage, '', $rootEntry); } } -- cgit v1.2.3