summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2017-02-03 10:14:18 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2017-02-03 10:14:18 +0100
commit912964ac791b22d72d2ed661c0e6573674cc4037 (patch)
tree1de1f49a8ccb2757b0a60baefbf6194efac49db2
parentfa394c855d338effcb92f4bafa264c5cb4dd70ba (diff)
downloadIshtar-912964ac791b22d72d2ed661c0e6573674cc4037.tar.bz2
Ishtar-912964ac791b22d72d2ed661c0e6573674cc4037.zip
get_item: deactivate hierarchic dependency when the parent item is a basket
-rw-r--r--ishtar_common/tests.py4
-rw-r--r--ishtar_common/views.py5
2 files changed, 6 insertions, 3 deletions
diff --git a/ishtar_common/tests.py b/ishtar_common/tests.py
index c128dd93a..90fc3f0f5 100644
--- a/ishtar_common/tests.py
+++ b/ishtar_common/tests.py
@@ -689,7 +689,7 @@ class ShortMenuTest(TestCase):
self._create_treatment()
- def test_basket_hierarchy_with_treatments(self):
+ def test_basket_is_current_item(self):
c = Client()
c.login(username=self.username, password=self.password)
from archaeological_finds.models import FindBasket
@@ -702,6 +702,8 @@ class ShortMenuTest(TestCase):
session.save()
response = c.get(reverse('shortcut-menu'))
self.assertEqual(response.status_code, 200)
+ response = c.get(reverse('get-findsource'))
+ self.assertEqual(response.status_code, 200)
class ImportTest(TestCase):
diff --git a/ishtar_common/views.py b/ishtar_common/views.py
index 33f4fac7f..467401b8f 100644
--- a/ishtar_common/views.py
+++ b/ishtar_common/views.py
@@ -691,7 +691,7 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
reqs = Q(**{req_keys[0]: val})
for req_key in req_keys[1:]:
q = Q(**{req_key: val})
- reqs = reqs | q
+ reqs |= q
and_reqs.append(reqs)
if 'submited' not in request_items and full != 'shortcut':
# default search
@@ -707,7 +707,8 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
elif dct == (base_request or {}):
# a parent item may be selected in the default menu
for name, key in my_relative_session_names:
- if name in request.session and request.session[name]:
+ if name in request.session and request.session[name] \
+ and 'basket-' not in request.session[name]:
dct.update({key: request.session[name]})
break
if (not dct or data_type == 'csv') \