aboutsummaryrefslogtreecommitdiff
path: root/app/controllers/file.php
diff options
context:
space:
mode:
authorDavid Siegfried <david.siegfried@uni-vechta.de>2022-08-16 14:16:07 +0000
committerDavid Siegfried <david.siegfried@uni-vechta.de>2022-08-16 14:16:07 +0000
commit2e0e2b288f96b4a447ccd78659578d4746fbc8b8 (patch)
tree0a022d7a917561cabb586f4627e9101f9f562219 /app/controllers/file.php
parent699e552b564a9578c35364c2b7e37c665c9eb8d1 (diff)
show folder-size, closes #1402
Closes #1402 Merge request studip/studip!894
Diffstat (limited to 'app/controllers/file.php')
-rw-r--r--app/controllers/file.php19
1 files changed, 13 insertions, 6 deletions
diff --git a/app/controllers/file.php b/app/controllers/file.php
index 2ee852e..f41d87b 100644
--- a/app/controllers/file.php
+++ b/app/controllers/file.php
@@ -331,12 +331,7 @@ class FileController extends AuthenticatedController
//The file system object is a folder.
//Calculate the files and the folder size:
- $this->folder_size = 0;
- $this->folder_file_amount = 0;
- foreach ($this->folder->getFiles() as $file) {
- $this->folder_file_amount++;
- $this->folder_size += $file->getSize();
- }
+ list($this->folder_size, $this->folder_file_amount) = $this->getFolderSize($this->folder);
PageLayout::setTitle($this->folder->name);
$this->render_action('folder_details');
}
@@ -1918,6 +1913,7 @@ class FileController extends AuthenticatedController
PageLayout::postMessage($result);
}
}
+ list($this->folder_size, $this->folder_file_amount) = $this->getFolderSize($folder);
}
public function delete_folder_action($folder_id)
@@ -2148,4 +2144,15 @@ class FileController extends AuthenticatedController
return \FilesController::getRangeLink($folder) . '#fileref_' . $fileRef->id;
}
+
+ private function getFolderSize($folder): array
+ {
+ $folder_size = 0;
+ $folder_file_amount = 0;
+ foreach ($folder->getFiles() as $file) {
+ $folder_size += $file->getSize();
+ $folder_file_amount++;
+ }
+ return [$folder_size, $folder_file_amount];
+ }
}