From fa41865192138db10137b7c9cf03fcc9957b365d Mon Sep 17 00:00:00 2001 From: David Trattnig <david.trattnig@o94.at> Date: Sun, 17 Nov 2019 18:52:59 +0100 Subject: [PATCH] More fixes for playlist response handling. --- modules/scheduling/calender_fetcher.py | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/modules/scheduling/calender_fetcher.py b/modules/scheduling/calender_fetcher.py index 13490d71..3ecc95ce 100644 --- a/modules/scheduling/calender_fetcher.py +++ b/modules/scheduling/calender_fetcher.py @@ -161,16 +161,6 @@ class CalendarFetcher: def __fetch_schedule_playlist__(self, schedule, id_name, fetched_schedule_entries): servicetype = "importer" - # set playlist_id (in testenvironment always null => no idea) - if id_name not in schedule or schedule[id_name] is None: - playlist_id = 1 - else: - playlist_id = schedule[id_name] - - # set url - #url = self.url["importer"] + schedule["show_name"] + "/playlists/" + str(playlist_id) - #url = self.url["importer"] + "public" + "/playlists/" + str(playlist_id) - # fetch playlists from TANK if not "show_slug" in schedule: raise ValueError("Missing 'show_slug' for schedule", schedule) @@ -178,25 +168,22 @@ class CalendarFetcher: slug = str(schedule["show_slug"]) json_response = self.__fetch_data__(servicetype, "${SLUG}", slug) - # use testdata if wanted - if not json_response and self.config.get("use_test_data"): - self.logger.warn("Using test-data for fetch-schedule-playlist") - use_testdata = True - # if a playlist is already fetched, do not fetch it again for entry in fetched_schedule_entries: if entry["playlist_id"] == schedule[id_name]: self.logger.debug("playlist #" + str(schedule[id_name]) + " already fetched") return entry - if use_testdata: + if self.config.get("use_test_data"): # FIXME move hardcoded test-data to separate testing logic. + self.logger.warn("Using test-data for fetch-schedule-playlist") json_response = self.create_test_data(id_name, schedule) # convert to list schedule_entries = simplejson.loads(json_response) + if "results" in schedule_entries: + schedule_entries = schedule_entries["results"][0] - if "entries" in schedule_entries: for entry in schedule_entries["entries"]: if entry["uri"].startswith("file"): entry["filename"] = self.convert_to_filename(entry["uri"]) @@ -209,7 +196,7 @@ class CalendarFetcher: # convert to normal filename e = self.config.get("audiofolder") + "/" + uri[7:] + ".flac" if not os.path.isfile(e): - self.logger.warning("File", e, "does not exist!") + self.logger.warning("File %s does not exist!" % e) return e # ------------------------------------------------------------------------------------------ # -- GitLab