forked from rho_n/hpr_generator
147 lines
5.9 KiB
HTML
147 lines
5.9 KiB
HTML
<!--% PROCESS 'shared-episode-summary.tpl.html' %-->
|
|
<!--% PROCESS 'shared-avatar.tpl.html' %-->
|
|
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
|
<!--% PROCESS 'shared-listen-now.tpl.html' %-->
|
|
<!--% USE DBI(constants.driver, constants.user, constants.password) %-->
|
|
<!--% query_episodes = DBI.prepare('
|
|
WITH episode_maxmin AS (
|
|
SELECT MAX(id) AS \'latest\', MIN(id) AS \'earliest\', ? AS \'id\'
|
|
FROM eps
|
|
WHERE eps.date < date (\'now\', \'+1 days\')
|
|
),
|
|
episode_date AS (
|
|
SELECT eps.date
|
|
FROM eps
|
|
WHERE eps.id = ?
|
|
),
|
|
episode_previous AS (
|
|
SELECT MAX(id) AS \'previous\', ? AS \'id\'
|
|
FROM eps
|
|
INNER JOIN episode_date
|
|
ON eps.date < episode_date.date
|
|
WHERE eps.id > 1
|
|
),
|
|
episode_next AS (
|
|
SELECT MIN(id) AS \'next\', ? AS \'id\'
|
|
FROM eps
|
|
INNER JOIN episode_date
|
|
ON eps.date > episode_date.date
|
|
WHERE eps.date < date (\'now\')
|
|
),
|
|
comment_tallies AS (
|
|
SELECT
|
|
eps_id,
|
|
COUNT(eps_id) AS eps_tally
|
|
FROM comments
|
|
GROUP BY eps_id
|
|
)
|
|
SELECT eps.id, eps.date, eps.title, eps.duration,
|
|
eps.summary, eps.notes, eps.explicit, eps.license,
|
|
eps.tags, eps.version, eps.downloads, eps.valid,
|
|
episode_maxmin.latest, episode_maxmin.earliest,
|
|
episode_previous.previous, episode_next.next,
|
|
hosts.hostid, hosts.host,
|
|
miniseries.name AS \'series\', miniseries.id AS \'seriesid\',
|
|
miniseries.description AS \'series_description\',
|
|
COALESCE (comment_tallies.eps_tally, 0) AS eps_tally
|
|
FROM eps
|
|
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
|
INNER JOIN miniseries ON eps.series = miniseries.id
|
|
INNER JOIN episode_maxmin ON eps.id = episode_maxmin.id
|
|
INNER JOIN episode_previous ON eps.id = episode_previous.id
|
|
INNER JOIN episode_next ON eps.id = episode_next.id
|
|
LEFT JOIN comment_tallies ON eps.id = comment_tallies.eps_id
|
|
WHERE eps.id = ?
|
|
')
|
|
%-->
|
|
<!--% episode_result = query_episodes.execute(id, id, id, id, id) %-->
|
|
<!--% FOREACH episode IN episode_result %-->
|
|
<!--% episode_navigation = step_navigation(baseurl,episode) %-->
|
|
<article>
|
|
<header>
|
|
<h1>hpr<!--% episode.id %--> :: <!--% episode.title %--></h1>
|
|
<h3><!--% episode.summary %--></h3>
|
|
<p class="meta"><!--% episode_navigation %-->
|
|
</p>
|
|
<p><!--% IF get_avatar(episode.hostid) != 'hpr_logo.png' %-->
|
|
<img src="<!--% absolute_path(baseurl) %-->images/<!--% get_avatar(episode.hostid) %-->" height="80" width="80" alt="" /></a><br><!--% END %-->
|
|
Hosted by <a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pad_left(episode.hostid) %-->.html"><!--% episode.host %--></a> on <span><!--% episode.date %--></span> is flagged as <span><!--% display_explicit(episode.explicit) %--></span> and is released under a <span><!--% episode.license %--> license</span>. <br>
|
|
<!--% display_tags(episode.tags) %--> <br>
|
|
<!--% display_listen_in(episode.id) %--> |
|
|
<!--% display_comments_tally(episode.id, episode.eps_tally) %-->
|
|
</p>
|
|
<h3><!--% show_series(episode.series, episode.seriesid, "Part of the series") %--></h3>
|
|
<p><em><!--% episode.series_description %--></em></p>
|
|
</header>
|
|
<div><!--% episode.notes %--></div>
|
|
<footer>
|
|
<!--% listen_now(episode, "hpr", baseurl, media_hostname) %-->
|
|
<p>
|
|
<!--% episode_navigation %-->
|
|
</p>
|
|
</footer></article>
|
|
<!--% END %-->
|
|
<hr />
|
|
<h1>Comments</h1>
|
|
<p id="comments">
|
|
Subscribe to the comments <a href="https://www.hackerpublicradio.org/comments_rss.php">RSS</a> feed.
|
|
</p>
|
|
<!--% query_comments = DBI.prepare('
|
|
SELECT
|
|
comment_timestamp,
|
|
comment_author_name,
|
|
comment_title,
|
|
comment_text
|
|
FROM comments
|
|
WHERE eps_id = ?
|
|
')
|
|
%-->
|
|
<!--% comment_index = 1 %-->
|
|
<!--% comments_result = query_comments.execute(id) %-->
|
|
<!--% FOREACH comment IN comments_result %-->
|
|
<h5 id="1">Comment #<!--% comment_index %--> posted on <!--% comment.comment_timestamp %--> by <!--% comment.comment_author_name %--></h5>
|
|
<h4><!--% comment.comment_title %--></h4>
|
|
<!--% comment.comment_text %-->
|
|
<!--% comment_index = comment_index + 1 %-->
|
|
<!--% END %-->
|
|
|
|
<h2>Leave Comment</h2>
|
|
<p>
|
|
<strong>Note to Verbose Commenters</strong><br />
|
|
If you can't fit everything you want to say in the comment below then you really should <a href="/contribute.php">record</a> a response show instead.
|
|
</p>
|
|
<p>
|
|
<strong>Note to Spammers</strong><br />
|
|
All comments are moderated. All links are checked by humans. We strip out all html. Feel free to <a href="/contribute.php">record</a> a show about yourself, or your industry, or any other topic we may find interesting. <em>We also check shows for spam :)</em>.
|
|
</p>
|
|
<form method="POST" action="comment_confirm.php">
|
|
<fieldset>
|
|
<legend>Provide feedback</legend>
|
|
<table>
|
|
<tr>
|
|
<td>Your Name/Handle:</td>
|
|
<td><input required type="text" name="comment_author_name" size="40" maxlength="40" placeholder="Enter your name" ></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Title:</td>
|
|
<td><input required type="text" name="comment_title" size="50" maxlength="100" placeholder="What is your comment about ?"></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Comment:</td>
|
|
<td><textarea required name="comment_text" maxlength="2000" rows="10" cols="50" placeholder="Place the comment here."></textarea></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Anti Spam Question:</td>
|
|
<td>
|
|
What does the <strong>P</strong> in <em>HPR</em> stand for ? <br />
|
|
<input required type="text" name="anti_spam_question" size="50" maxlength="100" placeholder="Type out what the P in HPR stands for."></td>
|
|
</tr>
|
|
<input type="hidden" name="spammer" value="No">
|
|
<input type="hidden" name="hostid" value="406">
|
|
<input type="hidden" name="justification" value="No justification is asked for or required.">
|
|
<input type="hidden" name="eps_id" value="3665 ">
|
|
</table>
|
|
<input type="submit" value="Next">
|
|
</fieldset>
|
|
</form>
|