Archived
4
2

Compare commits

..

3 Commits

Author SHA1 Message Date
b1f1fd4229
Add generation of individual series pages 2022-08-05 15:51:59 -04:00
dcc0f3d6b0
Add absolute_path MACRO
Used with baseurl to make a path relative or absolute.
2022-08-05 15:49:00 -04:00
30f0c9924a
Update SQL query to select specific host episodes 2022-08-05 12:07:36 -04:00
7 changed files with 80 additions and 11 deletions

View File

@ -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

View File

@ -8,15 +8,18 @@
%-->
<!--% query_shows = DBI.prepare('
SELECT
substr(\'0000\' || eps.id, -4, 4) AS [id],
eps.id,
CASE eps.explicit WHEN 1 THEN \'Explicit\' ELSE \'Clean\' END AS explicit ,
eps.date, eps.license, eps.duration,
eps.title, eps.summary, eps.tags,
eps.series, eps.notes,
eps.notes,
hosts.local_image,
substr(\'0000\' || hosts.hostid, -4, 4) AS [host_id],
hosts.host, hosts.email
FROM eps INNER JOIN hosts ON eps.hostid = hosts.hostid
hosts.hostid,
hosts.host, hosts.email,
miniseries.name AS series
FROM eps
INNER JOIN hosts ON eps.hostid = hosts.hostid
INNER JOIN miniseries ON eps.series = miniseries.id
WHERE hosts.hostid = ?
ORDER BY date DESC ')
%-->
@ -32,7 +35,7 @@
<!--% this_host = hosts.$id %-->
<h2 class="title">Correspondent</h2>
<h2><!--% this_host.host %--></h2>
<p><img src="./images/<!--% get_avatar(this_host.hostid) %-->"
<p><img src="<!--% absolute_path(baseurl) %-->images/<!--% get_avatar(this_host.hostid) %-->"
height="80" alt="Host Image" /><br>
<label>Host ID</label>: <!--% this_host.hostid %--><br><br>
<label>email:</label> <u><!--% this_host.email %--></u><br>

View File

@ -17,11 +17,11 @@
on h.hostid = e.hostid '
) %-->
<tr height="80" bgcolor="#CCCCCC">
<td><img src="./images/<!--% get_avatar(host.hostid) %-->" height="80" width="80" alt="avatar" /></td>
<td><img src="<!--% absolute_path(baseurl) %-->images/<!--% get_avatar(host.hostid) %-->" height="80" width="80" alt="avatar" /></td>
<td><strong><!--% host.host %--></strong><br />
Host ID: <a href="correspondents/<!--% zero_pad_left(host.hostid) %-->/index.html"><!--% host.hostid %--></a></td>
Host ID: <a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pad_left(host.hostid) %-->/index.html"><!--% host.hostid %--></a></td>
<td><!--% host.license %--></td>
<td><!--% host.date %--></td>
</tr>

View File

@ -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>

View File

@ -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 %-->

View File

@ -1,3 +1,4 @@
<!--% PROCESS 'shared-utils.tpl.html' %-->
<!DOCTYPE HTML>
<html lang="en">
<head>
@ -24,9 +25,9 @@
<link rel="alternate" type="application/rss+xml" title="Hacker Public Radio MP3 RSS" href="/hpr_mp3_rss.php" />
<link rel="alternate" type="application/rss+xml" title="Hacker Public Radio Comments RSS" href="/comments_rss.php" />
<link rel="license" title="cc by 3.0" href="https://creativecommons.org/licenses/by-sa/3.0/" />
<link href="./css/hpr.css" rel="stylesheet" />
<link href="<!--% absolute_path(baseurl) %-->css/hpr.css" rel="stylesheet" />
<!--[if IE]>
<link rel="stylesheet" href="css/hpr.css" media="screen" type="text/css" />
<link rel="stylesheet" href="<!--% absolute_path(baseurl) %-->css/hpr.css" media="screen" type="text/css" />
<script src="/JavaScript/html5.js"></script>
<![endif]-->
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.5, user-scalable=yes"/>
@ -35,7 +36,7 @@
<body id="give">
<div id="container" class="shadow">
<header>
<a href=""><img id="hprlogo" src="/images/hpr_logo.png" alt=""></a>
<a href=""><img id="hprlogo" src="<!--% absolute_path(baseurl) %-->images/hpr_logo.png" alt=""></a>
<div id="hpr_banner">
<p id="accessible_menu">
<a href="sitemap.php">Site Map</a>

View File

@ -7,3 +7,7 @@
<!--% IF choice == 1 %--><!--% display_when_true %-->
<!--% ELSE %--><!--% display_when_false %--><!--% END %-->
<!--% END %-->
<!--% MACRO absolute_path(baseurl) BLOCK %-->
<!--% IF baseurl %-->./<!--% ELSE %-->/<!--% END %-->
<!--% END %-->