From 4da230eeb0d4145bf152de230f9b253d8d767d0a Mon Sep 17 00:00:00 2001 From: yomguy Date: Sun, 7 Apr 2013 22:39:59 +0200 Subject: [PATCH] update and fix annals pages, locales --- teleforma/locale/fr/LC_MESSAGES/django.mo | Bin 7764 -> 7905 bytes teleforma/locale/fr/LC_MESSAGES/django.po | 28 ++++---- teleforma/static/teleforma/css/teleforma.css | 2 +- teleforma/templates/teleforma/annals.html | 8 ++- teleforma/templates/telemeta/base.html | 3 +- teleforma/urls.py | 6 +- teleforma/views/crfpa.py | 69 +++++++++++-------- 7 files changed, 63 insertions(+), 53 deletions(-) diff --git a/teleforma/locale/fr/LC_MESSAGES/django.mo b/teleforma/locale/fr/LC_MESSAGES/django.mo index a360c6c1665daa8e37b1b2ec72345d53999f8913..692ba725fc6d35199fc44a6aeca96ee961f744a5 100644 GIT binary patch delta 3661 zcmZXX2~5{z7{_1avH}#mI7%=TuTTQaAjk_%!H6)?G(u8T2vIpaK>LGQrg?;DW|jvu z=T_PjZRwU-rm54mrVVGC=j?DROS5b)>+|LR;M#ik|NcJDdp*zd9>3q)->_8?1d7RDh4I{wdV_BTxZOKpeYoq2^t&{_9W+ z_#L)|ccDM=U0^%sd}#=V>IjAWTqF-A(%0$<#$iw^%7F?z0V+_Q)r+9~l|uO|v-WD( zo_Y;bf_3UAzS|-L?tog^Zm3K@F@6EHvXfBbnjy)%i%@~DTl*c@hPoe7)E)@6fDTae zqM+vWfMGBZdOBi^w2nzonH58=Y(5+f7eP7v3d-SWs06<=UbXh?Pz(4ID&Soh3Ilmy zx(KLweWCm(g|h#0m`sB>6e`2fP?uzawHHEd`Anz)HGd`4Lh7LW zZnXXe$j|NMp>c~KVc&1?J(#(Wf;cV-e3m>9h1LbHl)Wk-p@gG60U=LK{`yuzweGaw7 z-&p^7sKl;9`M(Jj_%AO#&X)s|gJ7tRPEad|h6>!<`s0iPp#rBtjZcTVTv<>%k`Hw^ zilO{0fJ%HZR06A^7O)P6=>6Y-K{9ST)Pw_2fe#yxK?OPmIR)2j?bl$f53e88yg6J5 zu?p%7xdbZkA=n9?gj(oj<2Bgw{@=jRita#V-lmIp3qzsmU7<3MgL0T?9BloWP+L9` zD)H%1iIhMkUTN(fsBudnIlDUOk;Cm6EoTX}mHVO2>;#m9vrw1lGSv9*Auou#0TswE z+*=QZx&zTrD;)rp&>$#(sn(tW$%K_&Eu^#??F19ybl+3*N`|1o;epa27)R+bF;xlA6+b%n4Sd7yP+KJ zhq{DcLM7U4{XaqN;BUs;P-p!QRANCm6~mz}V-G0*o)ipaG6X6>22_A?#u-q7s-afA z3ToV1s55*I=EH4J3Hb0wgziLJsGSOh+Ui)S`2(R6Nr5EjaU-o^EL5O;sLbX-IhqG` zDQln-t+Vz`P%C^ND$s7LAB75V8YcP%Ef{ z+KEL_4pu`sY=la5C)B(>P<{?VeMyf(C2$V%fpl|`%1rb+dJR2^#_0T26f6xTqS2@b zEkx=afojn*)EgzBK}cl*%4)HkdkU^XE72OH???f96upDSBNg5Ldh`nFr3k4Q?Bu=j zl3APYwQ$S-W0#pd3eGoMyAW%34P0b)hOrgPF-p;_)&{Mx7_CNI(YvS->0+t8<%Nrf z1CX{?XEzi*f%IzCp(&^@8j0qhC8!(HF+Gg*5vxWj8&DORh6*O~Xf4SYv#nAH^U*Wt zc{Bm3bVnOoEa%>akD+x|?+-b0Hw>ktJ}9O>A}Gr9GFEFDi}5OowuWsm85)DNviDtcu$p{G@$l%p5W;?`R>mC6c~g!o#uls9=spvmYt zq>_X5f~sVC(eiwj=NndUZ>)foX8Xg(kzR#ItZfnu(?%}Eh_l8aumS1AuQJaIHv^`a z{h~1swlljGJus%DVAK{3udfT<6_hhFduU8~Mdj4O(u$_EkX+wRG1+CarWKVGx^d-& zWihk8m8R99dA`9(aq)v<5)x7pll#RdG~Mp_wNJTaKr=}yF`}paL1|<%bF=RX~ag1#uzH z)TF747!r&LN}Lff8bxEQny@sE{-HsAp0B6ge82a(^PF?fz3-dv`%#~d%zRsz`&gnp zjgC=mQ~FLG&4aR`LrPZb;8E~7I1;`Z{rh1T+RZQz9$k>qk+3k>6JjzIL+zXZ+rv_r zn^Go?j)Cz|1CzGVqiDy$iO$yKn_Ivk6@8c6zoKM95ldbF+Nw~ zKV477o!t(NbYXBAbZ4uf2J0ZPq-UXy8=`+ZJc9Pl=-&n1z@8Z23tjgUEQEi;uCN_Z znZ?wHijkcR-Ps5@8IFNES_w7y7&O4m!55;x0lI;0Fq>l7nf5NoFMZ9!bqApKo1ymp z?nM5rF+1K0pv zx4AR<_sm|RVS%0?p9}e=={%fQ1+{Y%)Zu*S zx~0JfGgLJE2=oXxMf)Y_g4d$GBlrPy-WO2EO;AS%p&R)v`kSHa|Al5CpLf(d(ha)7 zB4~f6FO@!2N}z@&K^Im)7tDn2;1X!$b0PO9T?aj?1u?z?8rUkRgH2Ee&jeqAu75q+ z+aVjsr1z-k_|urMC%6~t_(!Or1JKLV49!>`2ku=cgl3{YH1L7Y08WQ)U?gD*Lw8yetcA|s z2;I;YXh1K+_P+nys2K51sG$#oUqUA~K~w!ZG*hWZi@~Gv~Z$H%W zFTrNW9@1gx{H{ghzlh2J9tLtI)bK>;8BdA+SjuqSLPBLCFWKRo)w9`tIs9J;egI0sIHX67~Mj&?u;d@uM}^zVf_Y=SyG z0NHG6hWt`NuatVj66ldn$WU>?xln^sp_gwqG}7uAzYprTCb$-Q)*GOKZ4EX+FX48m zgWb?TzJl8S0c!UUbb}egaiA?Ub)Dc9uq)KzeCQom1kKDcXlm=A23~{)P!A1gTeNq= zY^tGwG(qj`gI>blA%SI5F8?|lD1aL10d;g-w9BCmCc$img0rE9s$zTrG?UAr8(9UN zzZN?031}wjWBg5+=llP547>~ZrH^=MU?0@+A?SzXui#;*BR`uSRXb?ly`dW^fo`A_ znxRS1Kq`VWpqZTu^L+oSsJO5inyLlR1sNy68t8&r=nm?j4z@toy#-D6JJ9*Np@Dx5 zwf8f00|%j*_!YXoO<#OyusanaEru>U9%`r*`pGPZ1~3KkAxyU;%k^kEx*v@~708nP z?7~ygIp`X+04+un&^>4wI??klrE)s5+=-@SYora1)R;-|M1G=%b173?BLYq+? zdKz)rvt?ay2s{N9dj6itS!e|EE4Lb1PC^sW&1fkqMjli4Lj~_fmPgTD=t^`kYAwU5 z+!T#@@G?}1W}%tLQaXUgiCx4>7{i^U6s9zdrd zK4;moif0j;jizOLQo0bfUpF?tOXdP<4@Pgt;H~hssQb2@f%4Fx=$ivOqkGZG$T9{! zg}U3I%x^)u8kR@>(%>bqprzg#WJ<@\n" "Language-Team: LANGUAGE \n" @@ -268,9 +268,8 @@ msgid "training" msgstr "formation" #: models/crfpa.py:139 -#, fuzzy msgid "CRFPA student" -msgstr "étudiant" +msgstr "Etudiant CRFPA" #: models/crfpa.py:147 templates/telemeta/profile_detail.html:82 msgid "Address" @@ -683,8 +682,8 @@ msgstr "" msgid "Write" msgstr "" -#: templates/teleforma/annals.html:6 templates/telemeta/base.html:102 -#: templates/telemeta/base.html.py:112 +#: templates/teleforma/annals.html:6 templates/teleforma/annals.html.py:54 +#: templates/telemeta/base.html:102 templates/telemeta/base.html.py:112 msgid "Annals" msgstr "Annales" @@ -694,13 +693,18 @@ msgstr "Annales" msgid "My courses" msgstr "Mes matières" -#: templates/teleforma/annals.html:67 +#: templates/teleforma/annals.html:49 +#: templates/teleforma/inc/document_list.html:36 +msgid "No document" +msgstr "Aucun document" + +#: templates/teleforma/annals.html:70 templates/teleforma/annals.html.py:72 #: templates/teleforma/inc/conference_list.html:18 #: templates/teleforma/inc/document_list.html:20 msgid "View" msgstr "Voir" -#: templates/teleforma/annals.html:68 templates/teleforma/course_media.html:63 +#: templates/teleforma/annals.html:75 templates/teleforma/course_media.html:63 #: templates/teleforma/inc/document_list.html:22 #: templates/teleforma/inc/media_list.html:56 msgid "Download" @@ -890,10 +894,6 @@ msgstr "Conférences en direct" msgid "Click here" msgstr "Cliquez ici" -#: templates/teleforma/inc/document_list.html:36 -msgid "No document" -msgstr "Aucun document" - #: templates/teleforma/inc/media_list.html:8 msgid "Passed conferences" msgstr "Conférences en différé" @@ -1007,9 +1007,8 @@ msgid "Sign in" msgstr "" #: templates/telemeta/profile_detail.html:6 -#, fuzzy msgid "User Profile" -msgstr "profil" +msgstr "Profil utilisateur" #: templates/telemeta/profile_detail.html:16 msgid "His courses" @@ -1020,9 +1019,8 @@ msgid "Send a message" msgstr "Envoyer un message" #: templates/telemeta/profile_detail.html:44 -#, fuzzy msgid "User profile" -msgstr "profil" +msgstr "Profil utilisateur" #: templates/telemeta/profile_detail.html:49 msgid "Change password" diff --git a/teleforma/static/teleforma/css/teleforma.css b/teleforma/static/teleforma/css/teleforma.css index c1bb42c6..74cd42c4 100644 --- a/teleforma/static/teleforma/css/teleforma.css +++ b/teleforma/static/teleforma/css/teleforma.css @@ -1471,7 +1471,7 @@ input,textarea{ .course_title { - color: #000; + color: #355ea2; -moz-border-radius: 8px 0px 0px 0px; -webkit-border-radius: 8px 0px 0px 0px; border-radius: 8px 0px 0px 0px; diff --git a/teleforma/templates/teleforma/annals.html b/teleforma/templates/teleforma/annals.html index fd385d25..1343b487 100644 --- a/teleforma/templates/teleforma/annals.html +++ b/teleforma/templates/teleforma/annals.html @@ -46,18 +46,20 @@
{% if not object_list.items %} - {% trans "No document" %} +
{% trans "No document" %}
{% else %} {% for course, iejs in object_list.items %} -
{{ course.title }}{% if auditor %} - {{ auditor.iej }}{% endif %}
+
{{ course.title }} - {% trans "Annals" %}
{% for iej, years in iejs.items %}
-

{{ iej }}

+ {% if not student %} +

{{ iej }}

+ {% endif %}
{% for year, docs in years.items %} diff --git a/teleforma/templates/telemeta/base.html b/teleforma/templates/telemeta/base.html index 94658d30..65574673 100644 --- a/teleforma/templates/telemeta/base.html +++ b/teleforma/templates/telemeta/base.html @@ -98,7 +98,8 @@ alt="logo" /> {% if user.is_staff %}
  • {% trans "Users" %}
  • - + {% else %} +
  • {% trans "Annals" %}
  • {% endif %} {% if user.is_authenticated %} diff --git a/teleforma/urls.py b/teleforma/urls.py index e4854065..d09d8bf8 100644 --- a/teleforma/urls.py +++ b/teleforma/urls.py @@ -72,9 +72,9 @@ urlpatterns = patterns('', url(r'^desk/documents/(?P.*)/view/$', document.view, name="teleforma-document-view"), - url(r'^desk/annals/$', AnnalsView.as_view(), name="teleforma-annals"), - url(r'^desk/annals/by-iej/(\w+)/$', AnnalsIEJView.as_view(), name="teleforma-annals-iej"), - url(r'^desk/annals/by-course/(\w+)/$', AnnalsCourseView.as_view(), name="teleforma-annals-course"), + url(r'^archives/annals/$', AnnalsView.as_view(), name="teleforma-annals"), + url(r'^archives/annals/by-iej/(\w+)/$', AnnalsIEJView.as_view(), name="teleforma-annals-iej"), + url(r'^archives/annals/by-course/(\w+)/$', AnnalsCourseView.as_view(), name="teleforma-annals-course"), url(r'^desk/conferences/(?P.*)/video/$', ConferenceView.as_view(), diff --git a/teleforma/views/crfpa.py b/teleforma/views/crfpa.py index e5559ac8..857534b3 100644 --- a/teleforma/views/crfpa.py +++ b/teleforma/views/crfpa.py @@ -298,44 +298,51 @@ class UsersXLSExport(object): return self.export(request) -def format_annals(docs): - annals = {} - for doc in docs: - if not doc.course in annals.keys(): - annals[doc.course] = {} - if not doc.iej in annals[doc.course].keys(): - annals[doc.course][doc.iej] = {} - if not doc.annal_year in annals[doc.course][doc.iej].keys(): - annals[doc.course][doc.iej][doc.annal_year] = [] - annals[doc.course][doc.iej][doc.annal_year].append(doc) - return annals - - class AnnalsView(ListView): model = Document template_name='teleforma/annals.html' + student = None - def get_queryset(self): - user = self.request.user - if user.is_staff or user.is_superuser or user.professor.all(): + def get_docs(self, iej=None, course=None): + students = self.user.crfpa_student.all() + annals = {} + courses = [c['course'] for c in self.all_courses] + + if self.user.is_staff or self.user.is_superuser or self.user.professor.all(): docs = Document.objects.filter(is_annal=True) - else: - auditors = user.auditor.all() - if auditors: - auditor = auditors[0] - docs = Document.objects.filter(is_annal=True, iej=auditor.iej) + elif students: + self.student = students[0] + docs = Document.objects.filter(is_annal=True, iej=self.student.iej) + if iej: + docs = docs.filter(iej=iej) + if course: + print course + docs = docs.filter(course=course) + + for doc in docs: + if doc.course in courses: + if not doc.course in annals.keys(): + annals[doc.course] = {} + if not doc.iej in annals[doc.course].keys(): + annals[doc.course][doc.iej] = {} + if not doc.annal_year in annals[doc.course][doc.iej].keys(): + annals[doc.course][doc.iej][doc.annal_year] = [] + annals[doc.course][doc.iej][doc.annal_year].append(doc) + return annals - return format_annals(docs) + def get_queryset(self): + self.user = self.request.user + self.all_courses = get_courses(self.request.user) + return self.get_docs() def get_context_data(self, **kwargs): user = self.request.user - auditors = user.auditor.all() context = super(AnnalsView, self).get_context_data(**kwargs) context['iejs'] = IEJ.objects.all() - context['iej'] = auditor.iej - all_courses = get_courses(self.request.user) - context['all_courses'] = all_courses + if self.student: + context['student'] = self.student + context['all_courses'] = self.all_courses return context @method_decorator(login_required) @@ -346,15 +353,17 @@ class AnnalsView(ListView): class AnnalsIEJView(AnnalsView): def get_queryset(self): + self.user = self.request.user + self.all_courses = get_courses(self.user) self.iej = IEJ.objects.filter(id=self.args[0]) - docs = Document.objects.filter(is_annal=True, iej=self.iej) - return format_annals(docs) + return self.get_docs(iej=self.iej) class AnnalsCourseView(AnnalsView): def get_queryset(self): + self.user = self.request.user + self.all_courses = get_courses(self.user) self.course = Course.objects.filter(id=self.args[0]) - docs = Document.objects.filter(is_annal=True, course=self.course) - return format_annals(docs) + return self.get_docs(course=self.course) -- 2.39.5