diff --git a/openatlas/templates/file.html b/openatlas/templates/file.html index f8de3ca26..e8fe3484f 100644 --- a/openatlas/templates/file.html +++ b/openatlas/templates/file.html @@ -1,73 +1,128 @@
{{ info|display_info|safe }} {% if disk_space_info %} +

+ {{ _('local disk usage') }} +

+ class="progress-bar bg-primary" + role="progressbar" + style="width: {{ disk_space_info.percent_used - disk_space_info.percent_project }}%" + aria-valuenow="{{ disk_space_info.percent_used - disk_space_info.percent_project }}" + aria-valuemin="0" + aria-valuemax="100"> {{ disk_space_info.percent_used - disk_space_info.percent_project }}%
+ class="progress-bar bg-warning" + role="progressbar" + style="width: {{ disk_space_info.percent_project }}%" + aria-valuenow="{{ disk_space_info.percent_project }}" + aria-valuemin="0" + aria-valuemax="100"> {{ disk_space_info.percent_project }}%
+ class="progress-bar bg-gray" + role="progressbar" + style="width: {{ 100 - disk_space_info.percent_used }}%" + aria-valuenow="{{ 100 - disk_space_info.percent_used }}" + aria-valuemin="0" + aria-valuemax="100"> {{ 100 - disk_space_info.percent_used }}%

- {{ _('total disk space')|uc_first }} {{ disk_space_info.total }} + {{ _('total disk space')|uc_first }} + {{ disk_space_info.total }}

- {{ _('non project files')|uc_first }} {{ disk_space_info.other_files }} + {{ _('non project files')|uc_first }} + {{ disk_space_info.other_files }}

- {{ _('project files')|uc_first }} {{ disk_space_info.project }} + {{ _('project files')|uc_first }} + {{ disk_space_info.project }}

- {{ _('export')|uc_first }} {{ disk_space_info.export }} - -

-

- {{ _('upload')|uc_first }} {{ disk_space_info.upload }} - -

-

- {{ _('processed')|uc_first }} {{ disk_space_info.processed }} - -

-

- {{ _('iiif')|uc_first }} {{ disk_space_info.iiif }} - -

-

- {{ _('free disk space')|uc_first }} {{ disk_space_info.free }} + {{ _('free disk space')|uc_first }} + {{ disk_space_info.free }}

+

+ {{ _('distribution of project files') }} +

+
+
+ {{ disk_space_info.percent_upload }}% +
+
+ {{ disk_space_info.percent_export }}% +
+
+ {{ disk_space_info.percent_processed }}% +
+
+ {{ disk_space_info.percent_iiif }}% +
+
+
+

+ + {{ _('upload folder')|uc_first }} + {{ disk_space_info.upload }} +

+

+ + {{ _('export folder')|uc_first }} + {{ disk_space_info.export }} +

+

+ + {{ _('processed images folder')|uc_first }} + {{ disk_space_info.processed }} +

+

+ + {{ _('iiif folder')|uc_first }} + {{ disk_space_info.iiif }} +

+
{% endif %}
{% if 'manager'|is_authorized %}
- Logo
+ Logo
{% if g.settings.logo_file_id %} {{ _('remove custom logo')|button(url_for('logo_remove'))|safe }} diff --git a/openatlas/views/admin.py b/openatlas/views/admin.py index 72d54ae66..250559f8b 100644 --- a/openatlas/views/admin.py +++ b/openatlas/views/admin.py @@ -819,7 +819,7 @@ def admin_delete_orphaned_resized_images() -> Response: def get_disk_space_info() -> Optional[dict[str, Any]]: - export, upload, processed, iiif = 0,0,0,0 + export, upload, processed, iiif = 0, 0, 0, 0 if os.name == 'posix': process = run( ['du', '-sb', app.config['EXPORT_PATH']], @@ -852,6 +852,10 @@ def get_disk_space_info() -> Optional[dict[str, Any]]: stats = shutil.disk_usage(app.config['UPLOAD_PATH']) percent_free = 100 - math.ceil(stats.free / (stats.total / 100)) percent_files = math.ceil(files_size / (stats.total / 100)) + percent_export = math.ceil(export / (files_size / 100)) + percent_upload = math.ceil(upload / (files_size / 100)) + percent_processed = math.ceil(processed / (files_size / 100)) + percent_iiif = math.ceil(iiif / (files_size / 100)) other_files = stats.total - stats.free - files_size return { 'total': convert_size(stats.total), @@ -864,6 +868,10 @@ def get_disk_space_info() -> Optional[dict[str, Any]]: 'free': convert_size(stats.free), 'percent_used': percent_free, 'percent_project': percent_files, + 'percent_export': percent_export, + 'percent_upload': percent_upload, + 'percent_processed': percent_processed, + 'percent_iiif': percent_iiif, 'percent_other': 100 - (percent_files + percent_free)}