This commit is contained in:
Ross
2022-01-07 11:16:57 +00:00
parent f995674f88
commit 9d4545f721
+19 -8
View File
@@ -71,9 +71,8 @@ class CidManagerRequiredMixin(object):
obj = super().get_object(*args, **kwargs)
if self.request.user.groups.filter(name="cid_user_manager").exists():
return obj
if self.request.user not in obj.author.all():
raise PermissionDenied() # or Http404
return obj
raise PermissionDenied() # or Http404
def normaliseRapidsScore(score):
if score == 49:
@@ -371,7 +370,12 @@ class ExamViews(View, LoginRequiredMixin):
True if request.POST.get("publish_results") == "true" else False
)
exam.save()
data = {"status": "success", "publish_results": exam.publish_results, "name": exam.name, "id": exam.id}
data = {
"status": "success",
"publish_results": exam.publish_results,
"name": exam.name,
"id": exam.id,
}
return JsonResponse(data, status=200)
else:
data = {"status": "error"}
@@ -385,7 +389,12 @@ class ExamViews(View, LoginRequiredMixin):
exam.active = True if request.POST.get("active") == "true" else False
exam.save()
data = {"status": "success", "active": exam.active, "name": exam.name, "id": exam.id}
data = {
"status": "success",
"active": exam.active,
"name": exam.name,
"id": exam.id,
}
return JsonResponse(data, status=200)
else:
data = {"status": "error"}
@@ -865,10 +874,10 @@ class ExamViews(View, LoginRequiredMixin):
c = CidUser.objects.filter(cid=request.POST.get("cid")).first()
exam = self.Exam.objects.get(pk=exam_id)
t = timezone.make_aware(datetime.fromtimestamp(float(request.POST.get("start_time"))))
cid_user_exam = exam.get_or_create_cid_user_exam(
cid_user=c, start_time=t
t = timezone.make_aware(
datetime.fromtimestamp(float(request.POST.get("start_time")))
)
cid_user_exam = exam.get_or_create_cid_user_exam(cid_user=c, start_time=t)
cid_user_exam.end_time = timezone.now()
cid_user_exam.save()
@@ -1348,6 +1357,7 @@ def group_email(request, pk, resend=False):
{"sent": sent, "not_sent": not_sent, "users_count": users.count()},
)
@login_required
@user_is_cid_user_manager
def group_email_results(request, pk, resend=False):
@@ -1373,6 +1383,7 @@ def group_email_results(request, pk, resend=False):
{"sent": sent, "not_sent": not_sent, "users_count": users.count()},
)
@login_required
@user_is_cid_user_manager
def manage_cid_users(request):