unify generic exam views naming

This commit is contained in:
Ross
2021-12-19 10:08:07 +00:00
parent b823e0a897
commit 889db68a08
12 changed files with 194 additions and 133 deletions
+20 -16
View File
@@ -5,7 +5,7 @@ app_name = "longs"
urlpatterns = [
# path('', views.question_list, name='question_list'),
path("", views.LongExamViews.index, name="index"),
path("", views.GenericExamViews.index, name="index"),
path("author/<int:pk>/", views.author_detail, name="author_detail"),
path("author/", views.author_list, name="author_list"),
path("question/", views.LongView.as_view(), name="long_view"),
@@ -81,17 +81,19 @@ urlpatterns = [
views.mark_question_overview,
name="mark_question_overview",
),
path("exam/<int:pk>/mark", views.LongExamViews.mark_overview, name="mark_overview"),
path(
"exam/<int:pk>/mark", views.GenericExamViews.mark_overview, name="mark_overview"
),
# path("exam/<int:pk>/<int:sk>/", views.exam_take, name="exam_take"),
path(
"exam/<int:pk>/question/<int:sk>/",
views.LongExamViews.exam_question_detail,
views.GenericExamViews.exam_question_detail,
name="exam_question_detail",
),
path("exam/<int:pk>/", views.LongExamViews.exam_overview, name="exam_overview"),
path("exam/<int:pk>/", views.GenericExamViews.exam_overview, name="exam_overview"),
path(
"exam/<int:pk>/json_edit",
views.LongExamViews.exam_json_edit,
views.GenericExamViews.exam_json_edit,
name="exam_json_edit",
),
path(
@@ -107,43 +109,45 @@ urlpatterns = [
),
path(
"exam/<int:pk>/toggle_active",
views.LongExamViews.exam_toggle_active,
views.GenericExamViews.exam_toggle_active,
name="exam_toggle_active",
),
path(
"exam/<int:pk>/toggle_results_published",
views.LongExamViews.exam_toggle_results_published,
views.GenericExamViews.exam_toggle_results_published,
name="exam_toggle_results_published",
),
path(
"exam/submit", views.LongExamViews.postExamAnswers, name="exam_answers_submit"
"exam/submit",
views.GenericExamViews.postExamAnswers,
name="exam_answers_submit",
),
path("exam/", views.LongExamViews.exam_list, name="exam_list"),
path("exam/all", views.LongExamViews.exam_list_all, name="exam_list_all"),
path("exam/", views.GenericExamViews.exam_list, name="exam_list"),
path("exam/all", views.GenericExamViews.exam_list_all, name="exam_list_all"),
path("exam/create", views.ExamCreate.as_view(), name="exam_create"),
path("exam/<int:exam_id>/clone", views.ExamClone.as_view(), name="exam_clone"),
path("exam/<int:pk>/update", views.ExamUpdate.as_view(), name="exam_update"),
path("exam/<int:pk>/delete", views.ExamDelete.as_view(), name="exam_delete"),
path("exam/json/", views.LongExamViews.active_exams, name="active_exams"),
path("exam/json/<int:pk>", views.LongExamViews.exam_json, name="exam_json"),
path("exam/json/", views.GenericExamViews.active_exams, name="active_exams"),
path("exam/json/<int:pk>", views.GenericExamViews.exam_json, name="exam_json"),
path(
"exam/json/<int:pk>/unbased",
views.LongExamViews.exam_json_unbased,
views.GenericExamViews.exam_json_unbased,
name="exam_json_unbased",
),
path(
"exam/json/<int:pk>/<int:sk>",
views.LongExamViews.exam_question_json,
views.GenericExamViews.exam_question_json,
name="exam_question_json",
),
path(
"exam/json/<int:pk>/unbased/<int:sk>",
views.LongExamViews.exam_question_json_unbased,
views.GenericExamViews.exam_question_json_unbased,
name="exam_question_json_unbased",
),
path(
"exam/json/<int:pk>/recreate",
views.LongExamViews.exam_json_recreate,
views.GenericExamViews.exam_json_recreate,
name="exam_json_recreate",
),
path("create/", views.LongCreate.as_view(), name="long_create"),
+5 -4
View File
@@ -315,7 +315,6 @@ class LongSeriesCreate(RevisionMixin, LoginRequiredMixin, CreateView):
kwargs.update({"user": self.request.user})
return kwargs
def get_context_data(self, **kwargs):
context = super(LongSeriesCreate, self).get_context_data(**kwargs)
@@ -635,7 +634,9 @@ def loadJsonAnswer(answer):
exam = get_object_or_404(Exam, pk=eid)
if not exam.check_cid_user(answer["cid"], answer["passcode"]):
return False, JsonResponse({"success": False, "error": "invalid cid / passcode"})
return False, JsonResponse(
{"success": False, "error": "invalid cid / passcode"}
)
# if not exam.active:
# return False, JsonResponse(
@@ -1107,7 +1108,7 @@ def exam_scores_cid_user(request, pk, sk, passcode):
{
"exam": exam,
"cid": cid,
"passcode" : passcode,
"passcode": passcode,
"questions": questions,
# "answers": answers,
"answers_marks": answers_marks,
@@ -1169,7 +1170,7 @@ def long_series_order_upload_filename(request, pk):
return redirect("longs:long_series_detail", pk=pk)
LongExamViews = ExamViews(Exam, Long, CidUserAnswer, "longs", "long", loadJsonAnswer)
GenericExamViews = ExamViews(Exam, Long, CidUserAnswer, "longs", "long", loadJsonAnswer)
class ExamCreate(RevisionMixin, LoginRequiredMixin, CreateView):