summaryrefslogtreecommitdiff
path: root/ishtar_common/views.py
diff options
context:
space:
mode:
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] = []