Skip to content

Commit 3a822db

Browse files
committed
refactor: enhance HasLibraryPermission to include superuser and staff checks
1 parent 2968dbc commit 3a822db

1 file changed

Lines changed: 8 additions & 3 deletions

File tree

openedx_authz/rest_api/v1/permissions.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
from rest_framework.permissions import SAFE_METHODS, BasePermission
44

5-
from openedx_authz.api.users import user_has_permission
5+
from openedx_authz.api.users import is_user_allowed
66

77

88
class HasLibraryPermission(BasePermission):
@@ -22,11 +22,16 @@ def has_permission(self, request, view):
2222
Requires a 'scope' parameter in either request.data or query_params.
2323
Returns False if no scope is provided.
2424
"""
25+
user = request.user
26+
27+
if user.is_superuser or user.is_staff:
28+
return True
29+
2530
scope = request.data.get("scope") if request.data else request.query_params.get("scope")
2631

2732
if not scope:
2833
return False
2934

3035
if request.method in SAFE_METHODS:
31-
return user_has_permission(request.user.username, "view_library_team", scope)
32-
return user_has_permission(request.user.username, "manage_library_team", scope)
36+
return is_user_allowed(user.username, "view_library_team", scope)
37+
return is_user_allowed(user.username, "manage_library_team", scope)

0 commit comments

Comments
 (0)