diff options
author | Bjoern Schiessle <bjoern@schiessle.org> | 2017-09-15 12:14:08 +0200 |
---|---|---|
committer | Bjoern Schiessle <bjoern@schiessle.org> | 2017-09-15 12:14:31 +0200 |
commit | 90d76939979ff3e32c5ec4408668f4be64cac3fa (patch) | |
tree | e139a54ff40df58c065bf91bddccbbf5c99c20ec /apps/files_versions/lib/Storage.php | |
parent | 8500e114575d7e02ffda8070980cc77ba147e60f (diff) | |
download | nextcloud-server-90d76939979ff3e32c5ec4408668f4be64cac3fa.tar.gz nextcloud-server-90d76939979ff3e32c5ec4408668f4be64cac3fa.zip |
allow apps to disable versions for some files
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
Diffstat (limited to 'apps/files_versions/lib/Storage.php')
-rw-r--r-- | apps/files_versions/lib/Storage.php | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/apps/files_versions/lib/Storage.php b/apps/files_versions/lib/Storage.php index 5e3f87b3646..25c64b89000 100644 --- a/apps/files_versions/lib/Storage.php +++ b/apps/files_versions/lib/Storage.php @@ -47,6 +47,7 @@ use OC\Files\Filesystem; use OC\Files\View; use OCA\Files_Versions\AppInfo\Application; use OCA\Files_Versions\Command\Expire; +use OCA\Files_Versions\Events\CreateVersionEvent; use OCP\Files\NotFoundException; use OCP\Lock\ILockingProvider; use OCP\User; @@ -179,6 +180,17 @@ class Storage { $files_view = new View('/'.$uid .'/files'); $users_view = new View('/'.$uid); + $eventDispatcher = \OC::$server->getEventDispatcher(); + $id = $files_view->getFileInfo($filename)->getId(); + $nodes = \OC::$server->getRootFolder()->getById($id); + foreach ($nodes as $node) { + $event = new CreateVersionEvent($node); + $eventDispatcher->dispatch('OCA\Files_Versions::createVersion', $event); + if ($event->shouldCreateVersion() === false) { + return false; + } + } + // no use making versions for empty files if ($files_view->filesize($filename) === 0) { return false; |