Impossible de charger cette série.
'; return; } root.innerHTML = html; root.querySelector('#back')!.addEventListener('click', () => history.back()); (root.querySelector('#seriesPoster') as HTMLImageElement).src = series.imageUrl; root.querySelector('#seriesTitle')!.innerHTML = series.year ? `${escapeHtml(series.name)} (${series.year})` : escapeHtml(series.name); if (series.overview) { const overviewEl = root.querySelector('#seriesOverview')!; overviewEl.textContent = series.overview; overviewEl.classList.remove('hide'); } (root.querySelector('#embyLink') as HTMLAnchorElement).href = series.embyUrl; wireCreateStaticButton(root.querySelector('#createStaticBtn') as HTMLButtonElement, seriesId); if (!seasons.length) { root.querySelector('#episodeList')!.innerHTML = 'Aucune saison trouvée.
'; return; } const tabsEl = root.querySelector('#seasonTabs')!; tabsEl.innerHTML = seasons .map((s, i) => ``) .join(''); tabsEl.querySelectorAllImpossible de charger les épisodes.
'; return; } if (!episodes.length) { listEl.innerHTML = 'Aucun épisode dans cette saison.
'; return; } // Starting a party from any episode here queues the rest of the series // from that point on server-side (see CatalogService/index.ts) - the // host can then use "Épisode suivant" in the player instead of // restarting per episode. listEl.innerHTML = episodes.map((ep) => `${escapeHtml(ep.overview || '')}