diff options
author | Robin Appelman <icewind@owncloud.com> | 2015-10-01 15:37:26 +0200 |
---|---|---|
committer | Thomas Müller <thomas.mueller@tmit.eu> | 2015-10-06 11:38:41 +0200 |
commit | 0817024e6f817a04c1258dba971f412550f6a058 (patch) | |
tree | 14db9c5b35452ddd0bdb5b6e181e9637f4538f1e /apps/files_sharing/lib | |
parent | d9ffb094793f8bfff2c4231e5bde65900f6224cd (diff) | |
download | nextcloud-server-0817024e6f817a04c1258dba971f412550f6a058.tar.gz nextcloud-server-0817024e6f817a04c1258dba971f412550f6a058.zip |
Mark shares as dirty when changing permissions
Diffstat (limited to 'apps/files_sharing/lib')
-rw-r--r-- | apps/files_sharing/lib/propagation/changewatcher.php | 8 | ||||
-rw-r--r-- | apps/files_sharing/lib/propagation/propagationmanager.php | 8 |
2 files changed, 13 insertions, 3 deletions
diff --git a/apps/files_sharing/lib/propagation/changewatcher.php b/apps/files_sharing/lib/propagation/changewatcher.php index 9da3ffe51a2..f9b28c7f967 100644 --- a/apps/files_sharing/lib/propagation/changewatcher.php +++ b/apps/files_sharing/lib/propagation/changewatcher.php @@ -99,4 +99,12 @@ class ChangeWatcher { $propagator->propagateChanges(); } } + + public function permissionsHook($params) { + $share = $params['share']; + + if ($share['item_type'] === 'file' || $share['item_type'] === 'folder') { + $this->recipientPropagator->markDirty($share, time()); + } + } } diff --git a/apps/files_sharing/lib/propagation/propagationmanager.php b/apps/files_sharing/lib/propagation/propagationmanager.php index d220551f8d6..7fcf467de9a 100644 --- a/apps/files_sharing/lib/propagation/propagationmanager.php +++ b/apps/files_sharing/lib/propagation/propagationmanager.php @@ -25,6 +25,7 @@ use OC\Files\Filesystem; use OC\Files\View; use OCP\IConfig; use OCP\IUserSession; +use OCP\Util; /** @@ -119,8 +120,9 @@ class PropagationManager { // for marking shares owned by the active user as dirty when a file inside them changes $this->listenToOwnerChanges($user->getUID(), $user->getUID()); - \OC_Hook::connect('OC_Filesystem', 'post_write', $watcher, 'writeHook'); - \OC_Hook::connect('OC_Filesystem', 'post_delete', $watcher, 'writeHook'); - \OC_Hook::connect('OC_Filesystem', 'post_rename', $watcher, 'renameHook'); + Util::connectHook('OC_Filesystem', 'post_write', $watcher, 'writeHook'); + Util::connectHook('OC_Filesystem', 'post_delete', $watcher, 'writeHook'); + Util::connectHook('OC_Filesystem', 'post_rename', $watcher, 'renameHook'); + Util::connectHook('OCP\Share', 'post_update_permissions', $watcher, 'permissionsHook'); } } |