From 661e3332e4ba2f8d24ea8bc1ca60716906723ac1 Mon Sep 17 00:00:00 2001 From: yomguy Date: Mon, 21 Jan 2013 17:29:48 +0100 Subject: [PATCH] update answer validated and rejected messages, styles --- teleforma/locale/fr/LC_MESSAGES/django.mo | Bin 13494 -> 16463 bytes teleforma/locale/fr/LC_MESSAGES/django.po | 231 ++++++++++++++---- teleforma/static/teleforma/css/teleforma.css | 15 ++ teleforma/templates/postman/view.html | 1 - .../templates/teleforma/answer_detail.html | 5 +- .../teleforma/messages/answer_rejected.txt | 17 +- .../teleforma/messages/answer_validated.txt | 17 +- .../teleforma/messages/seminar_validated.txt | 19 +- teleforma/urls.py | 2 + teleforma/views/pro.py | 99 +++++++- 10 files changed, 318 insertions(+), 88 deletions(-) diff --git a/teleforma/locale/fr/LC_MESSAGES/django.mo b/teleforma/locale/fr/LC_MESSAGES/django.mo index 01676e072e0e953fba6e8fa3294ad3177a3cbab1..3a945420b29982a19875c802315322a92f490814 100644 GIT binary patch literal 16463 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 literal 13494 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 diff --git a/teleforma/locale/fr/LC_MESSAGES/django.po b/teleforma/locale/fr/LC_MESSAGES/django.po index 71f4eb03..45bc4166 100644 --- a/teleforma/locale/fr/LC_MESSAGES/django.po +++ b/teleforma/locale/fr/LC_MESSAGES/django.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-01-17 17:49+0100\n" +"POT-Creation-Date: 2013-01-21 17:08+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Guillaume Pellerin \n" "Language-Team: LANGUAGE \n" @@ -17,7 +17,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n > 1)\n" #: models/ae.py:46 models/core.py:202 models/crfpa.py:108 models/crfpa.py:146 -#: models/pro.py:142 models/pro.py:186 models/pro.py:201 +#: models/pro.py:142 models/pro.py:186 models/pro.py:201 models/pro.py:238 msgid "user" msgstr "utilisateur" @@ -56,11 +56,11 @@ msgstr "Publié" #: models/core.py:85 msgid "Mr." -msgstr "Mr" +msgstr "Monsieur" #: models/core.py:85 msgid "Mrs." -msgstr "Mme" +msgstr "Madame" #: models/core.py:94 models/core.py:106 models/core.py:129 models/core.py:141 #: models/core.py:186 models/core.py:223 models/core.py:327 models/crfpa.py:47 @@ -193,6 +193,7 @@ msgid "credits" msgstr "crédits" #: models/core.py:310 models/pro.py:96 models/pro.py:149 models/pro.py:192 +#: models/pro.py:239 msgid "date added" msgstr "date d'ajout" @@ -400,7 +401,7 @@ msgstr "formulaire" msgid "Seminar" msgstr "Sémimaire" -#: models/pro.py:122 models/pro.py:185 +#: models/pro.py:122 models/pro.py:185 models/pro.py:237 msgid "seminar" msgstr "séminaire" @@ -420,12 +421,12 @@ msgstr "status" msgid "Question" msgstr "Question" -#: models/pro.py:144 +#: models/pro.py:144 views/pro.py:291 msgid "answer" msgstr "réponse" #: models/pro.py:146 templates/teleforma/seminar_detail.html:50 -#: templates/teleforma/seminars.html:98 +#: templates/teleforma/seminars.html:98 views/pro.py:292 msgid "validated" msgstr "validé" @@ -437,7 +438,7 @@ msgstr "date de soumission" msgid "date validated" msgstr "date de validation" -#: models/pro.py:162 templates/teleforma/answer_detail.html:28 +#: models/pro.py:162 templates/teleforma/answer_detail.html:43 #: templates/teleforma/answer_form.html:105 msgid "Answer" msgstr "Réponse" @@ -456,7 +457,7 @@ msgstr "Modèle d'attestation" #: models/pro.py:196 templates/teleforma/seminar_testimonial.html:13 #: templates/teleforma/inc/testimonial_list.html:7 -#: templates/teleforma/inc/testimonial_step.html:7 views/pro.py:502 +#: templates/teleforma/inc/testimonial_step.html:7 views/pro.py:582 msgid "Testimonial" msgstr "Attestation" @@ -484,6 +485,14 @@ msgstr "Fax" msgid "Auditor" msgstr "Auditeur" +#: models/pro.py:246 +msgid "Seminar revision" +msgstr "Révision des sémimaires" + +#: models/pro.py:247 +msgid "Seminar revisions" +msgstr "Révisions des sémimaires" + #: templates/404.html:10 msgid "Page not found" msgstr "Page non trouvée" @@ -750,11 +759,11 @@ msgstr "" msgid "Write" msgstr "" -#: templates/teleforma/answer_detail.html:38 +#: templates/teleforma/answer_detail.html:53 msgid " validate" msgstr "valider" -#: templates/teleforma/answer_detail.html:39 +#: templates/teleforma/answer_detail.html:54 msgid " reject" msgstr " rejeter" @@ -929,7 +938,8 @@ msgstr "Audio" #: templates/teleforma/course_conference.html:70 #: templates/teleforma/course_media.html:130 -#: templates/teleforma/seminar_testimonial.html:38 +#: templates/teleforma/seminar_testimonial.html:38 views/pro.py:320 +#: views/pro.py:362 msgid "Course" msgstr "Matière" @@ -1264,42 +1274,120 @@ msgstr "validé" msgid "duration" msgstr "durée" -#: templates/teleforma/messages/answer_rejected.txt:2 +#: templates/teleforma/messages/answer_rejected.txt:1 +#, python-format msgid "" -"Sorry!\n" +"%(gender)s %(lastname)s,\n" +"\n" +"We are sorry we cannot validate your answer n°%(rank)s of the e-learning " +"seminar \"%(title)s\".\n" "\n" -"Your answer has been rejected. \n" -"You can work and try again following this link:\n" +"This validation is a requisite to allow us to deliver you a testimonial for " +"this training. However, your submitted answer can not be taken into account. " +"We encourage you to complete your answer following this link:\n" +"\n" +"http://%(domain)s%(path)s\n" +"\n" +"We remind you that you absolutely need to terminate your training before " +"%(date)s.\n" +"\n" +"The team of the %(organization)s thank you for your confidence and we remain " +"at your disposal for further information.\n" msgstr "" -"Nous sommes désolés!\n" +"%(gender)s %(lastname)s,\n" +"\n" +"Nous sommes au regret de ne pouvoir valider votre réponse à la consultation n" +"°%(rank)s du séminaire e-learning \"%(title)s\".\n" "\n" -"Votre consultation n'a pas été validée.\n" -"Vous pouvez la re-travailler et la soumettre en suivant ce lien :\n" +"En effet, la validation des acquis de la formation e-learning que vous avez " +"suivie est une étape nécessaire pour permettre à Pro-Barreau de vous " +"délivrer une attestation de formation. Pour valider cette étape, vous devez " +"répondre aux consultations fictives. Or, la réponse soumise ne peut être " +"prise en compte. Aussi, nous prions-vous de bien vouloir compléter votre " +"réponse en suivant ce lien :\n" +"\n" +"http://%(domain)s%(path)s\n" +"\n" +"Nous vous rappelons que vous devez impérativement achever toutes les étapes " +"de votre formation avant le %(date)s.\n" +"\n" +"L’équipe e-learning de %(organization)s vous remercie de votre confiance et " +"reste à votre disposition pour renseignement complémentaire.\n" -#: templates/teleforma/messages/answer_validated.txt:2 +#: templates/teleforma/messages/answer_validated.txt:1 +#, python-format msgid "" -"Congratulations!\n" +"%(gender)s %(lastname)s,\n" +"\n" +"Your answer to the question n°%(rank)s of the e-learning seminar \"%(title)s" +"\" has been validated.\n" +"\n" +"You can now continue to next step following this link:\n" +"\n" +"http://%(domain)s%(path)s\n" "\n" -"Your answer has been validated. \n" -"You can go to the next step of your seminar following this link:\n" +"We remind you that you absolutely need to terminate all steps of your " +"training before %(date)s.\n" +"\n" +"The team of the %(organization)s thank you for your confidence and we remain " +"at your disposal for further information.\n" msgstr "" -"Félicitations!\n" +"%(gender)s %(lastname)s,\n" +"\n" +"Votre réponse à la consultation n°%(rank)s du séminaire e-learning " +"\"%(title)s\" a été validée.\n" +"\n" +"Vous pouvez dès à présent poursuivre votre formation en passant à l’étape " +"suivante, en suivant ce lien :\n" +"\n" +"http://%(domain)s%(path)s\n" "\n" -"Votre dernière consultation a été validée.\n" -"Vous pouvez accéder à la prochaine étape de votre séminaire en suivant ce " -"lien :\n" +"Nous vous rappelons que vous devez impérativement achever toutes les étapes " +"de votre formation avant le %(date)s.\n" +"\n" +"L’équipe e-learning de %(organization)s vous remercie de votre confiance et " +"reste à votre disposition pour renseignement complémentaire.\n" -#: templates/teleforma/messages/seminar_validated.txt:2 +#: templates/teleforma/messages/seminar_validated.txt:1 +#, python-format msgid "" -"Congratulations!\n" +"%(gender)s %(lastname)s,\n" +"\n" +"Your answer to the question n°%(rank)s of the e-learning seminar \"%(title)s" +"\" has been validated.\n" "\n" -"Your seminar has been validated. \n" -"You can now download the training testimonial following this link:\n" +"You have then achieved the step 4 of your training.\n" +"\n" +"Now read the corrected document of all questions (step 5) and evaluate the " +"training (step 6) in order to obtain your testimonial (step 7) following " +"this link:\n" +"\n" +"http://%(domain)s%(path)s\n" +"\n" +"We remind you that you absolutely need to terminate all steps of your " +"training before %(date)s.\n" +"\n" +"The team of the %(organization)s thank you for your confidence and we remain " +"at your disposal for further information.\n" msgstr "" -"Félicitations!\n" +"%(gender)s %(lastname)s,\n" +"\n" +"Votre réponse à la consultation n°%(rank)s du séminaire e-learning " +"\"%(title)s\" a été validée.\n" +"\n" +"Vous avez achevé l’étape 4 de votre formation.\n" +"\n" +"Consultez dès à présent le corrigé-type des consultations fictives (étape 5) " +"et évaluez la formation suivie (étape 6) afin d’obtenir votre attestation " +"(étape 7) en suivant ce lien :\n" "\n" -"Votre séminaire a été validé.\n" -"Vous pouvez télecharger votre attestation en cliquant sur ce lien :\n" +"http://%(domain)s%(path)s\n" +"\n" +"Nous vous rappelons que vous devez impérativement achever toutes les étapes " +"de votre formation avant le %(date)s.\n" +"\n" +"L’équipe e-learning de %(organization)s vous remercie de votre confiance et " +"reste à votre disposition pour renseignement complémentaire.\n" #: templates/telemeta/base.html:96 msgid "Desk" @@ -1556,7 +1644,7 @@ msgstr "" "Merci de vous connecter ou bien contactez l'administateur du site pour " "obtenir un accès privé." -#: views/pro.py:116 +#: views/pro.py:117 msgid "" "You have successfully terminated your e-learning seminar. A training " "testimonial will be available as soon as the pedagogical team validate all " @@ -1566,7 +1654,7 @@ msgstr "" "formation vous sera délivrée dès que vos réponses aux consultations fictives " "auront été validées par notre équipe pédagogique (48h maximum)." -#: views/pro.py:118 +#: views/pro.py:119 msgid "" "All your answers have been validated! You can now download the training " "testimonial below." @@ -1574,30 +1662,74 @@ msgstr "" "Toutes vos consultations fictives ont été validées ! Vous pouvez désormais " "télécharger l'attestation de formation ci-dessous." -#: views/pro.py:160 +#: views/pro.py:163 msgid "You have successfully saved your answer" msgstr "Vous avez enregistré votre consultation avec succès" -#: views/pro.py:162 +#: views/pro.py:165 msgid "You have successfully submitted your answer" msgstr "Vous avez soumis votre consultation avec succès" -#: views/pro.py:265 -msgid "Seminar validated" -msgstr "Séminaire validé" +#: views/pro.py:286 +#, fuzzy +msgid "all your answers has been validated" +msgstr "Votre consultation a été validée" -#: views/pro.py:271 -msgid "Answer validated" -msgstr "Consultation validée" +#: views/pro.py:318 views/pro.py:360 +msgid "Subtitle" +msgstr "Sous-titre" -#: views/pro.py:295 -msgid "Answer rejected" -msgstr "Consultation rejetée" +#: views/pro.py:340 +msgid "validation conditions for an answer" +msgstr "conditions de validation d'une consultation" -#: views/pro.py:377 +#: views/pro.py:455 msgid "You have successfully submitted your evaluation" msgstr "Vous avez soumis votre évaluation avec succès" +#~ msgid "" +#~ "Congratulations!\n" +#~ "\n" +#~ "Your answer has been validated. \n" +#~ "You can go to the next step of your seminar following this link:\n" +#~ msgstr "" +#~ "Félicitations!\n" +#~ "\n" +#~ "Votre dernière consultation a été validée.\n" +#~ "Vous pouvez accéder à la prochaine étape de votre séminaire en suivant ce " +#~ "lien :\n" + +#~ msgid "" +#~ "Congratulations!\n" +#~ "\n" +#~ "Your seminar has been validated. \n" +#~ "You can now download the training testimonial following this link:\n" +#~ msgstr "" +#~ "Félicitations!\n" +#~ "\n" +#~ "Votre séminaire a été validé.\n" +#~ "Vous pouvez télecharger votre attestation en cliquant sur ce lien :\n" + +#~ msgid "Seminar validated" +#~ msgstr "Séminaire validé" + +#~ msgid "Answer validated" +#~ msgstr "Consultation validée" + +#~ msgid "" +#~ "Sorry!\n" +#~ "\n" +#~ "Your answer has been rejected. \n" +#~ "You can work and try again following this link:\n" +#~ msgstr "" +#~ "Nous sommes désolés!\n" +#~ "\n" +#~ "Votre consultation n'a pas été validée.\n" +#~ "Vous pouvez la re-travailler et la soumettre en suivant ce lien :\n" + +#~ msgid "Answer rejected" +#~ msgstr "Consultation rejetée" + #~ msgid "keywords" #~ msgstr "mots clés" @@ -1617,9 +1749,6 @@ msgstr "Vous avez soumis votre évaluation avec succès" #~ "Vous pouvez accéder à la prochaine étape de votre séminaire en suivant ce " #~ "lien :\n" -#~ msgid "Your answer has been validated" -#~ msgstr "Votre consultation a été validée" - #~ msgid "Index" #~ msgstr "Index" diff --git a/teleforma/static/teleforma/css/teleforma.css b/teleforma/static/teleforma/css/teleforma.css index cdb5643e..74b45731 100644 --- a/teleforma/static/teleforma/css/teleforma.css +++ b/teleforma/static/teleforma/css/teleforma.css @@ -59,6 +59,13 @@ a:hover { a img { border: none; } +textarea { + padding: 1em; + -moz-border-radius: 8px 0px 8px 8px; + -webkit-border-radius: 8px 0px 8px 8px; + border-radius: 8px 0px 8px 8px; + } + .rst-content h1 { font-size: 1.2em; font-weight: bold; @@ -1620,7 +1627,15 @@ input,textarea{ #pm_messages td { font-weight: normal; font-size: 1em; + } + +#pm_reply textarea { + padding: 1em; + -moz-border-radius: 8px 0px 8px 8px; + -webkit-border-radius: 8px 0px 8px 8px; + border-radius: 8px 0px 8px 8px; + width: 97%; } #id_body { diff --git a/teleforma/templates/postman/view.html b/teleforma/templates/postman/view.html index c0002767..f294ec23 100644 --- a/teleforma/templates/postman/view.html +++ b/teleforma/templates/postman/view.html @@ -54,7 +54,6 @@
{% csrf_token %}
{{ form.body }}

{% trans "Reply" %} - {% endif %}
diff --git a/teleforma/templates/teleforma/answer_detail.html b/teleforma/templates/teleforma/answer_detail.html index b018a220..f908717c 100644 --- a/teleforma/templates/teleforma/answer_detail.html +++ b/teleforma/templates/teleforma/answer_detail.html @@ -18,8 +18,7 @@ $('#validate').unbind('click').click(function() { $('#reject').unbind('click').click(function() { json(['{{answer.id}}'],'teleforma.reject_answer'); setTimeout(function() {window.location.href = "{% url teleforma-answers %}";}, 1000); -}); - + }); }); @@ -43,7 +42,7 @@ $('#reject').unbind('click').click(function() {

{% trans "Answer" %}

-
+
{{ answer.answer|safe }}
diff --git a/teleforma/templates/teleforma/messages/answer_rejected.txt b/teleforma/templates/teleforma/messages/answer_rejected.txt index 9026db90..c2f90266 100644 --- a/teleforma/templates/teleforma/messages/answer_rejected.txt +++ b/teleforma/templates/teleforma/messages/answer_rejected.txt @@ -1,9 +1,12 @@ -{% load i18n %}{% load telemeta_utils %}{% load teleforma_tags %} -{% blocktrans %}Sorry! +{% load i18n %}{% blocktrans %}{{ gender }} {{ lastname }}, -Your answer has been rejected. -You can work and try again following this link: -{% endblocktrans %} -http://{{ site.name }}{{ url }} +We are sorry we cannot validate your answer n°{{ rank }} of the e-learning seminar "{{ title }}". -{% organization %} \ No newline at end of file +This validation is a requisite to allow us to deliver you a testimonial for this training. However, your submitted answer can not be taken into account. We encourage you to complete your answer following this link: + +http://{{ domain }}{{ path }} + +We remind you that you absolutely need to terminate your training before {{ date }}. + +The team of the {{ organization }} thank you for your confidence and we remain at your disposal for further information. +{% endblocktrans %} \ No newline at end of file diff --git a/teleforma/templates/teleforma/messages/answer_validated.txt b/teleforma/templates/teleforma/messages/answer_validated.txt index 55e24566..5d3315b7 100644 --- a/teleforma/templates/teleforma/messages/answer_validated.txt +++ b/teleforma/templates/teleforma/messages/answer_validated.txt @@ -1,9 +1,12 @@ -{% load i18n %}{% load telemeta_utils %}{% load teleforma_tags %} -{% blocktrans %}Congratulations! +{% load i18n %}{% blocktrans %}{{ gender }} {{ lastname }}, -Your answer has been validated. -You can go to the next step of your seminar following this link: -{% endblocktrans %} -http://{{ site.name }}{{ url }} +Your answer to the question n°{{ rank }} of the e-learning seminar "{{ title }}" has been validated. -{% organization %} \ No newline at end of file +You can now continue to next step following this link: + +http://{{ domain }}{{ path }} + +We remind you that you absolutely need to terminate all steps of your training before {{ date }}. + +The team of the {{ organization }} thank you for your confidence and we remain at your disposal for further information. +{% endblocktrans %} diff --git a/teleforma/templates/teleforma/messages/seminar_validated.txt b/teleforma/templates/teleforma/messages/seminar_validated.txt index 3d3e65d2..bebc9429 100644 --- a/teleforma/templates/teleforma/messages/seminar_validated.txt +++ b/teleforma/templates/teleforma/messages/seminar_validated.txt @@ -1,9 +1,14 @@ -{% load i18n %}{% load telemeta_utils %}{% load teleforma_tags %} -{% blocktrans %}Congratulations! +{% load i18n %}{% blocktrans %}{{ gender }} {{ lastname }}, -Your seminar has been validated. -You can now download the training testimonial following this link: -{% endblocktrans %} -http://{{ site.name }}{{ url }} +Your answer to the question n°{{ rank }} of the e-learning seminar "{{ title }}" has been validated. + +You have then achieved the step 4 of your training. + +Now read the corrected document of all questions (step 5) and evaluate the training (step 6) in order to obtain your testimonial (step 7) following this link: -{% organization %} \ No newline at end of file +http://{{ domain }}{{ path }} + +We remind you that you absolutely need to terminate all steps of your training before {{ date }}. + +The team of the {{ organization }} thank you for your confidence and we remain at your disposal for further information. +{% endblocktrans %} diff --git a/teleforma/urls.py b/teleforma/urls.py index 3aed0f28..fe02c07b 100644 --- a/teleforma/urls.py +++ b/teleforma/urls.py @@ -155,4 +155,6 @@ urlpatterns = patterns('', url(r'^tinymce/', include('tinymce.urls')), + url(r'^desk/test/(?P.*)/$', AnswerDetailViewTest.as_view(), name="test"), + ) diff --git a/teleforma/views/pro.py b/teleforma/views/pro.py index 03442fc3..61e230f7 100644 --- a/teleforma/views/pro.py +++ b/teleforma/views/pro.py @@ -258,25 +258,44 @@ class AnswersView(ListView): @jsonrpc_method('teleforma.validate_answer') def validate(request, id): + context = {} answer = Answer.objects.get(id=id) answer.validate() user = answer.user sender = request.user seminar = answer.question.seminar site = Site.objects.get_current() + path = reverse('teleforma-seminar-detail', kwargs={'pk':seminar.id}) + if answer.question.seminar.sub_title: + title = unicode(_('Subtitle')) + ' : ' + seminar.sub_title + else: + title = unicode(_('Course')) + ' : ' + seminar.course.title + organization = seminar.course.department.name + + auditor = user.auditor.all() + if auditor: + context['gender'] = auditor[0].gender + else: + context['gender'] = user.first_name + context['lastname'] = user.last_name + context['rank'] = answer.question.rank + context['domain'] = site.name + context['path'] = path + context['title'] = title + context['organization'] = organization + context['date'] = answer.question.seminar.expiry_date if seminar_validated(user, seminar): testimonial = Testimonial(user=user, seminar=seminar) testimonial.save() url = reverse('teleforma-seminar-testimonial-download', kwargs={'pk':seminar.id}) + '?format=pdf' - ctx_dict = {'site': site, 'url': url,} - subject = _('Seminar validated') + ' : ' + seminar.title - text = render_to_string('teleforma/messages/seminar_validated.txt', ctx_dict) + text = render_to_string('teleforma/messages/seminar_validated.txt', context) + subject = seminar.title + ' : ' + unicode(_('all your answers has been validated')) + else: - url = reverse('teleforma-seminar-detail', kwargs={'pk':seminar.id}) - ctx_dict = {'site': site, 'url': url,} - text = render_to_string('teleforma/messages/answer_validated.txt', ctx_dict) - subject = _('Answer validated') + ' : ' + seminar.title + text = render_to_string('teleforma/messages/answer_validated.txt', context) + subject = seminar.title + ' : ' + unicode(_('answer')) + 'n°' + \ + context['rank'] + ' ' + unicode(_('validated')).decode('utf8') mess = Message(sender=sender, recipient=user, subject=subject, body=text) mess.moderation_status = 'a' @@ -285,10 +304,13 @@ class AnswersView(ListView): @jsonrpc_method('teleforma.reject_answer') def reject(request, id): + context = {} answer = Answer.objects.get(id=id) seminar = answer.question.seminar user = answer.user sender = request.user + site = Site.objects.get_current() + testimonials = Testimonial.objects.filter(user=user, seminar=seminar) if testimonials: for testimonial in testimonials: @@ -296,16 +318,69 @@ class AnswersView(ListView): answer.validated = False answer.status = 2 answer.save() - site = Site.objects.get_current() - url = reverse('teleforma-question-answer', kwargs={'pk':answer.question.id}) - ctx_dict = {'site': site, 'url': url,} - text = render_to_string('teleforma/messages/answer_rejected.txt', ctx_dict) - subject = _('Answer rejected') + ' : ' + seminar.title + + path = reverse('teleforma-question-answer', kwargs={'pk':answer.question.id}) + if answer.question.seminar.sub_title: + title = unicode(_('Subtitle')) + ' : ' + seminar.sub_title + else: + title = unicode(_('Course')) + ' : ' + seminar.course.title + organization = seminar.course.department.name + auditor = user.auditor.all() + if auditor: + context['gender'] = auditor[0].gender + else: + context['gender'] = user.first_name + context['lastname'] = user.last_name + context['rank'] = answer.question.rank + context['domain'] = site.name + context['path'] = path + context['title'] = title + context['organization'] = organization + context['date'] = answer.question.seminar.expiry_date + + seminar = answer.question.seminar + user = answer.user + sender = request.user + + text = render_to_string('teleforma/messages/answer_rejected.txt', context) + subject = seminar.title + ' : ' + unicode(_('validation conditions for an answer')) mess = Message(sender=sender, recipient=user, subject=subject, body=text) mess.moderation_status = 'a' mess.save() notify_user(mess, 'acceptance') +class AnswerDetailViewTest(DetailView): + + model = Answer + template_name='teleforma/messages/answer_rejected.txt' + + def get_context_data(self, **kwargs): + context = super(AnswerDetailViewTest, self).get_context_data(**kwargs) + answer = self.get_object() + seminar = answer.question.seminar + user = answer.user + sender = self.request.user + site = Site.objects.get_current() + path= reverse('teleforma-question-answer', kwargs={'pk':answer.question.id}) + if answer.question.seminar.sub_title: + title = unicode(_('Subtitle')) + ' : ' + seminar.sub_title + else: + title = unicode(_('Course')) + ' : ' + seminar.course.title + organization = seminar.course.department.name + auditor = user.auditor.all() + if auditor: + context['gender'] = auditor[0].gender + else: + context['gender'] = user.first_name + context['lastname'] = user.last_name + context['rank'] = answer.question.rank + context['domain'] = site.name + context['path'] = path + context['title'] = title + context['organization'] = organization + context['date'] = answer.question.seminar.expiry_date + return context + class AnswerDetailView(DetailView): -- 2.39.5