diff --git a/configs/conferences/mrmcd23/config.php b/configs/conferences/mrmcd23/config.php
new file mode 100644
index 00000000..3aec3b3d
--- /dev/null
+++ b/configs/conferences/mrmcd23/config.php
@@ -0,0 +1,588 @@
+ strtotime("2023-09-01 17:20"),
+
+ /**
+ * 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("2023-09-03 16: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' => true,
+
+ /**
+ * 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' => 'MRMCD 2023',
+
+ /**
+ * Veranstalter
+ * Wird für den -Tag verdet. Wird diese Zeile auskommentiert, wird kein solcher
+ * -Tag generiert.
+ */
+ 'AUTHOR' => 'MRMCD e.V.',
+
+ /**
+ * Beschreibungstext
+ * Wird für den -Tag verdet. Wird diese Zeile auskommentiert, wird kein solcher
+ * -Tag generiert.
+ */
+// 'DESCRIPTION' => '',
+
+ /**
+ * Schlüsselwortliste, Kommasepariert
+ * Wird für den -Tag verdet. Wird diese Zeile auskommentiert, wird kein solcher
+ * -Tag generiert.
+ */
+// 'KEYWORDS' => '',
+
+ /**
+ * 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' => '
+ by MRMCD &
+ 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' => '',
+ 'BANNER_HTML' => '
MRMCD2019
GESELLSCHAFTSSPIELE
13.-15. September 2019 S2|02 - TU Darmstadt
',
+
+ /**
+ * Link zu den Recordings
+ * Wird diese Zeile auskommentiert, wird der Link nicht angezeigt
+ */
+ 'RELEASES' => 'https://media.ccc.de/c/mrmcd23',
+
+ /**
+ * Link zu einer (externen) ReLive-Übersichts-Seite
+ * Wird diese Zeile auskommentiert, wird der Link nicht angezeigt
+ */
+// 'RELIVE' => 'http://vod.c3voc.de/',
+
+ /**
+ * Alternativ kann ein ReLive-Json konfiguriert werden, um die interne
+ * ReLive-Ansicht zu aktivieren.
+ *
+ * Wird beides aktiviert, hat der externe Link Vorrang!
+ * Wird beides auskommentiert, wird der Link nicht angezeigt
+ */
+// 'RELIVE_JSON' => 'configs/conferences/jh-hh-2019/vod.json',
+
+ /**
+ * APCU-Cache-Zeit in Sekunden
+ * Wird diese Zeile auskommentiert, werden die apc_*-Methoden nicht verwendet und
+ * das Relive-Json bei jedem Request von der Quelle geladen und geparst
+ */
+// 'RELIVE_JSON_CACHE' => 30*60,
+);
+
+/**
+ * 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(
+ 'Lecture Rooms' => array(
+ 'C205 - Brainwasher', 'C120 - Arcane room'
+ ),
+ ),
+);
+
+
+
+/**
+ * Liste der Räume (= Audio & Video Produktionen, also auch DJ-Sets oä.)
+ */
+$CONFIG['ROOMS'] = array(
+ /**
+ * Array-Key ist der Raum-Slug, der z.B. auch zum erstellen der URLs,
+ * in $CONFIG['OVERVIEW'] oder im Feedback verwendet wird.
+ */
+ 'C205 - Brainwasher' => array(
+ /**
+ * Angezeige-Name
+ */
+ 'DISPLAY' => 'Brainwasher',
+
+ /**
+ * ID des Video/Audio-Streams. Die Stream-ID ist davon abhängig, welches
+ * Event-Case in welchem Raum aufgebaut wird und wird üblicherweise von
+ * s1 bis s5 durchnummeriert.
+ */
+ 'STREAM' => 's3',
+
+ /**
+ * Stream-Vorschaubildchen auf der Übersichtsseite anzeigen
+ * Damit das funktioniert muss der entsprechende runit-Task auf dem
+ * CDN-Quell-Host (live.ber) laufen.
+ */
+ 'PREVIEW' => true,
+
+ /**
+ * Übersetzungstonspur aktivieren
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist werden nur
+ * die native-Streams verwendet, andernfalls wird native und translated
+ * angeboten und auch für beide Tonspuren eine Player-Seite angezeigt.
+ */
+ 'TRANSLATION' => false,
+
+
+ /** Wenn aktiviert, wird DASH streaming angeboten */
+ 'DASH' => true,
+
+ /**
+ * SD-Video-Stream (1024×576) verfügbar
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist ẃird kein SD-Video
+ * angeboten. Wird auch HD_VIDEO auf false gesetzt oder auskommentiert ist, wird
+ * für diesen Raum überhaupt kein Video angeboten.
+ *
+ * In diesem Fall wird, sofern jeweils aktiviert, Slides, Audio und zuletzt Musik
+ * als Default-Stream angenommen.
+ */
+ 'SD_VIDEO' => true,
+
+ /**
+ * HD-Video-Stream (1920×1080) verfügbar
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist ẃird kein HD-Video
+ * angeboten. Wird auch SD_VIDEO auf false gesetzt oder auskommentiert ist, wird
+ * für diesen Raum überhaupt kein Video angeboten.
+ *
+ * In diesem Fall wird, sofern jeweils aktiviert, Slides, Audio und zuletzt Musik
+ * als Default-Stream angenommen.
+ */
+ 'HD_VIDEO' => true,
+
+ /**
+ * Slide-Only-Stream (1024×576) verfügbar
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist ẃird kein Slide-Only-
+ * Stream angeboten. Für diesen Raum wird dann keim Slides-Tab angeboten.
+ *
+ * In diesem Fall wird, sofern jeweils aktiviert, Audio und zuletzt Musik als
+ * Default-Stream angenommen.
+ */
+ 'SLIDES' => true,
+
+ /**
+ * Audio-Only-Stream verfügbar
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist ẃird kein Audio-Only-
+ * Stream angeboten. Für diesen Raum wird dann keim Audio-Tab angeboten.
+ *
+ * In diesem Fall wird, sofern aktiviert, Musik als Default-Stream angenommen.
+ */
+ 'AUDIO' => true,
+
+ /**
+ * Musik-Stream verfügbar
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist ẃird kein Musik-Stream
+ * angeboten. Für diesen Raum wird dann keim Musik-Tab angeboten.
+ *
+ * Ist kein einziger Stream angebote, wird statt der Stream-Seite ein 404-Fehler
+ * angezeigt.
+ */
+ 'MUSIC' => false,
+
+ /**
+ * Fahrplan-Ansicht auf der Raum-Seite aktivieren (boolean)
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * wird der Raum nicht im Fahrplan gesucht und auch auf der Startseite
+ * findet keine Darstellung statt.
+ *
+ * Ebenso können alle Fahrplan-Funktionialitäten durch auskommentieren
+ * des globalen $CONFIG['SCHEDULE']-Blocks deaktiviert werden
+ */
+ 'SCHEDULE' => true,
+
+ /**
+ * Name des Raums im Fahrplan
+ * Wenn diese Zeile auskommentiert ist wird der Raum-Slug verwendet
+ */
+ 'SCHEDULE_NAME' => 'C205 - Brainwasher',
+
+ /**
+ * Feedback anzeigen (boolean)
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * taucht der Raum auch im globalen Feedback-Formular nicht auf.
+ *
+ * Ebenso können alle Feedback-Funktionialitäten durch auskommentieren
+ * des globalen $CONFIG['FEEDBACK']-Blocks deaktiviert werden
+ */
+ 'FEEDBACK' => false,
+
+ /**
+ * Subtitles-Player aktivieren (boolean)
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * wird der Subtitles-Button und die damit verbundenen Funktionen deaktiviert.
+ *
+ * Ebenso können alle Subtitles-Funktionialitäten durch auskommentieren
+ * des globalen $CONFIG['SUBTITLES']-Blocks deaktiviert werden
+ */
+ 'SUBTITLES' => false,
+
+ /**
+ * Embed-Form aktivieren (boolean)
+ *
+ * Ist dieses Feld auf true gesetzt, wird ein Embed-Tab unter dem Video
+ * angezeigt. Darüber kann der Player als iframe eingebunden werden.
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * wird kein Embed-Tab angeboten und die URL zum Einbetten existiert nicht.
+ *
+ * Ebenso können alle Embedding-Funktionialitäten durch auskommentieren
+ * des globalen $CONFIG['EMBED']-Blocks deaktiviert werden
+ */
+ 'EMBED' => true,
+
+ /**
+ * IRC-Link aktivieren (boolean)
+ *
+ * Solange Twitter oder IRC aktiviert ist, wird ein "Chat"-Tab mit den
+ * jeweiligen Links angezeigt.
+ *
+ * Ist dieses Feld auf true gesetzt, wird ein irc://-Link angezeigt.
+ * WebIrc wird nach dem Congress nicht mehr unterstützt ;)
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * wird kein IRC-Link angezeigt
+ *
+ * Ebenso können alle IRC-Links durch auskommentieren
+ * des globalen $CONFIG['IRC']-Blocks deaktiviert werden
+ */
+ 'IRC' => false,
+
+ /**
+ * Mit dem Angaben in diesem Block können die Vorgaben aus dem
+ * globalen $CONFIG['IRC'] Block überschrieben werden.
+ *
+ * Der globale $CONFIG['IRC']-Block muss trotzdem existieren,
+ * da sonst überhaupt kein IRC-Link erzeugt wird. (ggf. einfach `= true` setzen)
+ */
+ 'IRC_CONFIG' => array(
+ 'DISPLAY' => '#31C3-hall-1 @ hackint',
+ 'URL' => 'irc://irc.hackint.eu:6667/31C3-hall-1',
+ ),
+
+
+ /**
+ * Twitter-Link aktivieren (boolean)
+ *
+ * Ist dieses Feld auf true gesetzt, wird ein Link zu Twitter angezeigt.
+ *
+ * Solange Twitter oder IRC aktiviert ist, wird ein "Chat"-Tab mit den
+ * jeweiligen Links angezeigt.
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * wird kein Twitter-Link angezeigt
+ *
+ * Ebenso können alle Twitter-Links durch auskommentieren
+ * des globalen $CONFIG['TWITTER']-Blocks deaktiviert werden
+ **/
+ 'TWITTER' => false,
+
+ /**
+ * Mit dem Angaben in diesem Block können die Vorgaben aus dem
+ * globalen $CONFIG['TWITTER'] Block überschrieben werden.
+ *
+ * Der globale $CONFIG['TWITTER']-Block muss trotzdem existieren,
+ * da sonst überhaupt kein IRC-Link erzeugt wird. (ggf. einfach `= true` setzen)
+ */
+ 'TWITTER_CONFIG' => array(
+ 'DISPLAY' => '#mrmcd23 @ twitter',
+ 'TEXT' => '#mrmcd23',
+ ),
+ ),
+ 'C120 - Arcane room' => array(
+ /**
+ * Angezeige-Name
+ */
+ 'DISPLAY' => 'Arcane room',
+
+ /**
+ * ID des Video/Audio-Streams. Die Stream-ID ist davon abhängig, welches
+ * Event-Case in welchem Raum aufgebaut wird und wird üblicherweise von
+ * s1 bis s5 durchnummeriert.
+ */
+ 'STREAM' => 's4',
+
+ /**
+ * Stream-Vorschaubildchen auf der Übersichtsseite anzeigen
+ * Damit das funktioniert muss der entsprechende runit-Task auf dem
+ * CDN-Quell-Host (live.ber) laufen.
+ */
+ 'PREVIEW' => true,
+
+ /**
+ * Übersetzungstonspur aktivieren
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist werden nur
+ * die native-Streams verwendet, andernfalls wird native und translated
+ * angeboten und auch für beide Tonspuren eine Player-Seite angezeigt.
+ */
+ 'TRANSLATION' => false,
+
+
+ /** Wenn aktiviert, wird DASH streaming angeboten */
+ 'DASH' => true,
+
+ /**
+ * SD-Video-Stream (1024×576) verfügbar
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist ẃird kein SD-Video
+ * angeboten. Wird auch HD_VIDEO auf false gesetzt oder auskommentiert ist, wird
+ * für diesen Raum überhaupt kein Video angeboten.
+ *
+ * In diesem Fall wird, sofern jeweils aktiviert, Slides, Audio und zuletzt Musik
+ * als Default-Stream angenommen.
+ */
+ 'SD_VIDEO' => true,
+
+ /**
+ * HD-Video-Stream (1920×1080) verfügbar
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist ẃird kein HD-Video
+ * angeboten. Wird auch SD_VIDEO auf false gesetzt oder auskommentiert ist, wird
+ * für diesen Raum überhaupt kein Video angeboten.
+ *
+ * In diesem Fall wird, sofern jeweils aktiviert, Slides, Audio und zuletzt Musik
+ * als Default-Stream angenommen.
+ */
+ 'HD_VIDEO' => true,
+
+ /**
+ * Slide-Only-Stream (1024×576) verfügbar
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist ẃird kein Slide-Only-
+ * Stream angeboten. Für diesen Raum wird dann keim Slides-Tab angeboten.
+ *
+ * In diesem Fall wird, sofern jeweils aktiviert, Audio und zuletzt Musik als
+ * Default-Stream angenommen.
+ */
+ 'SLIDES' => true,
+
+ /**
+ * Audio-Only-Stream verfügbar
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist ẃird kein Audio-Only-
+ * Stream angeboten. Für diesen Raum wird dann keim Audio-Tab angeboten.
+ *
+ * In diesem Fall wird, sofern aktiviert, Musik als Default-Stream angenommen.
+ */
+ 'AUDIO' => true,
+
+ /**
+ * Musik-Stream verfügbar
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist ẃird kein Musik-Stream
+ * angeboten. Für diesen Raum wird dann keim Musik-Tab angeboten.
+ *
+ * Ist kein einziger Stream angebote, wird statt der Stream-Seite ein 404-Fehler
+ * angezeigt.
+ */
+ 'MUSIC' => false,
+
+ /**
+ * Fahrplan-Ansicht auf der Raum-Seite aktivieren (boolean)
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * wird der Raum nicht im Fahrplan gesucht und auch auf der Startseite
+ * findet keine Darstellung statt.
+ *
+ * Ebenso können alle Fahrplan-Funktionialitäten durch auskommentieren
+ * des globalen $CONFIG['SCHEDULE']-Blocks deaktiviert werden
+ */
+ 'SCHEDULE' => true,
+
+ /**
+ * Name des Raums im Fahrplan
+ * Wenn diese Zeile auskommentiert ist wird der Raum-Slug verwendet
+ */
+ 'SCHEDULE_NAME' => 'C120 - Arcane room',
+
+ /**
+ * Feedback anzeigen (boolean)
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * taucht der Raum auch im globalen Feedback-Formular nicht auf.
+ *
+ * Ebenso können alle Feedback-Funktionialitäten durch auskommentieren
+ * des globalen $CONFIG['FEEDBACK']-Blocks deaktiviert werden
+ */
+ 'FEEDBACK' => false,
+
+ /**
+ * Subtitles-Player aktivieren (boolean)
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * wird der Subtitles-Button und die damit verbundenen Funktionen deaktiviert.
+ *
+ * Ebenso können alle Subtitles-Funktionialitäten durch auskommentieren
+ * des globalen $CONFIG['SUBTITLES']-Blocks deaktiviert werden
+ */
+ 'SUBTITLES' => false,
+
+ /**
+ * Embed-Form aktivieren (boolean)
+ *
+ * Ist dieses Feld auf true gesetzt, wird ein Embed-Tab unter dem Video
+ * angezeigt. Darüber kann der Player als iframe eingebunden werden.
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * wird kein Embed-Tab angeboten und die URL zum Einbetten existiert nicht.
+ *
+ * Ebenso können alle Embedding-Funktionialitäten durch auskommentieren
+ * des globalen $CONFIG['EMBED']-Blocks deaktiviert werden
+ */
+ 'EMBED' => true,
+
+ /**
+ * IRC-Link aktivieren (boolean)
+ *
+ * Solange Twitter oder IRC aktiviert ist, wird ein "Chat"-Tab mit den
+ * jeweiligen Links angezeigt.
+ *
+ * Ist dieses Feld auf true gesetzt, wird ein irc://-Link angezeigt.
+ * WebIrc wird nach dem Congress nicht mehr unterstützt ;)
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * wird kein IRC-Link angezeigt
+ *
+ * Ebenso können alle IRC-Links durch auskommentieren
+ * des globalen $CONFIG['IRC']-Blocks deaktiviert werden
+ */
+ 'IRC' => false,
+
+ /**
+ * Mit dem Angaben in diesem Block können die Vorgaben aus dem
+ * globalen $CONFIG['IRC'] Block überschrieben werden.
+ *
+ * Der globale $CONFIG['IRC']-Block muss trotzdem existieren,
+ * da sonst überhaupt kein IRC-Link erzeugt wird. (ggf. einfach `= true` setzen)
+ */
+ 'IRC_CONFIG' => array(
+ 'DISPLAY' => '#31C3-hall-1 @ hackint',
+ 'URL' => 'irc://irc.hackint.eu:6667/31C3-hall-1',
+ ),
+
+
+ /**
+ * Twitter-Link aktivieren (boolean)
+ *
+ * Ist dieses Feld auf true gesetzt, wird ein Link zu Twitter angezeigt.
+ *
+ * Solange Twitter oder IRC aktiviert ist, wird ein "Chat"-Tab mit den
+ * jeweiligen Links angezeigt.
+ *
+ * Wenn diese Zeile auskommentiert oder auf false gesetzt ist,
+ * wird kein Twitter-Link angezeigt
+ *
+ * Ebenso können alle Twitter-Links durch auskommentieren
+ * des globalen $CONFIG['TWITTER']-Blocks deaktiviert werden
+ **/
+ 'TWITTER' => false,
+
+ /**
+ * Mit dem Angaben in diesem Block können die Vorgaben aus dem
+ * globalen $CONFIG['TWITTER'] Block überschrieben werden.
+ *
+ * Der globale $CONFIG['TWITTER']-Block muss trotzdem existieren,
+ * da sonst überhaupt kein IRC-Link erzeugt wird. (ggf. einfach `= true` setzen)
+ */
+ 'TWITTER_CONFIG' => array( 'DISPLAY' => '#mrmcd23 @ twitter',
+ 'TEXT' => '#mrmcd23',
+ ),
+ ),
+
+);
+
+/**
+ * Globaler Schalter für die Embedding-Funktionalitäten
+ *
+ * Wird diese Zeile auskommentiert oder auf False gesetzt, werden alle
+ * Embedding-Funktionen deaktiviert.
+ */
+$CONFIG['EMBED'] = true;
+
+/**
+ * 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' => 'https://talks.mrmcd.net/2023/schedule/export/schedule.xml',
+
+ /**
+ * Nur die angegebenen Räume aus dem Fahrplan beachten
+ *
+ * Wird diese Zeile auskommentiert, werden alle Räume angezeigt
+ */
+ 'ROOMFILTER' => array('C205 - Brainwasher','C120 - Arcane room'),
+
+ /**
+ * 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 */ '2019-05-21') - strtotime(/* Today */ '2019-05-19'),
+ 'SIMULATE_OFFSET' => 0,
+);
+
+
+return $CONFIG;
diff --git a/configs/conferences/mrmcd23/download.sh b/configs/conferences/mrmcd23/download.sh
new file mode 100755
index 00000000..644a3401
--- /dev/null
+++ b/configs/conferences/mrmcd23/download.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+# fahrplan
+wget --no-check-certificate -q "https://talks.mrmcd.net/2023/schedule/export/schedule.xml" -O /tmp/mrmcd23-schedule.xml && mv /tmp/mrmcd23-schedule.xml schedule.xml
+rm -f /tmp/mrmcd23-schedule.xml
+
+# relive
+#wget -q "http://live.dus.c3voc.de/relive/emf2016/index.json" -O /tmp/emf2016-vod.json && mv /tmp/emf2016-vod.json vod.json
+#rm -f /tmp/emf2016-vod.json
diff --git a/configs/conferences/mrmcd23/jura-v10-latin-300.woff b/configs/conferences/mrmcd23/jura-v10-latin-300.woff
new file mode 100644
index 00000000..d1bcbc6b
Binary files /dev/null and b/configs/conferences/mrmcd23/jura-v10-latin-300.woff differ
diff --git a/configs/conferences/mrmcd23/jura-v10-latin-300.woff2 b/configs/conferences/mrmcd23/jura-v10-latin-300.woff2
new file mode 100644
index 00000000..18d42ac6
Binary files /dev/null and b/configs/conferences/mrmcd23/jura-v10-latin-300.woff2 differ
diff --git a/configs/conferences/mrmcd23/jura-v10-latin-700.woff b/configs/conferences/mrmcd23/jura-v10-latin-700.woff
new file mode 100644
index 00000000..f2e41433
Binary files /dev/null and b/configs/conferences/mrmcd23/jura-v10-latin-700.woff differ
diff --git a/configs/conferences/mrmcd23/jura-v10-latin-700.woff2 b/configs/conferences/mrmcd23/jura-v10-latin-700.woff2
new file mode 100644
index 00000000..e98e8268
Binary files /dev/null and b/configs/conferences/mrmcd23/jura-v10-latin-700.woff2 differ
diff --git a/configs/conferences/mrmcd23/jura-v10-latin-regular.woff b/configs/conferences/mrmcd23/jura-v10-latin-regular.woff
new file mode 100644
index 00000000..cef335b2
Binary files /dev/null and b/configs/conferences/mrmcd23/jura-v10-latin-regular.woff differ
diff --git a/configs/conferences/mrmcd23/jura-v10-latin-regular.woff2 b/configs/conferences/mrmcd23/jura-v10-latin-regular.woff2
new file mode 100644
index 00000000..642a2617
Binary files /dev/null and b/configs/conferences/mrmcd23/jura-v10-latin-regular.woff2 differ
diff --git a/configs/conferences/mrmcd23/main.less b/configs/conferences/mrmcd23/main.less
new file mode 100644
index 00000000..2bddb1b5
--- /dev/null
+++ b/configs/conferences/mrmcd23/main.less
@@ -0,0 +1,126 @@
+@import "../../../assets/css/_structure.less";
+
+/* jura-regular - latin */
+@font-face {
+ font-family: 'Jura';
+ font-style: normal;
+ font-weight: 400;
+ src: local('Jura Regular'), local('Jura-Regular'),
+ url('jura-v10-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
+ url('jura-v10-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
+}
+
+/* jura-300 - latin */
+@font-face {
+ font-family: 'Jura';
+ font-style: normal;
+ font-weight: 300;
+ src: local('Jura Light'), local('Jura-Light'),
+ url('jura-v10-latin-300.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
+ url('jura-v10-latin-300.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
+}
+
+/* jura-700 - latin */
+@font-face {
+ font-family: 'Jura';
+ font-style: normal;
+ font-weight: 700;
+ src: local('Jura Bold'), local('Jura-Bold'),
+ url('jura-v10-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
+ url('jura-v10-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
+}
+
+
+@gelb: #f9cd00;
+@white: #ffffff;
+@light-blue: #47acda;
+@blue: #094762;
+@grey-lighter: #333333;
+@grey-darker: #2a2a2a;
+@grey-light: #c1c1c1;
+@dark: #000000;
+
+
+@brand-primary: @light-blue;
+@well-bg: @dark;
+@navbar-default-bg: @grey-lighter;
+@btn-default-bg: @grey-light;
+@panel-default-heading-bg: @dark;
+@panel-default-text: @light-blue;
+@panel-bg: @dark;
+
+
+body {
+ background-color: @dark;
+ color: @grey-light;
+}
+
+.overview .panel-title {
+ font-weight: bold;
+}
+
+.outer-div {
+ position: absolute;
+ bottom: 30px;
+ width: 100%;
+}
+
+.mrmcd23 {
+ background-image: url(title.svg);
+ background-repeat: no-repeat;
+ background-size: 880px 315px;
+
+ margin: 0 auto;
+
+ width: 880px;
+ height: 315px;
+
+ opacity: 1;
+ z-index: -100;
+
+ @media (max-width: @screen-sm-min) {
+ display: none;
+ }
+}
+
+.mrmcd-title {
+ width: 300px;
+ height: 300px;
+ margin-left: auto;
+ margin-right: auto;
+ margin-top: 20px;
+}
+
+.mrmcd-title1 {
+ font-size: 48px;
+ font-weight: bold;
+ font-family: Jura, "Open Sans", Helvetica, Arial, sans-serif;
+ color: white;
+ margin-left: auto;
+ margin-right: auto;
+ text-align: center;
+ border-top: 2px solid white;
+}
+
+.mrmcd-title2 {
+ font-size: 24px;
+ font-weight: bold;
+ font-family: Jura, "Open Sans", Helvetica, Arial, sans-serif;
+ color: white;
+ margin-left: auto;
+ margin-right: auto;
+ margin-top: 5px;
+ text-align: center;
+ border-bottom: 2px solid white;
+}
+
+.mrmcd-title3 {
+ font-size: 18px;
+ font-weight: bold;
+ font-family: Jura, "Open Sans", Helvetica, Arial, sans-serif;
+ color: white;
+ margin-left: auto;
+ margin-right: auto;
+ margin-top: 25px;
+ text-align: center;
+}
diff --git a/configs/conferences/mrmcd23/title.svg b/configs/conferences/mrmcd23/title.svg
new file mode 100644
index 00000000..e12c77f1
--- /dev/null
+++ b/configs/conferences/mrmcd23/title.svg
@@ -0,0 +1,539 @@
+
+
\ No newline at end of file