diff options
| author | Étienne Loks <etienne.loks@iggdrasil.net> | 2020-06-11 11:59:00 +0200 | 
|---|---|---|
| committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2021-02-28 12:15:20 +0100 | 
| commit | 4ea9e96c0644b0986b1cf9d6b833f5bc3a175e94 (patch) | |
| tree | 1e11e1946254e74e7c30140368c1736e3668c282 | |
| parent | ff317a39a65ccd2c919ece5f0923d04712f4a3c4 (diff) | |
| download | Ishtar-4ea9e96c0644b0986b1cf9d6b833f5bc3a175e94.tar.bz2 Ishtar-4ea9e96c0644b0986b1cf9d6b833f5bc3a175e94.zip  | |
New container: parent container search dependency (refs #4936) - remove + button for parent (refs #4937)
| -rw-r--r-- | archaeological_warehouse/forms.py | 5 | ||||
| -rw-r--r-- | archaeological_warehouse/urls.py | 2 | ||||
| -rw-r--r-- | ishtar_common/views_item.py | 4 | ||||
| -rw-r--r-- | ishtar_common/widgets.py | 15 | 
4 files changed, 15 insertions, 11 deletions
diff --git a/archaeological_warehouse/forms.py b/archaeological_warehouse/forms.py index cadfaaee1..125adb2b5 100644 --- a/archaeological_warehouse/forms.py +++ b/archaeological_warehouse/forms.py @@ -278,9 +278,8 @@ class ContainerForm(CustomForm, ManageOldType, forms.Form):          label=_("Parent container"),          widget=widgets.JQueryAutoComplete(              reverse_lazy('autocomplete-container'), -            associated_model=models.Container, new=True, -            tips="-" -        ), +            associated_model=models.Container, +            dynamic_limit=['location']),          validators=[valid_id(models.Container)],          required=False      ) diff --git a/archaeological_warehouse/urls.py b/archaeological_warehouse/urls.py index 0285d292f..14c957a26 100644 --- a/archaeological_warehouse/urls.py +++ b/archaeological_warehouse/urls.py @@ -51,7 +51,7 @@ urlpatterns = [      url(r'get-warehouse-shortcut/(?P<type>.+)?$',          views.get_warehouse, name='get-warehouse-shortcut',          kwargs={'full': 'shortcut'}), -    url(r'autocomplete-container/(?P<warehouse_id>\d+)?$', +    url(r'autocomplete-container/(?P<warehouse_id>\d+)?(?:/)?$',          views.autocomplete_container, name='autocomplete-container'),      url(r'^show-container(?:/(?P<pk>.+))?/(?P<type>.+)?$', views.show_container,          name=models.Container.SHOW_URL), diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py index 587c8e998..97745921d 100644 --- a/ishtar_common/views_item.py +++ b/ishtar_common/views_item.py @@ -141,9 +141,9 @@ def check_permission(request, action_slug, obj_id=None):          request.user, session=request.session) -def new_qa_item(model, frm, many=False): +def new_qa_item(model, frm, many=False, +                template="ishtar/forms/qa_new_item.html"):      def func(request, parent_name, limits=''): -        template = "ishtar/forms/qa_new_item.html"          model_name = model._meta.object_name          if not check_permission(request, 'add_' + model_name.lower()):              not_permitted_msg = ugettext("Operation not permitted.") diff --git a/ishtar_common/widgets.py b/ishtar_common/widgets.py index df0d09764..9483f9719 100644 --- a/ishtar_common/widgets.py +++ b/ishtar_common/widgets.py @@ -645,11 +645,16 @@ class JQueryAutoComplete(forms.TextInput):                  source = "'" + str(self.source) + "'"              except:                  raise ValueError('source type is not valid') -        dynamic_limit = [ -            'id_' + lim.replace('_', '') + '-' + -            '-'.join(field_id.split('-')[1:-1]) + '-' + lim -            for lim in self.dynamic_limit -        ] +        dynamic_limit = [] +        for lim in self.dynamic_limit: +            field_ids = field_id.split('-') +            if field_ids[1:-1]: +                dynamic_limit.append( +                    'id_' + lim.replace('_', '') + '-' + +                    '-'.join(field_ids[1:-1]) + '-' + lim) +            else: +                dynamic_limit.append('id_' + lim.replace('_', '')) +          dct = {'source': mark_safe(source),                 'field_id': field_id,                 'safe_field_id': field_id.replace("-", "_"),  | 
