From 230a10538586ce07c1c672b8d1d0cef3d3127175 Mon Sep 17 00:00:00 2001
From: Clemens Hopfer
Date: Tue, 16 Oct 2018 20:16:45 +0200
Subject: add PrivacyWeek 2018
---
configs/conferences/jh-berlin-2018/config.php | 69 +++---
.../conferences/pw18/assets/header-privacyweek.jpg | Bin 0 -> 151416 bytes
configs/conferences/pw18/config.php | 239 +++++++++++++++++++++
configs/conferences/pw18/download.sh | 8 +
configs/conferences/pw18/main.less.disabled | 200 +++++++++++++++++
5 files changed, 481 insertions(+), 35 deletions(-)
create mode 100644 configs/conferences/pw18/assets/header-privacyweek.jpg
create mode 100644 configs/conferences/pw18/config.php
create mode 100755 configs/conferences/pw18/download.sh
create mode 100644 configs/conferences/pw18/main.less.disabled
(limited to 'configs/conferences')
diff --git a/configs/conferences/jh-berlin-2018/config.php b/configs/conferences/jh-berlin-2018/config.php
index 1a93421..3a0d422 100644
--- a/configs/conferences/jh-berlin-2018/config.php
+++ b/configs/conferences/jh-berlin-2018/config.php
@@ -1,4 +1,4 @@
- "https://live.ber.c3voc.de/releases/schedules/schedule-jh18-berlin.xml",
-
+ 'SCHEDULE' => true,
/**
* Name des Raums im Fahrplan
* Wenn diese Zeile auskommentiert ist wird der Raum-Slug verwendet
*/
- 'SCHEDULE_NAME' => 'room1',
+ 'SCHEDULE_NAME' => 'buehne1',
/**
* Feedback anzeigen (boolean)
@@ -356,37 +355,37 @@
// * Konfigurationen zum Konferenz-Fahrplan
// * Wird dieser Block auskommentiert, werden alle Fahrplan-Bezogenen Features deaktiviert
// */
- //$CONFIG['SCHEDULE'] = array(
-// /**
-// * URL zum Fahrplan-XML
-// *
-// * Diese URL muss immer verfügbar sein, sonst können kann die Programm-Ansicht
-// * aufhören zu funktionieren. Wenn die Quelle unverlässlich ist ;) sollte ein
-// * externer HTTP-Cache vorgeschaltet werden.
-// */
-// 'URL' => 'configs/conferences/jh-koeln-2018/schedule.xml',
-//
-// /**
-// * Nur die angegebenen Räume aus dem Fahrplan beachten
-// *
-// * Wird diese Zeile auskommentiert, werden alle Räume angezeigt
-// */
-// 'ROOMFILTER' => array('S1'),
-//
-// /**
-// * Skalierung der Programm-Vorschau in Sekunden pro Pixel
-// */
-// 'SCALE' => 7,
-//
-// /**
-// * Simuliere das Verhalten als wäre die Konferenz bereits heute
-// *
-// * Diese folgende Beispiel-Zeile Simuliert, dass das
-// * Konferenz-Datum 2014-12-29 auf den heutigen Tag 2015-02-24 verschoben ist.
-// */
-// //'SIMULATE_OFFSET' => strtotime(/* Conference-Date */ '2018-05-21') - strtotime(/* Today */ '2018-05-19'),
-// 'SIMULATE_OFFSET' => 0,
-//);
+ $CONFIG['SCHEDULE'] = array(
+ /**
+ * URL zum Fahrplan-XML
+ *
+ * Diese URL muss immer verfügbar sein, sonst können kann die Programm-Ansicht
+ * aufhören zu funktionieren. Wenn die Quelle unverlässlich ist ;) sollte ein
+ * externer HTTP-Cache vorgeschaltet werden.
+ */
+ 'URL' => 'https://live.ber.c3voc.de/releases/schedules/schedule-jh18-berlin.xml',
+
+ /**
+ * Nur die angegebenen Räume aus dem Fahrplan beachten
+ *
+ * Wird diese Zeile auskommentiert, werden alle Räume angezeigt
+ */
+ //'ROOMFILTER' => array('buehne1'),
+
+ /**
+ * Skalierung der Programm-Vorschau in Sekunden pro Pixel
+ */
+ 'SCALE' => 7,
+
+ /**
+ * Simuliere das Verhalten als wäre die Konferenz bereits heute
+ *
+ * Diese folgende Beispiel-Zeile Simuliert, dass das
+ * Konferenz-Datum 2014-12-29 auf den heutigen Tag 2015-02-24 verschoben ist.
+ */
+ //'SIMULATE_OFFSET' => strtotime(/* Conference-Date */ '2018-05-21') - strtotime(/* Today */ '2018-05-19'),
+ //'SIMULATE_OFFSET' => 0,
+);
return $CONFIG;
diff --git a/configs/conferences/pw18/assets/header-privacyweek.jpg b/configs/conferences/pw18/assets/header-privacyweek.jpg
new file mode 100644
index 0000000..2921f0a
Binary files /dev/null and b/configs/conferences/pw18/assets/header-privacyweek.jpg differ
diff --git a/configs/conferences/pw18/config.php b/configs/conferences/pw18/config.php
new file mode 100644
index 0000000..38d9bae
--- /dev/null
+++ b/configs/conferences/pw18/config.php
@@ -0,0 +1,239 @@
+ strtotime("2018-10-22 15:00"),
+
+ /**
+ * Der Endzeitpunkt der Konferenz als Unix-Timestamp. Befinden wir uns danach, wird eine Danke-Und-Kommen-Sie-
+ * Gut-Nach-Hause-Seite sowie einem Ausblick auf die kommenden Events angezeigt.
+ *
+ * Wird dieser Zeitpunkt nicht angegeben, endet die Konferenz nie. (Siehe aber CLOSED weiter unten)
+ */
+ 'ENDS_AT' => strtotime("2018-10-28 18:00"),
+
+ /**
+ * Hiermit kann die Funktionalitaet von STARTS_AT/ENDS_AT überschrieben werden. Der Wert 'before'
+ * simuliert, dass die Konferenz noch nicht begonnen hat. Der Wert 'after' simuliert, dass die Konferenz
+ * bereits beendet ist. 'running' simuliert eine laufende Konferenz.
+ *
+ * Der Boolean true ist aus Abwärtskompatibilitätsgründen äquivalent zu 'after'. False ist äquivalent
+ * zu 'running'.
+ */
+ //'CLOSED' => 'running',
+
+ /**
+ * Titel der Konferenz (kann Leer- und Sonderzeichen enthalten)
+ * Dieser im Seiten-Header, im
-Tag, in der About-Seite und ggf. ab weiteren Stellen als
+ * Anzeigetext benutzt
+ */
+ 'TITLE' => 'PrivacyWeek 2018',
+
+ /**
+ * Veranstalter
+ * Wird für den -Tag verdet. Wird diese Zeile auskommentiert, wird kein solcher
+ * -Tag generiert.
+ */
+ 'AUTHOR' => 'Chaos Computer Club Wien (C3W)',
+
+ /**
+ * Beschreibungstext
+ * Wird für den -Tag verdet. Wird diese Zeile auskommentiert, wird kein solcher
+ * -Tag generiert.
+ */
+ 'DESCRIPTION' => 'Konferenz zum Thema „Privatsphäre im digitalen Zeitalter“. Eine Woche, 100 Vorträge, Workshops und Diskussionsrunden.',
+
+ /**
+ * Schlüsselwortliste, Kommasepariert
+ * Wird für den -Tag verdet. Wird diese Zeile auskommentiert, wird kein solcher
+ * -Tag generiert.
+ */
+ 'KEYWORDS' => 'PW18, PrivacyWeek, C3W, Vienna, Wien, Privacy',
+
+ /**
+ * HTML-Code für den Footer (z.B. für spezielle Attribuierung mit -Tags)
+ * Sollte üblicherweise nur Inline-Elemente enthalten
+ * Wird diese Zeile auskommentiert, wird die Standard-Attribuierung für (c3voc.de) verwendet
+ */
+ 'FOOTER_HTML' => '
+ PrivacyWeek 2018
+ by Chaos Computer Club Wien (C3W) &
+ C3VOC
+ ',
+
+ /**
+ * HTML-Code für den Banner (nur auf der Startseite, direkt unter dem Header)
+ * wird üblicherweise für KeyVisuals oder Textmarke verwendet (vgl. Blaues
+ * Wischiwaschi auf http://media.ccc.de/)
+ *
+ * Dieser HTML-Block wird üblicherweise in der main.less speziell für die
+ * Konferenz umgestaltet.
+ *
+ * Wird diese Zeile auskommentiert, wird kein Banner ausgegeben.
+ */
+/* 'BANNER_HTML' => '
+
+ ',
+*/
+
+ /**
+ * Link zu den Recordings
+ * Wird diese Zeile auskommentiert, wird der Link nicht angezeigt
+ */
+ 'RELEASES' => 'https://media.ccc.de/c/pw18',
+
+ /**
+ * Um die interne ReLive-Ansicht zu aktivieren, kann hier ein ReLive-JSON
+ * konfiguriert werden. Üblicherweise wird diese Datei über das Script
+ * configs/download.sh heruntergeladen, welches von einem Cronjob
+ * regelmäßig getriggert wird.
+ *
+ * Wird diese Zeile auskommentiert, wird der Link nicht angezeigt
+ */
+ 'RELIVE_JSON' => 'https://live.ber.c3voc.de/relive/pw18/index.json',
+);
+
+/**
+ * Konfiguration der Stream-Übersicht auf der Startseite
+ */
+$CONFIG['OVERVIEW'] = array(
+ /**
+ * Abschnitte aud der Startseite und darunter aufgeführte Räume
+ * Es können beliebig neue Gruppen und Räume hinzugefügt werden
+ *
+ * Die Räume müssen in $CONFIG['ROOMS'] konfiguriert werden,
+ * sonst werden sie nicht angezeigt.
+ */
+ 'GROUPS' => array(
+ 'Live' => array(
+ 'saal1',
+ 'saal2',
+ ),
+ ),
+);
+
+
+
+/**
+ * Liste der Räume (= Audio & Video Produktionen, also auch DJ-Sets oä.)
+ */
+$CONFIG['ROOMS'] = array(
+ 'saal1' => array(
+ 'DISPLAY' => 'Saal 1',
+ 'STREAM' => 'q1',
+ 'PREVIEW' => true,
+
+ 'TRANSLATION' => true,
+ 'SD_VIDEO' => true,
+ 'HD_VIDEO' => true,
+ 'DASH' => true,
+ 'AUDIO' => true,
+ 'SLIDES' => false,
+ 'MUSIC' => false,
+
+ 'SCHEDULE' => true,
+ 'SCHEDULE_NAME' => 'Saal 1',
+ 'FEEDBACK' => false,
+ 'SUBTITLES' => false,
+ 'EMBED' => true,
+ 'IRC' => false,
+ 'TWITTER' => true,
+ 'TWITTER_CONFIG' => array(
+ 'DISPLAY' => '#pw18 @ twitter/mastodon',
+ 'TEXT' => '#pw18',
+ ),
+ ),
+
+ 'saal2' => array(
+ 'DISPLAY' => 'Saal 2',
+ 'STREAM' => 'q2',
+ 'PREVIEW' => true,
+
+ 'TRANSLATION' => false,
+ 'SD_VIDEO' => true,
+ 'HD_VIDEO' => true,
+ 'DASH' => true,
+ 'AUDIO' => true,
+ 'SLIDES' => false,
+ 'MUSIC' => false,
+
+ 'SCHEDULE' => true,
+ 'SCHEDULE_NAME' => 'Saal 2',
+ 'FEEDBACK' => false,
+ 'SUBTITLES' => false,
+ 'EMBED' => true,
+ 'IRC' => false,
+ 'TWITTER' => true,
+ 'TWITTER_CONFIG' => array(
+ 'DISPLAY' => '#pw18 @ twitter/mastodon',
+ 'TEXT' => '#pw18',
+ ),
+ ),
+);
+
+
+
+/**
+ * Konfigurationen zum Konferenz-Fahrplan
+ * Wird dieser Block auskommentiert, werden alle Fahrplan-Bezogenen Features deaktiviert
+ */
+$CONFIG['SCHEDULE'] = array(
+ /**
+ * URL zum Fahrplan-XML
+ *
+ * Diese URL muss immer verfügbar sein, sonst könnte die Programm-Ansicht
+ * aufhören zu funktionieren. Üblicherweise wird diese daher Datei über
+ * das Script configs/download.sh heruntergeladen, welches von einem
+ * Cronjob regelmäßig getriggert wird.
+ */
+ 'URL' => 'https://cfp.privacyweek.at/pw18/schedule/export/schedule.xml',
+
+ /**
+ * Nur die angegebenen Räume aus dem Fahrplan beachten
+ *
+ * Wird diese Zeile auskommentiert, werden alle Räume angezeigt
+ */
+ 'ROOMFILTER' => array('Saal 1', 'Saal 2', 'Workshop Raum'),
+
+ /**
+ * Skalierung der Programm-Vorschau in Sekunden pro Pixel
+ */
+ 'SCALE' => 6,
+
+ /**
+ * Simuliere das Verhalten als wäre die Konferenz bereits heute
+ *
+ * Diese folgende Beispiel-Zeile Simuliert, dass das
+ * Konferenz-Datum 2016-12-29 auf den heutigen Tag 2016-02-24 verschoben ist.
+ */
+ //'SIMULATE_OFFSET' => strtotime(/* Conference-Date */ '2018-10-23 11:00') - strtotime(/* Today */ date('Y-m-d')),
+ //'SIMULATE_OFFSET' => 0,
+);
+
+
+/**
+ * Globaler Schalter für die Embedding-Funktionalitäten
+ *
+ * Wird diese Zeile auskommentiert oder auf False gesetzt, werden alle
+ * Embedding-Funktionen deaktiviert.
+ */
+$CONFIG['EMBED'] = true;
+
+/**
+ * Globale Konfiguration der Twitter-Links.
+ *
+ * Wird dieser Block auskommentiert, werden keine Twitter-Links mehr erzeugt. Sollen die
+ * Twitter-Links für jeden Raum einzeln konfiguriert werden, muss dieser Block trotzdem
+ * existieren sein. ggf. einfach auf true setzen:
+ *
+ * $CONFIG['TWITTER'] = true
+ */
+$CONFIG['TWITTER'] = true;
+
+return $CONFIG;
diff --git a/configs/conferences/pw18/download.sh b/configs/conferences/pw18/download.sh
new file mode 100755
index 0000000..ef4a476
--- /dev/null
+++ b/configs/conferences/pw18/download.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+# fahrplan
+wget --no-check-certificate -q "https://cfp.privacyweek.at/pw18/schedule/export/schedule.xml" -O /tmp/pw18-schedule.xml && mv /tmp/pw18-schedule.xml schedule.xml
+
+# relive
+wget -q "http://live.dus.c3voc.de/relive/pw18/index.json" -O /tmp/vod.json && mv /tmp/vod.json vod.json
+rm -f /tmp/vod.json
diff --git a/configs/conferences/pw18/main.less.disabled b/configs/conferences/pw18/main.less.disabled
new file mode 100644
index 0000000..0a193c9
--- /dev/null
+++ b/configs/conferences/pw18/main.less.disabled
@@ -0,0 +1,200 @@
+@import "../../../assets/css/_structure.less";
+
+
+// conference specific styles here
+@pw-color: #102b48;
+@bg-blue: #7e94b7;
+
+@body-text: @pw-color;
+
+@overview-color: @pw-color;
+
+@darker-grey: #262626;
+@dark-grey: lighten(@darker-grey, 20%);
+@light-grey: lighten(@darker-grey, 30%);
+@lighter-grey: lighten(@darker-grey, 40%);
+
+
+// often configured values (and their defaults):
+//
+@brand-primary: @pw-color;
+@text-color: @body-text;
+
+@link-color: @body-text;
+@link-hover-color: @lighter-grey;
+
+// @navbar-height: 70px;
+
+@navbar-default-bg: @bg-blue;
+@navbar-default-border: @bg-blue;
+
+@navbar-default-link-color: white;
+//@navbar-default-link-hover-color: @link-hover-color;
+
+body {
+ background-image: url("/configs/conferences/pw18/assets/header-privacyweek.jpg");
+ background-repeat: no-repeat;
+ background-position: center 0;
+ background-attachment: fixed;
+ background-size: 100%;
+ padding: @navbar-height 0;
+ color: @body-text;
+}
+
+h1, h2, body.overview .room a.title, body.overview .panel-primary a, .navbar-brand {
+ font-family: "pt_sansregular",Arial,sans-serif;
+}
+
+.group-live {
+ margin-top: 60px;
+}
+
+.overview {
+ h2 {
+ text-align: center;
+
+ text-transform: uppercase;
+ font-weight: bold;
+
+ margin: 40px 0 20px 0;
+ color: @bg-blue;
+ }
+
+ .room, .recordings {
+ a, a:hover {
+ text-decoration: none;
+ color: @overview-color;
+ }
+
+ .panel {
+ //background: none;
+ background-color: rgba(255,255,255,0.9);
+ border: 1px solid @bg-blue;
+
+ &:hover {
+ text-decoration: none;
+
+ .panel-body {
+ border-top: 1px solid @bg-blue;
+ }
+
+ .panel-body .program-schedule .next-talk {
+ border-bottom: 1px solid @bg-blue;
+ }
+ }
+
+ .panel-title {
+ color: @overview-color;
+ font-size: 18px;
+ }
+
+ .panel-primary {
+ background-color: @light-grey;
+ border-color: @light-grey;
+ color: @overview-color;
+ a {
+ color: @overview-color;
+ }
+ }
+
+ .panel-heading {
+ background: none;
+ border: none;
+
+ display: block !important;
+
+ text-transform: uppercase;
+ font-weight: bold;
+
+ padding: 8px 15px;
+
+ a {
+ color: @overview-color;
+ }
+ }
+
+ }
+ }
+}
+
+.overview .room-group-live-music .room .panel .panel-body {
+ margin-bottom: 0;
+}
+
+.banner img {
+ max-width: 50%;
+}
+.banner {
+ display: none
+}
+
+.well a {
+ color: @dark-grey;
+ text-decoration: underline;
+}
+.alert {
+ a {
+ text-decoration: underline;
+ }
+ &.alert-success a {
+ color: @state-success-text;
+ }
+ &.alert-info a {
+ color: @state-info-text;
+ }
+ &.alert-warning a {
+ color: @state-warning-text;
+ }
+ &.alert-danger a {
+ color: @state-danger-text;
+ }
+}
+
+body.multiview .cell {
+ color: black;
+}
+
+.closed .about a {
+ text-decoration: underline;
+ color: @brand-primary;
+}
+
+.schedule .block.pause {
+ color: black !important;
+}
+
+
+footer {
+ color: lightgrey;
+}
+
+.nav-tabs > li > a {
+ border-radius: 0 !important;
+ background-color: rgba(255,255,255,0.4);
+ &:hover {
+ background-color: rgba(255,255,255,0.6);
+ }
+}
+
+body.room .tab-content {
+ background-color: rgba(255,255,255,0.85);
+ border-left: 1px solid @bg-blue;
+ border-bottom: 1px solid @bg-blue;
+ border-right: 1px solid @bg-blue;
+}
+
+@media (max-width: 768px)
+{
+ nav {
+ position: static !important;
+ }
+ body {
+ padding: 0 0;
+ }
+}
+
+@media (max-width: 480px) {
+ .banner {
+ margin-top: 60px;
+ }
+}
--
cgit v1.2.3