summaryrefslogtreecommitdiff
path: root/coip/middleware.py
blob: b4af835d17f67e3f8e86eda91d4ab5a774e805bd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
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 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