diff options
author | Julius Härtl <jus@bitgrid.net> | 2020-09-23 16:38:24 +0200 |
---|---|---|
committer | Julius Härtl <jus@bitgrid.net> | 2020-11-23 09:11:53 +0100 |
commit | e241f14f24bbefdcf972d1d4ec7d8ea5fb0122f2 (patch) | |
tree | ad4ef316b3fce2efed4547a94e69c1b0cd8561f0 /apps/files_trashbin | |
parent | f06f9a91b3f29891fd7aae0b5a3b19f1f9b7690f (diff) | |
download | nextcloud-server-e241f14f24bbefdcf972d1d4ec7d8ea5fb0122f2.tar.gz nextcloud-server-e241f14f24bbefdcf972d1d4ec7d8ea5fb0122f2.zip |
Delete files that exceed trashbin size immediately
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Diffstat (limited to 'apps/files_trashbin')
-rw-r--r-- | apps/files_trashbin/lib/Trashbin.php | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/apps/files_trashbin/lib/Trashbin.php b/apps/files_trashbin/lib/Trashbin.php index 7f83cbbc8a5..91f3cec21ee 100644 --- a/apps/files_trashbin/lib/Trashbin.php +++ b/apps/files_trashbin/lib/Trashbin.php @@ -304,6 +304,14 @@ class Trashbin { $trashStorage->unlink($trashInternalPath); } + $config = \OC::$server->getConfig(); + $systemTrashbinSize = (int)$config->getAppValue('files_trashbin', 'trashbin_size', '-1'); + $userTrashbinSize = (int)$config->getUserValue($owner, 'files_trashbin', 'trashbin_size', '-1'); + $configuredTrashbinSize = ($userTrashbinSize < 0) ? $systemTrashbinSize : $userTrashbinSize; + if ($configuredTrashbinSize >= 0 && $sourceStorage->filesize($sourceInternalPath) >= $configuredTrashbinSize) { + return false; + } + $trashStorage->getUpdater()->renameFromStorage($sourceStorage, $sourceInternalPath, $trashInternalPath); try { |