From 64321d567193bfb39bd996f6ff43f0d107594da4 Mon Sep 17 00:00:00 2001 From: yomguy Date: Thu, 24 Jan 2013 23:59:24 +0100 Subject: [PATCH] fix revisions --- teleforma/views/pro.py | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/teleforma/views/pro.py b/teleforma/views/pro.py index 26474c41..509b3727 100644 --- a/teleforma/views/pro.py +++ b/teleforma/views/pro.py @@ -96,6 +96,13 @@ def render_to_pdf(request, template, context, filename=None, encoding='utf-8', return HttpResponse('Errors rendering pdf:
%s
' % escape(content)) +def set_revision(user, seminar): + revisions = SeminarRevision.objects.filter(seminar=seminar, user=user) + if revisions: + revision[0].save() + else: + SeminarRevision.objects.create(seminar=seminar, user=user) + class SeminarView(DetailView): model = Seminar @@ -117,11 +124,10 @@ class SeminarView(DetailView): messages.info(self.request, _("You have successfully terminated your e-learning seminar. A training testimonial will be available as soon as the pedagogical team validate all your answers (48h maximum).")) elif validated: messages.info(self.request, _("All your answers have been validated! You can now download the training testimonial below.")) - revision, c = SeminarRevision.objects.get_or_create(seminar=seminar, user=user) - if not c: - revision.save() + set_revision(user, seminar) return context + class SeminarsView(ListView): model = Seminar @@ -177,9 +183,7 @@ class AnswerView(FormView): context['status'] = self.status context['seminar'] = self.question.seminar context['seminar_progress'] = seminar_progress(user, self.question.seminar) - revision, c = SeminarRevision.objects.get_or_create(seminar=self.question.seminar, user=user) - if not c: - revision.save() + set_revision(user, seminar) return context def get_success_url(self): @@ -200,9 +204,7 @@ class SeminarMediaView(MediaView): context['seminar'] = seminar context['media'] = media context['seminar_progress'] = seminar_progress(user, seminar) - revision, c = SeminarRevision.objects.get_or_create(seminar=seminar, user=user) - if not c: - revision.save() + set_revision(user, seminar) return context def get_object(self, queryset=None): @@ -463,9 +465,7 @@ def evaluation_form_detail(request, pk, template='teleforma/evaluation_form.html context['seminar'] = seminar context['form'] = form context['seminar_progress'] = seminar_progress(user, seminar) - revision, c = SeminarRevision.objects.get_or_create(seminar=seminar, user=user) - if not c: - revision.save() + set_revision(user, seminar) return render_to_response(template, context, request_context) -- 2.39.5