diff options
author | MaZderMind | 2016-12-21 16:50:13 +0100 |
---|---|---|
committer | MaZderMind | 2016-12-21 16:50:13 +0100 |
commit | 4d7e3732c1641308f7ad3fdf0f6e8afa78f5144b (patch) | |
tree | 039872500905de27c4b972136290f3afb4d44709 /model/Schedule.php | |
parent | 97428d62ffabac32a706d0c17f36a73b06c7d8ef (diff) |
fail gracefully on missing schedule
Diffstat (limited to 'model/Schedule.php')
-rw-r--r-- | model/Schedule.php | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/model/Schedule.php b/model/Schedule.php index b54709e..917d70b 100644 --- a/model/Schedule.php +++ b/model/Schedule.php @@ -36,10 +36,10 @@ class Schedule private function fetchSchedule() { - $schedule = file_get_contents($this->getScheduleCache()); + $schedule = @file_get_contents($this->getScheduleCache()); if(!$schedule) - throw new ScheduleException("Error Loading Schedule from ".$this->getScheduleCache()); + return null; return simplexml_load_string($schedule); } @@ -49,6 +49,11 @@ class Schedule // download schedule-xml $schedule = $this->fetchSchedule(); + // not failing gracefully here will result in a broken page in case + // no schedule is present + if(!$schedule) + return []; + $mapping = $this->getScheduleToRoomSlugMapping(); $program = array(); |