Skip to content
Snippets Groups Projects
Commit b3371b00 authored by Benoit Alessandroni's avatar Benoit Alessandroni
Browse files

Merge branch 'fix_inherit2' into 'master'

bugfix: serialized inherited permissions

See merge request !280
parents 0ce21491 59c87bb5
No related branches found
No related tags found
1 merge request!280bugfix: serialized inherited permissions
Pipeline #17140 passed
......@@ -348,9 +348,8 @@ class InheritPermissions(LDPBasePermission):
for field in InheritPermissions.get_parent_fields(model):
parent_model = InheritPermissions.get_parent_model(model, field)
for parent_object in self.get_parent_objects(obj, field):
parents.append(parent_object)
perms = perms.union(set.intersection(*[perm().get_permissions(user, parent_model, parent_object)
for perm in parent_model._meta.permission_classes]))
if parents:
return perms
parent_perms = set.intersection(*[perm().get_permissions(user, parent_model, parent_object)
for perm in parent_model._meta.permission_classes])
if not 'view' in parent_perms: # only give permissions if user has read access on the parent
return set()
return super().get_permissions(user, model, obj)
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment