Fix query for users in same school class

Now only queries for the active school class instead of all school
classes
This commit is contained in:
Ramon Wenger 2022-06-21 16:30:54 +02:00
parent 7d9da414d8
commit c0806d6b82
3 changed files with 6 additions and 1 deletions

View File

@ -59,7 +59,7 @@ class AssignmentNode(DjangoObjectType):
def resolve_submissions(self, info, **kwargs):
user = info.context.user
if user.has_perm('users.can_manage_school_class_content'):
return self.submissions.filter(student__in=user.users_in_same_school_class()).filter(final=True)
return self.submissions.filter(student__in=user.users_in_active_school_class()).filter(final=True)
return []
def resolve_solution(self, info, **kwargs):

View File

@ -38,6 +38,8 @@ class SubmissionFeedbackTestCase(SkillboxTestCase):
user=user,
school_class=school_class
)
user.set_selected_class(school_class)
def _create_submission_feedback(self, user, final, text, student_submission_id):
return self.get_client(user).execute(UPDATE_SUBMISSION_FEEDBACK_MUTATION, variables={

View File

@ -73,6 +73,9 @@ class User(AbstractUser):
def users_in_same_school_class(self):
return User.objects.filter(school_classes__users=self.pk)
def users_in_active_school_class(self):
return self.selected_class.users.all() if self.selected_class is not None else []
def get_teacher(self):
if self.is_teacher():
return self