aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files_sharing/lib/updater.php
diff options
context:
space:
mode:
Diffstat (limited to 'apps/files_sharing/lib/updater.php')
-rw-r--r--apps/files_sharing/lib/updater.php16
1 files changed, 14 insertions, 2 deletions
diff --git a/apps/files_sharing/lib/updater.php b/apps/files_sharing/lib/updater.php
index 66f0d30c77b..69219db8cb3 100644
--- a/apps/files_sharing/lib/updater.php
+++ b/apps/files_sharing/lib/updater.php
@@ -85,8 +85,20 @@ class Shared_Updater {
*/
static public function shareHook($params) {
if ($params['itemType'] === 'file' || $params['itemType'] === 'folder') {
- $id = \OC\Files\Filesystem::getPath($params['fileSource']);
- self::correctFolders($id);
+ $uidOwner = \OCP\User::getUser();
+ $users = \OCP\Share::getUsersItemShared('file', $params['fileSource'], $uidOwner, true);
+ if (!empty($users)) {
+ while (!empty($users)) {
+ $reshareUsers = array();
+ foreach ($users as $user) {
+ $etag = \OC\Files\Filesystem::getETag('');
+ \OCP\Config::setUserValue($user, 'files_sharing', 'etag', $etag);
+ // Look for reshares
+ $reshareUsers = array_merge($reshareUsers, \OCP\Share::getUsersItemShared('file', $params['fileSource'], $user, true));
+ }
+ $users = $reshareUsers;
+ }
+ }
}
}