From 52af8f3380f59838e0bb5ff3aa1bfdc850faa1c4 Mon Sep 17 00:00:00 2001 From: bkfox Date: Mon, 12 Feb 2018 01:32:23 +0100 Subject: [PATCH] localisation --- aircox/locale/fr/LC_MESSAGES/django.mo | Bin 6703 -> 7157 bytes aircox/locale/fr/LC_MESSAGES/django.po | 185 ++++--- aircox_cms/locale/fr/LC_MESSAGES/django.mo | Bin 18303 -> 19109 bytes aircox_cms/locale/fr/LC_MESSAGES/django.po | 510 ++++++++++-------- aircox_cms/models/lists.py | 6 +- aircox_cms/models/sections.py | 14 +- .../templates/aircox_cms/program_page.html | 2 +- .../aircox_cms/sections/playlist.html | 4 +- 8 files changed, 389 insertions(+), 332 deletions(-) diff --git a/aircox/locale/fr/LC_MESSAGES/django.mo b/aircox/locale/fr/LC_MESSAGES/django.mo index f0687bff6e758578abd643620aaf1fc250071b1f..37855cc10792fc965eb986d02d9a6b2fa7a3f54b 100644 GIT binary patch delta 2900 zcmY+F3v5$W7{?F7UKO{oIoTMp3y3JAqupT40U|Ia!hpf%0|lXUcU#$dJKA0z385~A zL}VJV5F-yCIAT!ng~UXN5s8qHDA7bs#E3*q)DXoOP$Ncv|8ghs@*YyjYNHejZw#yY+jV+JY$;R64(x(gSjxvXUq_o4_RW0Awy<3EQ6yV zkD10x^BQ3xTmYxSvwJ$&&@G>lc|G+W$Hzh-jDS&lQhUUQ=VH1>r5R}7iI0mkT!{H8C z3J*d#{1Eb(GrT6kuV4V?-C)clSPx}y4aB!`VQLtaUMjl#G*k%RfEDmKya}F%UGNV$ z4z}eRqjitN%+*0{a39n`UiRAWz?*3wgF5+_5EJHGsEz-c&;4tMK2|Bz)1X2#2kNet zdHt)PHr5Gw%tnt}q1HVMZ-FmD89oWMp>t4?`VPw86{rml#+VM4S4jL75{nKQs)U+Y z1Jz#-WoRyxgZWSqh(Q_N35($&sCmbsPI?k5InO{j{K*@?2<7JzoC5z&Q3+6~A)YeO z23rRi6M+k8zgI*b^x;JdV^H(fd)x$d_q|Xj+6J}peNgicLFLjBI3J#dnqNYvav)Vf zC3AA9o!5Bn=}^ho0OfEVRAd%H{k~hhwga`!g_^e+>co#i+1=`mZ}-M`dE?K+P5S-s zr=p2txOh330JXCql;Igr@n`I_WQ&4r6}vm_t0}xEyN1Sg4aXLEUXTl%rlqLYqEV33tPp@D!|qIV6e>RO@jz zY$HJ6C)vuuV`W+zRz2dlFW_qmaj(<)shMWvFD! z#hcdU!?Ca&s(&Vwow-nc=0p7omcnMZx19KEhdRmc`12hp7g-6FUKX|5bs zqp2v2?nNqc*q*6fd+FMg3o6>!9Hfn^EY?f+KOQ}RrlWdvH&W5gb^2LInfo9bC`+j* zYRa!hQgHw<)U1c@WzhwMVU}TZjYwc1gwM|jyY`!wd@Uc*iEvw)3!Py>ukpgg_Dt(Q{_wlnR~IYB^kFvQ9Eu$ zV@@O)i>H6c+npP8+Pfp+Wa4nI&mNNgCciu{2-f<8 z0Uj$@TOSBi2C98cp+wT(8V@;%?hqTPw`PUn8xwRp9d4+@_P4T6Iy2tJbF}|vQfJ7U znD!0(ylo(M%`rD_wb=U1uE=rI+sgX?1q?`GApigX delta 2496 zcmYk+e@xVM9LMnwf{-A;@dsM^6@^qh1cIoOz*CMNdT@Avre$`@ffUL@tc_Y%Y~^xh zt&6eL)tdU3BMZi+EmB*q&9ybRW?LI+t)-3iOKU4<*7J4uVdJxV-{bT7em~#O_w#vw zK6igroGuH0mz6MRD4oQ;L~Fb;ui>FYz9=8wV~h_!LO$j$UkR8r%NV+v*~rIa@Rf@T zFd55G{i-noYp?>_FbQABnZ|_8AQcUK6#1AFeCfdtkPc=PHJ7v2^SFTa7q$eV|20n-j@eS09PoessM#eT{$j6+s z?MtWyeT{Q)0`u?|rsLd{*f<54!~4xjD%>;Gs26TPJ>bWA*o*V=AnJw3aW)R)D*PCW z@j9-?`P|fa^~fdDf|e^zOQ@B+ zV%vjwAMGQkm7hUA<^o@u_*bY2-autIH!YT#C28!x_N0Ofx>1FiSuN@XTdbY-{&TpD z>tWQuCr}d_M`h|W)Og>b7W6%8+`sL04XVr}p`Oc1C;u979v8IYO4L9*F&q0)D>{ri zbVI02jGzWMgXK7mTH!5weHp8GD$bY{xRL8`lYdR*8tS;;CsPq+yc&E6NS#r`^LsA~l(Iuly8GVls88Rdi^kmrXR9h&IAY>?BkI#1ljw@i0+BJVNL! zsgw~xVk@zWc$`>4R1-R=k7<3|sca@xbl9eshG~sQsq0subE2PDv_u+bZHmlHo{Yq$ z92q^CvMV9e>FIF#c88qyu8xlV`?`AeMpkAVjaMAL7O3K~krG>>M#l^|Zepev$Y?mH))dc%OZfC346L2;9T{Rx3-tTT~ zDBR|6@+SL&`}$n1y}`Zvx`TZ^y>6$r&F6EPJdIwb(%a~1@U8XK)C9aOEmd^g+qpm3 z8FICTf_vPK&(l=brkPYG`+RG=yNY^xJF6nDtclT{?8Lapi#ZoY>*xHNkm0n4obKSX R)pRd77D-!J83`;r{y#{R{Tu)Q diff --git a/aircox/locale/fr/LC_MESSAGES/django.po b/aircox/locale/fr/LC_MESSAGES/django.po index 938ebfa..14f9ef0 100755 --- a/aircox/locale/fr/LC_MESSAGES/django.po +++ b/aircox/locale/fr/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Aircox 0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-14 15:52+0100\n" +"POT-Creation-Date: 2018-02-12 00:34+0100\n" "PO-Revision-Date: 2016-10-10 16:00+02\n" "Last-Translator: Aarys\n" "Language-Team: Aircox's translators team\n" @@ -18,15 +18,15 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: aircox/admin.py:81 aircox/models.py:737 +#: aircox/admin.py:81 aircox/models.py:746 msgid "Schedule" msgstr "Horaire" #: aircox/admin.py:110 msgid "start" -msgstr "" +msgstr "début" -#: aircox/admin.py:114 aircox/models.py:452 aircox/models.py:1475 +#: aircox/admin.py:114 aircox/models.py:457 aircox/models.py:1487 msgid "end" msgstr "fin" @@ -42,27 +42,27 @@ msgstr "Jour" msgid "Rerun" msgstr "Rediffusion" -#: aircox/models.py:83 +#: aircox/models.py:86 msgid "name" msgstr "nom" -#: aircox/models.py:115 +#: aircox/models.py:118 msgid "title" msgstr "titre" -#: aircox/models.py:119 +#: aircox/models.py:122 msgid "artist" msgstr "artiste" -#: aircox/models.py:123 +#: aircox/models.py:126 msgid "tags" msgstr "tags" -#: aircox/models.py:127 +#: aircox/models.py:130 msgid "information" msgstr "information" -#: aircox/models.py:130 +#: aircox/models.py:133 msgid "" "additional informations about this track, such as the version, if is it a " "remix, features, etc." @@ -70,282 +70,290 @@ msgstr "" "informations additionnelles à propos de ce morceau, telles que la version, " "s'ils'agit d'un remix, les fonctionnalités, etc" -#: aircox/models.py:135 +#: aircox/models.py:138 msgid "position in the playlist" msgstr "position dans la playlist" -#: aircox/models.py:138 +#: aircox/models.py:141 msgid "in seconds" msgstr "en secondes" -#: aircox/models.py:140 +#: aircox/models.py:143 msgid "position in the playlist is expressed in seconds" msgstr "position dans la playlist exprimée en secondes" -#: aircox/models.py:147 aircox/models.py:1501 +#: aircox/models.py:150 aircox/models.py:1513 #: aircox/templates/aircox/controllers/stats.html:58 msgid "Track" msgstr "Morceau" -#: aircox/models.py:148 +#: aircox/models.py:151 msgid "Tracks" msgstr "Morceaux" -#: aircox/models.py:163 +#: aircox/models.py:166 msgid "path" msgstr "chemin" -#: aircox/models.py:164 +#: aircox/models.py:167 msgid "path to the working directory" msgstr "chemin vers le repertoire courant" -#: aircox/models.py:169 +#: aircox/models.py:172 #, fuzzy #| msgid "station" msgid "default station" msgstr "station par défaut" -#: aircox/models.py:171 +#: aircox/models.py:174 msgid "if checked, this station is used as the main one" msgstr "si coché, cette station est utilisée comme station principale" -#: aircox/models.py:332 aircox/models.py:1222 aircox/models.py:1457 +#: aircox/models.py:335 aircox/models.py:1232 aircox/models.py:1468 msgid "station" msgstr "station" -#: aircox/models.py:335 aircox/models.py:1234 +#: aircox/models.py:339 aircox/models.py:1245 msgid "active" msgstr "actif" -#: aircox/models.py:337 +#: aircox/models.py:341 msgid "if not checked this program is no longer active" msgstr "si selectionné, ce programme n'est plus actif" -#: aircox/models.py:340 +#: aircox/models.py:344 msgid "syncronise" msgstr "synchroniser" -#: aircox/models.py:342 +#: aircox/models.py:346 msgid "update later diffusions according to schedule changes" msgstr "" "mettre à jour les diffusions suivantes selon les changements de l'horaire" -#: aircox/models.py:438 aircox/models.py:483 +#: aircox/models.py:442 aircox/models.py:488 msgid "related program" msgstr "programme apparenté" -#: aircox/models.py:441 +#: aircox/models.py:446 msgid "delay" msgstr "délai" -#: aircox/models.py:443 +#: aircox/models.py:448 msgid "minimal delay between two sound plays" msgstr "délai minimum entre deux sons" -#: aircox/models.py:446 +#: aircox/models.py:451 msgid "begin" msgstr "début" -#: aircox/models.py:448 aircox/models.py:454 +#: aircox/models.py:453 aircox/models.py:459 msgid "used to define a time range this stream isplayed" msgstr "" "utilisé pour définir un intervalle de temps pendant lequel ce stream est joué" -#: aircox/models.py:486 aircox/models.py:1469 +#: aircox/models.py:492 +msgid "time" +msgstr "heure" + +#: aircox/models.py:494 +msgid "start time" +msgstr "heure de début" + +#: aircox/models.py:497 aircox/models.py:1481 msgid "date" msgstr "date" -#: aircox/models.py:487 +#: aircox/models.py:499 msgid "date of the first diffusion" msgstr "date de la première diffusion" -#: aircox/models.py:490 +#: aircox/models.py:502 msgid "timezone" msgstr "zone horaire" -#: aircox/models.py:492 +#: aircox/models.py:505 msgid "timezone used for the date" msgstr "zone horaire utilisée pour la date" -#: aircox/models.py:495 aircox/models.py:1036 +#: aircox/models.py:508 aircox/models.py:1046 msgid "duration" msgstr "durée" -#: aircox/models.py:496 +#: aircox/models.py:509 msgid "regular duration" msgstr "durée normale" -#: aircox/models.py:499 +#: aircox/models.py:512 msgid "frequency" msgstr "fréquence" -#: aircox/models.py:502 +#: aircox/models.py:515 msgid "ponctual" msgstr "ponctuel" -#: aircox/models.py:503 +#: aircox/models.py:516 msgid "first week of the month" msgstr "première semaine du mois" -#: aircox/models.py:504 +#: aircox/models.py:517 msgid "second week of the month" msgstr "deuxième semaine du mois" -#: aircox/models.py:505 +#: aircox/models.py:518 msgid "third week of the month" msgstr "troisième semaine du mois" -#: aircox/models.py:506 +#: aircox/models.py:519 msgid "fourth week of the month" msgstr "quatrième semaine du mois" -#: aircox/models.py:507 +#: aircox/models.py:520 msgid "last week of the month" msgstr "dernière semaine du mois" -#: aircox/models.py:508 +#: aircox/models.py:521 msgid "first and third weeks of the month" msgstr "première et troisième semaines du mois" -#: aircox/models.py:509 +#: aircox/models.py:522 msgid "second and fourth weeks of the month" msgstr "deuxième et quatrième semaines du mois" -#: aircox/models.py:510 +#: aircox/models.py:523 msgid "every week" msgstr "toutes les semaines" -#: aircox/models.py:511 +#: aircox/models.py:524 msgid "one week on two" msgstr "une semaine sur deux" -#: aircox/models.py:517 +#: aircox/models.py:530 msgid "initial schedule" msgstr "horaire initial" -#: aircox/models.py:738 +#: aircox/models.py:747 msgid "Schedules" msgstr "Horaires" -#: aircox/models.py:832 aircox/models.py:1004 +#: aircox/models.py:841 aircox/models.py:1011 msgid "program" msgstr "programme" -#: aircox/models.py:836 aircox/models.py:1016 aircox/models.py:1229 -#: aircox/models.py:1451 +#: aircox/models.py:846 aircox/models.py:1024 aircox/models.py:1240 +#: aircox/models.py:1462 msgid "type" msgstr "type" -#: aircox/models.py:841 +#: aircox/models.py:851 msgid "initial diffusion" msgstr "diffusion initiale" -#: aircox/models.py:844 +#: aircox/models.py:854 msgid "the diffusion is a rerun of this one" msgstr "la diffusion est une rediffusion de celle-ci" -#: aircox/models.py:855 aircox/models.py:857 +#: aircox/models.py:865 aircox/models.py:867 msgid "conflicts" -msgstr "" +msgstr "conflits" -#: aircox/models.py:860 +#: aircox/models.py:870 msgid "start of the diffusion" msgstr "début de la diffusion" -#: aircox/models.py:861 +#: aircox/models.py:871 msgid "end of the diffusion" msgstr "fin de la diffusion" -#: aircox/models.py:983 aircox/models.py:1487 aircox/views.py:220 +#: aircox/models.py:990 aircox/models.py:1499 aircox/views.py:220 msgid "Diffusion" msgstr "Diffusion" -#: aircox/models.py:984 aircox/templates/aircox/controllers/monitor.html:151 +#: aircox/models.py:991 aircox/templates/aircox/controllers/monitor.html:151 msgid "Diffusions" msgstr "Diffusions" -#: aircox/models.py:987 +#: aircox/models.py:994 msgid "edit the diffusion's planification" msgstr "éditer la planification de la diffusion" -#: aircox/models.py:1006 +#: aircox/models.py:1014 msgid "program related to it" msgstr "programme apparenté à celui-ci" -#: aircox/models.py:1010 +#: aircox/models.py:1018 msgid "diffusion" msgstr "diffusion" -#: aircox/models.py:1013 +#: aircox/models.py:1021 msgid "initial diffusion related it" msgstr "diffusion initiale apparentée" -#: aircox/models.py:1021 +#: aircox/models.py:1031 msgid "file" msgstr "fichier" -#: aircox/models.py:1031 +#: aircox/models.py:1041 msgid "embed HTML code" msgstr "code HTML intégré" -#: aircox/models.py:1033 +#: aircox/models.py:1043 msgid "HTML code used to embed a sound from external plateform" msgstr "" "code HTML utilisé pour intégrer un son depuis une plateforme extérieure" -#: aircox/models.py:1038 +#: aircox/models.py:1048 msgid "duration of the sound" msgstr "durée du son" -#: aircox/models.py:1041 +#: aircox/models.py:1051 msgid "modification time" msgstr "temps de la modification" -#: aircox/models.py:1043 +#: aircox/models.py:1053 msgid "last modification date and time" msgstr "date et heure de la dernière modification" -#: aircox/models.py:1046 +#: aircox/models.py:1056 msgid "good quality" msgstr "bonne qualité" -#: aircox/models.py:1047 +#: aircox/models.py:1057 msgid "sound's quality is okay" msgstr "la qualité du son est okay" -#: aircox/models.py:1051 +#: aircox/models.py:1061 msgid "public" msgstr "public" -#: aircox/models.py:1053 +#: aircox/models.py:1063 msgid "the sound is accessible to the public" msgstr "ce son est accessible au public" -#: aircox/models.py:1113 +#: aircox/models.py:1123 msgid "unknown" -msgstr "" +msgstr "inconnu" -#: aircox/models.py:1189 aircox/models.py:1494 +#: aircox/models.py:1199 aircox/models.py:1506 msgid "Sound" msgstr "Son" -#: aircox/models.py:1190 +#: aircox/models.py:1200 msgid "Sounds" msgstr "Sons" -#: aircox/models.py:1225 +#: aircox/models.py:1236 msgid "direction" msgstr "direction" -#: aircox/models.py:1236 +#: aircox/models.py:1247 msgid "this port is active" msgstr "ce port est actif" -#: aircox/models.py:1239 +#: aircox/models.py:1250 msgid "port settings" msgstr "paramètres du port" -#: aircox/models.py:1240 +#: aircox/models.py:1251 msgid "" "list of comma separated params available; this is put in the output config " "file as raw code; plugin related" @@ -353,28 +361,26 @@ msgstr "" "liste des paramètres disponibles séparés par des virgules; placé dans le " "fichier de configuration en tant que code brut; relatif au plugin utilisé" -#: aircox/models.py:1458 +#: aircox/models.py:1470 msgid "related station" msgstr "station relative" -#: aircox/models.py:1463 +#: aircox/models.py:1475 msgid "source" msgstr "source" -#: aircox/models.py:1465 +#: aircox/models.py:1477 msgid "identifier of the source related to this log" msgstr "identifiant de la source relative à ce log" -#: aircox/models.py:1480 +#: aircox/models.py:1492 msgid "comment" msgstr "commentaire" #: aircox/templates/aircox/controllers/monitor.html:6 #: aircox/templates/aircox/controllers/monitor.html:112 -#, fuzzy -#| msgid "Streamer Monitor" msgid "Streamer monitor" -msgstr "Moniteur de stream" +msgstr "Streamer" #: aircox/templates/aircox/controllers/monitor.html:115 msgid "refresh" @@ -432,6 +438,9 @@ msgid "" "execute the given action.\n" " " msgstr "" +"\n" +" *: Pour des raisons technique, cela peut prendre 30 secondes ou plus " +"pour exécuter une action." #: aircox/templates/aircox/controllers/stats.html:9 #: aircox/templates/aircox/controllers/stats.html:14 diff --git a/aircox_cms/locale/fr/LC_MESSAGES/django.mo b/aircox_cms/locale/fr/LC_MESSAGES/django.mo index 8ee32495a2aa3b711f09d374e487ee8f9237f3ab..35f8867dc8b5c01e9c4b0776acfcd007c5e80728 100644 GIT binary patch delta 6251 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 QTi$j*?@xU2q*<;03qmcy6951J delta 5481 zcmZwK33OD|0mkt=A+nhOAps;L@B)MovS0#3!j`a_V8FV8E8@V6Nidm-vp`UATvTlVFS_e) z*H5>*q8|-Rz1whfksOlM%a{o+W77KRsxj{kG^P%ZVK(Mx8dHWdur~%V4X?v2T#r3* zJNChL>tm?`VJ*A%%P{T!|XVTGS6?s2*>#K4h=&L;jg3_)td< z+3Uwp9qB^-?hE9f`HBw>pyyy?PR9W_1aq)I?VE`d#^D@P!vR#q5mZI%taqX++J>6q zomhl>Q8V~1YDPZCVfa0&1A}NyGg^dN;%ek8b2&!UV2FY$TxGohHIj9xDZ2wlU>iF4 z6sjZdpc?E#{r+oIN4`gOpwAghH|C>$-+To=!|{xv$&pu}_TN0~ z#i)wwQERsn)!?nD4&H|9@D|j7wpn*zC+E9R_pM+DCpIfqbG|;C`PWF^;DUbm2UJ7v zp*r+eRD-=3jv5$*>R2vnN{ev-&OqIF9_qd&sQT(r^);i`ehq3#H{c|^D@s8lIgHxf zov5CEfK~Ws)EbUp;nYz#YU-+SA}+_dxC1@-8M?71*O+o#gQd71W7vgfVu;b{`)E4_ z-Eh=i=*dE<=aX?PR--!9fa+i~mS8JR!H4blAET!BbJR?HgSy}4Buzujz!22HM&Xru z{+Cji&V>$)perxgft9GIU=6ARci>cP!_nA@nwfv1mg4l0$r&19EyOuopMct9t*DXj zK+Sk34%PF2l!8Wl0t@jwRD*e=l50H%r*ZB^-4{fC--=qxHK-AbdIYVg;$qZHxl#Ampr-mf z)P0LlBVLaDGuQB;4%~xLReXekD)jspFHTqee0qwRFQ#Q|U(CUx(`Gxu|+CMc(elXRlw6+MMf=-$zXw z1&w?kj>7}?hA&W4`3kXwu!`=bx_y9n|QGMkZ?sCg7MV~5ef zPcTQ%e=0jl73QHvFb=hL<544>WUp7D!})CFEo!`|j@^V>qAjT3wWCJ34|&ARv-mUo z0M((Q^5h?%IxL`lvx$O69!FLD5oX{Is0R8?NUm`%YJ`=TjaUT;M$ zK@|Uj8&Lyn<`0MJ4`Os7gJ8Y5`t$iVYH2e0)2SC$1rEkVs17!x8eEN+;YKXP&yj6l22hFWkItbml)`+}h_6EK zF-@ou@5L;99M8d5QTJssd^r^L^o&3)%~;eDPQ@}@fZAJ8)Mng(s;>=ewOV^9=m%e8 zE~d^%F3CvbWoWKI^>h>JhcWcxZqz1BXM?B%!%-tIKy_>qYGBh)^)Etoqyc&KO%Q9f zTXs@#xNsabh3RYrRXiFsRc=%V8c`j%2DR(gqGo6Zo`vnGhX0P5`V*)Q{e&ghZ+3ET zO~bLAhcJ)!&3zO`<4dTXeS(WHYfiF5SEDMv347prWM7)w(1)+1Mp!&I*>Dx+a6TUg zy68AIalV>fY9N0@J%%SRsvn-Dpo;s~B&RGBhjU(ndd%h{^_cs~VWQr5lKn(eA15!7 z?nBF{4%|*6q>&sUI<6q9Q+weat$&O{_wic_Z`c!UwqFp3Ttd2!3v59n(6Np@lPD#Z z=@5mC8PxPwQlW;b9ku(rD=^%OnbUcwH@p%=W zDdZNSeRBt4&uMbajpS0I=hJY5EkBKa zB6@XK+iROJjSR5oi*W)eCZow};wL&5lB>x)wO>cNk1&M;nX$7uiF8PM#tAXcGYPvrmYtc^FX9h3HaYoYeSU9Ys5n-Y*%~{XIX706)f_Jx zlLF9(FAT{^sazTitPJ^rjyK>7IsQP{2}N330>Q8oZtywNmIb`NDo@1Q z7??IbQFeSyzGk04TpD|8XlQ`f>x2V|J6oDOt9-%Otn7L5m$NT+<@!BKn|zMP?{&P5 zp+q^<=&$EeGd0Er=bYKQ#Z&Kd!mC_0E)Ys4$azcTK-y5Gl zrXnSNa_lfye9XAIl=O;{vhtF$iB6e&in~01eQ~O5h}Xv?g~Fa-xG>~&JkUL3vF#-* zV@0Ls#P*g3pfv#B5rr@Yw!f?lZ(VGK0EzES7u97B; 0, sets a maximum width for the image" msgstr "si actif et > 0, fixe une largeur maximum pour l'image" -#: aircox_cms/sections.py:790 +#: aircox_cms/models/sections.py:249 msgid "height" msgstr "hauteur" -#: aircox_cms/sections.py:792 +#: aircox_cms/models/sections.py:251 msgid "if set 0 and > 0, sets a maximum height for the image" msgstr "si actif et > 0, fixe une hauteur maximum pour l'image" -#: aircox_cms/sections.py:795 +#: aircox_cms/models/sections.py:254 msgid "resize mode" msgstr "mode de redimensionnement" -#: aircox_cms/sections.py:798 +#: aircox_cms/models/sections.py:257 msgid "if the image is resized, set the resizing mode" msgstr "si l'image est redimensionnée, fixer le mode de redimensionnement" -#: aircox_cms/sections.py:807 +#: aircox_cms/models/sections.py:266 msgid "Resizing" msgstr "Redimensionner" -#: aircox_cms/sections.py:900 +#: aircox_cms/models/sections.py:325 +msgid "Links" +msgstr "Liens" + +#: aircox_cms/models/sections.py:361 msgid "text of the url" msgstr "texte de l'url" -#: aircox_cms/sections.py:903 +#: aircox_cms/models/sections.py:364 msgid "" "use this text to display an URL to the complete list. If empty, no link is " "displayed" @@ -688,92 +693,118 @@ msgstr "" "utiliser ce texte pour afficher un URL dans la liste complète. Si vide " "aucune adresse est affichée." -#: aircox_cms/sections.py:944 +#: aircox_cms/models/sections.py:407 msgid "(required) the station on which the logs happened" msgstr "(requis) la station sur laquelle les logs se sont produits" -#: aircox_cms/sections.py:949 +#: aircox_cms/models/sections.py:412 msgid "number of items to display in the list (max 100)" msgstr "nombre d'objets à afficher dans la liste (max 100)" -#: aircox_cms/sections.py:953 +#: aircox_cms/models/sections.py:416 msgid "list of logs" msgstr "liste des logs" -#: aircox_cms/sections.py:954 +#: aircox_cms/models/sections.py:417 msgid "lists of logs" msgstr "listes des logs" -#: aircox_cms/sections.py:995 +#: aircox_cms/models/sections.py:459 msgid "Section: Timetable" msgstr "Section: Grille horaire" -#: aircox_cms/sections.py:996 +#: aircox_cms/models/sections.py:460 msgid "Sections: Timetable" msgstr "Sections: Grilles horaire" -#: aircox_cms/sections.py:1005 +#: aircox_cms/models/sections.py:469 msgid "timetable page" msgstr "Page de Grille horaire" -#: aircox_cms/sections.py:1007 +#: aircox_cms/models/sections.py:471 msgid "select a timetable page used to show complete timetable" msgstr "" "sélectionner une page de grille horaire pour afficher l'horaire complet" -#: aircox_cms/sections.py:1010 +#: aircox_cms/models/sections.py:474 msgid "show date navigation" msgstr "afficher les dates de navigation" -#: aircox_cms/sections.py:1012 +#: aircox_cms/models/sections.py:476 msgid "if checked, navigation dates will be shown" msgstr "si coché, les dates de navigation sont affichées" -#: aircox_cms/sections.py:1046 +#: aircox_cms/models/sections.py:511 msgid "Section: publication's info" msgstr "Section: info de la publication" -#: aircox_cms/sections.py:1047 +#: aircox_cms/models/sections.py:512 msgid "Sections: publication's info" msgstr "Sections: info de la publication" -#: aircox_cms/sections.py:1052 +#: aircox_cms/models/sections.py:518 msgid "default text" msgstr "texte par défaut" -#: aircox_cms/sections.py:1054 +#: aircox_cms/models/sections.py:520 msgid "search" msgstr "recherche" -#: aircox_cms/sections.py:1055 +#: aircox_cms/models/sections.py:521 msgid "text to display when the search field is empty" msgstr "texte à afficher quand le champ de recherche est vide" -#: aircox_cms/sections.py:1059 +#: aircox_cms/models/sections.py:525 msgid "Section: search field" msgstr "Section: champ de recherche" -#: aircox_cms/sections.py:1060 +#: aircox_cms/models/sections.py:526 msgid "Sections: search field" msgstr "Sections: champ de recherche" -#: aircox_cms/sections.py:1070 +#: aircox_cms/models/sections.py:567 +msgid "user playlist" +msgstr "playlist utilisateur/ice" + +#: aircox_cms/models/sections.py:570 +msgid "" +"this is a user playlist, it can be edited and saved by the " +"users (the modifications will NOT be registered on the server)" +msgstr "" +"il s'agit d'une playlist utilisateur/ices qu'ils/elles peuvent éditer " +" et enregistrer (les modifications ne seront PAS enregistrées sur le serveur)" + +#: aircox_cms/models/sections.py:574 +msgid "read all" +msgstr "tout lire" + +#: aircox_cms/models/sections.py:577 +msgid "by default at the end of the sound play the next one" +msgstr "par défault à la fin d'un son, jouer le suivant" + +#: aircox_cms/models/sections.py:622 msgid "live title" msgstr "titre du direct" -#: aircox_cms/sections.py:1072 +#: aircox_cms/models/sections.py:624 msgid "text to display when it plays live" msgstr "texte à afficher quand le direct est activé" -#: aircox_cms/sections.py:1075 +#: aircox_cms/models/sections.py:627 msgid "audio streams" msgstr "streams audio" -#: aircox_cms/sections.py:1076 +#: aircox_cms/models/sections.py:628 msgid "one audio stream per line" msgstr "un stream audio par ligne" -#: aircox_cms/sections.py:1080 +#: aircox_cms/models/sections.py:633 +#, fuzzy +#| msgid "text to display when it plays live" +msgid "icon to display in the player" +msgstr "texte à afficher quand le direct est activé" + +#: aircox_cms/models/sections.py:637 msgid "Section: Player" msgstr "Section: Player" @@ -819,18 +850,14 @@ msgstr "Précédemment on air" msgid "{program.name} is a program on {station.name}." msgstr "{program.name} est un programme sur {station.name}" -#: aircox_cms/templates/aircox_cms/diffusion_page.html:8 +#: aircox_cms/templates/aircox_cms/diffusion_page.html:9 msgid "Playlist" msgstr "Playlist" -#: aircox_cms/templates/aircox_cms/diffusion_page.html:23 +#: aircox_cms/templates/aircox_cms/diffusion_page.html:24 msgid "Dates of diffusion" msgstr "Dates de diffusion" -#: aircox_cms/templates/aircox_cms/diffusion_page.html:38 -msgid "Podcasts" -msgstr "Podcasts" - #: aircox_cms/templates/aircox_cms/dynamic_list_page.html:14 #, python-format msgid "Search in publications for %(terms)s" @@ -870,48 +897,58 @@ msgstr "Prix" msgid "Schedule" msgstr "Horaire" -#: aircox_cms/templates/aircox_cms/program_page.html:18 +#: aircox_cms/templates/aircox_cms/program_page.html:19 #, python-format msgid "" -"%(day)s at %(start)s until %(end)s, %(frequency)s" +"Diffusion on %(day)s at %(start_hour)s hours %(start_minute)s, " +"%(frequency)s, and last for %(duration_hour)s hours and %(duration_minute)s " +"minutes" msgstr "" -"%(day)s de %(start)s à %(end)s, %(frequency)s" +"Diffusion le %(day)s à %(start_hour)s heures %(start_minute)s, " +"%(frequency)s, et dure %(duration_hour)s heures et %(duration_minute)s " #: aircox_cms/templates/aircox_cms/program_page.html:24 +msgid "" +"%(day)s at %(start)s (%(duration)s), %(frequency)s" +msgstr "" +"%(day)s à %(start)s (%(duration)s), %(frequency)s" + +#: aircox_cms/templates/aircox_cms/program_page.html:28 msgid "Rerun" msgstr "Rediffusion" -#: aircox_cms/templates/aircox_cms/program_page.html:30 +#: aircox_cms/templates/aircox_cms/program_page.html:37 msgid "This program is no longer active" msgstr "Ce programme n'est plus actif" -#: aircox_cms/templates/aircox_cms/sections/section_publication_info.html:14 -#: aircox_cms/templates/aircox_cms/sections/section_publication_info.html:15 +#: aircox_cms/templates/aircox_cms/sections/publication_info.html:14 +#: aircox_cms/templates/aircox_cms/sections/publication_info.html:15 msgid "Parent pages" msgstr "Pages parentes" -#: aircox_cms/templates/aircox_cms/sections/section_publication_info.html:31 -#: aircox_cms/templates/aircox_cms/sections/section_publication_info.html:32 +#: aircox_cms/templates/aircox_cms/sections/publication_info.html:31 +#: aircox_cms/templates/aircox_cms/sections/publication_info.html:32 msgid "Tags" msgstr "Tags" -#: aircox_cms/templates/aircox_cms/sections/section_publication_info.html:49 -#: aircox_cms/templates/aircox_cms/sections/section_publication_info.html:50 +#: aircox_cms/templates/aircox_cms/sections/publication_info.html:49 +#: aircox_cms/templates/aircox_cms/sections/publication_info.html:50 msgid "Author" msgstr "Auteur" -#: aircox_cms/templates/aircox_cms/sections/section_publication_info.html:52 +#: aircox_cms/templates/aircox_cms/sections/publication_info.html:52 #, python-format msgid "Published by %(author)s" msgstr "Publié par %(author)s" -#: aircox_cms/templates/aircox_cms/sections/section_publication_info.html:62 -#: aircox_cms/templates/aircox_cms/sections/section_publication_info.html:63 +#: aircox_cms/templates/aircox_cms/sections/publication_info.html:62 +#: aircox_cms/templates/aircox_cms/sections/publication_info.html:63 msgid "Date of publication" msgstr "Date de publication" -#: aircox_cms/templates/aircox_cms/sections/section_publication_info.html:72 -#: aircox_cms/templates/aircox_cms/sections/section_publication_info.html:73 +#: aircox_cms/templates/aircox_cms/sections/publication_info.html:72 +#: aircox_cms/templates/aircox_cms/sections/publication_info.html:73 msgid "Share" msgstr "Partager" @@ -948,42 +985,35 @@ msgstr "page précédente" msgid "next page" msgstr "page suivante" -#: aircox_cms/templates/aircox_cms/snippets/player.html:5 -msgid "Your browser does not support the audio element." -msgstr "Votre navigateur ne supporte pas l'élément audio" - -#: aircox_cms/templates/aircox_cms/snippets/player.html:16 -msgid "play" -msgstr "jouer" - -#: aircox_cms/templates/aircox_cms/snippets/player.html:18 -msgid "pause" -msgstr "pause" - -#: aircox_cms/templates/aircox_cms/snippets/player.html:20 -msgid "loading..." -msgstr "chargement..." - -#: aircox_cms/templates/aircox_cms/snippets/player.html:32 -msgid "add to the player" -msgstr "ajouter au player" - -#: aircox_cms/templates/aircox_cms/snippets/player.html:33 -msgid "more informations" -msgstr "plus d'informations" - -#: aircox_cms/templates/aircox_cms/snippets/player.html:34 -msgid "remove this sound" -msgstr "enlever ce son" - -#: aircox_cms/templates/aircox_cms/snippets/player.html:47 -msgid "enable and disable single mode" -msgstr "activer et désactiver le mode solo" - #: aircox_cms/templates/aircox_cms/snippets/sound_list_item.html:39 msgid "add this sound to the playlist" msgstr "ajouter ce son à la playlist" +#: aircox_cms/templates/aircox_cms/vues/player.html:21 +msgid "Click to pause" +msgstr "Cliquer pour mettre sur pause" + +#: aircox_cms/templates/aircox_cms/vues/player.html:25 +msgid "Loading... Click to pause" +msgstr "Chargement... Cliquer pour mettre sur pause" + +#: aircox_cms/templates/aircox_cms/vues/player.html:29 +msgid "Click to play" +msgstr "Cliquer pour jouer" + +#: aircox_cms/templates/aircox_cms/vues/player.html:54 +msgid "Remove from playlist" +msgstr "Retirer de la playlist" + +#: aircox_cms/templates/aircox_cms/vues/player.html:59 +msgid "Add to my playlist" +msgstr "Ajouter à ma playlist" + +#: aircox_cms/templates/aircox_cms/vues/player.html:82 +#| msgid "add to the player" +msgid "Read all the playlist" +msgstr "Lire toute la playlist" + #: aircox_cms/wagtail_hooks.py:86 msgid "Schedules" msgstr "Horaires" @@ -1019,3 +1049,21 @@ msgstr "Diffusions du jour" #: aircox_cms/wagtail_hooks.py:410 msgid "Current Station" msgstr "Station courante" + +#~ msgid "play" +#~ msgstr "jouer" + +#~ msgid "pause" +#~ msgstr "pause" + +#~ msgid "loading..." +#~ msgstr "chargement..." + +#~ msgid "more informations" +#~ msgstr "plus d'informations" + +#~ msgid "remove this sound" +#~ msgstr "enlever ce son" + +#~ msgid "enable and disable single mode" +#~ msgstr "activer et désactiver le mode solo" diff --git a/aircox_cms/models/lists.py b/aircox_cms/models/lists.py index 4a97715..87d2f75 100644 --- a/aircox_cms/models/lists.py +++ b/aircox_cms/models/lists.py @@ -174,16 +174,14 @@ class BaseList(models.Model): choices = [ (int(y), _(x.replace('_', ' '))) for x,y in DateFilter.__members__.items() ], blank = True, null = True, - help_text = _( - 'select pages whose date follows the given constraint' - ) + help_text = _('filter pages on their date') ) model = models.ForeignKey( ContentType, verbose_name = _('filter on page type'), blank = True, null = True, on_delete=models.SET_NULL, - help_text = _('if set, select only elements that are of this type'), + help_text = _('keep only elements of this type'), limit_choices_to = related_pages_filter, ) related = models.ForeignKey( diff --git a/aircox_cms/models/sections.py b/aircox_cms/models/sections.py index 583d3b2..57896ab 100644 --- a/aircox_cms/models/sections.py +++ b/aircox_cms/models/sections.py @@ -567,14 +567,15 @@ class SectionPlaylist(Section): _('user playlist'), default = False, help_text = _( - 'if set, this playlist is to be editable by the user' + 'this is a user playlist, it can be edited and saved by the ' + 'users (the modifications will NOT be registered on the server)' ) ) - single_mode = models.BooleanField( - _('single_mode'), - default = False, + read_all = models.BooleanField( + _('read all'), + default = True, help_text = _( - 'enable single mode by default on this playlist' + 'by default at the end of the sound play the next one' ) ) @@ -583,7 +584,7 @@ class SectionPlaylist(Section): template_name = 'aircox_cms/sections/playlist.html' panels = Section.panels + [ FieldPanel('user_playlist'), - FieldPanel('single_mode'), + FieldPanel('read_all'), ] def __init__(self, *args, sounds = None, tracks = None, page = None, **kwargs): @@ -605,6 +606,7 @@ class SectionPlaylist(Section): 'is_default': self.user_playlist, 'modifiable': self.user_playlist, 'storage_key': self.user_playlist and str(self.pk), + 'read_all': self.read_all, 'tracks': self.tracks }) if not self.user_playlist and not self.tracks: diff --git a/aircox_cms/templates/aircox_cms/program_page.html b/aircox_cms/templates/aircox_cms/program_page.html index cba6c46..9362e30 100755 --- a/aircox_cms/templates/aircox_cms/program_page.html +++ b/aircox_cms/templates/aircox_cms/program_page.html @@ -16,7 +16,7 @@ {% with start_hour=schedule.time.hour start_minute=schedule.time.minute %} {% with duration_hour=schedule.duration.hour duration_minute=schedule.duration.minute %} -
  • +
  • {% endwith %} {% endwith %} diff --git a/aircox_cms/templates/aircox_cms/sections/playlist.html b/aircox_cms/templates/aircox_cms/sections/playlist.html index 362996b..19f5fd8 100755 --- a/aircox_cms/templates/aircox_cms/sections/playlist.html +++ b/aircox_cms/templates/aircox_cms/sections/playlist.html @@ -34,8 +34,8 @@ {% if is_default %} default: true, {% endif %} - {% if single_mode %} - single_mode: true, + {% if read_all %} + read_all: true, {% endif %} {% if modifiable %} modifiable: true,