From 7c074fdc67155b8eb0eb5f7c664753c30239f501 Mon Sep 17 00:00:00 2001 From: Helge Jung <hej@c3pb.de> Date: Thu, 19 Dec 2024 00:59:31 +0100 Subject: [PATCH] backoffice: fix SoS display ordering closes #602 --- .../backoffice/event/components/list_content.html | 8 ++++++-- src/backoffice/templatetags/c3assemblies.py | 7 +++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/backoffice/templates/backoffice/event/components/list_content.html b/src/backoffice/templates/backoffice/event/components/list_content.html index 725a8ffd5..b43ba5382 100644 --- a/src/backoffice/templates/backoffice/event/components/list_content.html +++ b/src/backoffice/templates/backoffice/event/components/list_content.html @@ -36,8 +36,12 @@ <tbody> {% for event in events %} <tr class="{% if not event.is_public %}text-muted{% endif %}"> - <td>{{ event.schedule_start }}</td> - <td>{{ event.schedule_duration }}</td> + <td data-order="{{ event.schedule_start|date:"U" }}"> + <abbr title="{{ event.schedule_start|date:"c" }}">{{ event.schedule_start|conference_time:conference }}</abbr> + </td> + <td data-order="{{ event.schedule_duration.total_seconds|default:"0" }}"> + {{ event.schedule_duration|naturaltimespan }} + </td> <td> {% if user_list and event.kind == 'sos' %} <a href="{% url 'backoffice:sos-edit' pk=event.pk %}">{{ event.name }}</a> diff --git a/src/backoffice/templatetags/c3assemblies.py b/src/backoffice/templatetags/c3assemblies.py index 5539f5fcc..b18a74875 100644 --- a/src/backoffice/templatetags/c3assemblies.py +++ b/src/backoffice/templatetags/c3assemblies.py @@ -45,8 +45,11 @@ def get_language_item(dictionary): @register.filter -def naturaltimespan(x): - assert isinstance(x, timedelta), str.format('Expected a timedelta object: {0!r}', x) +def naturaltimespan(x: timedelta) -> str or None: + if x is None: + return '' + if not isinstance(x, timedelta): + raise ValueError('Expected a timedelta object.') seconds = x.total_seconds() -- GitLab