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') \ | 
