function getSportsCafe() { global $weekEndText, $websiteNotAvailable, $menuFormat, $SportsCafeBaseMenuURL; if (isWeekend()) { return $weekEndText; } $fallback = sprintf($menuFormat, $SportsCafeBaseMenuURL); $html = getHTMLFromURL($SportsCafeBaseMenuURL); if (empty($html)) { return $websiteNotAvailable; } $currentDayFrench = getCurrentDayName(); $doc = new DOMDocument(); $doc->loadHTML($html); $finder = new DomXPath($doc); $spaner = $finder->query("//*[contains(@class, 'day')]"); foreach ($spaner as $tag) { if (strpos($tag->nodeValue, $currentDayFrench) !== false) { $day = $tag; break; } } if (isset($day)) { // remove first div $allDiv = $day->getElementsByTagName('div'); if ($allDiv->length > 0) { $divFirst = $allDiv->item(0); $divFirst->parentNode->removeChild($divFirst); } //remove last div $count = $day->getElementsByTagName('div')->length; if ($count > 0) { $divLast = $day->getElementsByTagName('div')->item($count - 1); $divLast->parentNode->removeChild($divLast); } $text = $day->ownerDocument->saveHTML($day); $text = str_replace('<br>', '<br />', $text); $text = preg_replace('/<\\/div>/', '<br /><br /><h6>Menu 2</h6>', $text, 1); $text = '<h6>Menu 1</h6>' . strip_tags($text, '<br><br /><h6>'); return $text; } return $fallback; }
protected function getMenuFromTextFile() { $textFileMenu = new TextFileMenu(); if (!$this->isMenuValid()) { $textFileMenu->status = TextFileReturnStatus::TXT_NOT_UPTODATE; return $textFileMenu; } $menu = utf8_encode(extractFromTextFile('pdf_texts/' . $this->getSimpleName() . '.txt', getCurrentDayName())); $menu = str_ireplace('<br />', '', $menu); $menu = str_ireplace('MENU N°1', '<h6>Menu 1</h6>', $menu); $menu = str_ireplace('MENU N°2', '<br /><br /><h6>Menu 2</h6>', $menu); $textFileMenu->status = TextFileReturnStatus::MENU_OK; $textFileMenu->text = $menu; return $textFileMenu; }