From 52b9dbf48b8f9c7ea691937305f35510a4d68293 Mon Sep 17 00:00:00 2001 From: Kálmán Viktor <kviktor@cloud.bme.hu> Date: Thu, 24 Jul 2014 12:16:25 +0200 Subject: [PATCH] dashboard: add progress bar for quota --- circle/dashboard/static/dashboard/dashboard.css | 18 ++++++++++++++++++ circle/dashboard/templates/dashboard/store/list.html | 20 ++++++++++++++++++++ circle/dashboard/views.py | 4 +++- 3 files changed, 41 insertions(+), 1 deletion(-) diff --git a/circle/dashboard/static/dashboard/dashboard.css b/circle/dashboard/static/dashboard/dashboard.css index e115ac1..e5786ec 100644 --- a/circle/dashboard/static/dashboard/dashboard.css +++ b/circle/dashboard/static/dashboard/dashboard.css @@ -831,3 +831,21 @@ textarea[name="list-new-namelist"] { .store-action-button { margin-left: 5px; } + +.progress-bar { + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; +} + +#progress-marker-hard { + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; + right: 0; + background: red; +} + +.progress-marker { + width: 6px; + height: 20px; + position: absolute; +} diff --git a/circle/dashboard/templates/dashboard/store/list.html b/circle/dashboard/templates/dashboard/store/list.html index b8bef83..a52402b 100644 --- a/circle/dashboard/templates/dashboard/store/list.html +++ b/circle/dashboard/templates/dashboard/store/list.html @@ -12,6 +12,26 @@ </div> </div> +<div class="progress" style="position: relative; overflow: visible;"> + <div class="progress-bar" role="progressbar" aria-valuenow="{{ quota.Used }}" aria-valuemin="0" + aria-valuemax="{{ quota.Hard }}" style="width: + {% if quota.Used > quota.Hard %}100{% else %}{% widthratio quota.Used quota.Hard 100 %}%{% endif %}%"> + <div style="padding-top: 2px;"> + {% blocktrans with used=quota.readable_used %} + {{ used }} used + {% endblocktrans %} + </div> + </div> + <div class="progress-marker" id="progress-marker-hard" data-placement="left" + title="{% trans "Hard limit" %}: {{ quota.readable_hard }}"> + </div> + <div class="progress-marker" id="progress-marker-soft" style="background: orange; + left: {% widthratio quota.Soft quota.Hard 100 %}%" + title="{% trans "Soft limit" %}: {{ quota.readable_soft }}" + data-placement="left"> + </div> +</div> + {% endblock %} {% block extra_js %} diff --git a/circle/dashboard/views.py b/circle/dashboard/views.py index 21ceaa0..9933584 100644 --- a/circle/dashboard/views.py +++ b/circle/dashboard/views.py @@ -3100,7 +3100,9 @@ class StoreList(LoginRequiredMixin, TemplateView): directory = self.request.GET.get("directory", "/") directory = "/" if not len(directory) else directory - context['root'] = Store(self.request.user).list(directory) + store = Store(self.request.user) + context['root'] = store.list(directory) + context['quota'] = store.get_quota() context['up_url'] = self.create_up_directory(directory) context['current'] = directory context['next_url'] = "%s%s?directory=%s" % ( -- libgit2 0.26.0