From 1ae44c408f7e3f9d13b04e4e251c7bd575ce1021 Mon Sep 17 00:00:00 2001 From: Christopher Charbonneau Wells Date: Sat, 9 Sep 2017 11:54:34 -0400 Subject: [PATCH] Add timers list. --- babyblotter/templates/babyblotter/page.html | 9 ---- core/templates/core/timer_list.html | 48 ++++++++++++++++----- core/templates/core/timer_nav.html | 15 +++++-- core/templatetags/timers.py | 7 --- core/urls.py | 1 + core/views.py | 5 +++ 6 files changed, 55 insertions(+), 30 deletions(-) diff --git a/babyblotter/templates/babyblotter/page.html b/babyblotter/templates/babyblotter/page.html index b3868dea..687cab5e 100644 --- a/babyblotter/templates/babyblotter/page.html +++ b/babyblotter/templates/babyblotter/page.html @@ -8,15 +8,6 @@
{% block content %}{% endblock %}
- {% if false and perms.core.view_timer %} -
-

Timers

- {% if perms.core.add_timer %} - {% add_timer request.path %} - {% endif %} - {% list_timers %} -
- {% endif %} {% endblock %} \ No newline at end of file diff --git a/core/templates/core/timer_list.html b/core/templates/core/timer_list.html index 44f8baa5..6185c8a2 100644 --- a/core/templates/core/timer_list.html +++ b/core/templates/core/timer_list.html @@ -1,11 +1,39 @@ -{% for timer in timers %} -
-
{{ timer.name }}
-
-

{{ timer.current_duration }}

-
- +{% extends 'babyblotter/page.html' %} +{% load widget_tweaks %} +{% load duration %} + +{% block title %}Sleep{% endblock %} + +{% block content %} +

Timers

+
+ + + + + + + + + + + + + {% for timer in object_list %} + + + + + + + + + {% empty %} + + + + {% endfor %} + +
NameStartEndDurationActiveUser
{{ timer }}{{ timer.start }}{{ timer.end }}{{ timer.duration|duration_string }}{{ timer.active }}{{ timer.user }}
No timer entries found.
-{% endfor %} \ No newline at end of file +{% endblock %} \ No newline at end of file diff --git a/core/templates/core/timer_nav.html b/core/templates/core/timer_nav.html index e868a7ea..f00f6dc0 100644 --- a/core/templates/core/timer_nav.html +++ b/core/templates/core/timer_nav.html @@ -8,13 +8,20 @@ diff --git a/core/templatetags/timers.py b/core/templatetags/timers.py index f3d6f196..9d4fd24e 100644 --- a/core/templatetags/timers.py +++ b/core/templatetags/timers.py @@ -9,13 +9,6 @@ from core.models import Timer register = template.Library() -@register.inclusion_tag('core/timer_list.html', takes_context=True) -def list_timers(context, active=True): - request = context['request'] or None - timers = Timer.objects.filter(user=request.user, active=active) - return {'timers': timers} - - @register.inclusion_tag('core/timer_nav.html', takes_context=True) def timer_nav(context, active=True): request = context['request'] or None diff --git a/core/urls.py b/core/urls.py index e9b50c8d..9f0df7f5 100644 --- a/core/urls.py +++ b/core/urls.py @@ -47,6 +47,7 @@ urlpatterns = [ url(r'^sleep/(?P[0-9]+)/delete/$', views.SleepDelete.as_view(), name='sleep-delete'), + url(r'^timers/$', views.TimerList.as_view(), name='timer-list'), url(r'^timer/add/$', views.TimerAdd.as_view(), name='timer-add'), url(r'^timer/add/quick/$', views.TimerAddQuick.as_view(), name='timer-add-quick'), diff --git a/core/views.py b/core/views.py index 4c2a21a6..94600c9c 100644 --- a/core/views.py +++ b/core/views.py @@ -152,6 +152,11 @@ class SleepDelete(PermissionRequiredMixin, DeleteView): success_url = '/sleep' +class TimerList(PermissionRequiredMixin, ListView): + model = Timer + permission_required = ('core.view_timer',) + + class TimerDetail(PermissionRequiredMixin, DetailView): model = Timer permission_required = ('core.view_timer',)