summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--archaeological_warehouse/forms.py5
-rw-r--r--archaeological_warehouse/urls.py2
-rw-r--r--ishtar_common/views_item.py4
-rw-r--r--ishtar_common/widgets.py15
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("-", "_"),