From e72908679c0c2846ce16cc32e2452a961f59e403 Mon Sep 17 00:00:00 2001 From: David Trattnig <david@subsquare.at> Date: Fri, 16 Dec 2022 12:58:49 +0100 Subject: [PATCH] refact: settings for show detail --- config/sample.settings.json | 1 + src/components/ShowDetail.svelte | 17 +++++++++-------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/config/sample.settings.json b/config/sample.settings.json index 21e72b9..d0287a5 100644 --- a/config/sample.settings.json +++ b/config/sample.settings.json @@ -4,6 +4,7 @@ "url": "https://prog-info.o94.at/api.php/", "endpoints": { "shows": "shows", + "episodes": "timeslots", "categories": "categories", "programmeCurrent": "current", "programmeToday": "today", diff --git a/src/components/ShowDetail.svelte b/src/components/ShowDetail.svelte index f75e3bb..26cc197 100644 --- a/src/components/ShowDetail.svelte +++ b/src/components/ShowDetail.svelte @@ -1,12 +1,12 @@ <script> import { onMount } from 'svelte' import Spinner from '../common/Spinner.svelte' - import { fetchApi, formatApiDate } from '../common/Common.svelte' + import { settings, fetchApi, formatApiDate } from '../common/Common.svelte' import ShowCardBig from '../cards/ShowCardBig.svelte' - export let api = 'https://prog-info.o94.at/api.php' - export let endpointShows = 'shows' - export let endpointEpisodes = 'timeslots' + // export let api = 'https://prog-info.o94.at/api.php' + // export let endpointShows = 'shows' + // export let endpointEpisodes = 'timeslots' export let showSlug = undefined export let episodeDaysFuture = 360 export let episodeDaysPast = 180 @@ -26,6 +26,8 @@ export let urlShowList = undefined export let radioEpoch = new Date('1998-08-17') + let endpointShows = settings.api.endpoints.shows + let endpointEpisodes = settings.api.endpoints.episodes let tmp_show // FIXME Workaround for current API limitations: It's not possible to fetch everything in one request (see below) let show let episodes @@ -40,7 +42,7 @@ let fromDate = radioEpoch fromDate = formatApiDate(fromDate) let toDate = formatApiDate(new Date()) - let baseUrl = `${api}/${endpointShows}/${tmp_show.id}/${endpointEpisodes}` + let baseUrl = `${settings.api.url}/${endpointShows}/${tmp_show.id}/${endpointEpisodes}` let episodeUrl = `${baseUrl}?&withNote&start=${fromDate}&end=${toDate}` fetchApi(episodeUrl, processMoreEpisodes) } @@ -52,8 +54,7 @@ let url = new URL(window.location.href) let urlSlug = url.searchParams.get('slug') if (urlSlug) showSlug = urlSlug - - let showUrl = `${api}/${endpointShows}/${showSlug}?withHostDetails=true` + let showUrl = `${settings.api.url}/${endpointShows}/${showSlug}?withHostDetails=true` console.log('Show API Url:' + showUrl) fetchApi(showUrl, processShowResponse) }) @@ -76,7 +77,7 @@ pastDate = formatApiDate(pastDate) futureDate = formatApiDate(futureDate) - let baseUrl = `${api}/${endpointShows}/${tmp_show.id}/${endpointEpisodes}` + let baseUrl = `${settings.api.url}/${endpointShows}/${tmp_show.id}/${endpointEpisodes}` let episodeUrl = `${baseUrl}?&withNote&start=${pastDate}&end=${futureDate}` fetchApi(episodeUrl, processEpisodesResponse) } -- GitLab