/** * @param array $params */ public static function shareHook($params) { if ($params['itemType'] === 'file' || $params['itemType'] === 'folder') { if (isset($params['uidOwner'])) { $uidOwner = $params['uidOwner']; } else { $uidOwner = \OCP\User::getUser(); } $users = \OCP\Share::getUsersItemShared($params['itemType'], $params['fileSource'], $uidOwner, true, false); if (!empty($users)) { while (!empty($users)) { $reshareUsers = array(); foreach ($users as $user) { if ($user !== $uidOwner) { $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; } } } }