summaryrefslogtreecommitdiff
path: root/ishtar_common/utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common/utils.py')
-rw-r--r--ishtar_common/utils.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/ishtar_common/utils.py b/ishtar_common/utils.py
index 89700eaad..3202afede 100644
--- a/ishtar_common/utils.py
+++ b/ishtar_common/utils.py
@@ -46,6 +46,7 @@ from django import forms
from django.apps import apps
from django.conf import settings
from django.conf.urls import url
+from django.contrib.auth.models import Permission
from django.contrib.contenttypes.models import ContentType
from django.contrib.gis.geos import GEOSGeometry
from django.contrib.sessions.backends.db import SessionStore
@@ -243,7 +244,11 @@ def check_model_access_control(request, model, available_perms=None):
allowed = True
own = False
return allowed, own
- for perm, lbl in model._meta.permissions:
+ q = Permission.objects.filter(
+ content_type__app_label=model._meta.app_label,
+ content_type__model=model._meta.model_name
+ )
+ for perm in q.values_list("codename", flat=True):
if perm not in available_perms:
continue
if ishtaruser.person.has_right(perm, session=request.session):