<?php header('Content-Type: application/json'); $conferences = Conferences::getActiveConferences(); $struct = array(); if (isset($GLOBALS['CONFIG'])) { $saved_config = $GLOBALS['CONFIG']; } foreach ($conferences as $conference) { /* ok. das ist so hacky. EIGENTLICH müsste man aus ModelBase das $GLOBALS tilgen und von der api ne v2 releasen, welche conferences als eigenes Objekt betrachtet */ $GLOBALS['CONFIG'] = $conference['CONFIG']; $GLOBALS['MANDATOR'] = $conference['slug']; $overview = new Overview(); foreach ($overview->getGroups() as $group => $rooms) { $roomstruct = array(); foreach ($rooms as $room) { $streams = array(); foreach ($room->getStreams() as $stream) { $key = $stream->getSelection() . '-' . $stream->getLanguage(); $urls = array(); switch ($stream->getPlayerType()) { case 'video': foreach ($stream->getVideoProtos() as $proto => $display) { $urls[$proto] = array('display' => $display, 'tech' => $stream->getVideoTech($proto), 'url' => $stream->getVideoUrl($proto)); } break; case 'slides':
<?php echo $tpl->render(array('page' => 'allconferences', 'title' => 'Multiple Conferences', 'conferences' => Conferences::getActiveConferences()));
$GLOBALS['MANDATOR'] = $mandator; $conference = new Conference(); // update template information $tpl->set(array('baseurl' => forceslash(baseurl()), 'route' => $route, 'canonicalurl' => forceslash(baseurl()) . forceslash($route), 'assets' => '../assets/', 'conference' => $conference, 'feedback' => new Feedback(), 'schedule' => new Schedule(), 'subtitles' => new Subtitles())); ob_start(); try { // ALWAYS AVAILABLE ROUTES if ($route == 'feedback/read') { require 'view/feedback-read.php'; } else { if ($route == 'schedule.json') { require 'view/schedule-json.php'; } else { if ($route == 'gen/main.css') { if (Conferences::hasCustomStyles($mandator)) { handle_lesscss_request(Conferences::getCustomStyles($mandator), '../../' . Conferences::getCustomStylesDir($mandator)); } else { handle_lesscss_request('assets/css/main.less', '../../assets/css/'); } } else { if (!$conference->hasBegun()) { require 'view/not-started.php'; } else { if (preg_match('@^relive/([0-9]+)$@', $route, $m)) { $_GET = array('id' => $m[1]); require 'view/relive-player.php'; } else { if ($route == 'relive') { require 'view/relive.php'; } else { if ($conference->hasEnded()) {
<?php $upcoming = new Upcoming(); $events = $upcoming->getNextEvents(); echo $tpl->render(array('page' => 'allclosed', 'title' => 'See you soon … somewhere else!', 'next' => @$events[0], 'events' => $events, 'last' => Conferences::getLastConference()));
public static function getCustomStyles($mandator) { return forceslash(Conferences::getCustomStylesDir($mandator)) . 'main.less'; }