summaryrefslogtreecommitdiff
path: root/ishtar_common/views.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2024-11-12 17:27:25 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2025-02-19 14:43:49 +0100
commited6d2a764fcc76a0feba1c586acb9afddbecd16b (patch)
treea81b0bbfc3a45e6f895fc7e70652b94a97abd116 /ishtar_common/views.py
parentce7d642318f4e4c57dd552915b12eef360d33d70 (diff)
downloadIshtar-ed6d2a764fcc76a0feba1c586acb9afddbecd16b.tar.bz2
Ishtar-ed6d2a764fcc76a0feba1c586acb9afddbecd16b.zip
♻️ clean all "add_own"
Diffstat (limited to 'ishtar_common/views.py')
-rw-r--r--ishtar_common/views.py20
1 files changed, 10 insertions, 10 deletions
diff --git a/ishtar_common/views.py b/ishtar_common/views.py
index b3f062c8d..21b563bfc 100644
--- a/ishtar_common/views.py
+++ b/ishtar_common/views.py
@@ -3521,17 +3521,17 @@ class GeoCreateView(GeoFormMixin, CreateView):
obj = model.objects.get(pk=self.kwargs.get("source_pk"))
except model.DoesNotExist:
raise Http404()
+
+ # check permission to add and view attached item
+ attached_meta = model._meta
+ perm_attached = f"{attached_meta.app_label}.view_{attached_meta.model_name}"
+ perm_own_attached = f"{attached_meta.app_label}.view_own_{attached_meta.model_name}"
if not ishtaruser.has_permission(
- "ishtar_common.add_geovectordata"):
- # -> add_own_geovectordata
- # check permission to view attached item
- meta = model._meta
- perm = f"{meta.app_label}.view_{meta.model_name}"
- perm_own = f"{meta.app_label}.view_own_{meta.model_name}"
- if not ishtaruser.has_permission(perm) \
- and not ishtaruser.has_permission(perm_own, obj=obj):
- # check permission to view own attached item
- raise Http404()
+ "ishtar_common.add_geovectordata") or (
+ not ishtaruser.has_permission(perm_attached)
+ and not ishtaruser.has_permission(perm_own_attached, obj=obj)):
+ # check permission to view own attached item
+ raise Http404()
kwargs["main_items_fields"] = {}
for k in models.GeoVectorData.RELATED_MODELS:
kwargs["main_items_fields"][k] = []