diff options
| -rw-r--r-- | configs/conferences/cccamp19/config.php | 544 | ||||
| -rw-r--r-- | configs/conferences/cccamp19/main.less | 186 | 
2 files changed, 730 insertions, 0 deletions
| diff --git a/configs/conferences/cccamp19/config.php b/configs/conferences/cccamp19/config.php new file mode 100644 index 0000000..134cce8 --- /dev/null +++ b/configs/conferences/cccamp19/config.php @@ -0,0 +1,544 @@ +<?php + +$CONFIG['CONFERENCE'] = array( +	/** +	 * Der Startzeitpunkt der Konferenz als Unix-Timestamp. Befinden wir uns davor, wird die Closed-Seite +	 * mit einem Text der Art "hat noch nicht angefangen" angezeigt. +	 * +	 * Wird dieser Zeitpunkt nicht angegeben, gilt die Konferenz immer als angefangen. (Siehe aber ENDS_AT +	 * und CLOSED weiter unten) +	 */ +	'STARTS_AT' => strtotime("2019-08-21 10: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("2019-08-25 20: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' => false, + +	/** +	 * Titel der Konferenz (kann Leer- und Sonderzeichen enthalten) +	 * Dieser im Seiten-Header, im <title>-Tag, in der About-Seite und ggf. ab weiteren Stellen als +	 * Anzeigetext benutzt +	 */ +	'TITLE' => 'Chaos Communication Camp 2019', + +	/** +	 * Veranstalter +	 * Wird für den <meta name="author">-Tag verdet. Wird diese Zeile auskommentiert, wird kein solcher +	 * <meta>-Tag generiert. +	 */ +	'AUTHOR' => 'CCC', + +	/** +	 * Beschreibungstext +	 * Wird für den <meta name="description">-Tag verdet. Wird diese Zeile auskommentiert, wird kein solcher +	 * <meta>-Tag generiert. +	 */ +	'DESCRIPTION' => 'Video Live-Streaming of the Chaos Communication Camp 2019', + +	/** +	 * Schlüsselwortliste, Kommasepariert +	 * Wird für den <meta name="keywords">-Tag verdet. Wird diese Zeile auskommentiert, wird kein solcher +	 * <meta>-Tag generiert. +	 */ +	'KEYWORDS' => 'cccamp, CCC, Chaos Communication Camp, Camp, 2019, Hacking, Chaos Computer Club, Video, Media, Streaming, Hacker', + +	/** +	 * HTML-Code für den Footer (z.B. für spezielle Attribuierung mit <a>-Tags) +	 * Sollte üblicherweise nur Inline-Elemente enthalten +	 * Wird diese Zeile auskommentiert, wird die Standard-Attribuierung für (c3voc.de) verwendet +	 */ +	'FOOTER_HTML' => ' +		by <a href="https://ccc.de">Chaos Computer Club e.V</a>, +		<a href="http://www.ags.tu-bs.de/">ags</a>, +		<a href="https://www.fem.tu-ilmenau.de">FeM</a> & +		<a href="https://c3voc.de">C3VOC</a> +	', + +	/** +	 * 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' => '31C3 – a new dawn', + +	/** +	 * Link zu den Recordings +	 * Wird diese Zeile auskommentiert, wird der Link nicht angezeigt +	 */ +	'RELEASES' => 'https://media.ccc.de/c/camp2019', + +	/** +	 * 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' => 'http://live.ber.c3voc.de/relive/cccamp19/index.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 Tents' => array( +			'tent-1', +			'tent-2', +			'thm', +		), + +	), +); + + + +/** + * 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. +	 */ +	'tent-1' => array( +		/** +		 * Angezeige-Name +		 */ +		'DISPLAY' => 'Tent 1 (Curie)', + +		/** +		 * 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' => 's1', + +		/** +		 * Stream-Vorschaubildchen auf der Übersichtsseite anzeigen +		 * Damit das funktioniert muss der entsprechende runit-Task auf dem +		 * CDN-Quell-Host (live.ber) laufen. +		 */ +        'PREVIEW' => true, + +        'STEREO' => false, + +		/** +		 * Ü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' => true, + +		/** +		 * stereo-Tonspur statt native-Tonspur benutzen +		 * +		 * Wenn diese Zeile auskommentiert oder auf false gesetzt ist werden +		 * die "native"-Mono-Streams verwendet, andernfalls wird statt "native" +		 * der Streamname "stereo" eingesetzt. Im normalen Konferenz-Setup +		 * müssen dann beide Kanäle der Kamera mit einem Signal bespielt werden. +		 */ +		'STEREO' => false, + +		/** +		 * 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, + +        'DASH' => 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' => 'Curie', + +		/** +		 * 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' => true, + +		/** +		 * 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' => true, + +		/** +		* 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' => true, + +		/** +		* 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' => '#hall1 @ twitter', +		//	'TEXT'    => '#31C3 #hall1', +		//), +	), + +	'tent-2' => array( +		'DISPLAY' => 'Tent 2 (Meitner)', +		'STREAM' => 's3', +        'PREVIEW' => true, +        'STEREO' => false, + +		'TRANSLATION' => true, +		'SD_VIDEO' => true, +        'HD_VIDEO' => true, +        'DASH' => true, +		'AUDIO' => true, +		'SLIDES' => true, +		'MUSIC' => false, + +		'SCHEDULE' => true, +		'SCHEDULE_NAME' => 'Meitner', +		'FEEDBACK' => true, +		'SUBTITLES' => false, +		'EMBED' => true, +		'IRC' => true, +		'TWITTER' => true, +	), + +	'thm' => array( +		'DISPLAY' => 'Three Headed Monkey', +		'STREAM' => 's5', +        'PREVIEW' => true, +        'STEREO' => false, + +		'TRANSLATION' => true, +		'SD_VIDEO' => true, +        'HD_VIDEO' => true, +        'DASH' => true, +		'AUDIO' => true, +		'SLIDES' => true, +		'MUSIC' => false, + +		'SCHEDULE' => false, + +		'FEEDBACK' => true, +		'SUBTITLES' => false, +		'EMBED' => true, +		'IRC' => true, +		'TWITTER' => 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://fahrplan.events.ccc.de/camp/2019/Fahrplan/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', 'Saal G', 'Saal 6'), + +	/** +	 * APCU-Cache-Zeit in Sekunden +	 * Wird diese Zeile auskommentiert, werden die apc_*-Methoden nicht verwendet und +	 * der Fahrplan bei jedem Request von der Quelle geladen und geparst +	 */ +	//'CACHE' => 30*60, + +	/** +	 * 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' => 0, +); + + + +/** + * Konfiguration des Feedback-Formulars + * + * Wird dieser Block auskommentiert, wird das gesamte Feedback-System deaktiviert + */ +$CONFIG['FEEDBACK'] = array( +	/** +	 * DSN zum abspeichern der eingegebenen Daten +	 * die Datenbank muss eine Tabelle enthaltem, die dem in `lib/schema.sql` angegebenen +	 * Schema entspricht. +	 * +	 * Achtung vor Dateirechten: Bei SQLite reicht es nicht, wenn wer Webseiten-Benutzer +	 * die .sqlite3-Datei schreiben darf, er muss auch im übergeordneten Order neue +	 * (Lock-)Dateien anlegen dürfen +	 */ +	'DSN' => 'sqlite:/opt/streaming-feedback/feedback.sqlite3', + +	/** +	 * Login-Daten für die /feedback/read/-Seite, auf der eingegangenes +	 * Feedback gelesen werden kann. +	 * +	 * Durch auskommentieren der beiden Optionen wird diese Seite komplett deaktiviert, +	 * es kann dann nur noch durch manuelle Inspektion der .sqlite3-Datei auf das Feedback +	 * zugegriffen werden. +	 */ +	'USERNAME' => 'katze', +	'PASSWORD' => trim(@file_get_contents('/opt/streaming-feedback/feedback-password')), +); + +/** + * 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 IRC-Links. + * + * Wird dieser Block auskommentiert, werden keine IRC-Links mehr erzeugt. Sollen die + * IRC-Links für jeden Raum einzeln konfiguriert werden, muss dieser Block trotzdem + * existieren sein. ggf. einfach auf true setzen: + * + *   $CONFIG['IRC'] = true + */ +$CONFIG['IRC'] = array( +	/** +	 * Anzeigetext für die IRC-Links. +	 * +	 * %s wird durch den Raum-Slug ersetzt. +	 * Ist eine weitere Anpassung erfoderlich, kann ein IRC_CONFIG-Block in der +	 * Raum-Konfiguration zum Überschreiben dieser Angaben verwendet werden. +	 */ +	'DISPLAY' => '#camp-everywhere @ hackint', + +	/** +	 * URL für die IRC-Links. +	 * Hierbei kann sowohl ein irc://-Link als auch ein Link zu einem +	 * WebIrc-Provider wie z.B. 'https://kiwiirc.com/client/irc.hackint.eu/#31C3-%s' +	 * verwendet werden. +	 * +	 * %s wird durch den urlencodeten Raum-Slug ersetzt. +	 * Eine Anpassung kann ebenfalls in der Raum-Konfiguration vorgenommen werden. +	 */ +	'URL' => 'irc://irc.hackint.eu:6667/camp-everywhere', +); + +/** + * 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'] = array( +	/** +	 * Anzeigetext für die Twitter-Links. +	 * +	 * %s wird durch den Raum-Slug ersetzt. +	 * Ist eine weitere Anpassung erfoderlich, kann ein TWITTER_CONFIG-Block in der +	 * Raum-Konfiguration zum Überschreiben dieser Angaben verwendet werden. +	 */ +	'DISPLAY' => '#cccamp19 @ twitter', + +	/** +	 * Vorgabe-Tweet-Text für die Twitter-Links. +	 * +	 * %s wird durch den Raum-Slug ersetzt. +	 * Eine Anpassung kann ebenfalls in der Raum-Konfiguration vorgenommen werden. +	 */ +	'TEXT' => '#cccamp19', +); + + +return $CONFIG; diff --git a/configs/conferences/cccamp19/main.less b/configs/conferences/cccamp19/main.less new file mode 100644 index 0000000..6b3ceeb --- /dev/null +++ b/configs/conferences/cccamp19/main.less @@ -0,0 +1,186 @@ +@import "../../../assets/css/_structure.less"; + +// conference specific styles here + +@grey_light: #d3d2d2; +@grey_dark: #918f90; +@grey_darker: #4f4c4d; + +@brown_light: #94694d; +@brown_dark: #7a563f; + +@green_light: #6c9e30; +@green_dark: #598227; + +@purple_light: #77438d; +@purple_dark: #623672; + +@blueish_light: #707f9a; +@blueish_dark: #5c687e; + + + +@tents_light: @blueish_light; +@tents_dark: @blueish_dark; + +@radio_light: @purple_light; +@radio_dark: @purple_dark; + +@recordings_light: @grey_dark; +@recordings_dark: @grey_darker; + +@multicast_light: @brown_light; +@multicast_dark: @brown_dark; + + +// often configured values (and their defaults): +// +@brand-primary:         @green_light; +@text-color:            @green_dark; + +@link-color:            @green_light; +@link-hover-color:      @green_dark; + +@navbar-default-color:  white; +@navbar-default-bg:     @brown_dark; + +@navbar-default-link-color:           white; +@navbar-default-link-hover-color:     darken(white, 20%); + +@panel-default-border:  @green_light; + + + +.overview { +	.headline { +		display: none; +	} + +	p a { +		text-decoration: underline; +	} + +	.room-group-n0 { +		&, a { +			color: @tents_dark; +		} + +		.panel { +			border-color: @tents_dark; + +			.panel-heading, +			.panel-heading a{ +				background-color: @tents_light; +				border-color: @tents_dark; +				color: white; +			} +		} +	} + +	.room-group-n2 { +		&, a { +			color: @radio_dark; +		} + +		.panel { +			border-color: @radio_dark; + +			.panel-heading { +				background-color: @radio_light; +				border-color: @radio_dark; +				color: white; +			} +		} +	} + +	.recordings { +		&, a { +			color: @recordings_light; +		} +		a:hover { +			color: @recordings_dark; +		} + +		.panel { +			border-color: @recordings_dark; +		} +	} + + + + +	.room-group-multicast { +		&, a { +			color: @multicast_dark; +		} + +		.panel { +			border-color: @multicast_dark; + +			.panel-heading { +				background-color: @multicast_light; +				border-color: @multicast_dark; +				color: white; +			} +		} + +		.room a { +			font-size: @jumbo-font-size; +			line-height: @jumbo-line-height; +			color: @multicast_dark; + +			@media (max-width: @screen-xs-min) { +				font-size: @jumbo-font-size-xs; +			} + +			display: block; +			text-align: center; + +			&:hover { +				text-decoration: none; +			} +		} +	} +} + +body { +	background: url(../img/bg.png) no-repeat top left; +	background-attachment: fixed; +	background-position: 0px 50px; +} + +.tab-content { +	background-color: white; +} + + +.navbar-brand { +	text-indent: -9999em; +	background: url(../img/logo.png) no-repeat; +	background-size: auto 43px; +	background-position: 0 5px; +	width: 180px; +} + + + + +// colors of the schedule ("Fahrplan") widget below the video-player +// +//  @schedule-now:       @brand-danger; +//  @schedule-now-bg:    fade(lighten(@brand-danger, 5%), 60%); +//  @schedule-border:    lighten(@brand-primary, 50%); +// +//  @schedule-room:      darken(@brand-primary, 15%); +//  @schedule-author:    #444; +// +//  @schedule-selected-room: lighten(@brand-success, 10%); +// +//  @schedule-daychange:    darken(@brand-primary, 20%); +//  @schedule-daychange-bg: fade(white, 30%); +// +//  @schedule-gap:          darken(@brand-primary, 20%); +//  @schedule-gap-bg:       fade(white, 30%); +// +//  @schedule-pause:        white; +//  @schedule-pause-bg:     lighten(black, 85%); | 
