diff options
author | Leif Johansson <leifj@sunet.se> | 2010-12-13 12:11:44 +0100 |
---|---|---|
committer | Leif Johansson <leifj@sunet.se> | 2010-12-13 12:11:44 +0100 |
commit | f8a03922700b0686feb25ce20b1e5b608b6201ea (patch) | |
tree | feb51908347e13854507d89530754e40ba60919d /coip/middleware.py | |
parent | 32f7e853e2f5a9d85f5c04e8769da2ac21286fc6 (diff) |
middleware for mapping users
Diffstat (limited to 'coip/middleware.py')
-rw-r--r-- | coip/middleware.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/coip/middleware.py b/coip/middleware.py new file mode 100644 index 0000000..d612de9 --- /dev/null +++ b/coip/middleware.py @@ -0,0 +1,26 @@ +''' +Created on Dec 13, 2010 + +@author: leifj +''' +from django.core.exceptions import ImproperlyConfigured +from coip.apps.userprofile.models import UserProfile + +class UserMappingMiddleware(object): + ''' + Middleware for supporting merged and mapped user identities + ''' + + def process_request(self,request): + if not hasattr(request,'user'): + raise ImproperlyConfigured("Place before RemoteUserMiddleware") + + username = request.META['REMOTE_USER'] + qs = UserProfile.objects.filter(user__username=username,primary=True) + if qs: + profile = qs[0] + username = profile.identifier + + request.META['REMOTE_USER'] = username + +
\ No newline at end of file |