diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2025-01-09 12:40:57 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2025-02-19 14:45:56 +0100 |
commit | 13f9202121e5470827174079da7fc699a8227295 (patch) | |
tree | 6805622d0a6369412cee1da958768bf94a524f55 /archaeological_warehouse | |
parent | edec846118a178ed1a6a5803f8bcbf26742f4b82 (diff) | |
download | Ishtar-13f9202121e5470827174079da7fc699a8227295.tar.bz2 Ishtar-13f9202121e5470827174079da7fc699a8227295.zip |
🐛 new permissions: fix permission_check for action (refs #6126)
Diffstat (limited to 'archaeological_warehouse')
-rw-r--r-- | archaeological_warehouse/views.py | 28 |
1 files changed, 5 insertions, 23 deletions
diff --git a/archaeological_warehouse/views.py b/archaeological_warehouse/views.py index 416849c9a..f8e632e9e 100644 --- a/archaeological_warehouse/views.py +++ b/archaeological_warehouse/views.py @@ -45,7 +45,7 @@ from ishtar_common.views import ( QAItemEditForm, wizard_is_available, ) -from ishtar_common.views_item import get_item, show_item, new_qa_item, revert_item +from ishtar_common.views_item import get_item, get_autocomplete_query, show_item, new_qa_item, revert_item from archaeological_finds.views import treatment_add from archaeological_warehouse.wizards import ( @@ -95,19 +95,10 @@ new_container = new_qa_item( def autocomplete_warehouse(request): - ishtaruser = getattr(request.user, "ishtaruser", None) - if not ishtaruser: - return HttpResponse(content_type="text/plain") - if not ishtaruser.has_permission( - "archaeological_warehouse.view_warehouse" - ) and not ishtaruser.has_permission( - "archaeological_warehouse.view_own_warehouse", models.Warehouse - ): - return HttpResponse(content_type="text/plain") - if not request.GET.get("term"): + query = get_autocomplete_query(request, "archaeological_warehouse", "warehouse") + if query is None: return HttpResponse(content_type="text/plain") q = request.GET.get("term") - query = Q() for q in q.split(" "): extra = Q(name__icontains=q) | Q(slug__icontains=q) | \ Q(warehouse_type__label__icontains=q) @@ -121,20 +112,11 @@ def autocomplete_warehouse(request): def autocomplete_container(request, warehouse_id=None): - ishtaruser = getattr(request.user, "ishtaruser", None) - if not ishtaruser: - return HttpResponse(content_type="text/plain") - if not ishtaruser.has_permission( - "archaeological_warehouse.view_container" - ) and not ishtaruser.has_permission( - "archaeological_warehouse.view_own_container" - ): - return HttpResponse(content_type="text/plain") - if not request.GET.get("term"): + base_query = get_autocomplete_query(request, "archaeological_warehouse", "container") + if base_query is None: return HttpResponse(content_type="text/plain") term = request.GET.get("term").strip() limit = 15 - base_query = Q() if warehouse_id: base_query = Q(location_id=warehouse_id) try: |