questions = seminar.question.all()
if questions:
for question in questions:
- answers = Answer.objects.filter(question= question, user=user, validated=True)
+ answers = Answer.objects.filter(question=question, user=user, validated=True)
if answers:
validated.append(True)
else:
return False
-def all_seminars(request):
+def all_seminars(request, progress_order=False):
seminars = []
user = request.user
elif user.is_superuser or user.is_staff:
seminars = Seminar.objects.all()
elif professor:
- seminars = all_seminars(request)
-
+ seminars = all_seminars(request)['all_seminars']
+ else:
+ seminars = None
+
for seminar in seminars:
progress += seminar_progress(user, seminar)
from django.template.context import Context
from django.utils.html import escape
from django.views.generic.detail import SingleObjectMixin
-
+from django.core.mail import EmailMessage
import os
from cgi import escape
from cStringIO import StringIO
model = Seminar
template_name='teleforma/seminars.html'
+ # def get_queryset(self):
+ # return all_seminars(self.request, progress_order=True)
@method_decorator(login_required)
def dispatch(self, *args, **kwargs):
def get_context_data(self, **kwargs):
context = super(AnswersView, self).get_context_data(**kwargs)
- all_seminars = get_seminars(self.request.user)
- context['all_seminars'] = all_seminars
+ seminars = all_seminars(self.request)
+ context['all_seminars'] = seminars
paginator = Paginator(self.object_list, per_page=12)
try:
@jsonrpc_method('teleforma.validate_answer')
def validate(request, id):
answer = Answer.objects.get(id=id)
- answer.validated = True
- answer.save()
+ answer.validate()
+ user = answer.user
+ seminar = answer.question.get().seminar
+ if seminar_validated(user, seminar):
+ email = EmailMessage()
+ email.subject = seminar.course.department.name + ' : ' + \
+ _('Your training testimonial for the seminar : ') + seminar.title
+ email.from_email = settings.ADMINS[0][1]
+ email.to = user.email
+ email.body = _('You have validated your training!')
+ email.attach()
+
+
@jsonrpc_method('teleforma.reject_answer')
def reject(request, id):
def get_context_data(self, **kwargs):
context = super(AnswerDetailView, self).get_context_data(**kwargs)
- context['all_seminars'] = get_seminars(self.request.user)
+ context['all_seminars'] = all_seminars(self.request)
return context
# def get_context_data(self, **kwargs):
# context = super(EvaluationView, self).get_context_data(**kwargs)
-# context['all_seminars'] = get_seminars(self.request.user)
+# context['all_seminars'] = all_seminars(self.request)
# context['total_progress'] = total_progress(self.request.user)
# context['form'] = self.get_object().form
# context['seminar_progress'] = seminar_progress(self.request.user, self.get_object())