From cc479941c95fc487d1bbe8ed49af825177c55a81 Mon Sep 17 00:00:00 2001 From: Alban Gruin Date: Sun, 26 Feb 2017 21:38:08 +0100 Subject: Différentes améliorations concernant l'affichage des emplois du temps - Affichage des remarques concernant les cours sur les emplois du temps et dans les mails - Meilleur formatage des salles - Meilleure gestion des retours à la ligne dans les mails --- templates/mail/mail_timetable.txt | 8 ++++---- templates/timetable.html | 3 ++- templatetags/rooms.py | 27 +++++++++++++++++++++++++++ 3 files changed, 33 insertions(+), 5 deletions(-) create mode 100644 templatetags/rooms.py diff --git a/templates/mail/mail_timetable.txt b/templates/mail/mail_timetable.txt index a14ce9a..f6b8364 100644 --- a/templates/mail/mail_timetable.txt +++ b/templates/mail/mail_timetable.txt @@ -1,7 +1,7 @@ -{% autoescape off %}{% for day in courses %}{% filter title %}{{ day.0.begin|date:"l j F o" }}{% endfilter %} - de {{ day.0.begin|date:"H:i" }} à {% with day|last as last %}{{ last.end|date:"H:i" }}{% endwith %} -{% for course in day %} - * {{ course.name }} ({{ course.type }}), de {{ course.begin|date:"H:i" }} à {{ course.end|date:"H:i" }}{% if course.rooms.all|length > 0 %} - Salle{% if course.rooms.all|length > 1 %}s{% endif %} {% for room in course.rooms.all %}{{ room }} {% endfor %}{% endif %} +{% load rooms %}{% autoescape off %}{% for day in courses %}{% filter title %}{{ day.0.begin|date:"l j F o" }}{% endfilter %} - de {{ day.0.begin|date:"H:i" }} à {% with day|last as last %}{{ last.end|date:"H:i" }}{% endwith %} +{% for course in day %} * {{ course.name }} ({{ course.type }}), de {{ course.begin|date:"H:i" }} à {{ course.end|date:"H:i" }}{% if course.rooms.all|length > 0 %} + {{ course.rooms.all|format_rooms }}{% endif %}{% if course.notes is not None %} + Remarques : {{ course.notes }}{% endif %} {% endfor %}{% empty %}Aucun cours pour le groupe {{ group }} pendant la semaine {{ week }}. {% endfor %}{% endautoescape %} diff --git a/templates/timetable.html b/templates/timetable.html index 0d3432c..78dcfed 100644 --- a/templates/timetable.html +++ b/templates/timetable.html @@ -1,4 +1,5 @@ {% extends "index.html" %} +{% load rooms %} {% block title %}{{ group.timetable.name }} – {{ group.name }} – Semaine {{ week }} – {% endblock %} @@ -8,7 +9,7 @@

{% filter title %}{{ day.0.begin|date:"l j F o" }}{% endfilter %} – de {{ day.0.begin|date:"H:i" }} à {% with day|last as last %}{{ last.end|date:"H:i" }}{% endwith %}

{% endfor %}

S'abonner à cet emploi du temps

{% endblock %} diff --git a/templatetags/rooms.py b/templatetags/rooms.py new file mode 100644 index 0000000..d76f0ee --- /dev/null +++ b/templatetags/rooms.py @@ -0,0 +1,27 @@ +# Copyright (C) 2017 Alban Gruin +# +# celcatsanitizer is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# celcatsanitizer is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with celcatsanitizer; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +from django import template + +register = template.Library() + +@register.filter +def format_rooms(rooms): + joined = ", ".join([str(room) for room in rooms]) + if len(rooms) > 1: + return "Salles {0}".format(joined) + else: + return "Salle {0}".format(joined) -- cgit v1.2.1