From 5490a366c2acba45cc617a825904ba95eeb6b374 Mon Sep 17 00:00:00 2001 From: Alban Gruin Date: Tue, 12 Sep 2017 21:42:52 +0200 Subject: Ajout d’une page contact. L’adresse email est brouillée. --- templates/contact.html | 9 +++++++++ templates/index.html | 2 +- templatetags/email.py | 24 ++++++++++++++++++++++++ urls.py | 1 + views.py | 4 ++++ 5 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 templates/contact.html create mode 100644 templatetags/email.py diff --git a/templates/contact.html b/templates/contact.html new file mode 100644 index 0000000..1359a16 --- /dev/null +++ b/templates/contact.html @@ -0,0 +1,9 @@ +{% extends "index.html" %} +{% load email %} + +{% block title %}Contacter – {% endblock %} + +{% block body %} +

Contacter

+

Pour contacter l’administrateur du service, envoyez un mail à l’adresse suivante :
{{ email|format_email }}.

+{% endblock %} diff --git a/templates/index.html b/templates/index.html index f4b105c..a685031 100644 --- a/templates/index.html +++ b/templates/index.html @@ -23,7 +23,7 @@ {% endblock %} diff --git a/templatetags/email.py b/templatetags/email.py new file mode 100644 index 0000000..68dbd84 --- /dev/null +++ b/templatetags/email.py @@ -0,0 +1,24 @@ +# Copyright (C) 2017 Alban Gruin +# +# celcatsanitizer is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published +# by the Free Software Foundation, either version 3 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 Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with celcatsanitizer. If not, see . + +from django import template + +register = template.Library() + +@register.filter +def format_email(address): + return address.replace("+", " [plus] ") \ + .replace("@", " [arobase] ") \ + .replace(".", " [point] ") diff --git a/urls.py b/urls.py index 2e731b5..58cf019 100644 --- a/urls.py +++ b/urls.py @@ -18,6 +18,7 @@ from . import feeds, views urlpatterns = [ url(r"^$", views.index, name="index"), + url(r"^contact$", views.contact, name="contact"), url(r"^(?P[-\w]+)/$", views.mention_list, name="mentions"), url(r"^(?P[-\w]+)/(?P[-\w]+)/$", views.group_list, name="groups"), url(r"^(?P[-\w]+)/(?P[-\w]+)/(?P[-\w]+)/$", views.timetable, name="timetable"), diff --git a/views.py b/views.py index f445725..302b375 100644 --- a/views.py +++ b/views.py @@ -13,6 +13,7 @@ # You should have received a copy of the GNU Affero General Public License # along with celcatsanitizer. If not, see . +from django.conf import settings from django.shortcuts import get_object_or_404, render from .models import Timetable, LastUpdate, Group, Course, Year @@ -65,3 +66,6 @@ def timetable(request, year_slug, timetable_slug, group_slug, year=None, week=No grouped_courses = group_courses(courses) return render(request, "timetable.html", {"group": group, "courses": grouped_courses, "last_update": last_update.date, "year": year, "week": int(week)}) + +def contact(request): + return render(request, "contact.html", {"email": settings.ADMINS[0][1]}) -- cgit v1.2.1