• 10.05.2024
      15:50 Uhr
      Schalom Jüdisches Leben heute | Das Erste
       

      Keine weiteren Informationen

      Freitag, 10.05.24
      15:50 - 16:00 Uhr (10 Min.)
      10 Min.

      (bernd) /srv/www/programm.ard.de/htdocs/modules/class/viewer.php, 385
      InvalidArgumentException Object
      (
          [message:protected] => $timestamp argument is neither a valid UNIX timestamp, a valid date-time string or a DateTime object.
          [string:Exception:private] => 
          [code:protected] => 0
          [file:protected] => /srv/www/programm.ard.de/htdocs/modules/include/deprecated.php
          [line:protected] => 39
          [trace:Exception:private] => Array
              (
                  [0] => Array
                      (
                          [file] => /srv/www/programm.ard.de/ipg-class/Event.php
                          [line] => 737
                          [function] => PHP82_BC\strftime
                          [args] => Array
                              (
                                  [0] => %H:%M
                                  [1] => 
                              )
      
                      )
      
                  [1] => Array
                      (
                          [file] => /srv/www/programm.ard.de/htdocs/modules/class/viewer.php(375) : eval()'d code
                          [line] => 4552
                          [function] => getShortVPSTime
                          [class] => Event
                          [type] => ->
                          [args] => Array
                              (
                              )
      
                      )
      
                  [2] => Array
                      (
                          [file] => /srv/www/programm.ard.de/htdocs/modules/class/viewer.php
                          [line] => 375
                          [function] => eval
                      )
      
                  [3] => Array
                      (
                          [file] => /srv/www/programm.ard.de/htdocs/modules/class/viewer.php
                          [line] => 127
                          [function] => executePage
                          [class] => Viewer
                          [type] => ->
                          [args] => Array
                              (
                                  [0] =>  wird bearbeitet beim Thema Archivkonzept
      *
      * V3.2
      * V3.2.1 Möglichkeit per CMS das Anzeigen von Tipps und Thumbnails in der List zu unterdrücken
      * V3.2.2 Möglichkeit anstelle des Klammerteasers einen Sendungsteaser mit einer definierten Logik anzuzeigen
      * 		  Anpassung ipg-search
      * V3.5 	Refactored
      * 			neue ipg->frontEndSearch
      * 			neues INCL Template Suchparameter
      * 			Vereinfachung
      *				Neue Option "Keine Bilder anzeigen"
      * V3.5.1 JS für BG Picture raus. Wird global über den Header geregelt
      * V3.5.2 Individueller Text für "keine Sendungen gefunden" möglich
      * V3.5.3 Auch in der Listenansicht kann (vier Wochen) zurück gesucht werden
      * V3.5.4
      * - Text im Klammerteaser kann auf invisible gestellt werden, damit Grafik/Schrift im JPG stattfinden kann
      * - Neue Gestaltungsoption
      * - Zeit einstellbar
      */
      ?>
       Evopage Funktionen
      * INC [HtmlHeader] => Hmtl Header
      * INC [ARD Masternavi] => Die ARD Navi
      * INC [Menü - Programm.ARD.de] => Die Navi von programm.ARD.de
      * VAR [skin] => Evopage Variable, die für unterschiedliches Aussehen genutzt werden kann, Default: "programm"
      * VAR $pageName => PHP Variable, die für unterschiedliches Aussehen genutzt werden kann, Default: "programm"
      * Evopage Syntax wird vor php ausgeführt => if-Abfragen mit [include] gehen nur mit der Evopage-Variable
      * VAR $includePath => sollte relativ sein, wenn auf dem eigenen Server. Pfad zum Einbinden aller statischen Dateien (CSS, JS, Icons)
      *
      * V3.2
      * V3.2.1 Themenwoche 2015
      *
      * V3.5
      * V3.5 $bodyClass als zusätzliche css-Klasse hinzugefügt (Kann von Seiten, die den Header einbinden gesetzt werden)
      * V3.5 Abfrage für ONE Programmkalender
      * V3.5.1 Zeiteinschränkung für bgpicture für Startseite
      */
      ?>
       Ausgelagerte PHP Funktionen für das Frontend
       * Alle Evopage und IPG relevanten Dinge werden initialisiert
       * VAR $HEADER wird am Ende auf TRUE gesetzt, damit bei Ajax Funktionen, der Header nicht noch einmal geladen wird
       *
       * V3.2
       * V3.2.1 Updates Suche
       * V3.2.2 Updates Suche
       *
       * V3.5
       *
       *
       */
      require_once IPG_CLASS_PATH . 'MetaTags.php';
      if (! $ipg) {
      	$ipg = &getIPG ();
      }
      // Personalisierung
      $program_user = $ipg->loadUser ();
      $memos = $ipg->fetchMemos ( $program_user );
      // Sendungsdatensatz
      $detail_event = null;
      if ($_REQUEST ['sendung']) {
      	$archiveMode = false;
      	$detail_event = $ipg->fetchFullById ( $_REQUEST ['sendung'], 1, false );
      	if ($detail_event->getID () == 0) {
      		$detail_event = $ipg->fetchFullById ( $_REQUEST ['sendung'], 1, true );
      		$archiveMode = true;
      	}
      } else {
      	if ($_SESSION ['previewEvent']) {
      		$detail_event = $_SESSION ['previewEvent'];
      		unset ( $_SESSION ['previewEvent'] );
      	}
      }
      $metaTags = new MetaTags ( $detail_event, '/TV/Themenschwerpunkte/Kirche und Religion/Religion Hörfunk/Startseite', $_REQUEST ['sender'] );
      require_once IPG_CLASS_PATH . 'TimeManager.php';
      require_once EVO_MODULES_PATH . "/addOn/classes/ipg.php";
      require_once EVO_MODULES_PATH . "/addOn/classes/teaserManager.php";
      // Teaser
      $teaser_manager = new TeaserManager ( $ipg );
      if (! $_SESSION ['lists']) {
      	$_SESSION ['lists'] = array ();
      }
      // Genre
      $genrePaths = getGenrePaths ();
      // Suche
      if ($_REQUEST ['detailsuche']) {
      	$_SESSION ['detailsuche'] = array ();
      	$_SESSION ['detailsuche'] ['sendungstitel'] = $_REQUEST ['sendungstitel'];
      	$_SESSION ['detailsuche'] ['mitwirkende'] = $_REQUEST ['mitwirkende'];
      	$_SESSION ['detailsuche'] ['volltext'] = $_REQUEST ['volltext'];
      	$_SESSION ['detailsuche'] ['senderauswahl'] = $_REQUEST ['senderauswahl'];
      	$_SESSION ['detailsuche'] ['sender_id'] = $_REQUEST ['sender_id'];
      	$_SESSION ['detailsuche'] ['kategorienauswahl'] = $_REQUEST ['kategorienauswahl'];
      	$_SESSION ['detailsuche'] ['kategorie_id'] = $_REQUEST ['kategorie_id'];
      	$_SESSION ['detailsuche'] ['ausstrahlungswahl'] = $_REQUEST ['ausstrahlungswahl'];
      	$_SESSION ['detailsuche'] ['sendezeitauswahl'] = $_REQUEST ['sendezeitauswahl'];
      
      	if ($_REQUEST ['uhrzeitStart'] && $ipg->validDate ( $_REQUEST ['uhrzeitStart'] )) {
      		$_SESSION ['detailsuche'] ['uhrzeitStart'] = $_REQUEST ['uhrzeitStart'];
      	} else {
      		unset ( $_SESSION ['detailsuche'] ['uhrzeitStart'] );
      	}
      	if ($_REQUEST ['uhrzeitEnde'] && $ipg->validDate ( $_REQUEST ['uhrzeitEnde'] )) {
      		$_SESSION ['detailsuche'] ['uhrzeitEnde'] = $_REQUEST ['uhrzeitEnde'];
      	} else {
      		unset ( $_SESSION ['detailsuche'] ['uhrzeitEnde'] );
      	}
      	if ($_REQUEST ['uhrzeitStartKurz'] && $ipg->validTime ( $_REQUEST ['uhrzeitStartKurz'] )) {
      		$_SESSION ['detailsuche'] ['uhrzeitStartKurz'] = $_REQUEST ['uhrzeitStartKurz'];
      	} else {
      		unset ( $_SESSION ['detailsuche'] ['uhrzeitStartKurz'] );
      	}
      	if ($_REQUEST ['uhrzeitEndeKurz'] && $ipg->validTime ( $_REQUEST ['uhrzeitEndeKurz'] )) {
      		$_SESSION ['detailsuche'] ['uhrzeitEndeKurz'] = $_REQUEST ['uhrzeitEndeKurz'];
      	} else {
      		unset ( $_SESSION ['detailsuche'] ['uhrzeitEndeKurz'] );
      	}
      	$_SESSION ['detailsuche'] ['bildformat'] = $_REQUEST ['bildformat'];
      	$_SESSION ['detailsuche'] ['audioformat'] = $_REQUEST ['audioformat'];
      	$_SESSION ['detailsuche'] ['techoptionen'] = $_REQUEST ['techoptionen'];
      	if (! isset ( $_REQUEST ['maxCount'] )) {
      		$_REQUEST ['maxCount'] = 400;
      	}
      	$_SESSION ['detailsuche'] ['maxCount'] = $_REQUEST ['maxCount'];
      	$_SESSION ['detailsuche'] ['sort'] = $_REQUEST ['sort'];
      }
      // Sender
      $tvStations = $ipg->fetchAllTvStations ();
      $radioStations = $ipg->fetchAllRadioStations ();
      ?>
      ';
          print_r($d);
          echo '
      '; } function ifdebug($d, $type = false) { $n = 'debug'; if ($type) { $n = 'debug-' . $type; } if ($_REQUEST[$n]) { debug($d); } } function isAjax() { // Das haut nicht hin, schon gar nicht mit dem CDN // wir nehmen aLoad=1 als Parameter, der das indiziert //if (isset ( $_SERVER ['HTTP_X_REQUESTED_WITH'] ) && $_SERVER ['HTTP_X_REQUESTED_WITH'] == "XMLHttpRequest") if ($_REQUEST['aLoad'] == 1) { return true; } else { return false; } } /** * Stellt die Informationen über LiveStreams bereit * * @param * $event * @return Links */ function jetztEinschalten($event) { if ($event->nowRunning() || $_REQUEST['debug']) { $id = $event->getStationID(); if ($id == 28106) $link = 'https://www.ardmediathek.de/daserste/live/Y3JpZDovL2Rhc2Vyc3RlLmRlL2xpdmUvY2xpcC9hYmNhMDdhMy0zNDc2LTQ4NTEtYjE2Mi1mZGU4ZjY0NmQ0YzQ'; else if ($id == 28229 or $id == "-28229") $link = 'https://www.ardmediathek.de/mdr/live/Y3JpZDovL21kci5kZS9MaXZlc3RyZWFtLU1EUi1TYWNoc2Vu'; else if ($id == 28111 or $id == "-28111") $link = 'https://www.ardmediathek.de/wdr/live/Y3JpZDovL3dkci5kZS9CZWl0cmFnLTNkYTY2NGRlLTE4YzItNDY1MC1hNGZmLTRmNjQxNDcyMDcyYg'; else if ($id == 28205 or $id == "-28205") //$link = 'http://mediathek.rbb-online.de/tv-livestream/rbb-brandenburg?documentId=14940044'; $link = 'https://www.ardmediathek.de/rbb/live/Y3JpZDovL3JiYi1vbmxpbmUuZGUvcmJiZmVybnNlaGVuL2xpdmVfYnJhbmRlbmJ1cmcvc2VuZGVwbGF0ei0tLWxpdmVzdHJlYW0tLS1icmFuZGVuYnVyZy0tLWhsczE'; else if ($id == 28226 or $id == "-28226") $link = 'https://www.ardmediathek.de/ndr/live/Y3JpZDovL25kci5kZS9MaXZlc3RyZWFtLU5EUi1OaWVkZXJzYWNoc2Vu'; else if ($id == 28108) $link = 'https://www.ardmediathek.de/hr/live/Y3JpZDovL2hyLmRlL0xpdmVzdHJlYW0tSFI'; else if ($id == 28721) $link = 'https://www.ardmediathek.de/ard/live/Y3JpZDovL2Rhc2Vyc3RlLmRlL3RhZ2Vzc2NoYXUvbGl2ZXN0cmVhbQ'; else if ($id == 28724) $link = 'https://www.ardmediathek.de/ard/live/Y3JpZDovL2FydGUuZGUvTGl2ZXN0cmVhbS1BUlRF'; else if ($id == 28008) $link = 'https://www.ardmediathek.de/kika/live/Y3JpZDovL2tpa2EuZGUvTGl2ZXN0cmVhbS1LaUth'; else if ($id == 28113) $link = 'https://www.ardmediathek.de/swr/live/Y3JpZDovL3N3ci5kZS8xMzQ4MTA0Mg'; else if ($id == 28231) $link = 'https://www.ardmediathek.de/swr/live/Y3JpZDovL3N3ci5kZS8xMzQ4MTIzMA'; else if ($id == 28007) $link = 'https://www.ardmediathek.de/ard/live/Y3JpZDovLzNzYXQuZGUvTGl2ZXN0cmVhbS0zc2F0'; else if ($id == 28107 or $id == "-28107") $link = 'https://www.ardmediathek.de/br/live/Y3JpZDovL2JyLmRlL0xpdmVzdHJlYW0tQlItU8O8ZA'; else if ($id == 28487) $link = 'https://www.ardmediathek.de/alpha/live/Y3JpZDovL2JyLmRlL0xpdmVzdHJlYW0tQVJELUFscGhh'; else if ($id == 28486) $link = 'https://www.ardmediathek.de/ard/live/Y3JpZDovL3NyLW9ubGluZS5kZS8yODQ4NjAvbGl2ZXN0cmVhbQ'; else if ($id == 28722) $link = 'https://www.ardmediathek.de/one/live/Y3JpZDovL3dkci5kZS9CZWl0cmFnLTFlNjA0YWFlLTViODctNGMzNC04ZDhmLTg4OWI1ZjE2ZDU3Mw'; else if ($id == 28725) $link = 'https://www.ardmediathek.de/phoenix/live/Y3JpZDovL3dkci5kZS9CZWl0cmFnLTE3YTg4ZDdmLWI5NTAtNDcyNy05M2E0LWE3NzI3YjkxNjVkZQ'; else if ($id == 28014) $link = 'http://uefafrauenem.sportschau.de/niederlande2017/live/index.html'; else if ($id == 28011) $link = 'https://www.zdf.de/sport'; return $link; } return false; } /** * Wandelt Links in Texten in klickbare Links um */ function autolink($str, $stationID = NULL, $attributes = array()) { $attrs = ''; foreach ($attributes as $attribute => $value) { $attrs .= " {$attribute}=\"{$value}\""; } $str = ' ' . $str; $str = preg_replace('`([^"=\'>])(((http|https|ftp)://|www.)[^\s<]+[^\s<\.)])`i', '$1$2', $str); $str = substr($str, 1); $str = preg_replace('`href=\"www`', 'href="http://www', $str); if ($stationID != 28007) { preg_match_all("/

      .*?<\/p>/si", $str, $matches); $matches = $matches[0]; if (is_array($matches)) { foreach ($matches as $m) { $nm = str_replace("\n", "
      ", $m); $str = str_replace($m, $nm, $str); } } } return $str; } /* * Liest die Linksinformationen aus highlight->getAdditionalLink{1,2,3,4, usw.} in ein array der länge $num */ function get_highlight_links($highlight, $num = 3) { $links = array(); foreach (range(1, $num) as $i) { if ($highlight->{'issetAdditionalLink' . $i}() and $highlight->{'getAdditionalLink' . $i}() != $_SERVER['REQUEST_URI']) { $links[] = array( 'url' => $highlight->{'getAdditionalLink' . $i}(), 'text' => $highlight->{'getAdditionalLinkText' . $i}(), 'target' => $highlight->{'getAdditionalLinkTarget' . $i}() ); } } return $links; } /** * Liefert einen String zurück der für foundation interchange die verschiedenen Bilder den verschiednen Größen zuordnet */ function interchange($image) { $sizes = array('xsmall', 'small', 'medium', 'large', 'xlarge'); $sizes2 = array('xs' => 'xsmall', 's' => 'small', 'm' => 'medium', 'l' => 'large', 'xl' => 'xlarge'); if (getType($image) == 'string') { $image = ['xs' => $image]; } if ($image['xs']) { $sizes = $sizes2; } //$s = '['; foreach ($image as $size => $im) { if ($sizes[$size]) { $s .= $lim . '[' . $im . ', ' . $sizes[$size] . ']'; $lim = ','; } } // $s.=']'; //debug($s); return $s; } /** * */ function responsive_image($size, $pic) { $sizes = [ /*xs, sm, md, lg, xl*/ 'breaking' => [292, 452, 730, 186, 270], 'wide' => [292, 452, 746, 980, 1408], 'normal' => [292, 452, 238, 308, 448], 'mini' => [292, 452, 243, 233, 340], 'big' => [292, 452, 366, 490, 690], 'picture' => [292, 452, 496, 660, 750] ]; $sizes = $sizes[$size]; $imgSwap = []; if ($sizes) { foreach ($sizes as $size) { $imgSwap[] = $pic->getScaledPath($size); } } return $imgSwap; } /** * XMP Daten aus Bilddatei auslesen und in einem Array zurückgeben */ function get_xmp_data($file) { $content = file_get_contents($file); $xmp_data_start = strpos($content, ''); $xmp_length = $xmp_data_end - $xmp_data_start; $xmp_data = substr($content, $xmp_data_start, $xmp_length + 12); $simple = $xmp_data; $p = xml_parser_create(); xml_parse_into_struct($p, $simple, $vals, $index); xml_parser_free($p); return $vals; } /** * Gibt bei einer Uhrzeit im Format "ab:cd" nur "ab" zurück */ function get_hour($hour) { if (strpos(':', $hour) !== false) { $t = explode(':', $h); $hour = $t[0]; } return intval($hour); } /** * Untersucht die Links zu einer Sendung, und sortiert nach Mediathek, Livestream, andere Links * * @param $urls * @param $event * @param $source * @return Links */ function mediatheksLinks($urls, $event, $source = NULL) { // Wenn Sendung älter als 30 Tage => Return False $onDemand = array(); $livestream = array(); $reihe = array(); $links = array(); if ($event->nowRunning()) { $status = "running"; } else if ($event->getStartTime() > time()) { $status = "future"; } else { $status = "past"; } // Vorsortieren if ($urls) { $returnURLs = array(); $j=0; foreach ($urls as $url) { // Ein Hack um doofe Tabs, die aus dem EPG kommen, rauszuhauen $url['url'] = str_replace("\t", "", $url['url']); $url['url'] = str_replace(" ", "", $url['url']); $url['url'] = str_replace("http://http://", "http://", $url['url']); $url['url'] = str_replace("http://https://", "https://", $url['url']); // Ein Hack um kaputte 3sat Links zu reparieren $url['url'] = str_replace("http://www.3sat.de/mediathek/http://www.3sat.de/mediathek/", "http://www.3sat.de/mediathek/", $url['url']); // Livestream if ($url['description'] == "Mediathek: LiveStream") { // Livestream ARD Mediathek if ($status != "past") { $livestream[2]['url'] = $url['url']; $livestream[2]['description'] = "Livestream in der ARD Mediathek"; $livestream[2]['source'] = "ardmt"; } } // Alle OnDemand Links erst einmal sammeln elseif ($url['description'] == "Mediathek: OnDemand-Clip" or $url['rank'] >= 100 or (preg_match('/^\[/', $url['description']) && !preg_match('/(hbbtv|json)/i', $url['description']))) { $onDemandClips[] = $url; } // Reihen in Mediatheken elseif ($url['description'] == "DasErsteHbbTV") { // Reihe Das Erste Mediathek HbbTV } elseif ($url['description'] == "DasErsteWeb") { // Reihe Das Erste Mediathek Web $DasErsteReiheURL = $url; } elseif ($url['description'] == "Mediathek: Sendereihe") { // Reihe ARD Mediathek $reihe[1]['url'] = $url['url']; $reihe[1]['description'] = "Sendereihe [ARD Mediathek]"; $reihe[1]['source'] = "ardmt"; } // Links auf Sendungsseiten else { // alle anderen if (!stripos($url['url'], "hbbtv") and !stripos($url['url'], "json")) { $links[$j]['url'] = $url['url']; if ($url['title']) { $links[$j]['description'] = $url['title']; } else { $links[$j]['description'] = "Sendungsseite im Internet"; } $j++; } } } } if (jetztEinschalten($event) and $source != "ardmt") { $livestream[1]['url'] = jetztEinschalten($event); //24/7 Livestreams $livestream[1]['description'] = "Livestream jetzt einschalten"; } // Auswerten der diversen OnDemand Clips // in [0] ist das erste Video, was teilweise priorisiert angezeigt wird. if ($onDemandClips) { $i = 1; foreach ($onDemandClips as $url) { if ($url['rank'] < 100) { // Kommt aus iMex, immer Prio 1 if (!strstr($url['title'], "orschau")) { $onDemand[1][$i]['url'] = $url['url']; $onDemand[1][$i]['description'] = $url['title'] . ' [ARD Mediathek]'; $onDemand[1][$i]['source'] = "ardmt"; // In bestimmten Fällen das Video als erstes nehmen if (strstr($url['title'], "Sendung vom") or strstr($url['title'], "Ganze Sendung")) { $onDemand[1][0] = $onDemand[1][$i]; } if (strstr($url['title'], "Hörfassung") or strstr($url['title'], "Audiodeskription") or strstr($url['title'], "mit Gebärdensprache")) { $onDemand[1][$i + 100] = $onDemand[1][$i]; unset($onDemand[1][$i]); } //echo $url['title'].'
      '; } } else { if (!strstr($url['url'], "hbbtv") and !strstr($url['title'], "orschau")) { // Sonderfall arte URL if (strstr($url['url'], "_PLUS7")) { preg_match_all("=/D[^>](.*)_PLUS7=siU", $url['url'], $a); $id = $a[1][0]; /*$urlName = str_replace('ä', 'a', str_replace('ö', 'o', str_replace('ü', 'u', strtolower($event->getTitle())))); $urlName = preg_replace('/[^a-zA-Z]+/', '-', $urlName);*/ $onDemand[2][$i]['url'] = 'http://www.arte.tv/guide/de/' . $id . '-A/abc'; //$onDemand[2][$i]['url'] = $url['url']; } else { $onDemand[2][$i]['url'] = $url['url']; } if (strstr($url['url'], 'arte.') && $_REQUEST['debug']) { preg_match('#/de/([^/]+)#', $url['url'], $m); $onDemand[2][$i]['embed'] = ['id' => $m[1], 'source' => 'arte']; } $onDemand[2][$i]['description'] = $url['title']; $onDemand[2][$i]['source'] = "houston"; // In bestimmten Fällen das Video als erstes nehmen if (strstr($url['title'], "Sendung vom") or strstr($url['title'], "Ganze Sendung")) { $onDemand[1][0] = $onDemand[2][$i]; } if (strstr($url['title'], "Hörfassung") or strstr($url['title'], "Audiodeskription") or strstr($url['title'], "mit Gebärdensprache")) { $onDemand[2][$i + 100] = $onDemand[2][$i]; unset($onDemand[2][$i]); } //echo $url['title'].'
      '; } } $i++; } } ifdebug($onDemand, 'links'); // Damit die "aussortierten" nach hinten gehen if ($onDemand[1]) { ksort($onDemand[1]); } if ($onDemand[2]) { ksort($onDemand[2]); } ifdebug($onDemand, 'links'); // 30 Tage in die Vergangenheit wird kein Link mehr angezeigt. if (time() < ($event->getStartTime() + 2592000)) { $returnURLs['livestream'] = $livestream; $returnURLs['onDemand'] = $onDemand; } $returnURLs['reihe'] = $reihe; $returnURLs['links'] = $links; if ($returnURLs['livestream'] || $returnURLs['onDemand'] || $returnURLs['reihe'] || $returnURLs['links']) { return $returnURLs; } else { return false; } } function getEventUrl($a, $eventUrls, $wholeObject = false) { switch ($a) { case 'livestream': for ($x = 1; $x <= 3; $x++) { // maximal 3 Livestreameinträge if ($eventUrls['livestream'][$x]['url']) { if (stripos($eventUrls['livestream'][$x]['url'], "http") !== 0) continue; return $wholeObject ? $eventUrls['livestream'][$x] : $eventUrls['livestream'][$x]['url']; } } break; case 'onDemand': for ($x = 1; $x <= 3; $x++) { /* maximal 3 Livestreameinträge */ if ($eventUrls['onDemand'][$x]) { foreach ($eventUrls['onDemand'][$x] as $url) { //if(!$url['url']) continue; /* Manchmal ist die URL leer (Das Erste, Dr. Kleist z.B.) */ if (stripos($url['url'], "http") !== 0) continue; return $wholeObject ? $url : $url['url']; } } } break; case 'reihe': for ($x = 1; $x <= 3; $x++) { if ($eventUrls['reihe'][$x]) { if (stripos($eventUrls['reihe'][$x]['url'], "http://") === false) continue; return $wholeObject ? $eventUrls['reihe'][$x] : $eventUrls['reihe'][$x]['url']; } } break; } return false; } /** * Gibt den Code aus um einem HTML-Element ein Tooltip hinzuzufügen */ function tooltip($s = false) { if ($s) { echo ' data-tooltip '; } } function loader_gif($includePath = '', $alt = 'Wird geladen...') { return '' . $alt . ''; } function url_has_protocol($url) { return stripos($url, "http://") !== false || stripos($url, "https://") !== false; } define('FUNCTIONS', true); // macht klar, dass das Ding schon einmal geladen wurde } // Liest die Verknüpfung zwischen Schlagworten und Schwerpunktlinks aus // Auf das Array $tagLinks kann dann u.a. in der Detailansicht zugegriffen werden ?> Hochsetzen bei Aktualisierung, dann wird das CDN ausgetrickst $t=91; if($_REQUEST['debugjs']) $t = time(); if ($_REQUEST['debugInclude'] == "martin"){$includePath = "http://headkino.de/ard/programm/35/";} if ($_REQUEST['debugInclude'] == "robert"){$includePath = "http://liga.parkdrei.de/programmARDde/35/";} if (! isset ( $pageName )) { $pageName = "programm"; } if ( isset ( $bodyClass )) { $bodyClass = " ".$bodyClass; } // Erst abfragen, ob ein globales Hintergrundbild da ist ?>

      >
      Für Inline CSS Angaben. Diese müssen immer zeitnah in die statischen CSS Dateien transportiert werden * INC [Inline TW Styles] => Für Inline CSS Angaben für die TW (2014) * * steuert mit "content" die Dauer, die eine Seite im Redis-Cache vorgehalten wird * * Embedding aller CSS und JS Dateien sowie der schon im Heder notwendigen Skripte * Die Reihenfolge der CSS Includes ist wichtig, da einige Angaben in programm.css Skins für den ARD Prototypen beinhalten * * letztes Minimieren und Zusammenfassen der JS - 09.03.15 * letztes Minimieren und Zusammenfassen der CSS-Dateien - 09.03.15 * * Die minimierten und zusammengefassten Dateien stehen lokal im jeweiligen Unterordner "prod" * * V3.2 * V3.2.1 Themenwoche 2015 * V3.2.2 Bugfix print.css * * V3.5 * * * * * TODO muss hier schon irgendetwas von der Pixelung rein? */ ?> <?= $metaTags->getTitle() ?> getTags()?> getBlocked () && ! $detail_event->getContentBlocked ()) { ?> getPicturePaths ( 'teaser_huge' ); if (is_array ( $picturePaths ) && count ( $picturePaths )) { foreach ( $picturePaths as $i => $pp ) { ?> > prepareHighlights(15254); ?> false, 'bottom' => false, 'showDate' => true, 'hideThumb' => false, 'hideTipp' => false, 'max' => 10000, 'showStation' => true, //Hinter der Beschreibung wird der Sender angezeigt. 'now' => false, //Jetzt im TV 'headline' => false, 'noMenu' => true, 'includeDetail' => true //Detailansicht ); ?>
      fetchFullById ( $eid, 1, false ); if ($detail_event->getID () == 0) { $detail_event = $ipg->fetchFullById ( $eid, 1, true ); $archiveMode = true; } } echo ''; // Sendungen aelter als 3 Monate ausblenden (#12542) if ($detail_event->getStartTime () < strtotime('-3 month')){ $detail_event = null; } if($detail_event){ $events_by_day[0][] = $detail_event; }else{ $events_by_day = []; } ?> false, 'bottom' => false, 'showDate' => false, 'hideThumb' => false, 'hideTipp' => false, 'max' => 10000, 'showStation' => false, //Hinter der Beschreibung wird der Sender angezeigt. 'now' => false, //Jetzt im TV 'headline' => false, 'noMenu' => false, 'includeDetail' => false, //Nur für Detailansicht 'embedded' => false //Ist Liste mittels iframe eingebettet? (WM, Olympia, etc.) );} if (! $list_ops ['max']) { $list_ops ['max'] = 10000; } if (! $list_ops ['opendays']){ $list_ops ['opendays'] = 2; } //Vergangenheit verstecken, wenn nicht jetzt im TV & nicht kein Menü & ... if (!isset($list_ops['hidepast'])){ $list_ops ['hidepast'] = !$list_ops['now'] && !$list_ops['noMenu'] && ($listmenu_ops ['calendar'] && ! $list_ops ['daily'] && (! $_REQUEST ['datum'] || strtotime ( $_REQUEST ['datum'] ) == strtotime ( date ( 'd.m.Y' ) ))); } /**** Daten *****/ $c = 0; $lim = ''; $time = time (); $_SESSION ['lists'] ['functionList'] = array (); $_SESSION ['lists'] ['themenschwerpunkt'] = array (); $list_entries = $list_events = $delayedTaggableEventIdStrings = array(); if(!is_array($events_by_day) || count($events_by_day) == 1 && array_key_exists(0, $events_by_day) && !$events_by_day[0]){ # der hintere Teil ist nötig bei UT-Sendungen nach Sender $events_by_day = array(); } //debug($events_by_day, 'list'); $total_events_count = 0; foreach ( $events_by_day as $day => $events ) { if(!is_array($events)) { $events = array($events); } $event_count = count ( $events ); $future_event_count = 0; $memo_count = 0; if ($c > $list_ops ['max']) { break; } for($z = 0; $z < $event_count; $z ++) { if ($not_next > 0) { $not_next--; continue; } $event = $events[$z]; if ($event && !$event->getBlocked()) { $new_day = $day; $entry = array(); if($list_ops ['hidepast']) { $in_past = ($event->getEndTime () <= $time); $new_day = $in_past ? 'past' : $day; } $c++; $eid = $event->getID (); $entry['eid'] = $eid; $entry['stationID'] = $event->getStationID (); $base_station_id = $ipg->fetchRegionalBaseStationId ( $entry['stationID'] ); $base_station = $ipg->fetchStationIgnoreShowNotInLists ( $base_station_id, 'tv' ); $entry['stationName'] = $base_station->getName(); $_SESSION ['lists'] ['themenschwerpunkt'] [] = array ( 'id' => $event->getID (), 'title' => $event->getShortTitle ( 24 ), 'url' => $event->getEventUrl ()); $_SESSION ['lists'] ['functionList'] [] = array ( 'id' => $event->getID (), 'title' => $event->getTitle (), 'startTime' => $event->getStartTime (), 'ISOStartDateTime' => $event->getISOStartDateTime (), 'url' => $event->getEventUrl ()); if($event->isRegional () and !$list_ops['showStation']) { /*********** REGIONAL *************/ $start_time = $event->getShortStartTime (); //$regional_events = $list_ops['all_regional_events'][$start_time]; $regional_events = $all_regional_events[$start_time]; $entry['regional_events'] = $regional_events; } else { /***********NICHT REGIONAL*************/ if ($pageName == "Themenwoche") { if ($event->getDescription () and $event->getDescription () != 'ARD-Themenwoche "Heimat"') { ?>getDescription () ).' | '; } } else { if ($event->getDescription()) { $entry['subtitle'] = $event->getDescription (); } } if($list_ops['showStation']) { if (strlen(trim($event->getDescription ())) > 1 and $pageName != "Themenwoche") { $entry['subtitle'] .= ' | '; } if ($event->isRegional()){ $entry['subtitle'] .= $event->getStation(); } else { $entry['subtitle'] .= $base_station->getName(); } $i = 1; while ( $events [$z + $i] && $events [$z + $i]->getTitle () == $event->getTitle () && $events [$z + $i]->getDescription () == $event->getDescription () && $events [$z + $i]->getStartTime () == $event->getStartTime () ) { $next_event = $events [$z + $i]; if ($next_event->getType () == "tv") { $next_base_station_id = $ipg->fetchRegionalBaseStationId ( $next_event->getStationID () ); $next_station = $ipg->fetchStationIgnoreShowNotInLists ( $next_base_station_id, 'tv' ); } $entry['subtitle'] .= ', ' . $next_station->getName (); $not_next ++; $i ++; } } $urls = $event->getURLs (); // Zugriff Links (neu) //ifdebug($urls); $eventUrls = mediatheksLinks ( $urls, $event ); //ifdebug($eventUrls); $entry['onDemand'] = $eventUrls['onDemand']; if ($event->isTip() || $eventUrls['onDemand'] || $event->nowRunning() || $event->getTrailer()) { $firstPic = ''; $picture = $event->getPicture ( 0 ); if ($picture) { $entry['firstPic'] = $firstPic = $picture->getScaledPath ( '160' ); $pictureAlt = "Bild: " . $event->getTitle (); } $entry['trailer'] = $event->getTrailer(); if ($eventUrls ['livestream'] and $event->nowRunning ()) { $entry['livestream'] = getEventUrl('livestream', $eventUrls); } else { unset ( $eventUrls ['livestream'] ); } if($eventUrls['onDemand'] AND !$eventUrls['livestream']){ $entry['mediathek_url'] = getEventUrl('onDemand', $eventUrls); $entry['mediathek_url'] = str_replace("https://www.ardmediathek.de/ard/player/", "https://www.ardmediathek.de/video/", $entry['mediathek_url']); } } // Sonderfall Alle Sender SWR RP, SR und Radio Bremen => Keine Tipps anzeigen, würden sich doppeln if ($list_ops['now'] AND ($entry['stationID'] == 28385 OR $entry['stationID'] == 28486 OR $entry['stationID'] == 28231)){ $entry['firstPic'] = ''; $entry['hideTipp'] = true; } if ($firstPic){ $imgSwap [0] = ""; $imgSwap [1] = ""; $imgSwap [2] = $firstPic; $imgSwap [3] = $firstPic; $imgSwap [4] = $firstPic; $entry['attSwapImg'] = interchange($imgSwap); $picture = $event->getPicture ( 0 ); if($picture) { $entry['pictureTitle'] = $picture->getAltTitle(); } } } $entry['date'] = $list_ops ['showDate'] ? $event->getShortStartDate () . '
      ' . $event->getShortStartTime (true) . ' Uhr' : $event->getShortStartTime (false, true) . ""; $entry['date-class'] = $list_ops ['showDate'] ? ' show-date' : ''; $list_events[$new_day][] = $event; //Event objects $list_entries[$new_day][] = $entry; //Array mit vorbereiteten Ausgaben für jedes Event, Datum, Zeit etc. $total_events_count++; } } } //ifdebug($list_events); /******ENDE DATEN*******/ if ($list_ops['headline']) { ?>

      >
      > false, 'now' => false, '20uhr' => false, '22uhr' => false, 'evening' => false, 'calendar' => false, 'calendar_nodate' => false, //Text um Button einzublenden, um Datum zu löschen 'classes' => [], //Liste von Elementen ['name' => 'CSS-Classname'] //Bsp.: ['calendar' => 'show-for-medium', 'filter-1' => '...'] 'heute' => false, 'weekdays' => false, // Sonst array(Startdatum, Enddatum) jeweils im Format d.m.Y 'stations' => false, 'bottom' => false, 'mediathek' => false, 'showArchiv' => false, 'stickTop' => false //Beim Scrollen mitgehen/oben festkleben ); if (count ( $listmenu_ops ['calendar'] ) == 2) { $listmenu_ops ['minDate'] = $listmenu_ops ['calendar'] [0]; $listmenu_ops ['maxDate'] = $listmenu_ops ['calendar'] [1]; } else { $listmenu_ops ['minDate'] = - 365; $listmenu_ops ['maxDate'] = 28; } $no_menu = ! $listmenu_ops ['time'] && ! $listmenu_ops ['calendar'] && ! $listmenu_ops ['weekdays'] && ! $listmenu_ops ['stations'] && ! $listmenu_ops ['mediathek'] && ! $listmenu_ops ['bottom']; if (! $no_menu) { $wochentage = array ( 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa', 'So' ); $wochentageFull = array ( 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag' ); $stationManager = new StationManager($GLOBALS['ipgConnection']); $endDate = $stationManager->getEndDate($stationid); $datepicker = array( 'language' => 'de', 'endDate' => $listmenu_ops['maxDate'] ? $listmenu_ops ['maxDate'] : $endDate, 'format' => 'dd.mm.yyyy', 'weekStart' => 1 ); if($listmenu_ops ['minDate']) { $datepicker['startDate'] = $listmenu_ops ['minDate']; //debug($datepicker); } $timepicker = array( 'language' => 'de', 'format' => 'hh:ii', 'pickTime' => true, 'maxView' => 'day', 'minView' => 'day', 'startView' => "day" ); $archivVar = ''; $archivVarYesterday = ''; $archivVarTomorrow = ''; // Archivparameter if ($date){ if (strtotime($date) < strtotime(date("d.m.Y"))){ $archivVar = "&archiv=1"; $_REQUEST['archiv'] = 1; } if (strtotime($date." + 1day") < strtotime(date("d.m.Y"))){ $archivVarTomorrow = "&archiv=1"; } if (strtotime($date." - 1day") < strtotime(date("d.m.Y"))){ $archivVarYesterday = "&archiv=1"; } } if (! $listmenu_ops ['bottom']) { if ($listmenu_ops ['time']) { $sheight = "80"; } else { $sHeight = "30"; } if (! $_REQUEST ['datum']) { $_REQUEST['datum'] = date ( "d.m.Y", time() ); } ?>
      false, 'now' => false, '20uhr' => false, '22uhr' => false, 'evening' => false, 'calendar' => false, 'heute' => false, 'weekdays' => false, // Sonst array(Startdatum, Enddatum) jeweils im Format d.m.Y 'stations' => false, 'bottom' => false, 'mediathek' => false, 'showArchiv' => false, 'stickTop' => false //Beim Scrollen mitgehen/oben festkleben ); if (is_countable($listmenu_ops ['calendar']) && count ( $listmenu_ops ['calendar'] ) == 2) { $listmenu_ops ['minDate'] = $listmenu_ops ['calendar'] [0]; $listmenu_ops ['maxDate'] = $listmenu_ops ['calendar'] [1]; } else { $listmenu_ops ['minDate'] = - 356; $listmenu_ops ['maxDate'] = 28; } $no_menu = ! $listmenu_ops ['time'] && ! $listmenu_ops ['calendar'] && ! $listmenu_ops ['weekdays'] && ! $listmenu_ops ['stations'] && ! $listmenu_ops ['mediathek'] && ! $listmenu_ops ['bottom']; if (! $no_menu) { if (! isset ( $hour )) { $hour = get_hour($_REQUEST ['hour']); if (! isset ( $hour )) $hour = date ( 'G' ); } if ($hour > 29) { $hour = 6; $date = date ( 'd.m.Y', strtotime ( '+1 day', strtotime ( $date ) ) ); } $shour = $hour; if ($shour >= 24) $shour = $shour % 24; $next_hour = ($shour + 1) % 24; $prev_hour = ($shour - 1 + 24) % 24; $wochentage = array ( 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa', 'So' ); $wochentageFull = array ( 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag' ); $stationManager = new StationManager($GLOBALS['ipgConnection']); $endDate = $stationManager->getEndDate($stationid); $datepicker = array( 'language' => 'de', 'endDate' => $endDate, 'format' => 'dd.mm.yyyy', 'weekStart' => 1 ); $timepicker = array( 'language' => 'de', 'format' => 'hh:ii', 'pickTime' => true, 'maxView' => 'day', 'minView' => 'day', 'startView' => "day" ); $archivVar = ''; $archivVarYesterday = ''; $archivVarTomorrow = ''; // Archivparameter if ($date){ if (strtotime($date) < strtotime(date("d.m.Y"))){ $archivVar = "&archiv=1"; $_REQUEST['archiv'] = 1; } if (strtotime($date." + 1day") < strtotime(date("d.m.Y"))){ $archivVarTomorrow = "&archiv=1"; } if (strtotime($date." - 1day") < strtotime(date("d.m.Y"))){ $archivVarYesterday = "&archiv=1"; } } if (! $listmenu_ops ['bottom']) { if ($listmenu_ops ['time']) { $sheight = "80"; } else { $sHeight = "30"; } if (! $_REQUEST ['datum']) { $_REQUEST ['datum'] = date ( "d.m.Y", time() ); } ?>
      = 1475272800) { ?>
      EinsPlus wird zum 1.10.2016 eingestellt.
        $events ) { $entries = $list_entries[$day]; $c++; //ifdebug($day); $isActive = ($day === 'past' && !$list_ops['includeDetail']) || ($list_ops['daily'] && $c > $list_ops['opendays']); if ($list_ops['now']){$isActive = ""; } $titlePadding = !($day === 'past' || $list_ops['daily']); ?>
      •   Alle Sendungen des Tages anzeigen Abgelaufene Sendungen verbergen
          getStartTime()) ? 'Heute' : \PHP82_BC\strftime("%A, %d.%m.%y", $events[0]->getStartTime()); ?>
          $event) { $loop_count++; $last_class = ($loop_count == $event_number ? ' last' : ''); $title_class = 'accordion-title'.$last_class; $entry = $entries[$key]; ?>
        • isRegional () and !$list_ops['showStation']) { ?> getID(); $delayedTaggableEventIdString = "memo_".$delayedTaggableEventId.'_'.uniqid(); $delayedTaggableEventTime = urlencode($event->getISOStartDateTime()); $delayedTaggableEventIdStrings[$delayedTaggableEventId] = $delayedTaggableEventIdString; ?> < class="sendungslink " href="/TV/Themenschwerpunkte/Kirche-und-Religion/Religion-Hoerfunk/Startseite/?sendung=" data-href="/TV/Programm/Load/Event35?sendung=&aLoad=1&shortdetail=&special=" data-container=".accordion-content">
          getRoofTitle()){ ?> getRoofTitle(); ?> getTitle()); } else if ($list_ops['special'] == "em2020"){ echo str_replace("UEFA EURO 2020: ", "", $event->getTitle()); } else { ?> getTitle(); ?> isTip() || $entry['onDemand'] || $event->nowRunning()) { ?> <?= $entry['pictureTitle'] ?> nowRunning ()) { ?> Livestream isTip() AND $event->getStartTime() > time() AND !$entry['onDemand'] AND !$entry['livestream'] AND !$entry['hideTipp'] AND !$entry['trailer']) { ?> Tipp Mediathek Trailer
          >
          '; print_r($d); echo ''; } function ifdebug($d, $type = false) { $n = 'debug'; if ($type) { $n = 'debug-' . $type; } if ($_REQUEST[$n]) { debug($d); } } function isAjax() { // Das haut nicht hin, schon gar nicht mit dem CDN // wir nehmen aLoad=1 als Parameter, der das indiziert //if (isset ( $_SERVER ['HTTP_X_REQUESTED_WITH'] ) && $_SERVER ['HTTP_X_REQUESTED_WITH'] == "XMLHttpRequest") if ($_REQUEST['aLoad'] == 1) { return true; } else { return false; } } /** * Stellt die Informationen über LiveStreams bereit * * @param * $event * @return Links */ function jetztEinschalten($event) { if ($event->nowRunning() || $_REQUEST['debug']) { $id = $event->getStationID(); if ($id == 28106) $link = 'https://www.ardmediathek.de/daserste/live/Y3JpZDovL2Rhc2Vyc3RlLmRlL2xpdmUvY2xpcC9hYmNhMDdhMy0zNDc2LTQ4NTEtYjE2Mi1mZGU4ZjY0NmQ0YzQ'; else if ($id == 28229 or $id == "-28229") $link = 'https://www.ardmediathek.de/mdr/live/Y3JpZDovL21kci5kZS9MaXZlc3RyZWFtLU1EUi1TYWNoc2Vu'; else if ($id == 28111 or $id == "-28111") $link = 'https://www.ardmediathek.de/wdr/live/Y3JpZDovL3dkci5kZS9CZWl0cmFnLTNkYTY2NGRlLTE4YzItNDY1MC1hNGZmLTRmNjQxNDcyMDcyYg'; else if ($id == 28205 or $id == "-28205") //$link = 'http://mediathek.rbb-online.de/tv-livestream/rbb-brandenburg?documentId=14940044'; $link = 'https://www.ardmediathek.de/rbb/live/Y3JpZDovL3JiYi1vbmxpbmUuZGUvcmJiZmVybnNlaGVuL2xpdmVfYnJhbmRlbmJ1cmcvc2VuZGVwbGF0ei0tLWxpdmVzdHJlYW0tLS1icmFuZGVuYnVyZy0tLWhsczE'; else if ($id == 28226 or $id == "-28226") $link = 'https://www.ardmediathek.de/ndr/live/Y3JpZDovL25kci5kZS9MaXZlc3RyZWFtLU5EUi1OaWVkZXJzYWNoc2Vu'; else if ($id == 28108) $link = 'https://www.ardmediathek.de/hr/live/Y3JpZDovL2hyLmRlL0xpdmVzdHJlYW0tSFI'; else if ($id == 28721) $link = 'https://www.ardmediathek.de/ard/live/Y3JpZDovL2Rhc2Vyc3RlLmRlL3RhZ2Vzc2NoYXUvbGl2ZXN0cmVhbQ'; else if ($id == 28724) $link = 'https://www.ardmediathek.de/ard/live/Y3JpZDovL2FydGUuZGUvTGl2ZXN0cmVhbS1BUlRF'; else if ($id == 28008) $link = 'https://www.ardmediathek.de/kika/live/Y3JpZDovL2tpa2EuZGUvTGl2ZXN0cmVhbS1LaUth'; else if ($id == 28113) $link = 'https://www.ardmediathek.de/swr/live/Y3JpZDovL3N3ci5kZS8xMzQ4MTA0Mg'; else if ($id == 28231) $link = 'https://www.ardmediathek.de/swr/live/Y3JpZDovL3N3ci5kZS8xMzQ4MTIzMA'; else if ($id == 28007) $link = 'https://www.ardmediathek.de/ard/live/Y3JpZDovLzNzYXQuZGUvTGl2ZXN0cmVhbS0zc2F0'; else if ($id == 28107 or $id == "-28107") $link = 'https://www.ardmediathek.de/br/live/Y3JpZDovL2JyLmRlL0xpdmVzdHJlYW0tQlItU8O8ZA'; else if ($id == 28487) $link = 'https://www.ardmediathek.de/alpha/live/Y3JpZDovL2JyLmRlL0xpdmVzdHJlYW0tQVJELUFscGhh'; else if ($id == 28486) $link = 'https://www.ardmediathek.de/ard/live/Y3JpZDovL3NyLW9ubGluZS5kZS8yODQ4NjAvbGl2ZXN0cmVhbQ'; else if ($id == 28722) $link = 'https://www.ardmediathek.de/one/live/Y3JpZDovL3dkci5kZS9CZWl0cmFnLTFlNjA0YWFlLTViODctNGMzNC04ZDhmLTg4OWI1ZjE2ZDU3Mw'; else if ($id == 28725) $link = 'https://www.ardmediathek.de/phoenix/live/Y3JpZDovL3dkci5kZS9CZWl0cmFnLTE3YTg4ZDdmLWI5NTAtNDcyNy05M2E0LWE3NzI3YjkxNjVkZQ'; else if ($id == 28014) $link = 'http://uefafrauenem.sportschau.de/niederlande2017/live/index.html'; else if ($id == 28011) $link = 'https://www.zdf.de/sport'; return $link; } return false; } /** * Wandelt Links in Texten in klickbare Links um */ function autolink($str, $stationID = NULL, $attributes = array()) { $attrs = ''; foreach ($attributes as $attribute => $value) { $attrs .= " {$attribute}=\"{$value}\""; } $str = ' ' . $str; $str = preg_replace('`([^"=\'>])(((http|https|ftp)://|www.)[^\s<]+[^\s<\.)])`i', '$1$2', $str); $str = substr($str, 1); $str = preg_replace('`href=\"www`', 'href="http://www', $str); if ($stationID != 28007) { preg_match_all("/

          .*?<\/p>/si", $str, $matches); $matches = $matches[0]; if (is_array($matches)) { foreach ($matches as $m) { $nm = str_replace("\n", "
          ", $m); $str = str_replace($m, $nm, $str); } } } return $str; } /* * Liest die Linksinformationen aus highlight->getAdditionalLink{1,2,3,4, usw.} in ein array der länge $num */ function get_highlight_links($highlight, $num = 3) { $links = array(); foreach (range(1, $num) as $i) { if ($highlight->{'issetAdditionalLink' . $i}() and $highlight->{'getAdditionalLink' . $i}() != $_SERVER['REQUEST_URI']) { $links[] = array( 'url' => $highlight->{'getAdditionalLink' . $i}(), 'text' => $highlight->{'getAdditionalLinkText' . $i}(), 'target' => $highlight->{'getAdditionalLinkTarget' . $i}() ); } } return $links; } /** * Liefert einen String zurück der für foundation interchange die verschiedenen Bilder den verschiednen Größen zuordnet */ function interchange($image) { $sizes = array('xsmall', 'small', 'medium', 'large', 'xlarge'); $sizes2 = array('xs' => 'xsmall', 's' => 'small', 'm' => 'medium', 'l' => 'large', 'xl' => 'xlarge'); if (getType($image) == 'string') { $image = ['xs' => $image]; } if ($image['xs']) { $sizes = $sizes2; } //$s = '['; foreach ($image as $size => $im) { if ($sizes[$size]) { $s .= $lim . '[' . $im . ', ' . $sizes[$size] . ']'; $lim = ','; } } // $s.=']'; //debug($s); return $s; } /** * */ function responsive_image($size, $pic) { $sizes = [ /*xs, sm, md, lg, xl*/ 'breaking' => [292, 452, 730, 186, 270], 'wide' => [292, 452, 746, 980, 1408], 'normal' => [292, 452, 238, 308, 448], 'mini' => [292, 452, 243, 233, 340], 'big' => [292, 452, 366, 490, 690], 'picture' => [292, 452, 496, 660, 750] ]; $sizes = $sizes[$size]; $imgSwap = []; if ($sizes) { foreach ($sizes as $size) { $imgSwap[] = $pic->getScaledPath($size); } } return $imgSwap; } /** * XMP Daten aus Bilddatei auslesen und in einem Array zurückgeben */ function get_xmp_data($file) { $content = file_get_contents($file); $xmp_data_start = strpos($content, ''); $xmp_length = $xmp_data_end - $xmp_data_start; $xmp_data = substr($content, $xmp_data_start, $xmp_length + 12); $simple = $xmp_data; $p = xml_parser_create(); xml_parse_into_struct($p, $simple, $vals, $index); xml_parser_free($p); return $vals; } /** * Gibt bei einer Uhrzeit im Format "ab:cd" nur "ab" zurück */ function get_hour($hour) { if (strpos(':', $hour) !== false) { $t = explode(':', $h); $hour = $t[0]; } return intval($hour); } /** * Untersucht die Links zu einer Sendung, und sortiert nach Mediathek, Livestream, andere Links * * @param $urls * @param $event * @param $source * @return Links */ function mediatheksLinks($urls, $event, $source = NULL) { // Wenn Sendung älter als 30 Tage => Return False $onDemand = array(); $livestream = array(); $reihe = array(); $links = array(); if ($event->nowRunning()) { $status = "running"; } else if ($event->getStartTime() > time()) { $status = "future"; } else { $status = "past"; } // Vorsortieren if ($urls) { $returnURLs = array(); $j=0; foreach ($urls as $url) { // Ein Hack um doofe Tabs, die aus dem EPG kommen, rauszuhauen $url['url'] = str_replace("\t", "", $url['url']); $url['url'] = str_replace(" ", "", $url['url']); $url['url'] = str_replace("http://http://", "http://", $url['url']); $url['url'] = str_replace("http://https://", "https://", $url['url']); // Ein Hack um kaputte 3sat Links zu reparieren $url['url'] = str_replace("http://www.3sat.de/mediathek/http://www.3sat.de/mediathek/", "http://www.3sat.de/mediathek/", $url['url']); // Livestream if ($url['description'] == "Mediathek: LiveStream") { // Livestream ARD Mediathek if ($status != "past") { $livestream[2]['url'] = $url['url']; $livestream[2]['description'] = "Livestream in der ARD Mediathek"; $livestream[2]['source'] = "ardmt"; } } // Alle OnDemand Links erst einmal sammeln elseif ($url['description'] == "Mediathek: OnDemand-Clip" or $url['rank'] >= 100 or (preg_match('/^\[/', $url['description']) && !preg_match('/(hbbtv|json)/i', $url['description']))) { $onDemandClips[] = $url; } // Reihen in Mediatheken elseif ($url['description'] == "DasErsteHbbTV") { // Reihe Das Erste Mediathek HbbTV } elseif ($url['description'] == "DasErsteWeb") { // Reihe Das Erste Mediathek Web $DasErsteReiheURL = $url; } elseif ($url['description'] == "Mediathek: Sendereihe") { // Reihe ARD Mediathek $reihe[1]['url'] = $url['url']; $reihe[1]['description'] = "Sendereihe [ARD Mediathek]"; $reihe[1]['source'] = "ardmt"; } // Links auf Sendungsseiten else { // alle anderen if (!stripos($url['url'], "hbbtv") and !stripos($url['url'], "json")) { $links[$j]['url'] = $url['url']; if ($url['title']) { $links[$j]['description'] = $url['title']; } else { $links[$j]['description'] = "Sendungsseite im Internet"; } $j++; } } } } if (jetztEinschalten($event) and $source != "ardmt") { $livestream[1]['url'] = jetztEinschalten($event); //24/7 Livestreams $livestream[1]['description'] = "Livestream jetzt einschalten"; } // Auswerten der diversen OnDemand Clips // in [0] ist das erste Video, was teilweise priorisiert angezeigt wird. if ($onDemandClips) { $i = 1; foreach ($onDemandClips as $url) { if ($url['rank'] < 100) { // Kommt aus iMex, immer Prio 1 if (!strstr($url['title'], "orschau")) { $onDemand[1][$i]['url'] = $url['url']; $onDemand[1][$i]['description'] = $url['title'] . ' [ARD Mediathek]'; $onDemand[1][$i]['source'] = "ardmt"; // In bestimmten Fällen das Video als erstes nehmen if (strstr($url['title'], "Sendung vom") or strstr($url['title'], "Ganze Sendung")) { $onDemand[1][0] = $onDemand[1][$i]; } if (strstr($url['title'], "Hörfassung") or strstr($url['title'], "Audiodeskription") or strstr($url['title'], "mit Gebärdensprache")) { $onDemand[1][$i + 100] = $onDemand[1][$i]; unset($onDemand[1][$i]); } //echo $url['title'].'
          '; } } else { if (!strstr($url['url'], "hbbtv") and !strstr($url['title'], "orschau")) { // Sonderfall arte URL if (strstr($url['url'], "_PLUS7")) { preg_match_all("=/D[^>](.*)_PLUS7=siU", $url['url'], $a); $id = $a[1][0]; /*$urlName = str_replace('ä', 'a', str_replace('ö', 'o', str_replace('ü', 'u', strtolower($event->getTitle())))); $urlName = preg_replace('/[^a-zA-Z]+/', '-', $urlName);*/ $onDemand[2][$i]['url'] = 'http://www.arte.tv/guide/de/' . $id . '-A/abc'; //$onDemand[2][$i]['url'] = $url['url']; } else { $onDemand[2][$i]['url'] = $url['url']; } if (strstr($url['url'], 'arte.') && $_REQUEST['debug']) { preg_match('#/de/([^/]+)#', $url['url'], $m); $onDemand[2][$i]['embed'] = ['id' => $m[1], 'source' => 'arte']; } $onDemand[2][$i]['description'] = $url['title']; $onDemand[2][$i]['source'] = "houston"; // In bestimmten Fällen das Video als erstes nehmen if (strstr($url['title'], "Sendung vom") or strstr($url['title'], "Ganze Sendung")) { $onDemand[1][0] = $onDemand[2][$i]; } if (strstr($url['title'], "Hörfassung") or strstr($url['title'], "Audiodeskription") or strstr($url['title'], "mit Gebärdensprache")) { $onDemand[2][$i + 100] = $onDemand[2][$i]; unset($onDemand[2][$i]); } //echo $url['title'].'
          '; } } $i++; } } ifdebug($onDemand, 'links'); // Damit die "aussortierten" nach hinten gehen if ($onDemand[1]) { ksort($onDemand[1]); } if ($onDemand[2]) { ksort($onDemand[2]); } ifdebug($onDemand, 'links'); // 30 Tage in die Vergangenheit wird kein Link mehr angezeigt. if (time() < ($event->getStartTime() + 2592000)) { $returnURLs['livestream'] = $livestream; $returnURLs['onDemand'] = $onDemand; } $returnURLs['reihe'] = $reihe; $returnURLs['links'] = $links; if ($returnURLs['livestream'] || $returnURLs['onDemand'] || $returnURLs['reihe'] || $returnURLs['links']) { return $returnURLs; } else { return false; } } function getEventUrl($a, $eventUrls, $wholeObject = false) { switch ($a) { case 'livestream': for ($x = 1; $x <= 3; $x++) { // maximal 3 Livestreameinträge if ($eventUrls['livestream'][$x]['url']) { if (stripos($eventUrls['livestream'][$x]['url'], "http") !== 0) continue; return $wholeObject ? $eventUrls['livestream'][$x] : $eventUrls['livestream'][$x]['url']; } } break; case 'onDemand': for ($x = 1; $x <= 3; $x++) { /* maximal 3 Livestreameinträge */ if ($eventUrls['onDemand'][$x]) { foreach ($eventUrls['onDemand'][$x] as $url) { //if(!$url['url']) continue; /* Manchmal ist die URL leer (Das Erste, Dr. Kleist z.B.) */ if (stripos($url['url'], "http") !== 0) continue; return $wholeObject ? $url : $url['url']; } } } break; case 'reihe': for ($x = 1; $x <= 3; $x++) { if ($eventUrls['reihe'][$x]) { if (stripos($eventUrls['reihe'][$x]['url'], "http://") === false) continue; return $wholeObject ? $eventUrls['reihe'][$x] : $eventUrls['reihe'][$x]['url']; } } break; } return false; } /** * Gibt den Code aus um einem HTML-Element ein Tooltip hinzuzufügen */ function tooltip($s = false) { if ($s) { echo ' data-tooltip '; } } function loader_gif($includePath = '', $alt = 'Wird geladen...') { return '' . $alt . ''; } function url_has_protocol($url) { return stripos($url, "http://") !== false || stripos($url, "https://") !== false; } define('FUNCTIONS', true); // macht klar, dass das Ding schon einmal geladen wurde } // Liest die Verknüpfung zwischen Schlagworten und Schwerpunktlinks aus // Auf das Array $tagLinks kann dann u.a. in der Detailansicht zugegriffen werden ?> loadUser (); $memos = $ipg->fetchMemos ( $program_user ); if ($_REQUEST ['sendung'] && ! $detail_event) { $archiveMode = false; $detail_event = $ipg->fetchFullById ( $_REQUEST ['sendung'], 1, false ); if ($detail_event->getID () == 0) { $detail_event = $ipg->fetchFullById ( $_REQUEST ['sendung'], 1, true ); $archiveMode = true; } } else { if ($_SESSION ['previewEvent']) { $detail_event = $_SESSION ['previewEvent']; unset ( $_SESSION ['previewEvent'] ); } } if ($_REQUEST['debug'] == "robert") { print "


          (bernd) " . __FILE__ . ", " . __LINE__ . "
          \n";
              print_r($detail_event);
              print "

          \n"; } $metaTags = new MetaTags ( $detail_event, '/TV/Themenschwerpunkte/Kirche und Religion/Religion Hörfunk/Startseite', $_REQUEST ['sender'] ); require_once IPG_CLASS_PATH . 'TimeManager.php'; require_once EVO_MODULES_PATH . "/addOn/classes/ipg.php"; require_once EVO_MODULES_PATH . "/addOn/classes/teaserManager.php"; $teaser_manager = new TeaserManager ( $ipg ); // V3.5.9 $hoerbarRust = false; if ($detail_event->getTitle() == "Hörbar Rust") { $hoerbarRust = true; } // V3.5.5 MDR $mdrBefore2017 = false; if (\PHP82_BC\in_array($detail_event->getStationID(), array("28229", "-28229", "28228", "28230"))) { if ($detail_event->getStartTime() < 1483228800){ $mdrBefore2017 = true; } } // Special if ($pageName == "tagesschau24"){ $_REQUEST['special'] = "tagesschau24"; } // Alles nur ausführen, wenn das Event nicht gesperrt ist if ($detail_event && $detail_event->getID () && ! $detail_event->getBlocked () && ! $detail_event->getContentBlocked () AND !$mdrBefore2017 AND !$hoerbarRust) { $ID = $detail_event->getID (); $mode = $detail_event->getBroadcastType (); if (strpos ( $_SERVER ['REQUEST_URI'], '68_1' ) == false) { // Zähler im Highlightpool $ipg->storeEventHit ( $detail_event, $archiveMode ); } $noEventLinks = true; $bookmarks = $detail_event->getBookmarks (); // URLs holen $urls = $detail_event->getURLs (); $eventUrls = mediatheksLinks ( $urls, $detail_event, $_REQUEST ['mediathek'] ); $base_station_id = $ipg->fetchRegionalBaseStationId ( $detail_event->getStationID () ); if (! $base_station_id) { $base_station_id = $detail_event->getStationID (); } $base_station = $ipg->fetchStationIgnoreShowNotInLists ( $base_station_id, 'tv' ); $detailevent_stationname = $base_station->getName (); $detailevent_stationlink = $base_station->getURL (); $event = $detail_event; /* Gibt es einen Trailer */ $showTrailer = false; $highlightmanager = new HighlightManager (); $highlightmanager->initialize ( $GLOBALS ['connection'] ); $highlight = $highlightmanager->fetchByEventID ( $detail_event->getID (), $archiveMode ); if (isset ( $highlight ) && $highlight->getTrailer ()) { if (($detail_event->getEndTime ()) > TimeManager::getTime ()) { // Sendung muss in der Zukunft liegen, nur dann wird der Trailer abgespielt $counter = 1; $fsk = $highlight->getTrailerFSK (); // FSK if (! $fsk or $fsk == 0) { $showTrailer = TRUE; } if ($fsk == "12" and (date ( "G" ) > 19 or date ( "G" ) < 6)) { $showTrailer = TRUE; } if ($fsk == "16" and (date ( "G" ) > 21 or date ( "G" ) < 6)) { $showTrailer = TRUE; } if ($fsk == "18" and (date ( "G" ) > 22 or date ( "G" ) < 6)) { $showTrailer = TRUE; } } } $links = array (); // TODO Auslagern in ein inkludiertes Template zum LinkHandling, Ist soweit jetzt ausgelagert in functions.php, alter Code noch in Kommentaren falls ein Fehler auftritt. if ($eventUrls ['livestream'] && time() < $detail_event->getEndTime()) { $url = getEventUrl('livestream', $eventUrls, true); $links [] = array ( $url ['url'], $url ['description'] ); /* for($x = 1; $x <= 3; $x ++) { if ($eventUrls ['livestream'] [$x]) { if (stripos ( $eventUrls ['livestream'] [$x] ['url'], "http://" ) !== false) { $links [] = array ( $eventUrls ['livestream'] [$x] ['url'], $eventUrls ['livestream'] [$x] ['description'] ); } } }*/ } if ($eventUrls ['onDemand']) { $url = getEventUrl('onDemand', $eventUrls, true); $links [] = array ( $url ['url'], $url ['description'] ); $onDemand = $url; /* for($x = 1; $x <= 3; $x ++) { if ($eventUrls ['onDemand'] [$x]) { foreach ( $eventUrls ['onDemand'] [$x] as $url ) { if (stripos ( $url ['url'], "http://" ) !== false) { $links [] = array ( $url ['url'], $url ['description'] ); } } } }*/ } if ($eventUrls ['reihe']) { $url = getEventUrl('reihe', $eventUrls, true); $links [] = array ( $url['url'], $url['description'] ); /* for($x = 1; $x <= 3; $x ++) { if ($eventUrls ['reihe'] [$x]) { if (stripos ( $eventUrls ['reihe'] [$x] ['url'], "http://" ) !== false) { $links [] = array ( $eventUrls ['reihe'] [$x] ['url'], $eventUrls ['reihe'] [$x] ['description'] ); } } }*/ } // TODO Auslagern in ein Include-Template $sumPics = $detail_event->getPictureCount (); // Senderlogo nur wenn kein Bild UND Trailer oder Livestreamlink oder Mediathekslink if (! $sumPics AND ($showTrailer OR ($eventUrls ['livestream'] && time() < $detail_event->getEndTime ()) OR $eventUrls ['onDemand'])) { $sender_logo = "http://programm.ard.de/files/265/2007/2778/".$detail_event->getStationID().'.jpg'; $picturePaths = array( $sender_logo ); $sumPics = 1; } else { $picturePaths = $event->getPicturePaths ( 'teaser_huge' ); $pictures = $event->getPictures(); } foreach ( array ( 'xs' => 'teaser_normal', 's' => 'teaser_normal', 'm' => 'teaser_huge', 'l' => 'teaser_huge', 'xl' => 'original' ) as $k => $size ) { foreach ( $picturePaths as $i => $pp ) { $picture = $pictures[$i]; $images [$i] [$k] = str_replace ( '/teaser_huge/', '/' . $size . '/', $pp ); if($picture) { $images [$i] ['title'] = $picture->getAltTitle(); } } } $hour = date ( "G", $detail_event->getStartTime () ); $minute = date ( "i", $detail_event->getStartTime () ); if ($hour < 5 or ($hour == 5 and $minute > 30)) { // Sendungen zwischen 0 und 5:30 Uhr $tag [0] = "Sonntag "; $tag [1] = "Montag "; $tag [2] = "Dienstag "; $tag [3] = "Mittwoch "; $tag [4] = "Donnerstag "; $tag [5] = "Freitag "; $tag [- 1] = "Samstag "; $previousday = date ( "w", $detail_event->getStartTime () ) - 1; $nightstring = 'Nacht von ' . $tag [$previousday] . ' auf '; } // Um die Bildergalerien in pixelgenaues 16:9 zu zwingen if ($_REQUEST ['showEventDetailJetztImTV'] == 1) { $showEventDetailJetztImTV = TRUE; } if ($_REQUEST ['showEventDetail'] == 1) { $showEventDetail = TRUE; } $hasDetails = $detail_event->getBackground () || $detail_event->getBackground () || $detail_event->getDetails (); $hasBesetzung = $detail_event->hasParticipants () || $detail_event->getPeople (); // Links in den Texten erkennen und als solche ausgeben $detailText = autolink ( $detail_event->getMoreContent (), $detail_event->getStationID () ) . autolink ( $detail_event->getBackground (), $detail_event->getStationID () ); foreach ( $detail_event->getDetails () as $detail ) { if (! $detail_event->isPeopleDetail ( $detail ['type'] ) && ! $detail_event->isStreamDetail ( $detail ['type'] )) { $hasdetails = TRUE; $detailText .= autolink ( $detail ['text'], $detail_event->getStationID () ); } } $detailText = trim ( $detailText ); // Festlegen des StartTabs // Wenn Darsteller und Regie und Schlagwort "Film" => Besetzung $replayTab = ""; $similarTab = ""; $crewTab = ""; $detailsTab = ""; if ($bookmarks){ foreach ($bookmarks as $bookmark){ if (($bookmark->name == "Film" OR $bookmark->name == "Serie") AND $hasBesetzung){ $crewTab = "is-active"; } } } if (!$crewTab){ $detailsTab = "is-active"; } if (!$hasDetails) { $detailText = "Keine weiteren Informationen"; $hasDetails = true; } /******* ENDE der LOGIK *************/ // ACHTUNG: Wenn nach dem PHP-Endtag in der nächsten Zeile eine Leerzeile ist, lässt sich das Akkordeon im IE 8 und 9 (zumindest unter Windows XP) nicht öffnen. (Filed under: Verrücktester Fehler der Welt) // Hängt wahrscheinlich damit zusammen, dass der Browser, obwohl der Inhalt geladen wird, "NICHTS" zurückgibt, falls er kein Zeichen an Position 1 hat ?>
          ">
           
          getContentBlocked() || !$detail_event->getContent()) { ?>

          Keine weiteren Informationen

          getContent(), $detail_event->getStationID())?> Zeitplan und Ergebnisse: '; $i = 0; foreach ( $bookmarks as $bookmark ) { //$b_name = $bookmark->name; if ($_REQUEST['debug'] == "olymp"){ //debug ($bookmark); //echo $bookmark->name; } if ($o_links[$bookmark->name]){ if ($i > 0){ echo ' | '; } $i++; echo ''.$bookmark->name.' '; } } } } // Special für die WM-Seiten if ($_REQUEST['special'] == "em2020"){ $em_links['Deutschland'] = 'https://www.sportschau.de/fussball/uefaeuro2020/deutschesteam/index.html'; $em_links['Belgien'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-belgien-euro-zwanzigzwanzig-100.html'; $em_links['Dänemark'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-daenemark-euro-zwanzigzwanzig-100.html'; $em_links['England'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-england-euro-zwanzigzwanzig-100.html'; $em_links['Finnland'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-finnland-euro-zwanzigzwanzig-100.html'; $em_links['Frankreich'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-frankreich-euro-zwanzigzwanzig-100.html'; $em_links['Italien'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-italien-euro-zwanzigzwanzig-100.html'; $em_links['Kroatien'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-kroatien-euro-zwanzigzwanzig-100.html'; $em_links['Niederlande'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-niederlande-euro-zwanzigzwanzig-100.html'; $em_links['Nordmazedonien'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-nordmazedonien-euro-zwanzigzwanzig-100.html'; $em_links['Österreich'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-oesterreich-euro-zwanzigzwanzig-100.html'; $em_links['Polen'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-polen-euro-zwanzigzwanzig-100.html'; $em_links['Portugal'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-portugal-euro-zwanzigzwanzig-100.html'; $em_links['Russland'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-russland-euro-zwanzigzwanzig-100.html'; $em_links['Schottland'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-schottland-euro-zwanzigzwanzig-100.html'; $em_links['Schweden'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-schweden-euro-zwanzigzwanzig-100.html'; $em_links['Schweiz'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-schweiz-euro-zwanzigzwanzig-100.html'; $em_links['Slowakei'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-slowakei-euro-zwanzigzwanzig-100.html'; $em_links['Spanien'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-spanien-euro-zwanzigzwanzig-100.html'; $em_links['Tschechien'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-tschechien-euro-zwanzigzwanzig-100.html'; $em_links['Türkei'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-tuerkei-euro-zwanzigzwanzig-100.html'; $em_links['Ukraine'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-ukraine-euro-zwanzigzwanzig-100.html'; $em_links['Ungarn'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-ungarn-euro-zwanzigzwanzig-100.html'; $em_links['Wales'] = 'https://www.sportschau.de/fussball/uefaeuro2020/teams/uebersicht-wales-euro-zwanzigzwanzig-100.html'; $i = 0; foreach ($em_links as $key => $link){ if (strpos($event->getTitle(), $key)){ if ($i > 0){ echo ' | '; } if ($i == 0){ echo 'Infos zu: '; } $i++; echo ''.$key.' '; } } } // Special für die WM-Seiten if ($_REQUEST['special'] == "wm2018"){ $wm_links['Ägypten'] = 'https://www.sportschau.de/fifa-wm-2018/teams/aegypten/kader/index.html'; $wm_links['Australien'] = 'https://www.sportschau.de/fifa-wm-2018/teams/australien/kader/index.html'; $wm_links['Belgien'] = 'https://www.sportschau.de/fifa-wm-2018/teams/belgien/kader/index.html'; $wm_links['Brasilien'] = 'https://www.sportschau.de/fifa-wm-2018/teams/brasilien/kader/index.html'; $wm_links['Argentinien'] = 'https://www.sportschau.de/fifa-wm-2018/teams/argentinien/kader/index.html'; $wm_links['Costa Rica'] = 'https://www.sportschau.de/fifa-wm-2018/teams/costa-rica/kader/index.html'; $wm_links['Dänemark'] = 'https://www.sportschau.de/fifa-wm-2018/teams/daenemark/kader/index.html'; $wm_links['Deutschland'] = 'https://www.sportschau.de/fifa-wm-2018/teams/deutschland/kader/index.html'; $wm_links['England'] = 'https://www.sportschau.de/fifa-wm-2018/teams/england/kader/index.html'; $wm_links['Frankreich'] = 'https://www.sportschau.de/fifa-wm-2018/teams/frankreich/kader/index.html'; $wm_links['Iran'] = 'https://www.sportschau.de/fifa-wm-2018/teams/iran/kader/index.html'; $wm_links['Island'] = 'https://www.sportschau.de/fifa-wm-2018/teams/island/kader/index.html'; $wm_links['Japan'] = 'https://www.sportschau.de/fifa-wm-2018/teams/japan/kader/index.html'; $wm_links['Kolumbien'] = 'https://www.sportschau.de/fifa-wm-2018/teams/kolumbien/kader/index.html'; $wm_links['Kroatien'] = 'https://www.sportschau.de/fifa-wm-2018/teams/kroatien/kader/index.html'; $wm_links['Marokko'] = 'https://www.sportschau.de/fifa-wm-2018/teams/marokko/kader/index.html'; $wm_links['Mexiko'] = 'https://www.sportschau.de/fifa-wm-2018/teams/mexiko/kader/index.html'; $wm_links['Nigeria'] = 'https://www.sportschau.de/fifa-wm-2018/teams/nigeria/kader/index.html'; $wm_links['Panama'] = 'https://www.sportschau.de/fifa-wm-2018/teams/panama/kader/index.html'; $wm_links['Peru'] = 'https://www.sportschau.de/fifa-wm-2018/teams/peru/kader/index.html'; $wm_links['Polen'] = 'https://www.sportschau.de/fifa-wm-2018/teams/polen/kader/index.html'; $wm_links['Portugal'] = 'https://www.sportschau.de/fifa-wm-2018/teams/portugal/kader/index.html'; $wm_links['Russland'] = 'https://www.sportschau.de/fifa-wm-2018/teams/russland/kader/index.html'; $wm_links['Saudi-Arabien'] = 'https://www.sportschau.de/fifa-wm-2018/teams/saudi-arabien/kader/index.html'; $wm_links['Schweden'] = 'https://www.sportschau.de/fifa-wm-2018/teams/schweden/kader/index.html'; $wm_links['Schweiz'] = 'https://www.sportschau.de/fifa-wm-2018/teams/schweiz/kader/index.html'; $wm_links['Senegal'] = 'https://www.sportschau.de/fifa-wm-2018/teams/senegal/kader/index.html'; $wm_links['Serbien'] = 'https://www.sportschau.de/fifa-wm-2018/teams/serbien/kader/index.html'; $wm_links['Spanien'] = 'https://www.sportschau.de/fifa-wm-2018/teams/spanien/kader/index.html'; $wm_links['Südkorea'] = 'https://www.sportschau.de/fifa-wm-2018/teams/suedkorea/kader/index.html'; $wm_links['Tunesien'] = 'https://www.sportschau.de/fifa-wm-2018/teams/tunesien/kader/index.html'; $wm_links['Uruguay'] = 'https://www.sportschau.de/fifa-wm-2018/teams/uruguay/kader/index.html'; $i = 0; foreach ($wm_links as $key => $link){ if (strpos($event->getTitle(), $key)){ if ($i > 0){ echo ' | '; } if ($i == 0){ echo 'Infos zu: '; } $i++; echo ''.$key.' '; } } } ?>
          getTrailer(); $images[0]['title'] = $highlight->getHeadline(); } else if($onDemand['embed']){ if (!$images[0]['m']){ $images[0]['m'] = $includePath.'/css/img/rahmen.png'; } $images[0]['embed'] = $onDemand['embed']; $images[0]['title'] = $highlight->getHeadline(); } if ($sumPics > 0) { ?> '', 's' => '', 'm' => '', 'l' => '', 'xl' => '' ); if(!$gal_ops) { $gal_ops = array( 'xmp_description' => false, 'show_thumbs' => false, 'link' => false, ); } $gal_src_duplicates = []; $sliderOptions = array( 'slidesToShow' => 1, 'slidesToScroll' => 1, 'autoplay' => false, 'infinite' => false, 'prevArrow' => '#gallery_'.$gal_id.' .prev', 'nextArrow' => '#gallery_'.$gal_id.' .next', ); ?>
          $image) { ?>
          '', 's' => '', 'm' => '', 'l' => '', 'xl' => '' ); if(!$gal_ops) { $gal_ops = array( 'xmp_description' => false, 'show_thumbs' => false, 'link' => false, ); } $gal_src_duplicates = []; $sliderOptions = array( 'slidesToShow' => 1, 'slidesToScroll' => 1, 'autoplay' => false, 'infinite' => false, 'prevArrow' => '#gallery_'.$gal_id.' .prev', 'nextArrow' => '#gallery_'.$gal_id.' .next', ); ?>
          $image) { ?>
          getEndTime () and $_REQUEST['special'] != "olympia" and $_REQUEST ['mediathek'] != "ardmt" && !$onDemand['embed']) { $url = getEventUrl('livestream', $eventUrls); if($url) { ?> S Livestream nowRunning () AND $_REQUEST['special'] == "olympia" AND $event->getStationID() != 28006) { ?> S Livestream S Mediathek
          getStartTime())?> getStartTime()) ? 'Heute' : \PHP82_BC\strftime("%A, %d.%m.%y", $detail_event->getStartTime())?>
          getShortStarttime(true) ?> - getShortEndTime(true)?> Uhr (getLength() ?> Min.)
          getLength() ?> Min.
          getVPSTime() != $detail_event->getStartTime() ? 'VPS ' . $detail_event->getShortVPSTime() . '' : ''?> getTimeInfo() == 'neu im programm' ? '
          Neu im Programm
          ' : ''?> getTimeInfo() == 'geaenderte zeiten' ? '
          Geänderte Sendezeit!
          ' : ''?>
          setEvent ( $detail_event ); foreach ( $iconmanager->getEventIcons() as $icon ) { if ($_REQUEST['debug'] == "robert"){ } if ($icon->getTitle () != "16 zu 9 Format" and $icon->getTitle () != "4 zu 3 Format") { // 4zu3 und 16zu9 werden nicht mehr angezeigt if ($icon->getTitle () == "Untertitel für Gehörgeschädigte") { ?>getTitle () == "Audiodeskription") { ?> <?= $icon->getTitle() ?>getTitle () == "Untertitel für Gehörgeschädigte" or $icon->getTitle () == "Audiodeskription") { ?>name == "Originalversion"){ ?> Sendung auch in Orignalversion
          getContentBlocked() || !$detail_event->getContent()) { ?>

          Keine weiteren Informationen

          getContent(), $detail_event->getStationID())?>
           

          Stab und Besetzung

          getPeople () && !$detail_event->getParticipants()) { foreach ( $detail_event->getPeople () as $person_set ) { ?> = 2) { ?> getParticipants(array("Darsteller", "Regie")); if ($participants) { $lastCategory = 'x'; foreach ( $participants as $person ) { ?> getCategory(); } } // ... dann der Rest // $participants = $detail_event->getRemainingParticipants(); if ($participants) { $lastCategory = 'x'; foreach ( $participants as $person ) { ?> getCategory(); } } ?>
          getCategory() == "Darsteller") {echo $person->getRoleName();} else if($lastCategory != $person->getCategory()) {echo $person->getCategory();} ?> getName() ?>
          getCategory() == "Darsteller") { echo $person->getRoleName(); } else if($lastCategory != $person->getCategory()) { if ($person->getCategory() == "Musikalische Leitung"){ echo "Musik"; } elseif ($person->getCategory() == "Cutting") { echo "Schnitt"; } elseif ($person->getCategory() == "Kostueme") { echo "Kostüm"; } elseif ($person->getCategory() == "Klanggestaltung") { echo "Musik"; } else { echo $person->getCategory(); } } ?> getName() ?>
          getStartTime())?> getStartTime()) ? 'Heute' : \PHP82_BC\strftime("%A, %d.%m.%y", $detail_event->getStartTime())?>
          getShortStarttime(true) ?> - getShortEndTime(true)?> Uhr (getLength() ?> Min.)
          getLength() ?> Min.
          getVPSTime() != $detail_event->getStartTime() ? 'VPS ' . $detail_event->getShortVPSTime() . '' : ''?> getTimeInfo() == 'neu im programm' ? '
          Neu im Programm
          ' : ''?> getTimeInfo() == 'geaenderte zeiten' ? '
          Geänderte Sendezeit!
          ' : ''?>
          setEvent ( $detail_event ); foreach ( $iconmanager->getEventIcons() as $icon ) { if ($_REQUEST['debug'] == "robert"){ } if ($icon->getTitle () != "16 zu 9 Format" and $icon->getTitle () != "4 zu 3 Format") { // 4zu3 und 16zu9 werden nicht mehr angezeigt if ($icon->getTitle () == "Untertitel für Gehörgeschädigte") { ?>getTitle () == "Audiodeskription") { ?> <?= $icon->getTitle() ?>getTitle () == "Untertitel für Gehörgeschädigte" or $icon->getTitle () == "Audiodeskription") { ?>name == "Originalversion"){ ?> Sendung auch in Orignalversion
            name; $z = $z + 1; ?>
          • Infos drucken
          • iCal-Export
          • link($detail_event, null, 'tv', null, $base_station); $shareTitle = $metaTags->getTitle(); $body = date('d.m.Y', $detail_event->getStartTime()). ' | '.$detail_event->getShortStarttime().' | '.$detailevent_stationname; $body .= ' | '.$detail_event->getTitle().' | '; $mailbody = $body; $body .= urlencode($shareUrl); ?>
          • Senden
          • Teilen
          nowRunning ()) { $progressBar = $event->getRunningTimeInPercent (); ?>
          Drucken Fenster schließen
      $list_ops['max']) { ?> false, 'now' => false, '20uhr' => false, '22uhr' => false, 'evening' => false, 'calendar' => false, 'heute' => false, 'weekdays' => false, // Sonst array(Startdatum, Enddatum) jeweils im Format d.m.Y 'stations' => false, 'bottom' => false, 'mediathek' => false, 'showArchiv' => false, 'stickTop' => false //Beim Scrollen mitgehen/oben festkleben ); if (is_countable($listmenu_ops ['calendar']) && count ( $listmenu_ops ['calendar'] ) == 2) { $listmenu_ops ['minDate'] = $listmenu_ops ['calendar'] [0]; $listmenu_ops ['maxDate'] = $listmenu_ops ['calendar'] [1]; } else { $listmenu_ops ['minDate'] = - 356; $listmenu_ops ['maxDate'] = 28; } $no_menu = ! $listmenu_ops ['time'] && ! $listmenu_ops ['calendar'] && ! $listmenu_ops ['weekdays'] && ! $listmenu_ops ['stations'] && ! $listmenu_ops ['mediathek'] && ! $listmenu_ops ['bottom']; if (! $no_menu) { if (! isset ( $hour )) { $hour = get_hour($_REQUEST ['hour']); if (! isset ( $hour )) $hour = date ( 'G' ); } if ($hour > 29) { $hour = 6; $date = date ( 'd.m.Y', strtotime ( '+1 day', strtotime ( $date ) ) ); } $shour = $hour; if ($shour >= 24) $shour = $shour % 24; $next_hour = ($shour + 1) % 24; $prev_hour = ($shour - 1 + 24) % 24; $wochentage = array ( 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa', 'So' ); $wochentageFull = array ( 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag' ); $stationManager = new StationManager($GLOBALS['ipgConnection']); $endDate = $stationManager->getEndDate($stationid); $datepicker = array( 'language' => 'de', 'endDate' => $endDate, 'format' => 'dd.mm.yyyy', 'weekStart' => 1 ); $timepicker = array( 'language' => 'de', 'format' => 'hh:ii', 'pickTime' => true, 'maxView' => 'day', 'minView' => 'day', 'startView' => "day" ); $archivVar = ''; $archivVarYesterday = ''; $archivVarTomorrow = ''; // Archivparameter if ($date){ if (strtotime($date) < strtotime(date("d.m.Y"))){ $archivVar = "&archiv=1"; $_REQUEST['archiv'] = 1; } if (strtotime($date." + 1day") < strtotime(date("d.m.Y"))){ $archivVarTomorrow = "&archiv=1"; } if (strtotime($date." - 1day") < strtotime(date("d.m.Y"))){ $archivVarYesterday = "&archiv=1"; } } if (! $listmenu_ops ['bottom']) { if ($listmenu_ops ['time']) { $sheight = "80"; } else { $sHeight = "30"; } if (! $_REQUEST ['datum']) { $_REQUEST ['datum'] = date ( "d.m.Y", time() ); } ?>

      programm.ARD.de © rbb | ARD Play-Out-Center ||

      ) ) [4] => Array ( [file] => /srv/www/programm.ard.de/htdocs/modules/class/viewer.php [line] => 238 [function] => generatePage [class] => Viewer [type] => -> [args] => Array ( [0] => 2 [1] => 1 ) ) [5] => Array ( [file] => /srv/www/programm.ard.de/htdocs/index.php [line] => 553 [function] => showPage [class] => Viewer [type] => -> [args] => Array ( [0] => 2 [1] => 1 [2] => 1 ) ) ) [previous:Exception:private] => )