Skip to content

Commit 966f8e7

Browse files
[ENG-8516] osf admin can update contributor permission for any resource (#11407)
1 parent 5bc34b0 commit 966f8e7

File tree

2 files changed

+4
-3
lines changed

2 files changed

+4
-3
lines changed

admin/nodes/views.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,8 @@ def post(self, request, *args, **kwargs):
299299
permission,
300300
resource.get_visible(user),
301301
request,
302-
save=True
302+
save=True,
303+
skip_permission=True
303304
)
304305

305306
return redirect(self.get_success_url())

osf/models/mixins.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1644,7 +1644,7 @@ def copy_unclaimed_records(self, resource):
16441644
contributor.save()
16451645

16461646
# TODO: optimize me
1647-
def update_contributor(self, user, permission, visible, auth, save=False):
1647+
def update_contributor(self, user, permission, visible, auth, save=False, skip_permission=False):
16481648
""" TODO: this method should be updated as a replacement for the main loop of
16491649
Node#manage_contributors. Right now there are redundancies, but to avoid major
16501650
feature creep this will not be included as this time.
@@ -1653,7 +1653,7 @@ def update_contributor(self, user, permission, visible, auth, save=False):
16531653
"""
16541654
OSFUser = apps.get_model('osf.OSFUser')
16551655

1656-
if not self.has_permission(auth.user, ADMIN):
1656+
if not skip_permission and not self.has_permission(auth.user, ADMIN):
16571657
raise PermissionsError('Only admins can modify contributor permissions')
16581658

16591659
if permission:

0 commit comments

Comments
 (0)