diff --git a/generic/views.py b/generic/views.py index 7ed95528..a45abb26 100644 --- a/generic/views.py +++ b/generic/views.py @@ -204,7 +204,7 @@ class ExamViews(View, LoginRequiredMixin): raise PermissionDenied if self.app_name == "anatomy" and not request.user.groups.filter(name='anatomy_checker').exists(): raise PermissionDenied - if self.app_name == "longs" and not request.user.groups.filter(name='long_checker').exists(): + if self.app_name == "longs" and not request.user.groups.filter(name='longs_checker').exists(): raise PermissionDenied return render(request, "{}/exam_list.html".format(self.app_name), {"exams": exams}) @@ -217,15 +217,13 @@ class ExamViews(View, LoginRequiredMixin): #print("test", Exam.objects.all().get(id=pk)) exam = get_object_or_404(self.Exam, pk=pk) - if self.app_name == "longs": - if not request.user.groups.filter(name='long_checker').exists(): - raise PermissionDenied - - elif request.user not in exam.author.all(): + if request.user not in exam.author.all(): if self.app_name == "rapids" and not request.user.groups.filter(name='rapid_checker').exists(): raise PermissionDenied if self.app_name == "anatomy" and not request.user.groups.filter(name='anatomy_checker').exists(): raise PermissionDenied + if self.app_name == "longs" and not request.user.groups.filter(name='longs_checker').exists(): + raise PermissionDenied questions = exam.exam_questions.all() @@ -298,7 +296,7 @@ class ExamViews(View, LoginRequiredMixin): raise PermissionDenied if self.app_name == "anatomy" and not request.user.groups.filter(name='anatomy_checker').exists(): raise PermissionDenied - if self.app_name == "longs" and not request.user.groups.filter(name='long_checker').exists(): + if self.app_name == "longs" and not request.user.groups.filter(name='longs_checker').exists(): raise PermissionDenied @@ -310,10 +308,13 @@ class ExamViews(View, LoginRequiredMixin): @method_decorator(login_required) def index(self, request): - if request.user.groups.filter(name='rapid_checker').exists(): + exams = self.Exam.objects.filter(author__id=request.user.id) + if self.app_name == "rapids" and not request.user.groups.filter(name='rapid_checker').exists(): + exams = self.Exam.objects.all() + if self.app_name == "anatomy" and not request.user.groups.filter(name='anatomy_checker').exists(): + exams = self.Exam.objects.all() + if self.app_name == "longs" and not request.user.groups.filter(name='longs_checker').exists(): exams = self.Exam.objects.all() - #else: - exams = self.Exam.objects.none() return render(request, "{}/index.html".format(self.app_name), {"exams": exams}) @@ -326,7 +327,7 @@ class ExamViews(View, LoginRequiredMixin): raise PermissionDenied if self.app_name == "anatomy" and not request.user.groups.filter(name='anatomy_checker').exists(): raise PermissionDenied - if self.app_name == "longs" and not request.user.groups.filter(name='long_checker').exists(): + if self.app_name == "longs" and not request.user.groups.filter(name='longs_checker').exists(): raise PermissionDenied