diff options
Diffstat (limited to 'ishtar_common')
| -rw-r--r-- | ishtar_common/views_item.py | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py index ae8c1cd47..89caaef77 100644 --- a/ishtar_common/views_item.py +++ b/ishtar_common/views_item.py @@ -222,12 +222,15 @@ def check_permission(request, action_slug, obj=None):      main_menu.init()      if action_slug not in main_menu.items:          # not an action -> a classic permission +        if "." not in action_slug: +            return False          if request.user.ishtaruser.has_permission(action_slug):              return True          if not obj:              return False -        parts = action_slug.split("_") -        action_slug = f"{parts[0]}_own_{'_'.join(parts[1:])}" +        app, model_name = action_slug.split(".") +        parts = model_name.split("_") +        action_slug = f"{app}.{parts[0]}_own_{'_'.join(parts[1:])}"          return request.user.ishtaruser.has_permission(action_slug, obj)      if obj:          return main_menu.items[action_slug].is_available(  | 
