Revision 63fa03fe
b/snf-astakos-app/astakos/im/api.py | ||
---|---|---|
32 | 32 |
# or implied, of GRNET S.A. |
33 | 33 |
|
34 | 34 |
import logging |
35 |
import urllib |
|
35 | 36 |
|
36 | 37 |
from functools import wraps |
37 | 38 |
from traceback import format_exc |
... | ... | |
46 | 47 |
|
47 | 48 |
from astakos.im.faults import BadRequest, Unauthorized, InternalServerError, Fault |
48 | 49 |
from astakos.im.models import AstakosUser |
49 |
from astakos.im.settings import CLOUD_SERVICES, INVITATIONS_ENABLED |
|
50 |
from astakos.im.settings import CLOUD_SERVICES, INVITATIONS_ENABLED, COOKIE_NAME
|
|
50 | 51 |
from astakos.im.util import has_signed_terms, epoch |
51 | 52 |
|
52 | 53 |
logger = logging.getLogger(__name__) |
... | ... | |
182 | 183 |
index_url = reverse('index') |
183 | 184 |
absolute = lambda (url): request.build_absolute_uri(url) |
184 | 185 |
l = [{ 'url': absolute(index_url), 'name': "Sign in"}] |
185 |
if request.user.is_authenticated(): |
|
186 |
cookie = urllib.unquote(request.COOKIES.get(COOKIE_NAME, '')) |
|
187 |
email = cookie.partition('|')[0] |
|
188 |
try: |
|
189 |
user = AstakosUser.objects.get(email=email) |
|
190 |
except AstakosUser.DoesNotExist: |
|
191 |
pass |
|
192 |
else: |
|
186 | 193 |
l = [] |
187 | 194 |
l.append({ 'url': absolute(reverse('astakos.im.views.index')), |
188 |
'name': request.user.email})
|
|
195 |
'name': user.email}) |
|
189 | 196 |
l.append({ 'url': absolute(reverse('astakos.im.views.edit_profile')), |
190 | 197 |
'name': "My account" }) |
191 | 198 |
if with_extra_links: |
192 |
if request.user.has_usable_password():
|
|
199 |
if user.has_usable_password(): |
|
193 | 200 |
l.append({ 'url': absolute(reverse('password_change')), |
194 | 201 |
'name': "Change password" }) |
195 | 202 |
if INVITATIONS_ENABLED: |
Also available in: Unified diff