diff --git a/core/views/feedback.py b/core/views/feedback.py index 2a9700a4512547c1c1fdb9a8b6b05b72bfd7a56e..3e7a10cf2713cf9b7f12acd799ba173bdd793cbe 100644 --- a/core/views/feedback.py +++ b/core/views/feedback.py @@ -31,14 +31,14 @@ class FeedbackApiView( def _get_implicit_assignment_for_user(self, submission): """ Check for tutor if it exists. Not relevant for reviewer """ - if self.request.user.role == models.UserAccount.REVIEWER: - return try: return models.TutorSubmissionAssignment.objects.get( subscription__owner=self.request.user, submission=submission ) except models.TutorSubmissionAssignment.DoesNotExist: + if self.request.user.role == models.UserAccount.REVIEWER: + return None raise PermissionDenied( detail='This user has no permission to create this feedback') @@ -59,6 +59,8 @@ class FeedbackApiView( return assignment == youngest def _tutor_attempts_to_patch_first_feedback_final(self, serializer): + if self.request.user.role == models.UserAccount.REVIEWER: + return False is_final_set = serializer.validated_data.get('is_final', False) submission = self.get_object().of_submission assignment = self._get_implicit_assignment_for_user(submission)