.
This commit is contained in:
+18
-7
@@ -71,9 +71,8 @@ class CidManagerRequiredMixin(object):
|
|||||||
obj = super().get_object(*args, **kwargs)
|
obj = super().get_object(*args, **kwargs)
|
||||||
if self.request.user.groups.filter(name="cid_user_manager").exists():
|
if self.request.user.groups.filter(name="cid_user_manager").exists():
|
||||||
return obj
|
return obj
|
||||||
if self.request.user not in obj.author.all():
|
|
||||||
raise PermissionDenied() # or Http404
|
raise PermissionDenied() # or Http404
|
||||||
return obj
|
|
||||||
|
|
||||||
def normaliseRapidsScore(score):
|
def normaliseRapidsScore(score):
|
||||||
if score == 49:
|
if score == 49:
|
||||||
@@ -371,7 +370,12 @@ class ExamViews(View, LoginRequiredMixin):
|
|||||||
True if request.POST.get("publish_results") == "true" else False
|
True if request.POST.get("publish_results") == "true" else False
|
||||||
)
|
)
|
||||||
exam.save()
|
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)
|
return JsonResponse(data, status=200)
|
||||||
else:
|
else:
|
||||||
data = {"status": "error"}
|
data = {"status": "error"}
|
||||||
@@ -385,7 +389,12 @@ class ExamViews(View, LoginRequiredMixin):
|
|||||||
|
|
||||||
exam.active = True if request.POST.get("active") == "true" else False
|
exam.active = True if request.POST.get("active") == "true" else False
|
||||||
exam.save()
|
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)
|
return JsonResponse(data, status=200)
|
||||||
else:
|
else:
|
||||||
data = {"status": "error"}
|
data = {"status": "error"}
|
||||||
@@ -865,10 +874,10 @@ class ExamViews(View, LoginRequiredMixin):
|
|||||||
|
|
||||||
c = CidUser.objects.filter(cid=request.POST.get("cid")).first()
|
c = CidUser.objects.filter(cid=request.POST.get("cid")).first()
|
||||||
exam = self.Exam.objects.get(pk=exam_id)
|
exam = self.Exam.objects.get(pk=exam_id)
|
||||||
t = timezone.make_aware(datetime.fromtimestamp(float(request.POST.get("start_time"))))
|
t = timezone.make_aware(
|
||||||
cid_user_exam = exam.get_or_create_cid_user_exam(
|
datetime.fromtimestamp(float(request.POST.get("start_time")))
|
||||||
cid_user=c, start_time=t
|
|
||||||
)
|
)
|
||||||
|
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.end_time = timezone.now()
|
||||||
cid_user_exam.save()
|
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()},
|
{"sent": sent, "not_sent": not_sent, "users_count": users.count()},
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@login_required
|
@login_required
|
||||||
@user_is_cid_user_manager
|
@user_is_cid_user_manager
|
||||||
def group_email_results(request, pk, resend=False):
|
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()},
|
{"sent": sent, "not_sent": not_sent, "users_count": users.count()},
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@login_required
|
@login_required
|
||||||
@user_is_cid_user_manager
|
@user_is_cid_user_manager
|
||||||
def manage_cid_users(request):
|
def manage_cid_users(request):
|
||||||
|
|||||||
Reference in New Issue
Block a user