work on theme and translations

This commit is contained in:
bkfox 2017-12-14 15:56:40 +01:00
parent 01325a258a
commit 9ad47b795a
11 changed files with 738 additions and 794 deletions

View File

@ -1,64 +1,68 @@
# 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.
# French translation of Aircox
# Copyright (C) Aarys
# Copyright (C) Bkfox
# This file is distributed under the same license as the Aircox package.
# Aarys, 2016.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Project-Id-Version: Aircox 0.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-05-17 20:54+0200\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"
"POT-Creation-Date: 2017-12-14 15:52+0100\n"
"PO-Revision-Date: 2016-10-10 16:00+02\n"
"Last-Translator: Aarys\n"
"Language-Team: Aircox's translators team\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"
#: admin.py:82 models.py:728
#: aircox/admin.py:81 aircox/models.py:737
msgid "Schedule"
msgstr "Horaire"
#: admin.py:111 models.py:490
#: aircox/admin.py:110
msgid "start"
msgstr ""
#: aircox/admin.py:114 aircox/models.py:452 aircox/models.py:1475
msgid "end"
msgstr "fin"
#: admin.py:153
#: aircox/admin.py:156
msgid "Program"
msgstr "Programme"
#: admin.py:157
#: aircox/admin.py:160
msgid "Day"
msgstr "Jour"
#: admin.py:161
#: aircox/admin.py:164
msgid "Rerun"
msgstr "Rediffusion"
#: models.py:84
#: aircox/models.py:83
msgid "name"
msgstr "nom"
#: models.py:116
#: aircox/models.py:115
msgid "title"
msgstr "titre"
#: models.py:120
#: aircox/models.py:119
msgid "artist"
msgstr "artiste"
#: models.py:124
#: aircox/models.py:123
msgid "tags"
msgstr "tags"
#: models.py:128
#: aircox/models.py:127
msgid "information"
msgstr "information"
#: models.py:131
#: aircox/models.py:130
msgid ""
"additional informations about this track, such as the version, if is it a "
"remix, features, etc."
@ -66,378 +70,362 @@ msgstr ""
"informations additionnelles à propos de ce morceau, telles que la version, "
"s'ils'agit d'un remix, les fonctionnalités, etc"
#: models.py:136
#: aircox/models.py:135
msgid "position in the playlist"
msgstr "position dans la playlist"
#: models.py:139
#: aircox/models.py:138
msgid "in seconds"
msgstr "en secondes"
#: models.py:141
#: aircox/models.py:140
msgid "position in the playlist is expressed in seconds"
msgstr "position dans la playlist exprimée en secondes"
#: models.py:148 templates/aircox/controllers/stats.html:59
#: aircox/models.py:147 aircox/models.py:1501
#: aircox/templates/aircox/controllers/stats.html:58
msgid "Track"
msgstr "Morceau"
#: models.py:149
#: aircox/models.py:148
msgid "Tracks"
msgstr "Morceaux"
#: models.py:165
#: aircox/models.py:163
msgid "path"
msgstr "chemin"
#: models.py:166
#: aircox/models.py:164
msgid "path to the working directory"
msgstr "chemin vers le repertoire courant"
#: models.py:171
#: aircox/models.py:169
#, fuzzy
#| msgid "station"
msgid "default station"
msgstr "station"
msgstr "station par défaut"
#: models.py:173
#: aircox/models.py:171
msgid "if checked, this station is used as the main one"
msgstr ""
msgstr "si coché, cette station est utilisée comme station principale"
#: models.py:370 models.py:1181 models.py:1318
#: aircox/models.py:332 aircox/models.py:1222 aircox/models.py:1457
msgid "station"
msgstr "station"
#: models.py:373 models.py:1193
#: aircox/models.py:335 aircox/models.py:1234
msgid "active"
msgstr "actif"
#: models.py:375
#: aircox/models.py:337
msgid "if not checked this program is no longer active"
msgstr "si selectionné, ce programme n'est plus actif"
#: models.py:378
#: aircox/models.py:340
msgid "syncronise"
msgstr "synchroniser"
#: models.py:380
#: aircox/models.py:342
msgid "update later diffusions according to schedule changes"
msgstr ""
"mettre à jour les diffusions suivantes selon les changements de l'horaire"
#: models.py:476 models.py:521
#: aircox/models.py:438 aircox/models.py:483
msgid "related program"
msgstr "programme apparenté"
#: models.py:479
#: aircox/models.py:441
msgid "delay"
msgstr "délai"
#: models.py:481
#: aircox/models.py:443
msgid "minimal delay between two sound plays"
msgstr "délai minimum entre deux sons"
#: models.py:484
#: aircox/models.py:446
msgid "begin"
msgstr "début"
#: models.py:486 models.py:492
#: aircox/models.py:448 aircox/models.py:454
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é"
#: models.py:524 models.py:1330
#: aircox/models.py:486 aircox/models.py:1469
msgid "date"
msgstr "date"
#: models.py:525
#, fuzzy
#| msgid "start of the diffusion"
#: aircox/models.py:487
msgid "date of the first diffusion"
msgstr "début de la diffusion"
msgstr "date de la première diffusion"
#: models.py:528 models.py:995
#: aircox/models.py:490
msgid "timezone"
msgstr "zone horaire"
#: aircox/models.py:492
msgid "timezone used for the date"
msgstr "zone horaire utilisée pour la date"
#: aircox/models.py:495 aircox/models.py:1036
msgid "duration"
msgstr "durée"
#: models.py:529
#: aircox/models.py:496
msgid "regular duration"
msgstr "durée normale"
#: models.py:532
#: aircox/models.py:499
msgid "frequency"
msgstr "fréquence"
#: models.py:535
#: aircox/models.py:502
msgid "ponctual"
msgstr "ponctuel"
#: models.py:536
#: aircox/models.py:503
msgid "first week of the month"
msgstr "première semaine du mois"
#: models.py:537
#: aircox/models.py:504
msgid "second week of the month"
msgstr "deuxième semaine du mois"
#: models.py:538
#: aircox/models.py:505
msgid "third week of the month"
msgstr "troisième semaine du mois"
#: models.py:539
#: aircox/models.py:506
msgid "fourth week of the month"
msgstr "quatrième semaine du mois"
#: models.py:540
#: aircox/models.py:507
msgid "last week of the month"
msgstr "dernière semaine du mois"
#: models.py:541
#: aircox/models.py:508
msgid "first and third weeks of the month"
msgstr "première et troisième semaines du mois"
#: models.py:542
#: aircox/models.py:509
msgid "second and fourth weeks of the month"
msgstr "deuxième et quatrième semaines du mois"
#: models.py:543
#: aircox/models.py:510
msgid "every week"
msgstr "toutes les semaines"
#: models.py:544
#: aircox/models.py:511
msgid "one week on two"
msgstr "une semaine sur deux"
#: models.py:550
#: aircox/models.py:517
msgid "initial schedule"
msgstr "horaire initial"
#: models.py:729
#: aircox/models.py:738
msgid "Schedules"
msgstr "Horaires"
#: models.py:826 models.py:965
#: aircox/models.py:832 aircox/models.py:1004
msgid "program"
msgstr "programme"
#: models.py:830 models.py:976 models.py:1188 models.py:1312
#: aircox/models.py:836 aircox/models.py:1016 aircox/models.py:1229
#: aircox/models.py:1451
msgid "type"
msgstr "type"
#: models.py:835
#: aircox/models.py:841
msgid "initial diffusion"
msgstr "diffusion initiale"
#: models.py:837
#: aircox/models.py:844
msgid "the diffusion is a rerun of this one"
msgstr "la diffusion est une rediffusion de celle-ci"
#: models.py:847 models.py:849
#: aircox/models.py:855 aircox/models.py:857
msgid "conflicts"
msgstr ""
#: models.py:852
#: aircox/models.py:860
msgid "start of the diffusion"
msgstr "début de la diffusion"
#: models.py:853
#: aircox/models.py:861
msgid "end of the diffusion"
msgstr "fin de la diffusion"
#: models.py:944 views.py:198
#: aircox/models.py:983 aircox/models.py:1487 aircox/views.py:220
msgid "Diffusion"
msgstr "Diffusion"
#: models.py:945 templates/aircox/controllers/monitor.html:151
#: aircox/models.py:984 aircox/templates/aircox/controllers/monitor.html:151
msgid "Diffusions"
msgstr "Diffusions"
#: models.py:948
#: aircox/models.py:987
msgid "edit the diffusion's planification"
msgstr "éditer la planification de la diffusion"
#: models.py:967
#: aircox/models.py:1006
msgid "program related to it"
msgstr "programme apparenté à celui-ci"
#: models.py:971
#: aircox/models.py:1010
msgid "diffusion"
msgstr "diffusion"
#: models.py:973
#: aircox/models.py:1013
msgid "initial diffusion related it"
msgstr "diffusion initiale apparentée"
#: models.py:981
#: aircox/models.py:1021
msgid "file"
msgstr "fichier"
#: models.py:990
#: aircox/models.py:1031
msgid "embed HTML code"
msgstr "code HTML intégré"
#: models.py:992
#: aircox/models.py:1033
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"
#: models.py:997
#: aircox/models.py:1038
msgid "duration of the sound"
msgstr "durée du son"
#: models.py:1000
#: aircox/models.py:1041
msgid "modification time"
msgstr "temps de la modification"
#: models.py:1002
#: aircox/models.py:1043
msgid "last modification date and time"
msgstr "date et heure de la dernière modification"
#: models.py:1005
#: aircox/models.py:1046
msgid "good quality"
msgstr "bonne qualité"
#: models.py:1006
#: aircox/models.py:1047
msgid "sound's quality is okay"
msgstr "la qualité du son est okay"
#: models.py:1010
#: aircox/models.py:1051
msgid "public"
msgstr "public"
#: models.py:1012
#: aircox/models.py:1053
msgid "the sound is accessible to the public"
msgstr "ce son est accessible au public"
#: models.py:1072
#: aircox/models.py:1113
msgid "unknown"
msgstr ""
#: models.py:1148
#: aircox/models.py:1189 aircox/models.py:1494
msgid "Sound"
msgstr "Son"
#: models.py:1149
#: aircox/models.py:1190
msgid "Sounds"
msgstr "Sons"
#: models.py:1184
#, fuzzy
#| msgid "duration"
#: aircox/models.py:1225
msgid "direction"
msgstr "durée"
msgstr "direction"
#: models.py:1195
#, fuzzy
#| msgid "this output is active"
#: aircox/models.py:1236
msgid "this port is active"
msgstr "cette sortie est active"
msgstr "ce port est actif"
#: models.py:1198
#, fuzzy
#| msgid "output settings"
#: aircox/models.py:1239
msgid "port settings"
msgstr "paramètres de sortie"
msgstr "paramètres du port"
#: models.py:1199
#, fuzzy
#| msgid ""
#| "list of comma separated params available; this is put in the output "
#| "config as raw code; plugin related"
#: aircox/models.py:1240
msgid ""
"list of comma separated params available; this is put in the output config "
"file as raw code; plugin related"
msgstr ""
"liste des paramètres disponibles séparés par des virgules; placé dans la "
"configuration de sortieen temps que code brut; plugin apparenté"
"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é"
#: models.py:1319
#, fuzzy
#| msgid "regular duration"
#: aircox/models.py:1458
msgid "related station"
msgstr "durée normale"
msgstr "station relative"
#: models.py:1324
#: aircox/models.py:1463
msgid "source"
msgstr "source"
#: models.py:1326
#: aircox/models.py:1465
msgid "identifier of the source related to this log"
msgstr ""
msgstr "identifiant de la source relative à ce log"
#: models.py:1334
#: aircox/models.py:1480
msgid "comment"
msgstr "commentaire"
#: templates/aircox/controllers/monitor.html:6
msgid "Monitoring streamer"
msgstr ""
#: 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"
#: templates/aircox/controllers/monitor.html:112
msgid "Monitor Streamer"
msgstr ""
#: templates/aircox/controllers/monitor.html:115
#: aircox/templates/aircox/controllers/monitor.html:115
msgid "refresh"
msgstr ""
msgstr "rafraîchir"
#: templates/aircox/controllers/monitor.html:129
#, fuzzy, python-format
#| msgid ""
#| "\n"
#| " %(items_count)s items, with a total of "
#| "%(tracks_count)s tracks\n"
#| " "
#: aircox/templates/aircox/controllers/monitor.html:129
#, python-format
msgid ""
"\n"
" Current source: %(current_source)s\n"
" "
msgstr ""
"\n"
" %(items_counts)s items, avec un total de %(tracks_count)s "
"tracks\n"
" Source courante: %(current_source)s\n"
" "
#: templates/aircox/controllers/monitor.html:136
#: templates/aircox/controllers/monitor.html:175
#: aircox/templates/aircox/controllers/monitor.html:136
#: aircox/templates/aircox/controllers/monitor.html:175
msgid "restart"
msgstr ""
msgstr "redémarrer"
#: templates/aircox/controllers/monitor.html:138
#: templates/aircox/controllers/monitor.html:177
#: aircox/templates/aircox/controllers/monitor.html:138
#: aircox/templates/aircox/controllers/monitor.html:177
msgid "skip"
msgstr "passer"
#: templates/aircox/controllers/monitor.html:143
#, fuzzy
#| msgid "source"
#: aircox/templates/aircox/controllers/monitor.html:143
msgid "Source"
msgstr "source"
msgstr "Source"
#: templates/aircox/controllers/monitor.html:144
#: aircox/templates/aircox/controllers/monitor.html:144
msgid "File"
msgstr ""
msgstr "Fichier"
#: templates/aircox/controllers/monitor.html:145
#: aircox/templates/aircox/controllers/monitor.html:145
msgid "Actions*"
msgstr ""
msgstr "Actions"
#: templates/aircox/controllers/monitor.html:158
#: aircox/templates/aircox/controllers/monitor.html:158
msgid "current"
msgstr ""
msgstr "courant"
#: templates/aircox/controllers/monitor.html:161
#, fuzzy
#| msgid "diffusion"
#: aircox/templates/aircox/controllers/monitor.html:161
msgid "diffusions"
msgstr "diffusion"
msgstr "diffusions"
#: templates/aircox/controllers/monitor.html:163
#, fuzzy
#| msgid "Stream"
#: aircox/templates/aircox/controllers/monitor.html:163
msgid "stream"
msgstr "Stream"
msgstr "stream"
#: templates/aircox/controllers/monitor.html:186
#: aircox/templates/aircox/controllers/monitor.html:186
msgid ""
"\n"
" *: Due to some technical issues, it might take up to 30 seconds to "
@ -445,55 +433,59 @@ msgid ""
" "
msgstr ""
#: templates/aircox/controllers/stats.html:9
#: templates/aircox/controllers/stats.html:14
#: aircox/templates/aircox/controllers/stats.html:9
#: aircox/templates/aircox/controllers/stats.html:14
msgid "Statistics of the stations"
msgstr "Statistiques des stations"
#: templates/aircox/controllers/stats.html:19
#: aircox/templates/aircox/controllers/stats.html:18
msgid "Go to this date:"
msgstr "Aller à cette date:"
#: aircox/templates/aircox/controllers/stats.html:19
msgid "day"
msgstr "jour"
#: templates/aircox/controllers/stats.html:21
#: aircox/templates/aircox/controllers/stats.html:21
msgid "month"
msgstr "mois"
#: templates/aircox/controllers/stats.html:23
#: aircox/templates/aircox/controllers/stats.html:23
msgid "year"
msgstr "année"
#: templates/aircox/controllers/stats.html:25
#: aircox/templates/aircox/controllers/stats.html:25
msgid "Show"
msgstr ""
msgstr "Montrer"
#: templates/aircox/controllers/stats.html:39
#: aircox/templates/aircox/controllers/stats.html:38
msgid "Date"
msgstr "Date"
#: templates/aircox/controllers/stats.html:40
#: aircox/templates/aircox/controllers/stats.html:39
msgid "Type"
msgstr "Type"
#. Translators "Header for statistics view"
#: templates/aircox/controllers/stats.html:42
#: aircox/templates/aircox/controllers/stats.html:41
msgid "Diffusion or sound played"
msgstr "Diffusion ou son joué"
#: templates/aircox/controllers/stats.html:43
#: aircox/templates/aircox/controllers/stats.html:42
msgid "Tags"
msgstr "Tags"
#: templates/aircox/controllers/stats.html:68
#: aircox/templates/aircox/controllers/stats.html:67
msgid "Total"
msgstr "Total"
#: templates/aircox/controllers/stats.html:72
#: aircox/templates/aircox/controllers/stats.html:71
#, fuzzy, python-format
#| msgid ""
#| "\n"
#| " %(items_count)s items, with a total of "
#| "%(tracks_count)s tracks\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 "
@ -501,18 +493,10 @@ msgid ""
" "
msgstr ""
"\n"
" %(items_counts)s items, avec un total de %(tracks_count)s "
"tracks\n"
" %(items_counts)s items, avec un total de %(tracks_count)s "
"pistes\n"
" "
#: views.py:216
#: aircox/views.py:230
msgid "Stream"
msgstr "Stream"
#~ msgid "station on which the event occured"
#~ msgstr "station sur laquelle l'événement a eu lieu"
#~ msgid "source id that make it happen on the station"
#~ msgstr "id de la source qui le fait arriver sur la station"
#~ msgid "update"
#~ msgstr "mettre à jour"

View File

@ -633,7 +633,8 @@ class Schedule(models.Model):
if self.frequency == Schedule.Frequency.ponctual:
return []
date = utils.date_or_default(date, True).replace(day=1)
# set to 12h in order to avoid potential bugs with dst
date = utils.date_or_default(date, True).replace(day=1, hour=12)
freq = self.frequency
# last of the month

View File

@ -3,7 +3,7 @@
{% load static %}
{% block title %}
{% trans "Monitoring streamer" %}
{% trans "Streamer monitor" %}
{% endblock %}
{% block content %}
@ -109,7 +109,7 @@ Monitor.update(50000);
</script>
<header>
<h1>{% trans "Monitor Streamer" %}</h1>
<h1>{% trans "Streamer monitor" %}</h1>
<input type="button" onclick="Monitor.update();"
value="{% trans "refresh" %}">

View File

@ -15,7 +15,7 @@
{# TODO here #}
<form action="?" method="GET">
Go to this date:
{% 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" %}"

File diff suppressed because it is too large Load Diff

View File

@ -1,44 +1,45 @@
/**
* Define rules for the default layouts, and some useful classes
*/
/** general **/
body {
max-width: 92em;
margin: 0em auto;
padding: 0em;
background-color: #F2F2F2;
font-family: "Myriad Pro",Calibri,Helvetica,Arial,sans-serif;
}
h1, h2, h3, h4, h5 {
font-family: "Myriad Pro",Calibri,Helvetica,Arial,sans-serif;
margin: 0.4em 0em;
}
ul {
margin: 0em;
h1:first-letter, h2:first-letter, h3:first-letter, h4:first-letter {
text-transform: capitalize;
}
h1 { font-size: 1.4em; }
h2 { font-size: 1.2em; }
h3 { font-size: 0.9em; }
h4 { font-size: 0.8em; }
/** classes **/
.float_right {
float: right;
h1 > *, h2 > *, h3 > *, h4 > * { vertical-align: middle; }
a {
cursor: pointer;
text-decoration: none;
color: #616161;
}
.float_left {
float: left;
}
a:hover { color: #007EDF; }
a:hover > .small_icon { box-shadow: 0em 0em 0.1em #007EDF; }
.small {
font-size: 0.8em;
}
ul { margin: 0em; }
.icon {
max-width: 2em;
max-height: 2em;
vertical-align: middle;
}
.small_icon {
max-height: 1.5em;
vertical-align: middle;
}
/**** position & box ****/
.float_right { float: right; }
.float_left { float: left; }
.flex_row {
@ -62,7 +63,48 @@ ul {
}
/** content: menus **/
.small {
font-size: 0.8em;
}
/**** indicators & info ****/
time, .tags {
font-size: 0.9em;
color: #616161;
}
.info {
font-size: 0.9em;
padding: 0.1em;
color: #007EDF;
}
.error { color: red; }
.warning { color: orange; }
.success { color: green; }
.icon {
max-width: 2em;
max-height: 2em;
vertical-align: middle;
}
.small_icon {
max-height: 1.5em;
vertical-align: middle;
}
/** main layout **/
body > * {
max-width: 92em;
margin: 0em auto;
padding: 0em;
}
.menu {
padding: 0.4em;
}
@ -71,35 +113,40 @@ ul {
display: none;
}
body > .top *,
body > .header * {
vertical-align: middle;
}
body > .top section,
body > .header section {
display: inline-block;
}
.menu.row section {
display: inline-block;
}
body > .top a,
body > .header a {
display: inline-block;
margin: 0.2em 1em;
}
.menu.col > section {
margin-bottom: 1em;
}
/**** top + header layout ****/
body > .top {
position: fixed;
z-index: 10000000;
top: 0;
width: calc(100% - 0.8em);
max-width: calc(92em - 0.8em);
height: 2.5em;
left: 0;
width: 100%;
max-width: 100%;
margin: 0em auto;
background-color: white;
box-shadow: 0em 0em 0.2em black;
border-bottom: 0.1em #dfdfdf solid;
box-shadow: 0em 0.1em 0.1em rgba(255,255,255,0.7);
box-shadow: 0em 0.1em 0.5em rgba(0,0,0,0.1);
transition: opacity 1.5s;
}
body > .top > .menu {
max-width: 92em;
height: 2.5em;
margin: 0em auto;
}
body[scrollY] > .top {
opacity: 0.1;
transition: opacity 1.5s 1s;
@ -117,6 +164,7 @@ body > .header {
margin-bottom: 1em;
}
/** FIXME: remove this once image slides impled **/
body > .header > div {
width: 15000%;
}
@ -127,29 +175,142 @@ body > .header {
}
.page_left { margin-right: 2em; }
.page_right { margin-left: 2em; }
.page_left, .page_right {
/**** page layout ****/
.page {
display: flex;
}
.page > main {
flex: auto;
overflow: hidden;
margin: 0em 0em;
border-radius: 0.4em;
border: 0.1em #dfdfdf solid;
background-color: rgba(255,255,255,0.9);
box-shadow: inset 0.1em 0.1em 0.2em rgba(255, 255, 255, 0.8);
}
.page > nav {
flex: 1;
width: 20em;
overflow: hidden;
max-width: 16em;
}
.page_left > section,
.page_right > section {
margin-bottom: 1em;
.page > .menu.col:first-child { margin-right: 2em; }
.page > main + .menu.col { margin-left: 2em; }
/**** page main ****/
main:not(.detail) h1 {
margin: 0em 0em 0.4em 0em;
}
.page_left .section_link_list a,
.page_right .section_link_list a {
display: block;
main .post_content {
display: block;
}
main .post_content section {
display: inline-block;
width: calc(50% - 1em);
vertical-align: top;
}
main.detail {
padding: 0em;
margin: 0em;
}
main > .content {
padding: 1em;
}
main > header {
margin: 0em;
padding: 1em;
position: relative;
}
main > header .foreground {
position: absolute;
left: 0em;
top: 0em;
width: calc(100% - 2em);
padding: 1em;
}
main > header h1 {
width: calc(100% - 2em);
margin: 0em;
margin-bottom: 0.8em;
}
main header .headline {
display: inline-block;
width: calc(60% - 0.8em);
min-height: 1.2em;
font-size: 1.2em;
font-weight: bold;
}
main > header .background {
margin: -1em;
height: 17em;
overflow: hidden;
position: relative;
}
main > header .background img {
position: absolute;
/*! top: -40%; */
/*! left: -40%; */
width: 100%;
min-height: 100%;
filter: blur(20px);
opacity: 0.3;
}
main > header .cover {
right: 0em;
top: 1em;
width: auto;
max-height: calc(100% - 2em);
max-width: calc(40% - 2em);
margin: 1em;
position: absolute;
box-shadow: 0em 0em 4em rgba(0, 0, 0, 0.4);
}
/** sections **/
body section ul {
padding: 0em;
padding-left: 1em;
}
/**** link list ****/
.menu.row .section_link_list > a {
display: inline-block;
margin: 0.2em 1em;
}
.menu.col .section_link_list > a {
display: block;
}
/** content: menus **/
/** content: list & items **/
.list {
width: 100%;

View File

@ -16,163 +16,8 @@
* - active: #007EDF
*/
/** main **/
body {
background-color: #F2F2F2;
font-family: "Myriad Pro",Calibri,Helvetica,Arial,sans-serif;
padding: 0em;
}
h1, h2, h3 {
font-family: "Myriad Pro",Calibri,Helvetica,Arial,sans-serif;
}
h1:first-letter, h2:first-letter, h3:first-letter {
text-transform: capitalize;
}
h1 { font-size: 1.4em; }
h2 { font-size: 1.2em; }
h3 { font-size: 0.9em; }
h2 * { vertical-align: middle; }
/** info **/
time, .tags {
font-size: 0.9em;
color: #616161;
}
.info {
font-size: 0.9em;
padding: 0.1em;
color: #007EDF;
}
a {
cursor: pointer;
text-decoration: none;
color: #616161;
}
a:hover {
color: #007EDF;
}
a:hover > .small_icon {
box-shadow: 0em 0em 0.1em #007EDF;
}
.error { color: red; }
.warning { color: orange; }
.success { color: green; }
/** page **/
.page > nav {
width: 20em;
overflow: hidden;
}
main {
background-color: rgba(255,255,255,0.9);
margin: 0em 0em;
box-shadow: 0em 0em 0.2em black;
width: 60%;
}
main > .content {
/*! margin: 1em; */
}
main:not(.detail) h1 {
margin: 0em 0em 0.4em 0em;
}
main .post_content {
display: block;
}
main .post_content section {
display: inline-block;
width: calc(50% - 1em);
vertical-align: top;
}
/** detail view **/
main.detail {
padding: 0em;
margin: 0em;
}
main > .content {
padding: 1em;
}
main > header {
margin: 0em;
padding: 1em;
position: relative;
}
main > header .foreground {
position: absolute;
left: 0em;
top: 0em;
width: calc(100% - 2em);
padding: 1em;
}
main > header h1 {
width: calc(100% - 2em);
margin: 0em;
margin-bottom: 0.8em;
}
main header .headline {
display: inline-block;
width: calc(60% - 0.8em);
min-height: 1.2em;
font-size: 1.2em;
font-weight: bold;
}
main > header .background {
margin: -1em;
height: 17em;
overflow: hidden;
position: relative;
}
main > header .background img {
position: absolute;
/*! top: -40%; */
/*! left: -40%; */
width: 100%;
min-height: 100%;
filter: blur(20px);
opacity: 0.3;
}
main > header .cover {
right: 0em;
top: 1em;
width: auto;
max-height: calc(100% - 2em);
max-width: calc(40% - 2em);
margin: 1em;
position: absolute;
box-shadow: 0em 0em 4em rgba(0, 0, 0, 0.4);
}
/** player **/
.player[state='playing'] .item[selected] .button > img {

View File

@ -34,22 +34,24 @@
</head>
{% spaceless %}
<body>
<div class="menu top">
{% render_sections position="top" %}
</div>
<nav class="top">
<div class="menu row">
{% render_sections position="top" %}
<div>
</nav>
<header class="header">
<header class="header menu row">
<div>
{% render_sections position="header" %}
</div>
</header>
<div class="page flex_row">
<nav class="menu page_left flex_item">
<nav class="menu col page_left flex_item">
{% render_sections position="page_left" %}
</nav>
<main class="flex_item {% if not object_list %}detail{% endif %}">
<main class="{% if not object_list %}detail{% endif %}">
{% if messages %}
<ul class="messages">
{% for message in messages %}
@ -107,7 +109,7 @@
</main>
<nav class="menu page_right flex_item">
<nav class="menu col page_right flex_item">
{% render_sections position="page_right" %}
</nav>
</div>

View File

@ -9,7 +9,7 @@ scripts/launch_in_venv ./manage.py diffusions --update --next-month --mode auto
cd -
# - archiver monitoring for the next month
scripts/launch_in_venv ./manage.py archiver -a 60
scripts/launch_in_venv ./manage.py archiver -a 90
cd -