Revision 5ce3ce4f snf-astakos-app/astakos/im/middleware.py
b/snf-astakos-app/astakos/im/middleware.py | ||
---|---|---|
37 | 37 |
from astakos.im.settings import COOKIE_NAME |
38 | 38 |
from astakos.im.functions import login |
39 | 39 |
|
40 |
|
|
40 | 41 |
class CookieAuthenticationMiddleware(object): |
41 | 42 |
def process_request(self, request): |
42 | 43 |
assert hasattr(request, 'session'), "The Django authentication middleware requires session middleware to be installed. Edit your MIDDLEWARE_CLASSES setting to insert 'django.contrib.sessions.middleware.SessionMiddleware'." |
43 | 44 |
if request.user.is_authenticated(): |
44 | 45 |
return None |
45 |
|
|
46 |
|
|
46 | 47 |
cookie = unquote(request.COOKIES.get(COOKIE_NAME, '')) |
47 | 48 |
email, sep, auth_token = cookie.partition('|') |
48 | 49 |
if not sep: |
49 | 50 |
return None |
50 |
|
|
51 |
|
|
51 | 52 |
try: |
52 | 53 |
user = authenticate(email=email, auth_token=auth_token) |
53 | 54 |
if user: |
... | ... | |
55 | 56 |
login(request, user) |
56 | 57 |
except: |
57 | 58 |
pass |
58 |
return None |
|
59 |
return None |
Also available in: Unified diff