Ajouté les filtres les plus faciles.
[auf_savoirs_en_partage_django.git] / auf_savoirs_en_partage / chercheurs / middleware.py
CommitLineData
518d0b44
EMS
1from chercheurs.models import Personne, Chercheur
2
3class LazyChercheur(object):
4
5 def __get__(self, request, obj_type=None):
6 if not hasattr(request, '_cached_chercheur'):
7 request._cached_chercheur = None
8 if request.user.is_authenticated():
9 try:
695930dd 10 request._cached_chercheur = Chercheur.objects.get(actif=True, courriel=request.user.email)
10eb38aa 11 except (Personne.DoesNotExist, Chercheur.DoesNotExist):
518d0b44
EMS
12 pass
13 return request._cached_chercheur
14
15class ChercheurMiddleware(object):
16
17 def process_request(self, request):
18 request.__class__.chercheur = LazyChercheur()