forked from rc/aircox
		
	document translations
This commit is contained in:
		@ -8,7 +8,7 @@ msgid ""
 | 
				
			|||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
"Project-Id-Version: Aircox 0.1\n"
 | 
					"Project-Id-Version: Aircox 0.1\n"
 | 
				
			||||||
"Report-Msgid-Bugs-To: \n"
 | 
					"Report-Msgid-Bugs-To: \n"
 | 
				
			||||||
"POT-Creation-Date: 2020-01-04 19:33+0100\n"
 | 
					"POT-Creation-Date: 2020-01-06 14:14+0100\n"
 | 
				
			||||||
"PO-Revision-Date: 2016-10-10 16:00+02\n"
 | 
					"PO-Revision-Date: 2016-10-10 16:00+02\n"
 | 
				
			||||||
"Last-Translator: Aarys\n"
 | 
					"Last-Translator: Aarys\n"
 | 
				
			||||||
"Language-Team: Aircox's translators team\n"
 | 
					"Language-Team: Aircox's translators team\n"
 | 
				
			||||||
@ -52,7 +52,7 @@ msgstr "Jour"
 | 
				
			|||||||
msgid "file"
 | 
					msgid "file"
 | 
				
			||||||
msgstr "fichier"
 | 
					msgstr "fichier"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: admin/sound.py:61 templates/aircox/episode_detail.html:36
 | 
					#: admin/sound.py:61 templates/aircox/episode_detail.html:38
 | 
				
			||||||
msgid "Playlist"
 | 
					msgid "Playlist"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -81,7 +81,7 @@ msgid "Article"
 | 
				
			|||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: models/article.py:22 templates/admin/base.html:46
 | 
					#: models/article.py:22 templates/admin/base.html:46
 | 
				
			||||||
#: templates/aircox/program_detail.html:17
 | 
					#: templates/aircox/program_detail.html:19
 | 
				
			||||||
msgid "Articles"
 | 
					msgid "Articles"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -106,7 +106,7 @@ msgid "cancelled"
 | 
				
			|||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: models/episode.py:147 models/sound.py:90 models/sound.py:280
 | 
					#: models/episode.py:147 models/sound.py:90 models/sound.py:280
 | 
				
			||||||
#: templates/admin/aircox/statistics.html:21
 | 
					#: templates/admin/aircox/statistics.html:23
 | 
				
			||||||
msgid "episode"
 | 
					msgid "episode"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -119,7 +119,7 @@ msgstr "type"
 | 
				
			|||||||
msgid "Diffusion"
 | 
					msgid "Diffusion"
 | 
				
			||||||
msgstr "Diffusion"
 | 
					msgstr "Diffusion"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: models/episode.py:166 templates/aircox/controllers/monitor.html:151
 | 
					#: models/episode.py:166
 | 
				
			||||||
msgid "Diffusions"
 | 
					msgid "Diffusions"
 | 
				
			||||||
msgstr "Diffusions"
 | 
					msgstr "Diffusions"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -127,8 +127,8 @@ msgstr "Diffusions"
 | 
				
			|||||||
msgid "edit the diffusion's planification"
 | 
					msgid "edit the diffusion's planification"
 | 
				
			||||||
msgstr "éditer la planification de la diffusion"
 | 
					msgstr "éditer la planification de la diffusion"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: models/episode.py:177 templates/aircox/episode_detail.html:20
 | 
					#: models/episode.py:177 templates/aircox/episode_detail.html:22
 | 
				
			||||||
#: templates/aircox/program_header.html:16
 | 
					#: templates/aircox/program_header.html:21
 | 
				
			||||||
#, fuzzy
 | 
					#, fuzzy
 | 
				
			||||||
#| msgid "Rerun"
 | 
					#| msgid "Rerun"
 | 
				
			||||||
msgid "rerun"
 | 
					msgid "rerun"
 | 
				
			||||||
@ -172,7 +172,6 @@ msgid "Sound"
 | 
				
			|||||||
msgstr "Son"
 | 
					msgstr "Son"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: models/log.py:210 models/sound.py:306
 | 
					#: models/log.py:210 models/sound.py:306
 | 
				
			||||||
#: templates/aircox/controllers/stats.html:58
 | 
					 | 
				
			||||||
msgid "Track"
 | 
					msgid "Track"
 | 
				
			||||||
msgstr "Morceau"
 | 
					msgstr "Morceau"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -188,7 +187,7 @@ msgstr ""
 | 
				
			|||||||
msgid "Category"
 | 
					msgid "Category"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: models/page.py:33 templates/aircox/page_list.html:23
 | 
					#: models/page.py:33 templates/aircox/page_list.html:28
 | 
				
			||||||
msgid "Categories"
 | 
					msgid "Categories"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -303,7 +302,7 @@ msgstr ""
 | 
				
			|||||||
msgid "date of the first diffusion"
 | 
					msgid "date of the first diffusion"
 | 
				
			||||||
msgstr "date de la première diffusion"
 | 
					msgstr "date de la première diffusion"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: models/program.py:256 templates/admin/aircox/statistics.html:20
 | 
					#: models/program.py:256 templates/admin/aircox/statistics.html:22
 | 
				
			||||||
msgid "time"
 | 
					msgid "time"
 | 
				
			||||||
msgstr "heure"
 | 
					msgstr "heure"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -508,7 +507,7 @@ msgstr "en secondes"
 | 
				
			|||||||
msgid "artist"
 | 
					msgid "artist"
 | 
				
			||||||
msgstr "artiste"
 | 
					msgstr "artiste"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: models/sound.py:296 templates/admin/aircox/statistics.html:23
 | 
					#: models/sound.py:296 templates/admin/aircox/statistics.html:25
 | 
				
			||||||
msgid "tags"
 | 
					msgid "tags"
 | 
				
			||||||
msgstr "tags"
 | 
					msgstr "tags"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -604,35 +603,35 @@ msgstr ""
 | 
				
			|||||||
"liste des paramètres disponibles séparés par des virgules; placé dans le "
 | 
					"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é"
 | 
					"fichier de configuration en tant que code brut; relatif au plugin utilisé"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/admin/aircox/page_change_form.html:9
 | 
					#: templates/admin/aircox/page_change_form.html:11
 | 
				
			||||||
msgid "Move to trash"
 | 
					msgid "Move to trash"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/admin/aircox/page_change_form.html:12
 | 
					#: templates/admin/aircox/page_change_form.html:14
 | 
				
			||||||
msgid "Mark as draft"
 | 
					msgid "Mark as draft"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/admin/aircox/page_change_form.html:17
 | 
					#: templates/admin/aircox/page_change_form.html:19
 | 
				
			||||||
msgid "Save"
 | 
					msgid "Save"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/admin/aircox/page_change_form.html:18
 | 
					#: templates/admin/aircox/page_change_form.html:20
 | 
				
			||||||
msgid "Save and continue"
 | 
					msgid "Save and continue"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/admin/aircox/page_change_form.html:20
 | 
					#: templates/admin/aircox/page_change_form.html:22
 | 
				
			||||||
#, fuzzy
 | 
					#, fuzzy
 | 
				
			||||||
#| msgid "public"
 | 
					#| msgid "public"
 | 
				
			||||||
msgid "Publish"
 | 
					msgid "Publish"
 | 
				
			||||||
msgstr "public"
 | 
					msgstr "public"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/admin/aircox/statistics.html:22
 | 
					#: templates/admin/aircox/statistics.html:24
 | 
				
			||||||
#, fuzzy
 | 
					#, fuzzy
 | 
				
			||||||
#| msgid "Track"
 | 
					#| msgid "Track"
 | 
				
			||||||
msgid "track"
 | 
					msgid "track"
 | 
				
			||||||
msgstr "Morceau"
 | 
					msgstr "Morceau"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/admin/aircox/statistics.html:65
 | 
					#: templates/admin/aircox/statistics.html:67
 | 
				
			||||||
#, fuzzy
 | 
					#, fuzzy
 | 
				
			||||||
#| msgid "Total"
 | 
					#| msgid "Total"
 | 
				
			||||||
msgid "Totals"
 | 
					msgid "Totals"
 | 
				
			||||||
@ -667,7 +666,7 @@ msgid "Log out"
 | 
				
			|||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/admin/base.html:111 templates/admin/change_list.html:30
 | 
					#: templates/admin/base.html:111 templates/admin/change_list.html:30
 | 
				
			||||||
#: templates/aircox/base.html:54
 | 
					#: templates/aircox/base.html:58
 | 
				
			||||||
msgid "Home"
 | 
					msgid "Home"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -683,181 +682,43 @@ msgstr ""
 | 
				
			|||||||
msgid "Filter"
 | 
					msgid "Filter"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/article_detail.html:9
 | 
					#. Translators: in page detail sidebar
 | 
				
			||||||
 | 
					#: templates/aircox/article_detail.html:12
 | 
				
			||||||
msgid "Latest news"
 | 
					msgid "Latest news"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/article_detail.html:20
 | 
					#: templates/aircox/article_detail.html:23
 | 
				
			||||||
msgid "Show all news"
 | 
					msgid "Show all news"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/article_detail.html:21
 | 
					#: templates/aircox/article_detail.html:24
 | 
				
			||||||
msgid "More news"
 | 
					msgid "More news"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/article_list.html:7
 | 
					#: templates/aircox/base.html:102
 | 
				
			||||||
#, python-format
 | 
					 | 
				
			||||||
msgid "Articles of %(parent)s"
 | 
					 | 
				
			||||||
msgstr ""
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/base.html:97
 | 
					 | 
				
			||||||
msgid "list filters"
 | 
					msgid "list filters"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/base.html:120
 | 
					#: templates/aircox/base.html:126
 | 
				
			||||||
msgid "Recently"
 | 
					msgid "Recently"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:6
 | 
					#: templates/aircox/diffusion_list.html:8
 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:112
 | 
					 | 
				
			||||||
msgid "Streamer monitor"
 | 
					 | 
				
			||||||
msgstr "Streamer"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:115
 | 
					 | 
				
			||||||
msgid "refresh"
 | 
					 | 
				
			||||||
msgstr "rafraîchir"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:129
 | 
					 | 
				
			||||||
#, python-format
 | 
					 | 
				
			||||||
msgid ""
 | 
					 | 
				
			||||||
"\n"
 | 
					 | 
				
			||||||
"                    Current source: %(current_source)s\n"
 | 
					 | 
				
			||||||
"                    "
 | 
					 | 
				
			||||||
msgstr ""
 | 
					 | 
				
			||||||
"\n"
 | 
					 | 
				
			||||||
"                   Source courante: %(current_source)s\n"
 | 
					 | 
				
			||||||
"                   "
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:136
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:175
 | 
					 | 
				
			||||||
msgid "restart"
 | 
					 | 
				
			||||||
msgstr "redémarrer"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:138
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:177
 | 
					 | 
				
			||||||
msgid "skip"
 | 
					 | 
				
			||||||
msgstr "passer"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:143
 | 
					 | 
				
			||||||
msgid "Source"
 | 
					 | 
				
			||||||
msgstr "Source"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:144
 | 
					 | 
				
			||||||
msgid "File"
 | 
					 | 
				
			||||||
msgstr "Fichier"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:145
 | 
					 | 
				
			||||||
msgid "Actions*"
 | 
					 | 
				
			||||||
msgstr "Actions"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:158
 | 
					 | 
				
			||||||
msgid "current"
 | 
					 | 
				
			||||||
msgstr "courant"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:161
 | 
					 | 
				
			||||||
msgid "diffusions"
 | 
					 | 
				
			||||||
msgstr "diffusions"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:163
 | 
					 | 
				
			||||||
msgid "stream"
 | 
					 | 
				
			||||||
msgstr "stream"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/monitor.html:186
 | 
					 | 
				
			||||||
msgid ""
 | 
					 | 
				
			||||||
"\n"
 | 
					 | 
				
			||||||
"    *: Due to some technical issues, it might take up to 30 seconds to "
 | 
					 | 
				
			||||||
"execute the given action.\n"
 | 
					 | 
				
			||||||
"    "
 | 
					 | 
				
			||||||
msgstr ""
 | 
					 | 
				
			||||||
"\n"
 | 
					 | 
				
			||||||
"    *: Pour des raisons technique, cela peut prendre 30 secondes ou plus "
 | 
					 | 
				
			||||||
"pour exécuter une action."
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/stats.html:9
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/stats.html:14
 | 
					 | 
				
			||||||
msgid "Statistics of the stations"
 | 
					 | 
				
			||||||
msgstr "Statistiques des stations"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/stats.html:18
 | 
					 | 
				
			||||||
msgid "Go to this date:"
 | 
					 | 
				
			||||||
msgstr "Aller à cette date:"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/stats.html:19
 | 
					 | 
				
			||||||
msgid "day"
 | 
					 | 
				
			||||||
msgstr "jour"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/stats.html:21
 | 
					 | 
				
			||||||
msgid "month"
 | 
					 | 
				
			||||||
msgstr "mois"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/stats.html:23
 | 
					 | 
				
			||||||
msgid "year"
 | 
					 | 
				
			||||||
msgstr "année"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/stats.html:25
 | 
					 | 
				
			||||||
msgid "Show"
 | 
					 | 
				
			||||||
msgstr "Montrer"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/stats.html:38
 | 
					 | 
				
			||||||
msgid "Date"
 | 
					 | 
				
			||||||
msgstr "Date"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/stats.html:39
 | 
					 | 
				
			||||||
msgid "Type"
 | 
					 | 
				
			||||||
msgstr "Type"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#. Translators "Header for statistics view"
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/stats.html:41
 | 
					 | 
				
			||||||
msgid "Diffusion or sound played"
 | 
					 | 
				
			||||||
msgstr "Diffusion ou son joué"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/stats.html:42
 | 
					 | 
				
			||||||
msgid "Tags"
 | 
					 | 
				
			||||||
msgstr "Tags"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/stats.html:67
 | 
					 | 
				
			||||||
msgid "Total"
 | 
					 | 
				
			||||||
msgstr "Total"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/controllers/stats.html:71
 | 
					 | 
				
			||||||
#, fuzzy, python-format
 | 
					 | 
				
			||||||
#| msgid ""
 | 
					 | 
				
			||||||
#| "\n"
 | 
					 | 
				
			||||||
#| "                %(items_count)s items, with a total of %(tracks_count)s "
 | 
					 | 
				
			||||||
#| "tracks\n"
 | 
					 | 
				
			||||||
#| "                "
 | 
					 | 
				
			||||||
msgid ""
 | 
					 | 
				
			||||||
"\n"
 | 
					 | 
				
			||||||
"                %(items_count)s items, with a total of %(tracks_count)s "
 | 
					 | 
				
			||||||
"tracks\n"
 | 
					 | 
				
			||||||
"                "
 | 
					 | 
				
			||||||
msgstr ""
 | 
					 | 
				
			||||||
"\n"
 | 
					 | 
				
			||||||
"                %(items_counts)s items, avec un total de %(tracks_count)s "
 | 
					 | 
				
			||||||
"pistes\n"
 | 
					 | 
				
			||||||
"                "
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/diffusion_list.html:6
 | 
					 | 
				
			||||||
#, python-format
 | 
					#, python-format
 | 
				
			||||||
msgid "Today on %(station)s"
 | 
					msgid "Today on %(station)s"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/episode_detail.html:19
 | 
					#: templates/aircox/episode_detail.html:21
 | 
				
			||||||
#: templates/aircox/program_header.html:15
 | 
					#: templates/aircox/program_header.html:20
 | 
				
			||||||
#: templates/aircox/widgets/episode_item.html:32
 | 
					#: templates/aircox/widgets/episode_item.html:34
 | 
				
			||||||
#, python-format
 | 
					#, python-format
 | 
				
			||||||
msgid "Rerun of %(date)s"
 | 
					msgid "Rerun of %(date)s"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/episode_detail.html:51
 | 
					#: templates/aircox/episode_detail.html:53
 | 
				
			||||||
msgid "Podcasts"
 | 
					msgid "Podcasts"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/episode_list.html:7
 | 
					 | 
				
			||||||
#, python-format
 | 
					 | 
				
			||||||
msgid "Episodes of %(parent)s"
 | 
					 | 
				
			||||||
msgstr ""
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/aircox/home.html:24
 | 
					#: templates/aircox/home.html:24
 | 
				
			||||||
#, fuzzy
 | 
					#, fuzzy
 | 
				
			||||||
#| msgid "current"
 | 
					#| msgid "current"
 | 
				
			||||||
@ -884,70 +745,73 @@ msgstr ""
 | 
				
			|||||||
msgid "Today"
 | 
					msgid "Today"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/log_list.html:6
 | 
					#: templates/aircox/log_list.html:8
 | 
				
			||||||
#, python-format
 | 
					#, python-format
 | 
				
			||||||
msgid "That happened on %(station)s"
 | 
					msgid "That happened on %(station)s"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/page_detail.html:25
 | 
					#: templates/aircox/page_detail.html:27
 | 
				
			||||||
#, fuzzy
 | 
					#, fuzzy
 | 
				
			||||||
#| msgid "comment"
 | 
					#| msgid "comment"
 | 
				
			||||||
msgid "Comments"
 | 
					msgid "Comments"
 | 
				
			||||||
msgstr "commentaire"
 | 
					msgstr "commentaire"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/page_detail.html:46
 | 
					#: templates/aircox/page_detail.html:48
 | 
				
			||||||
#, fuzzy
 | 
					#, fuzzy
 | 
				
			||||||
#| msgid "comment"
 | 
					#| msgid "comment"
 | 
				
			||||||
msgid "Post a comment"
 | 
					msgid "Post a comment"
 | 
				
			||||||
msgstr "commentaire"
 | 
					msgstr "commentaire"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/page_detail.html:71 templates/aircox/page_list.html:50
 | 
					#: templates/aircox/page_detail.html:73 templates/aircox/page_list.html:55
 | 
				
			||||||
msgid "Reset"
 | 
					msgid "Reset"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/page_detail.html:72
 | 
					#: templates/aircox/page_detail.html:74
 | 
				
			||||||
#, fuzzy
 | 
					#, fuzzy
 | 
				
			||||||
#| msgid "comment"
 | 
					#| msgid "comment"
 | 
				
			||||||
msgid "Comment"
 | 
					msgid "Comment"
 | 
				
			||||||
msgstr "commentaire"
 | 
					msgstr "commentaire"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/page_list.html:8
 | 
					#. Translators: title when pages are filtered for a specific parent page, e.g.: Articles of My Incredible Show
 | 
				
			||||||
 | 
					#: templates/aircox/page_list.html:12
 | 
				
			||||||
#, python-format
 | 
					#, python-format
 | 
				
			||||||
msgid "Publications of %(title)s"
 | 
					msgid "%(model)s of %(title)s"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/page_list.html:15
 | 
					#: templates/aircox/page_list.html:20
 | 
				
			||||||
msgid "Filters"
 | 
					msgid "Filters"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/page_list.html:47
 | 
					#: templates/aircox/page_list.html:52
 | 
				
			||||||
msgid "Apply"
 | 
					msgid "Apply"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/page_list.html:74
 | 
					#: templates/aircox/page_list.html:79
 | 
				
			||||||
#, fuzzy
 | 
					#, fuzzy
 | 
				
			||||||
#| msgid "information"
 | 
					#| msgid "information"
 | 
				
			||||||
msgid "pagination"
 | 
					msgid "pagination"
 | 
				
			||||||
msgstr "information"
 | 
					msgstr "information"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/page_list.html:81
 | 
					#. Translators: Bottom of the list, "previous page"
 | 
				
			||||||
 | 
					#: templates/aircox/page_list.html:87
 | 
				
			||||||
msgid "Previous"
 | 
					msgid "Previous"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/page_list.html:88
 | 
					#. Translators: Bottom of the list, "Nextpage"
 | 
				
			||||||
 | 
					#: templates/aircox/page_list.html:95
 | 
				
			||||||
msgid "Next"
 | 
					msgid "Next"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/program_base.html:6
 | 
					#: templates/aircox/program_base.html:8
 | 
				
			||||||
#, python-format
 | 
					#, python-format
 | 
				
			||||||
msgid "Recently on %(program)s"
 | 
					msgid "Recently on %(program)s"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/program_detail.html:29
 | 
					#: templates/aircox/program_detail.html:31
 | 
				
			||||||
msgid "Show all program's articles"
 | 
					msgid "Show all program's articles"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/program_detail.html:30
 | 
					#: templates/aircox/program_detail.html:32
 | 
				
			||||||
msgid "More articles"
 | 
					msgid "More articles"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -959,11 +823,12 @@ msgstr ""
 | 
				
			|||||||
msgid "Jump to date"
 | 
					msgid "Jump to date"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/widgets/dates_menu.html:35
 | 
					#. Translators: form button to select a date
 | 
				
			||||||
 | 
					#: templates/aircox/widgets/dates_menu.html:36
 | 
				
			||||||
msgid "Go"
 | 
					msgid "Go"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/widgets/episode_item.html:33
 | 
					#: templates/aircox/widgets/episode_item.html:35
 | 
				
			||||||
#, fuzzy
 | 
					#, fuzzy
 | 
				
			||||||
#| msgid "Rerun"
 | 
					#| msgid "Rerun"
 | 
				
			||||||
msgid "(rerun)"
 | 
					msgid "(rerun)"
 | 
				
			||||||
@ -979,15 +844,15 @@ msgstr ""
 | 
				
			|||||||
msgid "Show more"
 | 
					msgid "Show more"
 | 
				
			||||||
msgstr "Montrer"
 | 
					msgstr "Montrer"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/widgets/player.html:7
 | 
					#: templates/aircox/widgets/player.html:10
 | 
				
			||||||
msgid "player"
 | 
					msgid "player"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/widgets/player.html:8
 | 
					#: templates/aircox/widgets/player.html:11
 | 
				
			||||||
msgid "audio player used to listen to the radio"
 | 
					msgid "Audio player used to listen to the radio and podcasts"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/aircox/widgets/player.html:20
 | 
					#: templates/aircox/widgets/player.html:23
 | 
				
			||||||
msgid "Play or pause audio"
 | 
					msgid "Play or pause audio"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -1057,6 +922,106 @@ msgstr ""
 | 
				
			|||||||
msgid "comments are not allowed"
 | 
					msgid "comments are not allowed"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "Streamer monitor"
 | 
				
			||||||
 | 
					#~ msgstr "Streamer"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "refresh"
 | 
				
			||||||
 | 
					#~ msgstr "rafraîchir"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#, python-format
 | 
				
			||||||
 | 
					#~ msgid ""
 | 
				
			||||||
 | 
					#~ "\n"
 | 
				
			||||||
 | 
					#~ "                    Current source: %(current_source)s\n"
 | 
				
			||||||
 | 
					#~ "                    "
 | 
				
			||||||
 | 
					#~ msgstr ""
 | 
				
			||||||
 | 
					#~ "\n"
 | 
				
			||||||
 | 
					#~ "                   Source courante: %(current_source)s\n"
 | 
				
			||||||
 | 
					#~ "                   "
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "restart"
 | 
				
			||||||
 | 
					#~ msgstr "redémarrer"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "skip"
 | 
				
			||||||
 | 
					#~ msgstr "passer"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "Source"
 | 
				
			||||||
 | 
					#~ msgstr "Source"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "File"
 | 
				
			||||||
 | 
					#~ msgstr "Fichier"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "Actions*"
 | 
				
			||||||
 | 
					#~ msgstr "Actions"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "current"
 | 
				
			||||||
 | 
					#~ msgstr "courant"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "diffusions"
 | 
				
			||||||
 | 
					#~ msgstr "diffusions"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "stream"
 | 
				
			||||||
 | 
					#~ msgstr "stream"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid ""
 | 
				
			||||||
 | 
					#~ "\n"
 | 
				
			||||||
 | 
					#~ "    *: Due to some technical issues, it might take up to 30 seconds to "
 | 
				
			||||||
 | 
					#~ "execute the given action.\n"
 | 
				
			||||||
 | 
					#~ "    "
 | 
				
			||||||
 | 
					#~ msgstr ""
 | 
				
			||||||
 | 
					#~ "\n"
 | 
				
			||||||
 | 
					#~ "    *: Pour des raisons technique, cela peut prendre 30 secondes ou plus "
 | 
				
			||||||
 | 
					#~ "pour exécuter une action."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "Statistics of the stations"
 | 
				
			||||||
 | 
					#~ msgstr "Statistiques des stations"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "Go to this date:"
 | 
				
			||||||
 | 
					#~ msgstr "Aller à cette date:"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "day"
 | 
				
			||||||
 | 
					#~ msgstr "jour"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "month"
 | 
				
			||||||
 | 
					#~ msgstr "mois"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "year"
 | 
				
			||||||
 | 
					#~ msgstr "année"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "Show"
 | 
				
			||||||
 | 
					#~ msgstr "Montrer"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "Date"
 | 
				
			||||||
 | 
					#~ msgstr "Date"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "Type"
 | 
				
			||||||
 | 
					#~ msgstr "Type"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "Diffusion or sound played"
 | 
				
			||||||
 | 
					#~ msgstr "Diffusion ou son joué"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "Tags"
 | 
				
			||||||
 | 
					#~ msgstr "Tags"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#~ msgid "Total"
 | 
				
			||||||
 | 
					#~ msgstr "Total"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#, fuzzy, python-format
 | 
				
			||||||
 | 
					#~| msgid ""
 | 
				
			||||||
 | 
					#~| "\n"
 | 
				
			||||||
 | 
					#~| "                %(items_count)s items, with a total of %(tracks_count)s "
 | 
				
			||||||
 | 
					#~| "tracks\n"
 | 
				
			||||||
 | 
					#~| "                "
 | 
				
			||||||
 | 
					#~ msgid ""
 | 
				
			||||||
 | 
					#~ "\n"
 | 
				
			||||||
 | 
					#~ "                %(items_count)s items, with a total of %(tracks_count)s "
 | 
				
			||||||
 | 
					#~ "tracks\n"
 | 
				
			||||||
 | 
					#~ "                "
 | 
				
			||||||
 | 
					#~ msgstr ""
 | 
				
			||||||
 | 
					#~ "\n"
 | 
				
			||||||
 | 
					#~ "                %(items_counts)s items, avec un total de %(tracks_count)s "
 | 
				
			||||||
 | 
					#~ "pistes\n"
 | 
				
			||||||
 | 
					#~ "                "
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#, fuzzy
 | 
					#, fuzzy
 | 
				
			||||||
#~| msgid "syncronise"
 | 
					#~| msgid "syncronise"
 | 
				
			||||||
#~ msgid "Synchronise"
 | 
					#~ msgid "Synchronise"
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,5 @@
 | 
				
			|||||||
{% extends  "admin/change_form.html" %}
 | 
					{% extends  "admin/change_form.html" %}
 | 
				
			||||||
 | 
					{% comment %}Admin edit template to edit pages.{% endcomment %}
 | 
				
			||||||
{% load i18n static %}
 | 
					{% load i18n static %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% block submit_buttons_bottom %}
 | 
					{% block submit_buttons_bottom %}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,3 +1,4 @@
 | 
				
			|||||||
 | 
					{% comment %}Inline block to edit playlists{% endcomment %}
 | 
				
			||||||
{% load static i18n %}
 | 
					{% load static i18n %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% with inline_admin_formset.formset.instance as playlist %}
 | 
					{% with inline_admin_formset.formset.instance as playlist %}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,5 @@
 | 
				
			|||||||
{% extends "admin/base_site.html" %}
 | 
					{% extends "admin/base_site.html" %}
 | 
				
			||||||
 | 
					{% comment %}Admin tool displaying logs statistics{% endcomment %}
 | 
				
			||||||
{% load i18n aircox %}
 | 
					{% load i18n aircox %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,5 @@
 | 
				
			|||||||
{% extends "aircox/page_detail.html" %}
 | 
					{% extends "aircox/page_detail.html" %}
 | 
				
			||||||
 | 
					{% comment %}Detail page for regular articles{% endcomment %}
 | 
				
			||||||
{% load i18n %}
 | 
					{% load i18n %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% block sidebar %}
 | 
					{% block sidebar %}
 | 
				
			||||||
@ -6,6 +7,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
{% if sidebar_object_list %}
 | 
					{% if sidebar_object_list %}
 | 
				
			||||||
<section>
 | 
					<section>
 | 
				
			||||||
 | 
					    {% comment %}Translators: in page detail sidebar{% endcomment %}
 | 
				
			||||||
    <h4 class="title is-4">{% trans "Latest news" %}</h4>
 | 
					    <h4 class="title is-4">{% trans "Latest news" %}</h4>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    {% for object in sidebar_object_list %}
 | 
					    {% for object in sidebar_object_list %}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,12 +1,3 @@
 | 
				
			|||||||
{% extends "aircox/page_list.html" %}
 | 
					{% extends "aircox/page_list.html" %}
 | 
				
			||||||
{% load i18n aircox %}
 | 
					{% comment %}List of articles{% endcomment %}
 | 
				
			||||||
 | 
					 | 
				
			||||||
{% block title %}
 | 
					 | 
				
			||||||
{% if parent %}
 | 
					 | 
				
			||||||
    {% with parent.title as parent %}
 | 
					 | 
				
			||||||
    {% blocktrans %}Articles of {{ parent }}{% endblocktrans %}
 | 
					 | 
				
			||||||
    {% endwith %}
 | 
					 | 
				
			||||||
{% else %}{{ block.super }}{% endif %}
 | 
					 | 
				
			||||||
{% endblock %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,8 +1,12 @@
 | 
				
			|||||||
{% comment %}
 | 
					{% comment %}
 | 
				
			||||||
Context:
 | 
					Base website template. It displays various elements depending on context
 | 
				
			||||||
 | 
					variables.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Usefull context:
 | 
				
			||||||
- cover: image cover
 | 
					- cover: image cover
 | 
				
			||||||
- site: current website
 | 
					- site: current website
 | 
				
			||||||
- has_filters: display filter bar (using block "filters")
 | 
					- has_filters: display filter bar (using block "filters")
 | 
				
			||||||
 | 
					- model: view model or displayed `object`'s
 | 
				
			||||||
- sidebar_object_list: item to display in sidebar
 | 
					- sidebar_object_list: item to display in sidebar
 | 
				
			||||||
- sidebar_url_name: url name sidebar item complete list
 | 
					- sidebar_url_name: url name sidebar item complete list
 | 
				
			||||||
- sidebar_url_parent: parent page for sidebar items complete list
 | 
					- sidebar_url_parent: parent page for sidebar items complete list
 | 
				
			||||||
@ -93,6 +97,7 @@ Blocks:
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
                        {% block main %}
 | 
					                        {% block main %}
 | 
				
			||||||
                            {% if has_filters %}
 | 
					                            {% if has_filters %}
 | 
				
			||||||
 | 
					                            {% comment %}Translators: extra toolbar displayed on the top of page lists {% endcomment %}
 | 
				
			||||||
                            <nav class="navbar toolbar"
 | 
					                            <nav class="navbar toolbar"
 | 
				
			||||||
                                aria-label="{% trans "list filters" %}">
 | 
					                                aria-label="{% trans "list filters" %}">
 | 
				
			||||||
                            {% block filters %}{% endblock %}
 | 
					                            {% block filters %}{% endblock %}
 | 
				
			||||||
@ -102,6 +107,7 @@ Blocks:
 | 
				
			|||||||
                    </main>
 | 
					                    </main>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                    {% if has_sidebar %}
 | 
					                    {% if has_sidebar %}
 | 
				
			||||||
 | 
					                    {% comment %}Translators: main sidebar {% endcomment %}
 | 
				
			||||||
                    <aside class="column is-one-third-desktop">
 | 
					                    <aside class="column is-one-third-desktop">
 | 
				
			||||||
                        {# FIXME: block cover into sidebar one #}
 | 
					                        {# FIXME: block cover into sidebar one #}
 | 
				
			||||||
                        {% block cover %}
 | 
					                        {% block cover %}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,27 +0,0 @@
 | 
				
			|||||||
{% load static %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
<html>
 | 
					 | 
				
			||||||
    <head>
 | 
					 | 
				
			||||||
        <title>Aircox</title>
 | 
					 | 
				
			||||||
        <link rel="stylesheet" href="{% static 'aircox/css/layout.css' %}" type="text/css" />
 | 
					 | 
				
			||||||
    </head>
 | 
					 | 
				
			||||||
    <body>
 | 
					 | 
				
			||||||
        <sidebar class="sidebar main-sidebar">
 | 
					 | 
				
			||||||
        </sidebar>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        <main>
 | 
					 | 
				
			||||||
        {% block title %}
 | 
					 | 
				
			||||||
        <h1>{{ title|default:"Aircox" }}</h1>
 | 
					 | 
				
			||||||
        {% endblock %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        <div class="content">
 | 
					 | 
				
			||||||
        {% block content %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        {% endblock %}
 | 
					 | 
				
			||||||
        </div>
 | 
					 | 
				
			||||||
        </main>
 | 
					 | 
				
			||||||
    </body>
 | 
					 | 
				
			||||||
</html>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@ -1,193 +0,0 @@
 | 
				
			|||||||
{% extends "admin/base_site.html" %}
 | 
					 | 
				
			||||||
{% load i18n %}
 | 
					 | 
				
			||||||
{% load static %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
{% block title %}
 | 
					 | 
				
			||||||
{% trans "Streamer monitor" %}
 | 
					 | 
				
			||||||
{% endblock %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
{% block content %}
 | 
					 | 
				
			||||||
<style>
 | 
					 | 
				
			||||||
.actions button {
 | 
					 | 
				
			||||||
    padding: 0em;
 | 
					 | 
				
			||||||
    margin: 0.2em;
 | 
					 | 
				
			||||||
    text-align: center;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
.actions button img {
 | 
					 | 
				
			||||||
    max-width: 2em;
 | 
					 | 
				
			||||||
    max-height: 2em;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.sources img {
 | 
					 | 
				
			||||||
    max-width: 2.5em;
 | 
					 | 
				
			||||||
    max-height: 2em;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.float_right {
 | 
					 | 
				
			||||||
    float: right;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
.table_section_header {
 | 
					 | 
				
			||||||
    font-style: italic;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
section.station {
 | 
					 | 
				
			||||||
    padding: 0.4em;
 | 
					 | 
				
			||||||
    font-size: 0.9em;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    section.station .sources {
 | 
					 | 
				
			||||||
        width: 100%;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    section.station .name {
 | 
					 | 
				
			||||||
        width: 15em;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    section.station .file {
 | 
					 | 
				
			||||||
        color: #007EDF;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    section.station .actions {
 | 
					 | 
				
			||||||
        width: 4em;
 | 
					 | 
				
			||||||
        text-align: right;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    section.station .sources .current:before {
 | 
					 | 
				
			||||||
        content: '▶';
 | 
					 | 
				
			||||||
        color: red;
 | 
					 | 
				
			||||||
        margin: 0em 1em;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
</style>
 | 
					 | 
				
			||||||
<script>
 | 
					 | 
				
			||||||
var Monitor = {
 | 
					 | 
				
			||||||
    get_token: function () {
 | 
					 | 
				
			||||||
        return document.cookie.replace(/.*csrftoken=([^;]+)(;.*|$)/, '$1');
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    run: function(action, station, source) {
 | 
					 | 
				
			||||||
        var params = 'station=' + station + '&&action=' + action;
 | 
					 | 
				
			||||||
        if(source)
 | 
					 | 
				
			||||||
            params += '&&source=' + source;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        var req = new XMLHttpRequest()
 | 
					 | 
				
			||||||
        req.open('POST', '{% url 'aircox.monitor' %}', false);
 | 
					 | 
				
			||||||
        req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
 | 
					 | 
				
			||||||
        req.setRequestHeader("Content-length", params.length);
 | 
					 | 
				
			||||||
        req.setRequestHeader("Connection", "close");
 | 
					 | 
				
			||||||
        req.setRequestHeader("X-CSRFToken", this.get_token());
 | 
					 | 
				
			||||||
        req.send(params);
 | 
					 | 
				
			||||||
        this.update();
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    update: function(timeout) {
 | 
					 | 
				
			||||||
        var req = new XMLHttpRequest()
 | 
					 | 
				
			||||||
        req.open('GET', '{% url 'aircox.monitor' %}', true);
 | 
					 | 
				
			||||||
        req.onreadystatechange = function() {
 | 
					 | 
				
			||||||
            if(req.readyState != 4 || (req.status != 200 && req.status != 0))
 | 
					 | 
				
			||||||
                return;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            var doc = document.implementation.createHTMLDocument('xhr')
 | 
					 | 
				
			||||||
                              .documentElement;
 | 
					 | 
				
			||||||
            doc.innerHTML = req.responseText;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            document.getElementById('stations').innerHTML =
 | 
					 | 
				
			||||||
                doc.querySelector('#stations').innerHTML;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            if(timeout)
 | 
					 | 
				
			||||||
                window.setTimeout(
 | 
					 | 
				
			||||||
                    function() { Monitor.update(timeout);}, timeout
 | 
					 | 
				
			||||||
                );
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
        req.send();
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Monitor.update(50000);
 | 
					 | 
				
			||||||
</script>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
<header>
 | 
					 | 
				
			||||||
<h1>{% trans "Streamer monitor" %}</h1>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
<input type="button" onclick="Monitor.update();"
 | 
					 | 
				
			||||||
       value="{% trans "refresh" %}">
 | 
					 | 
				
			||||||
</header>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
<div id='stations'>
 | 
					 | 
				
			||||||
    {% for station in stations %}
 | 
					 | 
				
			||||||
    <section class="station">
 | 
					 | 
				
			||||||
        <header>
 | 
					 | 
				
			||||||
        <h2>{{ station.name }}</h2>
 | 
					 | 
				
			||||||
        </header>
 | 
					 | 
				
			||||||
        <table cellspacing="0" cellpadding="0" class="sources object">
 | 
					 | 
				
			||||||
            <tr>
 | 
					 | 
				
			||||||
                <th class="name" colspan=2>{{ station.name }}</th>
 | 
					 | 
				
			||||||
                <td>
 | 
					 | 
				
			||||||
                    {% with station.streamer.source.name as current_source %}
 | 
					 | 
				
			||||||
                    {% blocktrans %}
 | 
					 | 
				
			||||||
                    Current source: {{ current_source }}
 | 
					 | 
				
			||||||
                    {% endblocktrans %}
 | 
					 | 
				
			||||||
                    {% endwith %}
 | 
					 | 
				
			||||||
                </td>
 | 
					 | 
				
			||||||
                <td class="actions">
 | 
					 | 
				
			||||||
                    <button onclick="Monitor.run('restart', '{{ station.name }}');">
 | 
					 | 
				
			||||||
                        <img src="{% static "aircox/images/redo.png" %}" alt="{% trans "restart" %}"></button>
 | 
					 | 
				
			||||||
                    <button onclick="Monitor.run('skip', '{{ station.name }}');">
 | 
					 | 
				
			||||||
                        <img src="{% static "aircox/images/playback_next.png" %}" alt="{% trans "skip" %}"></button>
 | 
					 | 
				
			||||||
                </td>
 | 
					 | 
				
			||||||
            </tr>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            <tr class="table_section_header">
 | 
					 | 
				
			||||||
                <td colspan=2>{% trans "Source" %}</td>
 | 
					 | 
				
			||||||
                <td>{% trans "File" %}</td>
 | 
					 | 
				
			||||||
                <td>{% trans "Actions*" %}</td>
 | 
					 | 
				
			||||||
            </tr>
 | 
					 | 
				
			||||||
            {% for source in station.sources %}
 | 
					 | 
				
			||||||
            <tr class="source">
 | 
					 | 
				
			||||||
                <td class="name">
 | 
					 | 
				
			||||||
                    {% if source.is_dealer %}
 | 
					 | 
				
			||||||
                        {% trans "Diffusions" %}
 | 
					 | 
				
			||||||
                    {% else %}
 | 
					 | 
				
			||||||
                        {{ source.name }}
 | 
					 | 
				
			||||||
                    {% endif %}
 | 
					 | 
				
			||||||
                </td>
 | 
					 | 
				
			||||||
                <td class="source_info">
 | 
					 | 
				
			||||||
                    {% if source.name == station.streamer.source.name %}
 | 
					 | 
				
			||||||
                    <img src="{% static "aircox/images/play.png" %}" alt="{% trans "current" %}">
 | 
					 | 
				
			||||||
                    {% endif %}
 | 
					 | 
				
			||||||
                    {% if source.is_dealer %}
 | 
					 | 
				
			||||||
                    <img src="{% static "aircox/images/calendar_month.png" %}" alt="{% trans "diffusions" %}">
 | 
					 | 
				
			||||||
                    {% elif not source.program.is_show %}
 | 
					 | 
				
			||||||
                    <img src="{% static "aircox/images/schuffle.png" %}" alt="{% trans "stream" %}">
 | 
					 | 
				
			||||||
                    {% endif %}
 | 
					 | 
				
			||||||
                </td>
 | 
					 | 
				
			||||||
                <td class="file">
 | 
					 | 
				
			||||||
                    {% if source.is_dealer %}
 | 
					 | 
				
			||||||
                    {{ source.playlist|join:"<br>" }}
 | 
					 | 
				
			||||||
                    {% else %}
 | 
					 | 
				
			||||||
                    {{ source.sound }}
 | 
					 | 
				
			||||||
                    {% endif %}
 | 
					 | 
				
			||||||
                </td>
 | 
					 | 
				
			||||||
                <td class="actions">
 | 
					 | 
				
			||||||
                    <button onclick="Monitor.run('restart', '{{ station.name }}', '{{ source.name }}');">
 | 
					 | 
				
			||||||
                        <img src="{% static "aircox/images/redo.png" %}" alt="{% trans "restart" %}"></button>
 | 
					 | 
				
			||||||
                    <button onclick="Monitor.run('skip', '{{ station.name }}', '{{ source.name }}');">
 | 
					 | 
				
			||||||
                        <img src="{% static "aircox/images/playback_next.png" %}" alt="{% trans "skip" %}"></button>
 | 
					 | 
				
			||||||
                </td>
 | 
					 | 
				
			||||||
            </tr>
 | 
					 | 
				
			||||||
            {% endfor %}
 | 
					 | 
				
			||||||
        </table>
 | 
					 | 
				
			||||||
    </section>
 | 
					 | 
				
			||||||
    {% endfor %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    <div class="info small">
 | 
					 | 
				
			||||||
    {% blocktrans %}
 | 
					 | 
				
			||||||
    *: Due to some technical issues, it might take up to 30 seconds to execute the given action.
 | 
					 | 
				
			||||||
    {% endblocktrans %}
 | 
					 | 
				
			||||||
    </div>
 | 
					 | 
				
			||||||
</div>
 | 
					 | 
				
			||||||
{% endblock %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@ -1,106 +0,0 @@
 | 
				
			|||||||
{% extends "admin/base_site.html" %}
 | 
					 | 
				
			||||||
{# {% extends "aircox/controllers/base_site.html" %} #}
 | 
					 | 
				
			||||||
{% load i18n %}
 | 
					 | 
				
			||||||
{% load tz %}
 | 
					 | 
				
			||||||
{% localtime on %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
{% block title %}
 | 
					 | 
				
			||||||
{% trans "Statistics of the stations" %}
 | 
					 | 
				
			||||||
{% endblock %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
{% block content %}
 | 
					 | 
				
			||||||
<header>
 | 
					 | 
				
			||||||
<h1>{% trans "Statistics of the stations" %}</h1>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
{# TODO here #}
 | 
					 | 
				
			||||||
<form action="?" method="GET">
 | 
					 | 
				
			||||||
    {% trans "Go to this date:" %}
 | 
					 | 
				
			||||||
    <input name="day" type="number" placeholder="{% trans "day" %}"
 | 
					 | 
				
			||||||
           value="{{ statistics.0.date.day }}"></input>
 | 
					 | 
				
			||||||
    <input name="month" type="number" placeholder="{% trans "month" %}"
 | 
					 | 
				
			||||||
           value="{{ statistics.0.date.month }}"></input>
 | 
					 | 
				
			||||||
    <input name="year" type="number" placeholder="{% trans "year" %}"
 | 
					 | 
				
			||||||
           value="{{ statistics.0.date.year }}"></input>
 | 
					 | 
				
			||||||
    <input type="submit" value="{% trans "Show" %}">
 | 
					 | 
				
			||||||
</form>
 | 
					 | 
				
			||||||
</header>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
{% for stats in statistics %}
 | 
					 | 
				
			||||||
<section class="station">
 | 
					 | 
				
			||||||
    <header>
 | 
					 | 
				
			||||||
        <h2>{{ stats.station.name }},
 | 
					 | 
				
			||||||
            {{ stats.date|date:'l d F Y' }}</h2>
 | 
					 | 
				
			||||||
    </header>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    <table cellspacing="0" cellpadding="0" class="object">
 | 
					 | 
				
			||||||
        <tr class="header">
 | 
					 | 
				
			||||||
            <th>{% trans "Date" %}</th>
 | 
					 | 
				
			||||||
            <th width="10%">{% trans "Type" %}
 | 
					 | 
				
			||||||
            {# Translators "Header for statistics view" #}
 | 
					 | 
				
			||||||
            <th width="50%">{% trans "Diffusion or sound played" %}
 | 
					 | 
				
			||||||
            <th width="30%">{% trans "Tags" %}</th>
 | 
					 | 
				
			||||||
        </tr>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        {% for item in stats.items %}
 | 
					 | 
				
			||||||
            <tr>
 | 
					 | 
				
			||||||
                <th>{{ item.date|time:"H:i" }}</th>
 | 
					 | 
				
			||||||
                <th>{{ item.type }}</th>
 | 
					 | 
				
			||||||
                <th>{{ item.name }}</th>
 | 
					 | 
				
			||||||
                <th>{% for tag,count in item.tags.items %}
 | 
					 | 
				
			||||||
                    {{ tag }}: {{ count }};
 | 
					 | 
				
			||||||
                    {% endfor %}</th>
 | 
					 | 
				
			||||||
            </tr>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            {% for track in item.tracks %}
 | 
					 | 
				
			||||||
            <tr class="subdata" tags="{{ track.tags.all|join:', '}}">
 | 
					 | 
				
			||||||
                <td>{{ track.date|time:"H:i" }}</td>
 | 
					 | 
				
			||||||
                <td>{% trans "Track" %}</td>
 | 
					 | 
				
			||||||
                <td>{{ track.artist }} -- <emph>{{ track.title }}</emph> {{ track.version }}</td>
 | 
					 | 
				
			||||||
                <td>{{ track.tags.all|join:', ' }}</td>
 | 
					 | 
				
			||||||
            </tr>
 | 
					 | 
				
			||||||
            {% endfor %}
 | 
					 | 
				
			||||||
        {% endfor %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        <tr class="bottom">
 | 
					 | 
				
			||||||
            <th>{{ stats.date|date:'d/m/Y' }}</th>
 | 
					 | 
				
			||||||
            <th>{% trans "Total" %}</th>
 | 
					 | 
				
			||||||
            <th>
 | 
					 | 
				
			||||||
                {% with stats.items|length as items_count %}
 | 
					 | 
				
			||||||
                {% with stats.count as tracks_count %}
 | 
					 | 
				
			||||||
                {% blocktrans %}
 | 
					 | 
				
			||||||
                {{ items_count }} items, with a total of {{ tracks_count }} tracks
 | 
					 | 
				
			||||||
                {% endblocktrans %}
 | 
					 | 
				
			||||||
                {% endwith %}
 | 
					 | 
				
			||||||
                {% endwith %}
 | 
					 | 
				
			||||||
            </th>
 | 
					 | 
				
			||||||
            <th>
 | 
					 | 
				
			||||||
            <script>
 | 
					 | 
				
			||||||
            var tracks = document.querySelectorAll('.subdata[tags]');
 | 
					 | 
				
			||||||
            var tags = {}
 | 
					 | 
				
			||||||
            for(var i = 0; i < tracks.length; i++) {
 | 
					 | 
				
			||||||
                var tags_ = tracks[i].getAttribute('tags').split(', ');
 | 
					 | 
				
			||||||
                for(var j = 0; j < tags_.length; j++) {
 | 
					 | 
				
			||||||
                    var tag = tags_[j];
 | 
					 | 
				
			||||||
                    tags[tag] = (tags[tag] || 0) + 1;
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            for(var tag in tags) {
 | 
					 | 
				
			||||||
                document.write('<span>' + tag + ': <b>' + tags[tag] + '</b><br>');
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
            </script>
 | 
					 | 
				
			||||||
            </th>
 | 
					 | 
				
			||||||
            <th>{% for tag, count, average in stats.tags %}
 | 
					 | 
				
			||||||
                <span>{{ tag }}: <b>{{ average|floatformat }}%</b> ({{ count }})<br>
 | 
					 | 
				
			||||||
            {% endfor %}
 | 
					 | 
				
			||||||
            </th>
 | 
					 | 
				
			||||||
        </tr>
 | 
					 | 
				
			||||||
    </table>
 | 
					 | 
				
			||||||
</section>
 | 
					 | 
				
			||||||
{% endfor %}
 | 
					 | 
				
			||||||
{% endblock %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
{% endlocaltime %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@ -1,4 +1,5 @@
 | 
				
			|||||||
{% extends "aircox/page.html" %}
 | 
					{% extends "aircox/page.html" %}
 | 
				
			||||||
 | 
					{% comment %}List of diffusions as a timetable{% endcomment %}
 | 
				
			||||||
{% load i18n aircox humanize %}
 | 
					{% load i18n aircox humanize %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% block title %}
 | 
					{% block title %}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,5 @@
 | 
				
			|||||||
{% extends "aircox/program_base.html" %}
 | 
					{% extends "aircox/program_base.html" %}
 | 
				
			||||||
 | 
					{% comment %}List of a show's episodes for a specific{% endcomment %}
 | 
				
			||||||
{% load i18n %}
 | 
					{% load i18n %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% block header %}{{ block.super }}
 | 
					{% block header %}{{ block.super }}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,12 +1,3 @@
 | 
				
			|||||||
{% extends "aircox/page_list.html" %}
 | 
					{% extends "aircox/page_list.html" %}
 | 
				
			||||||
{% load i18n aircox %}
 | 
					{% comment %}List of episodes pages{% endcomment %}
 | 
				
			||||||
 | 
					 | 
				
			||||||
{% block title %}
 | 
					 | 
				
			||||||
{% if parent %}
 | 
					 | 
				
			||||||
    {% with parent.title as parent %}
 | 
					 | 
				
			||||||
    {% blocktrans %}Episodes of {{ parent }}{% endblocktrans %}
 | 
					 | 
				
			||||||
    {% endwith %}
 | 
					 | 
				
			||||||
{% else %}{{ block.super }}{% endif %}
 | 
					 | 
				
			||||||
{% endblock %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,5 @@
 | 
				
			|||||||
{% extends "aircox/page.html" %}
 | 
					{% extends "aircox/page.html" %}
 | 
				
			||||||
 | 
					{% comment %}List of logs for a specific date{% endcomment %}
 | 
				
			||||||
{% load i18n humanize aircox %}
 | 
					{% load i18n humanize aircox %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% block title %}
 | 
					{% block title %}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,6 +1,9 @@
 | 
				
			|||||||
{% extends "aircox/base.html" %}
 | 
					{% extends "aircox/base.html" %}
 | 
				
			||||||
{% load static i18n thumbnail %}
 | 
					{% load static i18n thumbnail %}
 | 
				
			||||||
{% comment %}
 | 
					{% comment %}
 | 
				
			||||||
 | 
					Base template to display pages (list, detail, whatever). By default extend to
 | 
				
			||||||
 | 
					this one instead of "base.html"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Context:
 | 
					Context:
 | 
				
			||||||
- cover: cover image
 | 
					- cover: cover image
 | 
				
			||||||
- title: title
 | 
					- title: title
 | 
				
			||||||
@ -8,6 +11,7 @@ Context:
 | 
				
			|||||||
{% endcomment %}
 | 
					{% endcomment %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% block head_title %}
 | 
					{% block head_title %}
 | 
				
			||||||
 | 
					    {% comment %}Hack to include the page title into the <title> tag.{% endcomment %}
 | 
				
			||||||
    {% block title %}{{ title }}{% endblock %}
 | 
					    {% block title %}{{ title }}{% endblock %}
 | 
				
			||||||
    —
 | 
					    —
 | 
				
			||||||
    {{ station.name }}
 | 
					    {{ station.name }}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,6 +1,8 @@
 | 
				
			|||||||
{% extends "aircox/page.html" %}
 | 
					{% extends "aircox/page.html" %}
 | 
				
			||||||
{% load static i18n humanize honeypot %}
 | 
					{% load static i18n humanize honeypot %}
 | 
				
			||||||
{% comment %}
 | 
					{% comment %}
 | 
				
			||||||
 | 
					Base template used to display a page
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Context:
 | 
					Context:
 | 
				
			||||||
- title: title
 | 
					- title: title
 | 
				
			||||||
- page: page
 | 
					- page: page
 | 
				
			||||||
 | 
				
			|||||||
@ -1,11 +1,15 @@
 | 
				
			|||||||
{% extends "aircox/page.html" %}
 | 
					{% extends "aircox/page.html" %}
 | 
				
			||||||
 | 
					{% comment %}Display a list of pages{% endcomment %}
 | 
				
			||||||
{% load i18n aircox %}
 | 
					{% load i18n aircox %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% block title %}
 | 
					{% block title %}
 | 
				
			||||||
{% if not parent %}{{ view.model|verbose_name:True|title }}
 | 
					{% if not parent %}{{ view.model|verbose_name:True|title }}
 | 
				
			||||||
{% else %}
 | 
					{% else %}
 | 
				
			||||||
{% with parent.title as title %}
 | 
					{% with parent.title as title %}
 | 
				
			||||||
{% blocktrans %}Publications of {{ title }}{% endblocktrans %}
 | 
					{% with model|default:"Publications"|verbose_name:true|capfirst as model %}
 | 
				
			||||||
 | 
					{% comment %}Translators: title when pages are filtered for a specific parent page, e.g.: Articles of My Incredible Show{% endcomment %}
 | 
				
			||||||
 | 
					{% blocktrans %}{{ model }} of {{ title }}{% endblocktrans %}
 | 
				
			||||||
 | 
					{% endwith %}
 | 
				
			||||||
{% endwith %}
 | 
					{% endwith %}
 | 
				
			||||||
{% endif %}
 | 
					{% endif %}
 | 
				
			||||||
{% endblock %}
 | 
					{% endblock %}
 | 
				
			||||||
@ -78,6 +82,7 @@
 | 
				
			|||||||
    {% else %}
 | 
					    {% else %}
 | 
				
			||||||
    <a class="pagination-previous" disabled>
 | 
					    <a class="pagination-previous" disabled>
 | 
				
			||||||
    {% endif %}
 | 
					    {% endif %}
 | 
				
			||||||
 | 
					        {% comment %}Translators: Bottom of the list, "previous page"{% endcomment %}
 | 
				
			||||||
        {% trans "Previous" %}</a>
 | 
					        {% trans "Previous" %}</a>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    {% if page_obj.has_next %}
 | 
					    {% if page_obj.has_next %}
 | 
				
			||||||
@ -85,6 +90,7 @@
 | 
				
			|||||||
    {% else %}
 | 
					    {% else %}
 | 
				
			||||||
    <a class="pagination-next" disabled>
 | 
					    <a class="pagination-next" disabled>
 | 
				
			||||||
    {% endif %}
 | 
					    {% endif %}
 | 
				
			||||||
 | 
					        {% comment %}Translators: Bottom of the list, "Nextpage"{% endcomment %}
 | 
				
			||||||
        {% trans "Next" %}</a>
 | 
					        {% trans "Next" %}</a>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <ul class="pagination-list">
 | 
					    <ul class="pagination-list">
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,5 @@
 | 
				
			|||||||
{% extends "aircox/page_detail.html" %}
 | 
					{% extends "aircox/page_detail.html" %}
 | 
				
			||||||
 | 
					{% comment %}Base template used to display informations of a specific show{% endcomment %}
 | 
				
			||||||
{% load i18n %}
 | 
					{% load i18n %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% block sidebar_title %}
 | 
					{% block sidebar_title %}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,5 @@
 | 
				
			|||||||
{% extends "aircox/program_base.html" %}
 | 
					{% extends "aircox/program_base.html" %}
 | 
				
			||||||
 | 
					{% comment %}Detail page of a show{% endcomment %}
 | 
				
			||||||
{% load i18n %}
 | 
					{% load i18n %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% block header %}
 | 
					{% block header %}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,3 +1,8 @@
 | 
				
			|||||||
 | 
					{% comment %}
 | 
				
			||||||
 | 
					Header displaying informations of a program.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					FIXME: consider moving into the "widgets" directory.
 | 
				
			||||||
 | 
					{% endcomment %}
 | 
				
			||||||
{% load i18n %}
 | 
					{% load i18n %}
 | 
				
			||||||
<section class="is-size-5 has-text-weight-bold">
 | 
					<section class="is-size-5 has-text-weight-bold">
 | 
				
			||||||
    {% for schedule in program.schedule_set.all %}
 | 
					    {% for schedule in program.schedule_set.all %}
 | 
				
			||||||
 | 
				
			|||||||
@ -32,6 +32,7 @@ An empty date results to a title or a separator
 | 
				
			|||||||
                               name="date" value="{{ date|date:"Y-m-d" }}">
 | 
					                               name="date" value="{{ date|date:"Y-m-d" }}">
 | 
				
			||||||
                    </div>
 | 
					                    </div>
 | 
				
			||||||
                    <div class="control">
 | 
					                    <div class="control">
 | 
				
			||||||
 | 
					                        {% comment %}Translators: form button to select a date{% endcomment %}
 | 
				
			||||||
                        <button class="button is-primary">{% trans "Go" %}</button>
 | 
					                        <button class="button is-primary">{% trans "Go" %}</button>
 | 
				
			||||||
                    </div>
 | 
					                    </div>
 | 
				
			||||||
                </div>
 | 
					                </div>
 | 
				
			||||||
 | 
				
			|||||||
@ -1,13 +1,15 @@
 | 
				
			|||||||
{% extends "aircox/widgets/page_item.html" %}
 | 
					{% extends "aircox/widgets/page_item.html" %}
 | 
				
			||||||
{% load i18n easy_thumbnails_tags aircox %}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
{% comment %}
 | 
					{% comment %}
 | 
				
			||||||
 | 
					List item for an episode.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Context variables:
 | 
					Context variables:
 | 
				
			||||||
- object: episode
 | 
					- object: episode
 | 
				
			||||||
- diffusion: episode's diffusion
 | 
					- diffusion: episode's diffusion
 | 
				
			||||||
- hide_schedule: if True, do not display start time
 | 
					- hide_schedule: if True, do not display start time
 | 
				
			||||||
{% endcomment %}
 | 
					{% endcomment %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{% load i18n easy_thumbnails_tags aircox %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% block title %}
 | 
					{% block title %}
 | 
				
			||||||
{% if not object.is_published and object.program.is_published %}
 | 
					{% if not object.is_published and object.program.is_published %}
 | 
				
			||||||
<a href="{{ object.program.get_absolute_url }}">{{ object.title }}</a>
 | 
					<a href="{{ object.program.get_absolute_url }}">{{ object.title }}</a>
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,7 @@
 | 
				
			|||||||
{% load i18n aircox %}
 | 
					{% load i18n aircox %}
 | 
				
			||||||
{% comment %}
 | 
					{% comment %}
 | 
				
			||||||
 | 
					List item for a log, either for a logged track or diffusion (as diffusion).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Context objects:
 | 
					Context objects:
 | 
				
			||||||
- object: object to render
 | 
					- object: object to render
 | 
				
			||||||
- hide_schedule: if true, hide the schedule
 | 
					- hide_schedule: if true, hide the schedule
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,7 @@
 | 
				
			|||||||
{% load i18n easy_thumbnails_tags aircox %}
 | 
					{% load i18n easy_thumbnails_tags aircox %}
 | 
				
			||||||
{% comment %}
 | 
					{% comment %}
 | 
				
			||||||
 | 
					List item for a page
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Context variables:
 | 
					Context variables:
 | 
				
			||||||
- object: the object to render
 | 
					- object: the object to render
 | 
				
			||||||
- render_card: render as card
 | 
					- render_card: render as card
 | 
				
			||||||
 | 
				
			|||||||
@ -1,11 +1,14 @@
 | 
				
			|||||||
{% load i18n %}
 | 
					{% load i18n %}
 | 
				
			||||||
 | 
					{% comment %}
 | 
				
			||||||
 | 
					The audio player
 | 
				
			||||||
 | 
					{% endcomment %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% if audio_streams %}
 | 
					{% if audio_streams %}
 | 
				
			||||||
<br>
 | 
					<br>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<div class="box is-fullwidth is-fixed-bottom is-paddingless player"
 | 
					<div class="box is-fullwidth is-fixed-bottom is-paddingless player"
 | 
				
			||||||
    role="{% trans "player" %}"
 | 
					    role="{% trans "player" %}"
 | 
				
			||||||
    aria-description="{% trans "audio player used to listen to the radio" %}">
 | 
					    aria-description="{% trans "Audio player used to listen to the radio and podcasts" %}">
 | 
				
			||||||
    <noscript>
 | 
					    <noscript>
 | 
				
			||||||
        <audio src="{{ audio_streams.0 }}" controls>
 | 
					        <audio src="{{ audio_streams.0 }}" controls>
 | 
				
			||||||
            {% for stream in audio_streams %}
 | 
					            {% for stream in audio_streams %}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,3 +1,7 @@
 | 
				
			|||||||
 | 
					{% comment %}
 | 
				
			||||||
 | 
					List item for a podcast.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{% endcomment %}
 | 
				
			||||||
<div class="podcast">
 | 
					<div class="podcast">
 | 
				
			||||||
    {% if object.embed %}
 | 
					    {% if object.embed %}
 | 
				
			||||||
    {{ object.embed|safe }}
 | 
					    {{ object.embed|safe }}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,6 @@
 | 
				
			|||||||
{% comment %}
 | 
					{% comment %}
 | 
				
			||||||
 | 
					List item for a track
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Context:
 | 
					Context:
 | 
				
			||||||
- object: track to render
 | 
					- object: track to render
 | 
				
			||||||
{% endcomment %}
 | 
					{% endcomment %}
 | 
				
			||||||
 | 
				
			|||||||
@ -10,8 +10,12 @@ register = template.Library()
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
@register.filter(name='verbose_name')
 | 
					@register.filter(name='verbose_name')
 | 
				
			||||||
def do_verbose_name(obj, plural=False):
 | 
					def do_verbose_name(obj, plural=False):
 | 
				
			||||||
    """ Return model's verbose name (singular or plural) """
 | 
					    """
 | 
				
			||||||
    return obj._meta.verbose_name_plural if plural else \
 | 
					    Return model's verbose name (singular or plural) or `obj` if it is a
 | 
				
			||||||
 | 
					    string (can act for default values).
 | 
				
			||||||
 | 
					    """
 | 
				
			||||||
 | 
					    return obj if isinstance(obj, str) else \
 | 
				
			||||||
 | 
					           obj._meta.verbose_name_plural if plural else \
 | 
				
			||||||
           obj._meta.verbose_name
 | 
					           obj._meta.verbose_name
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@register.simple_tag(name='update_query')
 | 
					@register.simple_tag(name='update_query')
 | 
				
			||||||
 | 
				
			|||||||
@ -56,6 +56,12 @@ class BaseView(TemplateResponseMixin, ContextMixin):
 | 
				
			|||||||
            streams = streams and streams.split('\n')
 | 
					            streams = streams and streams.split('\n')
 | 
				
			||||||
            kwargs['audio_streams'] = streams
 | 
					            kwargs['audio_streams'] = streams
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if 'model' not in kwargs:
 | 
				
			||||||
 | 
					            model = getattr(self, 'model', None) or hasattr(self, 'object') and \
 | 
				
			||||||
 | 
					                        type(self.object)
 | 
				
			||||||
 | 
					            kwargs['model'] = model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        return super().get_context_data(**kwargs)
 | 
					        return super().get_context_data(**kwargs)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										130
									
								
								aircox_streamer/locale/fr/LC_MESSAGES/django.po
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										130
									
								
								aircox_streamer/locale/fr/LC_MESSAGES/django.po
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,130 @@
 | 
				
			|||||||
 | 
					# 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 <EMAIL@ADDRESS>, YEAR.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#, fuzzy
 | 
				
			||||||
 | 
					msgid ""
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					"Project-Id-Version: PACKAGE VERSION\n"
 | 
				
			||||||
 | 
					"Report-Msgid-Bugs-To: \n"
 | 
				
			||||||
 | 
					"POT-Creation-Date: 2020-01-06 14:15+0100\n"
 | 
				
			||||||
 | 
					"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 | 
				
			||||||
 | 
					"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 | 
				
			||||||
 | 
					"Language-Team: LANGUAGE <LL@li.org>\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:37
 | 
				
			||||||
 | 
					msgid "input"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: models.py:38
 | 
				
			||||||
 | 
					msgid "output"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: models.py:56
 | 
				
			||||||
 | 
					msgid "station"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: models.py:58
 | 
				
			||||||
 | 
					msgid "direction"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: models.py:59
 | 
				
			||||||
 | 
					msgid "type"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: models.py:61
 | 
				
			||||||
 | 
					msgid "active"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: models.py:62
 | 
				
			||||||
 | 
					msgid "this port is active"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: models.py:65
 | 
				
			||||||
 | 
					msgid "port settings"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: models.py:66
 | 
				
			||||||
 | 
					msgid ""
 | 
				
			||||||
 | 
					"list of comma separated params available; this is put in the output config "
 | 
				
			||||||
 | 
					"file as raw code; plugin related"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:19
 | 
				
			||||||
 | 
					msgid "Synchronize source with Liquidsoap"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:23
 | 
				
			||||||
 | 
					msgid "Synchronise"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:26
 | 
				
			||||||
 | 
					msgid "Restart current track"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:30
 | 
				
			||||||
 | 
					msgid "Restart"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:33
 | 
				
			||||||
 | 
					msgid "Skip current file"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:34
 | 
				
			||||||
 | 
					msgid "Skip"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:43
 | 
				
			||||||
 | 
					msgid "Add sound"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:51
 | 
				
			||||||
 | 
					msgid "Select a sound"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:53
 | 
				
			||||||
 | 
					msgid "Add a sound to the queue (queue may start playing)"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:62
 | 
				
			||||||
 | 
					msgid "Add"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:68
 | 
				
			||||||
 | 
					msgid "Sounds in queue"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:86
 | 
				
			||||||
 | 
					msgid "Status"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:96
 | 
				
			||||||
 | 
					msgid "Air time"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:106
 | 
				
			||||||
 | 
					msgid "Time left"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/source_item.html:114
 | 
				
			||||||
 | 
					msgid "Data source"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/streamer.html:19
 | 
				
			||||||
 | 
					msgid "Reload"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/streamer.html:26
 | 
				
			||||||
 | 
					#: templates/aircox_streamer/streamer.html:27
 | 
				
			||||||
 | 
					msgid "Select a station"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: urls.py:9 views.py:9
 | 
				
			||||||
 | 
					msgid "Streamer Monitor"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
@ -1,3 +1,4 @@
 | 
				
			|||||||
 | 
					{% comment %}List item for a source.{% endcomment %}
 | 
				
			||||||
{% load i18n %}
 | 
					{% load i18n %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<section class="box"><div class="columns is-desktop">
 | 
					<section class="box"><div class="columns is-desktop">
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,5 @@
 | 
				
			|||||||
{% extends "admin/base_site.html" %}
 | 
					{% extends "admin/base_site.html" %}
 | 
				
			||||||
 | 
					{% comment %}Admin tools used to manage the streamer.{% endcomment %}
 | 
				
			||||||
{% load i18n static %}
 | 
					{% load i18n static %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% block extrastyle %}{{ block.super }}
 | 
					{% block extrastyle %}{{ block.super }}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
Django>=2.2.0
 | 
					Django>=2.2.0,<3.0.0
 | 
				
			||||||
djangorestframework>=3.9.4
 | 
					djangorestframework>=3.9.4
 | 
				
			||||||
django-model-utils>=3.2.0
 | 
					django-model-utils>=3.2.0
 | 
				
			||||||
django-filter>=2.2.0
 | 
					django-filter>=2.2.0
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user