diff options
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 |
commit | 912964ac791b22d72d2ed661c0e6573674cc4037 (patch) | |
tree | 1de1f49a8ccb2757b0a60baefbf6194efac49db2 | |
parent | fa394c855d338effcb92f4bafa264c5cb4dd70ba (diff) | |
download | Ishtar-912964ac791b22d72d2ed661c0e6573674cc4037.tar.bz2 Ishtar-912964ac791b22d72d2ed661c0e6573674cc4037.zip |
get_item: deactivate hierarchic dependency when the parent item is a basket
-rw-r--r-- | ishtar_common/tests.py | 4 | ||||
-rw-r--r-- | ishtar_common/views.py | 5 |
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') \ |