From b1f1fd422990e1c78cf63fbb8f882f9216b5c6dd Mon Sep 17 00:00:00 2001 From: Roan Horning <roan.horning@gmail.com> Date: Fri, 5 Aug 2022 15:51:59 -0400 Subject: [PATCH] Add generation of individual series pages --- site.cfg | 6 ++++ templates/content-series_shows.tpl.html | 48 +++++++++++++++++++++++++ templates/ids-series_shows.tpl.html | 7 ++++ 3 files changed, 61 insertions(+) create mode 100644 templates/content-series_shows.tpl.html create mode 100644 templates/ids-series_shows.tpl.html diff --git a/site.cfg b/site.cfg index 69547db..b507036 100644 --- a/site.cfg +++ b/site.cfg @@ -58,3 +58,9 @@ filename: correspondents/[id]/index.html navigation: navigation-get-shows.tpl.html content: content-series.tpl.html filename: series/index.html + +[series_shows] +navigation: navigation-get-shows.tpl.html +content: content-series_shows.tpl.html +multipage: true +filename: series/[id].html diff --git a/templates/content-series_shows.tpl.html b/templates/content-series_shows.tpl.html new file mode 100644 index 0000000..33d6a57 --- /dev/null +++ b/templates/content-series_shows.tpl.html @@ -0,0 +1,48 @@ +<!--% PROCESS 'shared-episode-summary.tpl.html' %--> +<!--% PROCESS 'shared-avatar.tpl.html' %--> +<!--% USE DBI(constants.driver, constants.user, constants.password) %--> +<!--% query_series = DBI.prepare('SELECT miniseries.id, miniseries.name, + miniseries.description, + miniseries.private, miniseries.image, miniseries.valid, + ep.number_of_episodes, ep.latest_show, ep.earliest_show + FROM miniseries + INNER JOIN + (SELECT series, + COUNT(eps.id) AS number_of_episodes, + MAX(eps.date) AS latest_show, + MIN(eps.date) AS earliest_show + FROM eps + GROUP BY series) AS ep ON ep.series = miniseries.id + WHERE miniseries.id = ? + ORDER BY name') +%--> +<!--% series_result = query_series.execute(id) %--> +<article> +<!--% FOREACH series IN series_result %--> +<h1 class="title">In-Depth Series: <!--% series.name %--></h1> +<ul> + <li>Number of episodes: <!--% series.number_of_episodes %--></li> + <li>Open/closed: open</li> + <li>Date of earliest show: <!--% series.earliest_show %--></li> + <li>Date of latest show: <!--% series.latest_show %--></li> + <li>Series RSS feeds: <a href="hpr_ogg_rss.php?series=79&full=1&gomax=1">ogg</a>, <a href="hpr_spx_rss.php?series=79&full=1&gomax=1">spx</a>, <a href="hpr_mp3_rss.php?series=79&full=1&gomax=1">mp3</a></li> +</ul> +<div><em><!--% series.description %--></em></div> +<!--% END %--> +<!--% query_shows = DBI.prepare('SELECT + id, date, title, + duration, summary, notes, + explicit, eps.license, tags, + hosts.host, hosts.hostid + FROM eps + INNER JOIN hosts + ON eps.hostid = hosts.hostid + WHERE series = ? + ORDER BY date DESC + ') +%--> +<!--% show_results = query_shows.execute(id) %--> +<!--% FOREACH show IN show_results %--> +<!--% show_summary(show) %--> +<!--% END %--> +</article> diff --git a/templates/ids-series_shows.tpl.html b/templates/ids-series_shows.tpl.html new file mode 100644 index 0000000..e3f89d9 --- /dev/null +++ b/templates/ids-series_shows.tpl.html @@ -0,0 +1,7 @@ +<!--% USE DBI(constants.driver, constants.user, constants.password) %--> +<!--% FOREACH series IN DBI.query( + 'select s.id from miniseries as s' +) %--> +,<!--% series.id %--> +<!--% END %--> +