From 54508fdfb49064d99152c9ce6ba4e19699fc0d14 Mon Sep 17 00:00:00 2001 From: Sergey Linnik Date: Mon, 16 Jul 2018 17:33:16 +0300 Subject: [PATCH] Fixed #200 - editing from group folder with shared link --- controller/callbackcontroller.php | 4 +++- controller/editorcontroller.php | 8 +++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/controller/callbackcontroller.php b/controller/callbackcontroller.php index 3f448ed1..097ea139 100644 --- a/controller/callbackcontroller.php +++ b/controller/callbackcontroller.php @@ -359,7 +359,9 @@ public function track($doc, $users, $key, $status, $url) { $ownerId = $hashData->ownerId; \OC_Util::tearDownFS(); - \OC_Util::setupFS($ownerId); + if (!empty($ownerId)) { + \OC_Util::setupFS($ownerId); + } } $token = isset($hashData->token) ? $hashData->token : NULL; diff --git a/controller/editorcontroller.php b/controller/editorcontroller.php index 7110508b..5e0617ac 100644 --- a/controller/editorcontroller.php +++ b/controller/editorcontroller.php @@ -430,7 +430,13 @@ public function config($fileId, $token = NULL) { $editable = $file->isUpdateable() && (empty($token) || ($this->getShare($token)[0]->getPermissions() & Constants::PERMISSION_UPDATE) === Constants::PERMISSION_UPDATE); if ($editable && $canEdit) { - $hashCallback = $this->crypt->GetHash(["fileId" => $fileId, "ownerId" => $file->getOwner()->getUID(), "token" => $token, "action" => "track"]); + $ownerId = NULL; + $owner = $file->getOwner(); + if (!empty($owner)) { + $ownerId = $owner->getUID(); + } + + $hashCallback = $this->crypt->GetHash(["fileId" => $fileId, "ownerId" => $ownerId, "token" => $token, "action" => "track"]); $callback = $this->urlGenerator->linkToRouteAbsolute($this->appName . ".callback.track", ["doc" => $hashCallback]); if (!empty($this->config->GetStorageUrl())) {