From 7d50331bfc1e4a8cc5032c43a6e31ab42f2d0c53 Mon Sep 17 00:00:00 2001 From: deathbybandaid Date: Thu, 10 Dec 2020 16:00:02 -0500 Subject: [PATCH] test --- fHDHR/device/epg/__init__.py | 28 +++++++++++++++++++++++++++- fHDHR_web/pages/guide_html.py | 7 +++++-- 2 files changed, 32 insertions(+), 3 deletions(-) diff --git a/fHDHR/device/epg/__init__.py b/fHDHR/device/epg/__init__.py index 80fe33d..c8734a7 100644 --- a/fHDHR/device/epg/__init__.py +++ b/fHDHR/device/epg/__init__.py @@ -74,7 +74,25 @@ class EPG(): epgitem = epgdict[channel_number].copy() epgitem["listing"] = [listing] return epgitem - return None + epgitem = epgdict[channel_number].copy() + epgitem["listing"] = [{ + "time_start": None, + "time_end": None, + "duration_minutes": None, + "thumbnail": None, + "title": "Unavailable", + "sub-title": "Unavailable", + "description": "Unavailable", + "rating": "N/A", + "episodetitle": None, + "releaseyear": None, + "genres": [], + "seasonnumber": None, + "episodenumber": None, + "isnew": False, + "id": None, + }] + return epgitem def whats_on_allchans(self, method=None): @@ -181,6 +199,14 @@ class EPG(): for cnum in programguide: programguide[cnum]["listing"] = sorted(programguide[cnum]["listing"], key=lambda i: i['time_start']) + if method in ["blocks", "origin", self.fhdhr.config.dict["main"]["dictpopname"]]: + + for fhdhr_id in list(self.channels.list.keys()): + chan_obj = self.channels.list[fhdhr_id] + + if str(chan_obj.number) not in list(programguide.keys()): + programguide[str(chan_obj.number)] = chan_obj.epgdict + self.epgdict = programguide self.fhdhr.db.set_fhdhr_value("epg_dict", method, programguide) self.fhdhr.db.set_fhdhr_value("update_time", method, time.time()) diff --git a/fHDHR_web/pages/guide_html.py b/fHDHR_web/pages/guide_html.py index 12d9408..f8bc181 100644 --- a/fHDHR_web/pages/guide_html.py +++ b/fHDHR_web/pages/guide_html.py @@ -26,8 +26,11 @@ class Guide_HTML(): source = self.fhdhr.device.epg.def_method for channel in self.fhdhr.device.epg.whats_on_allchans(source): - end_time = datetime.datetime.strptime(channel["listing"][0]["time_end"], '%Y%m%d%H%M%S +0000') - remaining_time = humanized_time(int((end_time - nowtime).total_seconds())) + if channel["listing"][0]["time_end"]: + end_time = datetime.datetime.strptime(channel["listing"][0]["time_end"], '%Y%m%d%H%M%S +0000') + remaining_time = humanized_time(int((end_time - nowtime).total_seconds())) + else: + remaining_time = "N/A" chan_dict = { "name": channel["name"],