From dafd6f5a0b219d0fee52284ef3d7e8d6feecac06 Mon Sep 17 00:00:00 2001 From: Guillaume Pellerin Date: Thu, 10 Dec 2015 13:06:00 +0100 Subject: [PATCH] add french translation, partially fix template paths --- quiz/locale/fr/LC_MESSAGES/django.mo | Bin 0 -> 1870 bytes quiz/locale/fr/LC_MESSAGES/django.po | 456 +++++++++++++++++++++ quiz/locale/it/LC_MESSAGES/django.mo | Bin 7232 -> 7828 bytes quiz/views.py | 16 +- true_false/locale/fr/LC_MESSAGES/django.po | 35 ++ 5 files changed, 499 insertions(+), 8 deletions(-) create mode 100644 quiz/locale/fr/LC_MESSAGES/django.mo create mode 100644 quiz/locale/fr/LC_MESSAGES/django.po create mode 100644 true_false/locale/fr/LC_MESSAGES/django.po diff --git a/quiz/locale/fr/LC_MESSAGES/django.mo b/quiz/locale/fr/LC_MESSAGES/django.mo new file mode 100644 index 0000000000000000000000000000000000000000..8f76d4a5f99477ff028a2542a75849744eb0ce08 GIT binary patch literal 1870 zcmZvcPiz}S6vl_pLNR|^3Z#g`hzda!O|SzR!2U;sS^Zh#t6@8xkkP2@8n};$9F(4hV5T;>LmR&F@&se&vDOGe{yqlj{FmTk;MXAO{1$uxoP%e;U%@BAzd<_pA4vJ0 zdL)f=4qV3i0!Zh!vh_6(rp$sbgHx~wehyNcpFzswH<0xH1CsuwM;U`;b`~Uk%OKs) zd60B$g4q=@9PxwlC!hI%iPuPZQ4ZvXw4KAG803cr-5=GO@;Zx2^`b%djB>H(X@Nm{ zNFxo>O!-o7_lzwS=_4+U;%=n4Q8tO3<@$iDn{sTiDIK5cgpcH*;#Rs4{@u zjxDFG3z-w64nv(-ej`!VpXiQ4%ke`=^ivs`2pquvk+hVC$u?J6*9X0d%rdP5c6{L- z$(}~ic?=%LndfLqwz;q4-xMcZTV*X$;TC5Ul(AuW7{)^q!Sn&siK8M*KGCr2A^(Xo zeHFW0J-{=@?{p=xXChKE0*38r8QA1@=~e%=K4ypR4l?!v{7Vop4nXuDs9nd zitP%2yIF43R<1R7gF;HUR<1(*TcCYM_RiyCc>Yb|mXS84=*-2B?0SulGV%Xhn&Uk=W5@Y|A{J_@&)gyU5eejn`s+ znU^jU*uDhWp3vjJ+S zSoKx343A{0hVt^_us@$U8M-XDeBXBplGvwq!~cL=*$Ifsx F^*>rR@sR)k literal 0 HcmV?d00001 diff --git a/quiz/locale/fr/LC_MESSAGES/django.po b/quiz/locale/fr/LC_MESSAGES/django.po new file mode 100644 index 0000000..a08a563 --- /dev/null +++ b/quiz/locale/fr/LC_MESSAGES/django.po @@ -0,0 +1,456 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-12-10 11:48+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1)\n" + +#: models.py:30 models.py:37 models.py:53 models.py:83 models.py:545 +#: templates/progress.html:19 templates/quiz/quiz_detail.html:9 +#: templates/quiz/quiz_list.html:13 templates/quiz/sitting_detail.html:10 +msgid "Category" +msgstr "Catégorie" + +#: models.py:38 +msgid "Categories" +msgstr "Catégories" + +#: models.py:48 models.py:58 models.py:550 +msgid "Sub-Category" +msgstr "Sous-catégorie" + +#: models.py:59 +msgid "Sub-Categories" +msgstr "Sous-Catégories" + +#: models.py:69 templates/quiz/quiz_list.html:12 +msgid "Title" +msgstr "Titre" + +#: models.py:73 +msgid "Description" +msgstr "" + +#: models.py:74 +msgid "a description of the quiz" +msgstr "" + +#: models.py:78 +msgid "a user friendly url" +msgstr "" + +#: models.py:79 +msgid "user friendly url" +msgstr "" + +#: models.py:87 +msgid "Random Order" +msgstr "" + +#: models.py:88 +msgid "Display the questions in a random order or as they are set?" +msgstr "" + +#: models.py:93 +msgid "Max Questions" +msgstr "" + +#: models.py:94 +msgid "Number of questions to be answered on each attempt." +msgstr "" + +#: models.py:98 +msgid "" +"Correct answer is NOT shown after question. Answers displayed at the end." +msgstr "" + +#: models.py:100 +msgid "Answers at end" +msgstr "" + +#: models.py:104 +msgid "" +"If yes, the result of each attempt by a user will be stored. Necessary for " +"marking." +msgstr "" + +#: models.py:107 +msgid "Exam Paper" +msgstr "" + +#: models.py:111 +msgid "" +"If yes, only one attempt by a user will be permitted. Non users cannot sit " +"this exam." +msgstr "" + +#: models.py:114 +msgid "Single Attempt" +msgstr "" + +#: models.py:118 +msgid "Percentage required to pass exam." +msgstr "" + +#: models.py:122 +msgid "Displayed if user passes." +msgstr "" + +#: models.py:123 +msgid "Success Text" +msgstr "" + +#: models.py:126 +msgid "Fail Text" +msgstr "" + +#: models.py:127 +msgid "Displayed if user fails." +msgstr "" + +#: models.py:131 +msgid "Draft" +msgstr "" + +#: models.py:132 +msgid "" +"If yes, the quiz is not displayed in the quiz list and can only be taken by " +"users who can edit quizzes." +msgstr "" + +#: models.py:152 models.py:372 models.py:541 +#: templates/quiz/sitting_list.html:14 +msgid "Quiz" +msgstr "" + +#: models.py:153 +msgid "Quizzes" +msgstr "" + +#: models.py:192 models.py:370 templates/quiz/sitting_detail.html:13 +#: templates/quiz/sitting_list.html:13 +msgid "User" +msgstr "" + +#: models.py:195 templates/progress.html:60 +#: templates/quiz/sitting_detail.html:15 templates/quiz/sitting_list.html:16 +msgid "Score" +msgstr "" + +#: models.py:200 +msgid "User Progress" +msgstr "" + +#: models.py:201 +msgid "User progress records" +msgstr "" + +#: models.py:261 +msgid "error" +msgstr "" + +#: models.py:261 +msgid "category does not exist or invalid score" +msgstr "" + +#: models.py:375 +msgid "Question Order" +msgstr "" + +#: models.py:378 +msgid "Question List" +msgstr "" + +#: models.py:381 +msgid "Incorrect questions" +msgstr "" + +#: models.py:383 +msgid "Current Score" +msgstr "" + +#: models.py:386 +msgid "Complete" +msgstr "" + +#: models.py:389 +msgid "User Answers" +msgstr "" + +#: models.py:392 +msgid "Start" +msgstr "" + +#: models.py:394 +msgid "End" +msgstr "" + +#: models.py:399 +msgid "Can see completed exams." +msgstr "" + +#: models.py:557 +msgid "Figure" +msgstr "" + +#: models.py:561 +msgid "Enter the question text that you want displayed" +msgstr "" + +#: models.py:563 models.py:575 templates/question.html:47 +#: templates/quiz/sitting_detail.html:21 +msgid "Question" +msgstr "" + +#: models.py:567 +msgid "Explanation to be shown after the question has been answered." +msgstr "" + +#: models.py:570 templates/question.html:32 templates/result.html:21 +#: templates/result.html.py:87 +msgid "Explanation" +msgstr "Explication" + +#: models.py:576 +msgid "Questions" +msgstr "" + +#: templates/base.html:7 +msgid "Example Quiz Website" +msgstr "" + +#: templates/correct_answer.html:6 +msgid "You answered the above question incorrectly" +msgstr "Vous avez répondu à la question incorrectement" + +#: templates/correct_answer.html:16 +msgid "This is the correct answer" +msgstr "C'est la bonne réponse" + +#: templates/correct_answer.html:23 +msgid "This was your answer." +msgstr "C'était votre réponse." + +#: templates/progress.html:6 +msgid "Progress Page" +msgstr "" + +#: templates/progress.html:7 +msgid "User Progress Page" +msgstr "" + +#: templates/progress.html:13 +msgid "Question Category Scores" +msgstr "" + +#: templates/progress.html:20 +msgid "Correctly answererd" +msgstr "Réponse bonne" + +#: templates/progress.html:21 +msgid "Incorrect" +msgstr "" + +#: templates/progress.html:50 +msgid "Previous exam papers" +msgstr "" + +#: templates/progress.html:52 +msgid "Below are the results of exams that you have sat." +msgstr "Voici les résultats de votre quiz." + +#: templates/progress.html:59 +msgid "Quiz Title" +msgstr "" + +#: templates/progress.html:61 +msgid "Possible Score" +msgstr "" + +#: templates/question.html:13 templates/result.html:13 +msgid "The previous question" +msgstr "La question précédente" + +#: templates/question.html:22 +msgid "Your answer was" +msgstr "Votre réponse était" + +#: templates/question.html:47 +msgid "of" +msgstr "sur" + +#: templates/question.html:52 +msgid "Question category" +msgstr "" + +#: templates/question.html:74 +msgid "Check" +msgstr "Soumettre" + +#: templates/result.html:7 +msgid "Exam Results for" +msgstr "Résultats du quiz pour" + +#: templates/result.html:32 +msgid "Exam results" +msgstr "Résultats du quiz" + +#: templates/result.html:34 +msgid "Exam title" +msgstr "Titre du quiz" + +#: templates/result.html:38 +msgid "You answered" +msgstr "Vous avez répondu correctement à" + +#: templates/result.html:38 +msgid "questions correctly out of" +msgstr "questions sur" + +#: templates/result.html:38 +msgid "giving you" +msgstr "ce qui vous donne" + +#: templates/result.html:38 +msgid "percent correct" +msgstr "pourcent de bonnes réponses" + +#: templates/result.html:48 +msgid "Review the questions below and try the exam again in the future" +msgstr "" + +#: templates/result.html:52 +msgid "" +"The result of this exam will be stored in your progress section so you can " +"review and monitor your progression" +msgstr "" + +#: templates/result.html:66 +msgid "Your session score is" +msgstr "Votre score est" + +#: templates/result.html:66 +msgid "out of a possible" +msgstr "impossible" + +#: templates/result.html:84 +msgid "Your answer" +msgstr "Votre réponse" + +#: templates/single_complete.html:13 +msgid "You have already sat this exam and only one sitting is permitted" +msgstr "" + +#: templates/single_complete.html:15 +msgid "This exam is only accessible to signed in users" +msgstr "" + +#: templates/view_quiz_category.html:3 +msgid "Quizzes related to" +msgstr "" + +#: templates/view_quiz_category.html:6 +msgid "Quizzes in the" +msgstr "" + +#: templates/view_quiz_category.html:6 +msgid "category" +msgstr "" + +#: templates/view_quiz_category.html:20 +msgid "There are no quizzes" +msgstr "" + +#: templates/quiz/category_list.html:3 templates/quiz/quiz_list.html:3 +#: templates/quiz/sitting_list.html:3 +msgid "All Quizzes" +msgstr "" + +#: templates/quiz/category_list.html:6 +msgid "Category list" +msgstr "" + +#: templates/quiz/quiz_detail.html:11 +msgid "You will only get one attempt at this quiz" +msgstr "" + +#: templates/quiz/quiz_detail.html:16 +msgid "Start quiz" +msgstr "" + +#: templates/quiz/quiz_list.html:6 +msgid "List of quizzes" +msgstr "" + +#: templates/quiz/quiz_list.html:14 +msgid "Exam" +msgstr "" + +#: templates/quiz/quiz_list.html:15 +msgid "Single attempt" +msgstr "" + +#: templates/quiz/quiz_list.html:31 templates/quiz/sitting_list.html:42 +msgid "View details" +msgstr "" + +#: templates/quiz/quiz_list.html:41 +msgid "There are no available quizzes" +msgstr "" + +#: templates/quiz/sitting_detail.html:5 +msgid "Result of" +msgstr "" + +#: templates/quiz/sitting_detail.html:5 +msgid "for" +msgstr "" + +#: templates/quiz/sitting_detail.html:9 +msgid "Quiz title" +msgstr "" + +#: templates/quiz/sitting_detail.html:14 templates/quiz/sitting_list.html:15 +msgid "Completed" +msgstr "" + +#: templates/quiz/sitting_detail.html:22 +msgid "User answer" +msgstr "" + +#: templates/quiz/sitting_detail.html:41 +msgid "incorrect" +msgstr "" + +#: templates/quiz/sitting_detail.html:43 +msgid "Correct" +msgstr "" + +#: templates/quiz/sitting_detail.html:49 +msgid "Toggle whether correct" +msgstr "" + +#: templates/quiz/sitting_list.html:6 +msgid "List of complete exams" +msgstr "" + +#: templates/quiz/sitting_list.html:28 +msgid "Filter" +msgstr "" + +#: templates/quiz/sitting_list.html:52 +msgid "There are no matching quizzes" +msgstr "" diff --git a/quiz/locale/it/LC_MESSAGES/django.mo b/quiz/locale/it/LC_MESSAGES/django.mo index 926bc4c8c650deb782304129e742dd71ea23c36f..375da5c681a444252f0db9c2493eecf11720ddde 100644 GIT binary patch delta 2355 zcmZA1eQ1?c9Ki9Dx!GRItxcV#?ZvllTh7hR)?U(9TdlNmIy0BnntE-~BxE=QyEqmS z66IEZDD*D4h!Pr-I3xX|KMJx}D3U_+zl03JD2VL)eL92aaDVsnJm=nf&iVbGbMC2z zms(yd&b%B#IGN2Gtsp0aJS@cPa30oR6_(&;%*9=J4G!V8xF56dVC;Vld4)0Frs4b8 zfhVvCr!t7YE6EL+WWq&sG|^FuPSlUHaUVMH8+bJy!D@U5r{Y=U70&TifEO_z|BC%N zWK+z2F`8J4w-&5N))IE+WkN9dJ#^?WcHw?Z<9S?*9gOM^UO_WBf-`Xfr{h;>MnB;) z{1wY_0i9N|9bHHl`n^8htl(gV3p3suKRAT`UoJQP)(}e2-!H@!SdCV62l5J;fp{?-KNv+PI2ij6qXUgcPvH#iKf`{!fHz_%WtfLg zqnW;d)p!`^;5X>+E};v^;(1X)owzeir- z2i~0E5}N6i*guEW4_(FSK^J_KjblP5u^B(da^?^D)XRaFL>tfnThWDeM!V64Y>D?f za4YwN=w|#8UC?DT^J%2J9*eL7`>+(BM-zM(GnRgwi$**iKllwD=uc#kA&=2rP$`;8 zH8MwNMkiW>_u(d-g>Rz^KaHNMPjMT5i9^`HmwItx7WFstQjUNVrf@DcA^R$9K%Z3_ zm*HNl#AE2f&Ld-n%jkmg`Ld^>9B;rBI!;@39Xd}h`n`eK)ZYs1p~DP^(2PdV{#VhG zzlH3l@E$tgM`$I^pp`p|CNh%^-~?spc(rH+TG8Kk#Qu%Zz6=+ZY&TNvFoOGV46Vdc z((swBMhAEbZ^LKMV|N_O@LP1EKhSZm#QPZx;zH)4{Z&|ot+7AT%Y_5&j2$CrW^ZB> z9>q4ih|95tL+*gvk*bG5oR0_M{V}uxXV8kA!&~rYbb%#I=BX-09ziC|=fV#v(PLGM zW?GLv({@Z@H(L5lQ26coNN>zX)B{9W$XTz_wOsDkQ^~6{gUILF?ro7L7zR zDiSgXBO&r88KD_f-|9Jk_v`a( z#ownha{u31{7iWczu{_L;LV&_@1M(g16Of2*YJAwRrQ1M5qDNE?qfP^;Z5AdOni`uIPHy9UamYwNh|L#{odz1o?$XE%Jlz<8+eh)Xp5I= zUu&x#x|kOmmd|UM@ zo6KL@JY+BK$S2^L9NKaSwU-3|#)59!yhsFu$ zao)pc*_QKn&O-+Nt@0A}DO1eCu2t6SorTP0>RY&n?aaq`n3|T8OynbcgrD{S!H*~yh0pgGG?y2?p6W0rHwY50yU9B0P4 zT$$Bno<^o!+d}zI20BzE!c|N}y-fZ6Ov)c-eqgpU1MXuoF~nqUm}e3F8;x^n=ilCRNA?mJym&t$-oek zkt6Kn+spz-nNu}JThLv8s9yZa9IFW?(n)4dudsvl(vj4!UNSPLVW?qRSNEHT=k0r= YY5U9v1`Z4!92nfQu61Nv)B0Ke0TMQxq5uE@ diff --git a/quiz/views.py b/quiz/views.py index 5e6819c..9ab5bfb 100644 --- a/quiz/views.py +++ b/quiz/views.py @@ -56,7 +56,7 @@ class CategoriesListView(ListView): class ViewQuizListByCategory(ListView): model = Quiz - template_name = 'view_quiz_category.html' + template_name = 'quiz/view_quiz_category.html' def dispatch(self, request, *args, **kwargs): self.category = get_object_or_404( @@ -80,7 +80,7 @@ class ViewQuizListByCategory(ListView): class QuizUserProgressView(TemplateView): - template_name = 'progress.html' + template_name = 'quiz/progress.html' @method_decorator(login_required) def dispatch(self, request, *args, **kwargs): @@ -134,14 +134,14 @@ class QuizMarkingDetail(QuizMarkerMixin, DetailView): class QuizTake(FormView): form_class = QuestionForm - template_name = 'question.html' + template_name = 'quiz/question.html' def dispatch(self, request, *args, **kwargs): - self.quiz = get_object_or_404(Quiz, url=self.kwargs['quiz_name']) + self.quiz = get_object_or_404(Quiz, url=kwargs['quiz_name']) if self.quiz.draft and not request.user.has_perm('quiz.change_quiz'): raise PermissionDenied - self.logged_in_user = self.request.user.is_authenticated() + self.logged_in_user = request.user.is_authenticated() if self.logged_in_user: self.sitting = Sitting.objects.user_sitting(request.user, @@ -150,7 +150,7 @@ class QuizTake(FormView): self.sitting = self.anon_load_sitting() if self.sitting is False: - return render(request, 'single_complete.html') + return render(request, 'quiz/single_complete.html') return super(QuizTake, self).dispatch(request, *args, **kwargs) @@ -242,7 +242,7 @@ class QuizTake(FormView): if self.quiz.exam_paper is False: self.sitting.delete() - return render(self.request, 'result.html', results) + return render(self.request, 'quiz/result.html', results) def anon_load_sitting(self): if self.quiz.single_attempt is True: @@ -351,7 +351,7 @@ class QuizTake(FormView): del self.request.session[self.quiz.anon_q_data()] - return render(self.request, 'result.html', results) + return render(self.request, 'quiz/result.html', results) def anon_session_score(session, to_add=0, possible=0): diff --git a/true_false/locale/fr/LC_MESSAGES/django.po b/true_false/locale/fr/LC_MESSAGES/django.po new file mode 100644 index 0000000..ad1a4f5 --- /dev/null +++ b/true_false/locale/fr/LC_MESSAGES/django.po @@ -0,0 +1,35 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-12-10 11:58+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1)\n" + +#: models.py:11 +msgid "Tick this if the question is true. Leave it blank for false." +msgstr "" + +#: models.py:14 +msgid "Correct" +msgstr "" + +#: models.py:42 +msgid "True/False Question" +msgstr "" + +#: models.py:43 +msgid "True/False Questions" +msgstr "" -- 2.39.5