a521a7be145b85a8ff36842cb4315b9e081b2509
[auf_rh_dae.git] / project / decorators.py
1 # -*- encoding: utf-8 -*-
2 """
3 Décorateurs AUF
4 """
5 from django.contrib.auth.decorators import user_passes_test
6 from django.core.urlresolvers import reverse
7 from django.http import HttpResponseRedirect
8 from django.conf import settings
9 from django.contrib.auth import REDIRECT_FIELD_NAME
10 from django.utils.http import urlquote
11 from django.contrib import messages
12
13 def redirect_interdiction(request, msg=u"Vous n'avez pas accès à cette page"):
14 """
15 Redirection du la page de login avec un message d'erreur.
16 """
17 login_url = settings.LOGIN_URL
18 path = urlquote(request.get_full_path())
19 tup = login_url, REDIRECT_FIELD_NAME, path
20 messages.add_message(request, messages.ERROR, "Votre compte ne permet pas d'accéder à cette partie de l'application.")
21 return HttpResponseRedirect('%s?%s=%s' % tup)
22
23