add a redirct view mixin

This commit is contained in:
Ross
2024-08-12 11:58:28 +01:00
parent 8beb6890a7
commit c2185f73a6
8 changed files with 126 additions and 106 deletions
+22 -1
View File
@@ -1515,6 +1515,8 @@ class ExamViews(View, LoginRequiredMixin):
):
view_feedback = True
can_edit = question.can_edit(request.user)
return render(
request,
"{}/question_detail.html".format(self.app_name),
@@ -1526,6 +1528,7 @@ class ExamViews(View, LoginRequiredMixin):
"exam_length": exam_length,
"pos": pos,
"view_feedback": view_feedback,
"can_edit": can_edit,
},
)
@@ -3512,4 +3515,22 @@ class ExamGroupsUpdateBase(
def get_form_kwargs(self):
kwargs = super(ExamGroupsUpdateBase, self).get_form_kwargs()
kwargs.update({"user": self.request.user})
return kwargs
return kwargs
class RedirectMixin():
def get_success_url(self) -> str:
if "redirect" in self.request.GET:
return self.request.GET["redirect"]
return super().get_success_url()
class UpdateQuestionMixin(RedirectMixin, RevisionMixin, UpdateView):
def get_form_kwargs(self):
kwargs = super().get_form_kwargs()
kwargs.update({"user": self.request.user})
return kwargs
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context["question"] = context["object"]
return context