]> git.parisson.com Git - teleforma.git/commitdiff
add quiz class view
authorGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Thu, 10 Dec 2015 00:50:00 +0000 (01:50 +0100)
committerGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Thu, 10 Dec 2015 00:50:00 +0000 (01:50 +0100)
teleforma/urls.py
teleforma/views/pro.py

index 611dbd087dbc188f50d195724187315e5865db74..324832b2713059a674230f7b09603b7559653346 100644 (file)
@@ -42,7 +42,6 @@ from telemeta.views import *
 import forms_builder.forms.urls
 from jsonrpc import jsonrpc_site
 from longerusername.forms import AuthenticationForm
-from quiz.views import *
 
 htdocs_forma = os.path.dirname(__file__) + '/static/teleforma/'
 user_export = UsersXLSExport()
@@ -104,7 +103,7 @@ urlpatterns = patterns('',
     # Evaluations
     url(r'^forms/', include('forms_builder.forms.urls')),
     url(r'^desk/seminars/(?P<pk>.*)/form/$', evaluation_form_detail, name="teleforma-seminar-form"),
-    url(r'^desk/seminars/(?P<pk>.*)/quiz/(?P<quiz_name>[\w-]+)/$', QuizTake.as_view(), name="teleforma-quiz"),
+    url(r'^desk/seminars/(?P<pk>.*)/quiz/(?P<quiz_name>[\w-]+)/$', QuizQuestionView.as_view(), name="teleforma-quiz"),
 
     # Testimonial
     url(r'^desk/seminars/(?P<pk>.*)/testimonial/$', TestimonialView.as_view(),
index 17098a155840dbe452562263c174126dfaa37836..f230ff962beb5cfe446006e1505c4abe79170576 100644 (file)
@@ -59,6 +59,8 @@ from forms_builder.forms.forms import FormForForm
 from forms_builder.forms.models import Form
 from forms_builder.forms.signals import form_invalid, form_valid
 
+from quiz.views import QuizTake
+
 REVISION_DATE_FILTER = datetime.datetime(2014,7,21)
 
 
@@ -767,3 +769,20 @@ class TestimonialPaybackView(TestimonialView):
     @method_decorator(login_required)
     def dispatch(self, *args, **kwargs):
         return super(TestimonialPaybackView, self).dispatch(*args, **kwargs)
+
+
+class QuizQuestionView(SeminarAccessMixin, SeminarRevisionMixin, QuizTake):
+
+    template_name='quiz/question.html'
+
+    def get_user(self):
+        user_id = self.request.user.id
+        return User.objects.get(id=user_id)
+
+    def get_context_data(self, **kwargs):
+        context = super(QuizQuestionView, self).get_context_data(**kwargs)
+        user = self.get_user()
+        seminar = Seminar.objects.get(pk=self.kwargs['pk'])
+        context['seminar'] = seminar
+        context['seminar_progress'] = seminar_progress(user, seminar)
+        return context