From 2acf5a1f485cd2f358edd6cff557a32093fbc6eb Mon Sep 17 00:00:00 2001 From: Ross Date: Wed, 28 Apr 2021 10:57:29 +0100 Subject: [PATCH] . --- anatomy/filters.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/anatomy/filters.py b/anatomy/filters.py index 4bfd8c50..0a67ed65 100644 --- a/anatomy/filters.py +++ b/anatomy/filters.py @@ -3,6 +3,7 @@ import django_filters from .models import AnatomyQuestion, CidUserAnswer, Exam #from generic.filters import UserAnswerFilter +from django.contrib.auth.models import User def get_exams(request): @@ -16,14 +17,27 @@ def get_exams(request): return queryset +def get_authors(request): + if request is None: + return User.objects.none() + + if not request.user.groups.filter(name="anatomy_checker").exists(): + queryset = User.objects.filter(id=request.user.id) + else: + queryset = User.objects.all() + + return queryset + + class AnatomyQuestionFilter(django_filters.FilterSet): exams = django_filters.ModelMultipleChoiceFilter(queryset=get_exams) + author = django_filters.ModelMultipleChoiceFilter(queryset=get_authors) class Meta: model = AnatomyQuestion fields = ("question_type", "examination", "modality", "region", - "body_part", "created_date", "open_access", "author") + "body_part", "created_date", "open_access") def __init__(self, data=None, queryset=None, prefix=None, strict=None, user=None, request=None): if not request.user.groups.filter(name="anatomy_checker").exists():