summaryrefslogtreecommitdiff
path: root/ishtar_common/views.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2016-06-03 22:23:46 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2016-06-03 22:23:46 +0200
commitfc835921567bde864b158f0a26a9461334b8facd (patch)
tree15c53d3ee13d79e72be949dc98d5c31195338a59 /ishtar_common/views.py
parent7f481fdfc8ce76e70bb4496c63770f8b5a9255b6 (diff)
parentba25fffca393f1a92d9e91422532a1da177b9e97 (diff)
downloadIshtar-fc835921567bde864b158f0a26a9461334b8facd.tar.bz2
Ishtar-fc835921567bde864b158f0a26a9461334b8facd.zip
Merge branch 'v0.9' into wheezy
Diffstat (limited to 'ishtar_common/views.py')
-rw-r--r--ishtar_common/views.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/ishtar_common/views.py b/ishtar_common/views.py
index f4a8d02e2..59cfe6321 100644
--- a/ishtar_common/views.py
+++ b/ishtar_common/views.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
-# Copyright (C) 2010-2015 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet>
+# Copyright (C) 2010-2016 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet>
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
@@ -350,7 +350,8 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
if specific_perms and perm not in specific_perms:
continue
cperm = model._meta.app_label + '.' + perm
- if cperm in request.user.get_all_permissions() \
+ if request.user.has_perm(cperm)\
+ or cperm in request.user.get_all_permissions() \
or (request.user.is_authenticated()
and request.user.ishtaruser.has_right(
perm, session=request.session)):
@@ -416,7 +417,12 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
if 'submited' not in request_items:
if default_name in request.session and \
request.session[default_name]:
- dct = {"pk": request.session[default_name]}
+ value = request.session[default_name]
+ if 'basket-' in value:
+ dct = {"basket__pk":
+ request.session[default_name].split('-')[-1]}
+ else:
+ dct = {"pk": request.session[default_name]}
elif not dct:
for name in relative_session_names.keys():
if name in request.session and request.session[name]: