Skip to content
Snippets Groups Projects
Commit dfaca385 authored by Nik | Klampfradler's avatar Nik | Klampfradler
Browse files

Merge branch '143-fix-usage-of-user-has_perm-with-object-permissions' into 'master'

Resolve "Fix usage of user.has_perm with object permissions"

Closes #143

See merge request !157
parents e94a0e7a 9a77bdf0
No related branches found
No related tags found
1 merge request!157Resolve "Fix usage of user.has_perm with object permissions"
Pipeline #6284 passed
...@@ -258,13 +258,21 @@ add_perm("alsijil.delete_grouprole", delete_group_role_predicate) ...@@ -258,13 +258,21 @@ add_perm("alsijil.delete_grouprole", delete_group_role_predicate)
view_assigned_group_roles_predicate = ( view_assigned_group_roles_predicate = (
is_group_owner is_group_owner
| is_lesson_teacher | has_global_perm("alsjil.assign_grouprole")
| has_object_perm("core.assign_grouprole")
)
add_perm("alsijil.view_assigned_grouproles", view_assigned_group_roles_predicate)
view_assigned_group_roles_register_object_predicate = (
is_lesson_teacher
| is_lesson_original_teacher | is_lesson_original_teacher
| is_lesson_parent_group_owner | is_lesson_parent_group_owner
| has_global_perm("alsjil.assign_grouprole") | has_global_perm("alsjil.assign_grouprole")
| has_object_perm("alsijil.assign_grouprole")
) )
add_perm("alsijil.view_assigned_grouproles", view_assigned_group_roles_predicate) add_perm(
"alsijil.view_assigned_grouproles_for_register_object",
view_assigned_group_roles_register_object_predicate,
)
assign_group_role_person_predicate = is_person_group_owner | has_global_perm( assign_group_role_person_predicate = is_person_group_owner | has_global_perm(
"alsjil.assign_grouprole" "alsjil.assign_grouprole"
......
...@@ -167,7 +167,9 @@ def register_object( ...@@ -167,7 +167,9 @@ def register_object(
# Group roles # Group roles
show_group_roles = request.user.person.preferences[ show_group_roles = request.user.person.preferences[
"alsijil__group_roles_in_lesson_view" "alsijil__group_roles_in_lesson_view"
] and request.user.has_perm("alsijil.view_assigned_grouproles", register_object) ] and request.user.has_perm(
"alsijil.view_assigned_grouproles_for_register_object", register_object
)
if show_group_roles: if show_group_roles:
groups = register_object.get_groups().all() groups = register_object.get_groups().all()
group_roles = GroupRole.objects.with_assignments(date_of_lesson, groups) group_roles = GroupRole.objects.with_assignments(date_of_lesson, groups)
......
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