aboutsummaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorRoeland Jago Douma <roeland@famdouma.nl>2018-05-14 19:58:19 +0200
committerRoeland Jago Douma <roeland@famdouma.nl>2018-05-14 19:58:19 +0200
commit39bb9c06d165af8b39ba2c3cdcd8d4f9727e6afd (patch)
treeb4e48501e96444302381fbb79971991bb153a1ab /apps
parent0dcb6b267524b645d3e058b935bf8f6b31bf1f56 (diff)
downloadnextcloud-server-39bb9c06d165af8b39ba2c3cdcd8d4f9727e6afd.tar.gz
nextcloud-server-39bb9c06d165af8b39ba2c3cdcd8d4f9727e6afd.zip
Delete the previews when a version is restored
Fixes #9469 When a version of a file is restored the previews are no longer valid. Thus we should remove them so they are regenerated. Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Diffstat (limited to 'apps')
-rw-r--r--apps/files_versions/lib/Storage.php8
1 files changed, 8 insertions, 0 deletions
diff --git a/apps/files_versions/lib/Storage.php b/apps/files_versions/lib/Storage.php
index 217bf02fd39..401544cc5d7 100644
--- a/apps/files_versions/lib/Storage.php
+++ b/apps/files_versions/lib/Storage.php
@@ -337,6 +337,9 @@ class Storage {
return false;
}
+ // Fetch the userfolder to trigger view hooks
+ $userFolder = \OC::$server->getUserFolder($uid);
+
$users_view = new View('/'.$uid);
$files_view = new View('/'. User::getUser().'/files');
@@ -375,9 +378,14 @@ class Storage {
if (self::copyFileContents($users_view, $fileToRestore, 'files' . $filename)) {
$files_view->touch($file, $revision);
Storage::scheduleExpire($uid, $file);
+
+ $node = $userFolder->get($file);
+
+ // TODO: move away from those legacy hooks!
\OC_Hook::emit('\OCP\Versions', 'rollback', array(
'path' => $filename,
'revision' => $revision,
+ 'node' => $node,
));
return true;
} else if ($versionCreated) {