diff options
Diffstat (limited to 'ishtar_common')
| -rw-r--r-- | ishtar_common/admin.py | 2 | ||||
| -rw-r--r-- | ishtar_common/tests.py | 29 | ||||
| -rw-r--r-- | ishtar_common/views.py | 5 |
3 files changed, 29 insertions, 7 deletions
diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py index b3e0763b5..bee35256f 100644 --- a/ishtar_common/admin.py +++ b/ishtar_common/admin.py @@ -161,7 +161,7 @@ admin.site.register(models.GlobalVar, GlobalVarAdmin) class GeneralTypeAdmin(admin.ModelAdmin): - list_display = ['label', 'txt_idx', 'available'] + list_display = ['label', 'txt_idx', 'available', 'comment'] actions = ['import_generic'] import_generic = gen_import_generic diff --git a/ishtar_common/tests.py b/ishtar_common/tests.py index 9e5fc3466..90fc3f0f5 100644 --- a/ishtar_common/tests.py +++ b/ishtar_common/tests.py @@ -626,15 +626,18 @@ class ShortMenuTest(TestCase): self.assertEqual(response.status_code, 200) self.assertFalse(str(tf.cached_label) in response.content) - def testTreatment(self): - c = Client() - c.login(username=self.username, password=self.password) + def _create_treatment(self): from archaeological_finds.models import Treatment - treat = Treatment.objects.create( + return Treatment.objects.create( label="My treatment", year=2052 ) + def testTreatment(self): + c = Client() + c.login(username=self.username, password=self.password) + treat = self._create_treatment() + # not available at first response = c.get(reverse('shortcut-menu')) self.assertEqual(response.status_code, 200) @@ -684,6 +687,24 @@ class ShortMenuTest(TestCase): self.assertFalse(c.session['find']) self.assertFalse(c.session['contextrecord']) + self._create_treatment() + + def test_basket_is_current_item(self): + c = Client() + c.login(username=self.username, password=self.password) + from archaeological_finds.models import FindBasket + basket = FindBasket.objects.create( + label="My basket", + user=self.user.ishtaruser + ) + session = c.session + session['find'] = 'basket-{}'.format(basket.pk) + 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): def testDeleteRelated(self): 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') \ |
