middleware: conserve le dernier domaine du partenaire même après une connexion
This commit is contained in:
parent
a46ce2cc09
commit
7947784f89
|
@ -1,6 +1,5 @@
|
|||
from django.conf import settings
|
||||
import urlparse
|
||||
import logging
|
||||
|
||||
from authentic2.utils import same_domain
|
||||
|
||||
|
@ -37,11 +36,16 @@ class CUTMiddleware(object):
|
|||
if netloc:
|
||||
domain = netloc.split(':')[-1]
|
||||
|
||||
if hasattr(request, 'session'):
|
||||
if not domain:
|
||||
domain = request.session.get('cut_domain')
|
||||
|
||||
if not domain:
|
||||
domain = request.session.get('cut_domain')
|
||||
domain = getattr(request, 'domain', None)
|
||||
|
||||
if not domain:
|
||||
request.partner = None
|
||||
request.domain = None
|
||||
else:
|
||||
if domain not in self.MATCHES:
|
||||
for partner_def in getattr(settings, 'A2_CUT_PARTNERS', []):
|
||||
|
@ -63,6 +67,7 @@ class CUTMiddleware(object):
|
|||
|
||||
if domain and domain in self.MATCHES:
|
||||
request.partner = self.MATCHES[domain]
|
||||
request.domain = domain
|
||||
if request.session.get('cut_domain') != domain:
|
||||
request.session['cut_domain'] = domain
|
||||
request.session['cut_next'] = None
|
||||
|
@ -75,4 +80,8 @@ class CUTMiddleware(object):
|
|||
request.partner['url'] = request.session['cut_next']
|
||||
else:
|
||||
request.partner = None
|
||||
return None
|
||||
request.domain = None
|
||||
|
||||
def process_response(self, request, response):
|
||||
self.process_request(request)
|
||||
return response
|
||||
|
|
Loading…
Reference in New Issue