38 Commits

Author SHA1 Message Date
1cc9211e95 Automatically show the New Year Show announcement
Insert the New Year Show announcement on the front page
from Dec 1st through Jan 1st.
2025-12-16 19:01:33 -05:00
fc12c7ae5c Add MACRO to get ordinal year of the new year show
Calculate the ordinal value of difference between the current year
and 2011 (the first year of the New Year Show)
2025-12-16 19:01:33 -05:00
6a64ebd95e Fix grammer 2025-12-16 19:01:33 -05:00
c349abfded Calculate the start and end dates for the New Year show 2025-12-16 19:01:33 -05:00
30e4f6a4d8 Update templates/content-new_year.tpl.html
Changes so the live links are not visable
2025-12-16 11:55:32 +00:00
e43386ac95 Merge pull request 'i324_New-Year_Show_template' (#327) from i324_New-Year_Show into main
Reviewed-on: #327
2025-12-16 03:52:06 +00:00
2f273d61dd Add new year's eve information page
Add template file and update front page announcement to link to the
page.
2025-12-15 22:40:33 -05:00
57d5989b29 Update announcement links to HPR New Year's Eve show promo audio 2025-12-15 09:36:10 -05:00
292e501f69 Merge pull request 'Add missing small HPR logo file for RSS feeds' (#326) from i323_HPR-podcast-feeds-missing-microphone-logo into main
Reviewed-on: #326
2025-12-13 23:11:58 +00:00
824c2d77c7 Add missing small HPR logo file for RSS feeds 2025-12-13 18:08:37 -05:00
5464725b7d Merge pull request 'Add 2025 New Year's Eve announcement' (#325) from i324_New-Year_Show into main
Reviewed-on: #325
2025-12-13 22:15:17 +00:00
f61fe7c6c8 Add 2025 New Year's Eve announcement 2025-12-13 17:08:53 -05:00
611a022aab Merge pull request 'Use case insensitive sort for host names' (#322) from i318_Sort-hosts-page-by-lowercase-host-name into main
Reviewed-on: #322
2025-12-07 03:41:52 +00:00
9ecb30f51f Use case insensitive sort for host names 2025-12-06 22:37:49 -05:00
e885c78fb5 Merge pull request 'Add links to comment viewer and full list of episodes' (#320) from i316_Have-link-to-All-shows into main
Reviewed-on: #320
2025-12-03 03:52:05 +00:00
0a5dea473b Add links to comment viewer and full list of episodes 2025-12-02 22:48:52 -05:00
de316e7f6b Merge pull request 'Fix path issue when generating link to about.html' (#319) from i315_link-path-issues into main
Reviewed-on: #319
2025-12-03 03:19:33 +00:00
7161b99eb0 Fix path issue when generating link to about.html 2025-11-26 15:43:14 -05:00
84e89a53ad Merge pull request 'Rename Today with a technie table and references' (#313) from i312_Rename-Today-with-a-Techie-episode-table-to-twt_eps into main
Reviewed-on: #313
2025-11-23 14:38:27 +00:00
5004f4fe88 Add table rename sql statement 2025-11-23 09:21:48 -05:00
6520bdac8b Rename Today with a technie table and references 2025-11-22 19:30:53 -05:00
2eece012fa Merge pull request 'Modify tags query to return shows upto current date' (#311) from i242_Prevent-future-shows-from-being-included-in-the-Tag-index into main
Reviewed-on: #311
2025-11-22 23:41:30 +00:00
3d74b6f084 Modify tags query to return shows upto current date 2025-11-22 18:38:38 -05:00
24f2b5f9ee Merge pull request 'Fix column layout of correspondent's page' (#310) from i309_Fix-big-screen-layout-on-individual-host-page into main
Reviewed-on: #310
2025-11-22 23:15:09 +00:00
020d6395c1 Fix column layout of correspondent's page 2025-11-22 17:55:54 -05:00
a40774b1e8 Merge pull request '[i307] Add M3U playlist download option to main series page' (#308) from i307_Add-M3U-playlist-download-option-to-main-series-page into main
Reviewed-on: #308
2025-11-21 04:18:27 +00:00
face5e1fbe Fix white space between series description and border 2025-11-20 22:54:24 -05:00
7b9e8a94f0 Add m3u download link to each series's summary 2025-11-20 22:51:32 -05:00
3ca1a903df Merge pull request '[i276] m3u file for all the shows by a given hosts or series' (#306) from i276_m3u-file-for-all-the-shows-by-a-given-hosts-or-series into main
Reviewed-on: #306
2025-11-19 14:42:48 +00:00
ae5bfc12b4 Remove javascript m3u player code
Need community by in before adding javascript to the main site.
2025-11-16 19:45:39 -05:00
21c664ecf9 Add javascript to play m3u file via audio tag
This is an open source (GPL licensed) javascript file which
fetches, parses an M3U formatted file and attaches the files
to the corresponding audio tag within a page.
2025-11-16 19:32:03 -05:00
c17ce1bf74 Add playlist download link to series' pages 2025-11-16 19:25:19 -05:00
c922ea6281 Allow creation of m3u playlist for a series 2025-11-16 19:22:12 -05:00
98c51ee9fe Add playlist download link to correspondents' pages 2025-11-16 15:40:30 -05:00
904d14d083 Merge pull request '[i299] fix auto scroll highlighting of code blocks' (#302) from i299_fix-auto-scroll-highlighting-of-code-blocks into main
Reviewed-on: #302
2025-11-14 21:22:54 +00:00
7170015a0e Merge branch 'main' into i299_fix-auto-scroll-highlighting-of-code-blocks 2025-11-13 21:39:44 -05:00
23f91a0410 Move highlighting to all show notes code tags 2025-11-13 19:55:35 -05:00
2be718287f Change overflow to auto for show notes pre tags 2025-11-13 19:45:40 -05:00
21 changed files with 180 additions and 18 deletions

View File

@@ -0,0 +1 @@
ALTER TABLE twat_eps RENAME TO twt_eps;

View File

@@ -736,10 +736,13 @@ fieldset > table td input[type="radio"] {
padding: 0; padding: 0;
} }
.series-description { .series-description {
margin: 0; margin: 0 0 1rem 0;
padding: 0; padding: 0;
font-style: italic; font-style: italic;
} }
.series-desciption > *:last-child {
margin-bottom: 0;
}
.sr-only { .sr-only {
position: absolute; position: absolute;
width: 1px; width: 1px;
@@ -755,9 +758,12 @@ fieldset > table td input[type="radio"] {
} }
#show_notes pre #show_notes pre
{ {
overflow: auto;
}
#show_notes code {
display: inline-block;
background-color: var(--show-notes-pre-background); background-color: var(--show-notes-pre-background);
border: 1px solid #ddd; border: 1px solid #ddd;
overflow: scroll;
padding: 0.1em 0; padding: 0.1em 0;
} }
nav.episodes { nav.episodes {

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

View File

@@ -130,6 +130,10 @@ content: content-promote.tpl.html
navigation: navigation-about.tpl.html navigation: navigation-about.tpl.html
content: content-comments_viewer.tpl.html content: content-comments_viewer.tpl.html
[new_year]
navigation: navigation-about.tpl.html
content: content-new_year.tpl.html
[hpr_ogg] [hpr_ogg]
root_template: rss.tpl.xml root_template: rss.tpl.xml
content: rss-hpr.tpl.xml content: rss-hpr.tpl.xml
@@ -177,3 +181,9 @@ root_template: m3u.tpl.m3u8
content: m3u-correspondent.tpl.m3u8 content: m3u-correspondent.tpl.m3u8
filename: correspondents/[id]/playlist.m3u8 filename: correspondents/[id]/playlist.m3u8
multipage: true multipage: true
[series_episodes_m3u]
root_template: m3u.tpl.m3u8
content: m3u-series_episodes.tpl.m3u8
filename: series/[id].m3u8
multipage: true

View File

@@ -29,9 +29,10 @@
<p><label>email:</label> <u><!--% this_host.email %--></u></p> <p><label>email:</label> <u><!--% this_host.email %--></u></p>
<div><label>profile:</label> <!--% this_host.profile %--></div> <div><label>profile:</label> <!--% this_host.profile %--></div>
<p><label>episodes:</label> <strong><!--% hpr_show_count + twt_show_count %--></strong></p> <p><label>episodes:</label> <strong><!--% hpr_show_count + twt_show_count %--></strong></p>
<p><a href="<!--% absolute_url(baseurl,'//correspondents') %-->/<!--% zero_pad_left(this_host.hostid) %-->/playlist.m3u8">Download the M3U playlist</a>.</p>
</div> </div>
</div> </div>
<div class="lane stack"> <div id="episodes" class="lane stack">
<!--% FOREACH hpr_show IN hpr_shows; %--> <!--% FOREACH hpr_show IN hpr_shows; %-->
<article> <article>
<!--% show_summary(hpr_show, 'hide_host') %--> <!--% show_summary(hpr_show, 'hide_host') %-->

View File

@@ -18,7 +18,7 @@
from hosts as h from hosts as h
inner join (select hostid, max(date) as date from eps group by hostid) as e inner join (select hostid, max(date) as date from eps group by hostid) as e
on h.hostid = e.hostid on h.hostid = e.hostid
order by h.host' order by h.host COLLATE NOCASE asc'
) %--> ) %-->
<tr class="lane"> <tr class="lane">
<td><!--% get_avatar(host.hostid, host.host, host_cnt > 8) %--></td> <td><!--% get_avatar(host.hostid, host.host, host_cnt > 8) %--></td>

View File

@@ -61,11 +61,11 @@ Subscribe to the comments <a href="<!--% absolute_path(baseurl) %-->comments.rss
<h2>Leave Comment</h2> <h2>Leave Comment</h2>
<p> <p>
<strong>Note to Verbose Commenters</strong><br /> <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="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">record</a> a response show instead. If you can't fit everything you want to say in the comment below then you really should <a href="<!--% absolute_url(baseurl) %-->../../about.html#so_you_want_to_record_a_podcast">record</a> a response show instead.
</p> </p>
<p> <p>
<strong>Note to Spammers</strong><br /> <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="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">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>. All comments are moderated. All links are checked by humans. We strip out all html. Feel free to <a href="<!--% absolute_url(baseurl) %-->../../about.html#so_you_want_to_record_a_podcast">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> </p>
<form method="POST" action="<!--% hub_baseurl %-->comment_confirm.php"> <form method="POST" action="<!--% hub_baseurl %-->comment_confirm.php">
<fieldset> <fieldset>

View File

@@ -29,7 +29,7 @@
hosts.hostid, hosts.hostid,
hosts.host, hosts.email, hosts.local_image, hosts.host, hosts.email, hosts.local_image,
miniseries.name AS series, miniseries.id AS seriesid miniseries.name AS series, miniseries.id AS seriesid
FROM twat_eps as eps FROM twt_eps as eps
INNER JOIN hosts ON eps.hostid = hosts.hostid INNER JOIN hosts ON eps.hostid = hosts.hostid
INNER JOIN miniseries ON eps.series = miniseries.id INNER JOIN miniseries ON eps.series = miniseries.id
ORDER BY eps.id DESC ORDER BY eps.id DESC

View File

@@ -1 +1,4 @@
<!--% PROCESS 'shared-utils.tpl.html' %--> <!--% PROCESS 'shared-utils.tpl.html' %-->
<!--% IF date.format(date.now, '%m') == 12 || date.format(date.now, '%j') == 1 %-->
<!--% PROCESS 'content-new_year_show_announcement.tpl.html' %-->
<!--% END %-->

View File

@@ -3,7 +3,6 @@
<!--% PROCESS 'shared-listen-now.tpl.html' %--> <!--% PROCESS 'shared-listen-now.tpl.html' %-->
<!--% PROCESS 'shared-show-transcript.tpl.html' %--> <!--% PROCESS 'shared-show-transcript.tpl.html' %-->
<!--% PROCESS 'shared-call_for_shows.tpl.html' %--> <!--% PROCESS 'shared-call_for_shows.tpl.html' %-->
<!--% INCLUDE 'content-index-announcement.tpl.html' %-->
<!--% PROCESS "queries-index.tpl.html" %--> <!--% PROCESS "queries-index.tpl.html" %-->
<!--% MACRO tidy_notes(all_lines) BLOCK %--> <!--% MACRO tidy_notes(all_lines) BLOCK %-->
<!--% lines = all_lines %--> <!--% lines = all_lines %-->
@@ -37,6 +36,7 @@
<!--% delta = date.calc.N_Delta_YMD(2005,9,19, date.format(date.now, '%Y'),date.format(date.now, '%m'),date.format(date.now, '%d')) %--> <!--% delta = date.calc.N_Delta_YMD(2005,9,19, date.format(date.now, '%Y'),date.format(date.now, '%m'),date.format(date.now, '%d')) %-->
<section id="welcome"> <section id="welcome">
<p>Hacker Public Radio is a technology focused podcast that releases shows every weekday Monday to Friday. Our shows are produced by listeners like you and can be on any topic that is of interest to hackers, makers, hobbyists, etc. We are a welcoming community that offers positive feedback and encourages respectful debate.</p> <p>Hacker Public Radio is a technology focused podcast that releases shows every weekday Monday to Friday. Our shows are produced by listeners like you and can be on any topic that is of interest to hackers, makers, hobbyists, etc. We are a welcoming community that offers positive feedback and encourages respectful debate.</p>
<!--% PROCESS 'content-index-announcement.tpl.html' %-->
<div id="call_for_shows"> <div id="call_for_shows">
<!--% display_call_for_shows() %--> <!--% display_call_for_shows() %-->
</div> </div>
@@ -104,6 +104,7 @@
<!--% host_cnt = host_cnt + 1 %--> <!--% host_cnt = host_cnt + 1 %-->
<!--% END %--> <!--% END %-->
</dl> </dl>
<p><a href="<!--% absolute_path(baseurl) %-->eps/index.html">More Episodes…</a></p>
</section> </section>
<section id="latest_comments"> <section id="latest_comments">
<header><h2>Latest Comments</h2></header> <header><h2>Latest Comments</h2></header>
@@ -138,5 +139,6 @@
<dd>on hpr<!--% item.eps_id %--> (<!--% item.episode_date %-->) "<!--% item.episode_title %-->" by <!--% item.host %--></dd> <dd>on hpr<!--% item.eps_id %--> (<!--% item.episode_date %-->) "<!--% item.episode_title %-->" by <!--% item.host %--></dd>
<!--% END %--> <!--% END %-->
</dl> </dl>
<p><a href="<!--% absolute_path(baseurl) %-->comments_viewer.html">More Comments…</a></p>
</section> </section>
</section> </section>

View File

@@ -0,0 +1,64 @@
<!--% PROCESS 'shared-utils.tpl.html' %-->
<h1><u>The <!--% get_new_year_show_ordinal_year %--> Annual 26 Hour New Year's Eve Show</u></h1>
<h2>Welcome every <a href="https://www.timeanddate.com/counters/multicountdown.html">TimeZone</a>!</h2>
<p>
<em>If you keep talking, we'll keep recording.</em>
</p>
<p>For those who don't know, on New Year's Eve <!--% get_new_year_show_start() %-->, we will have a recording going on the HPR Mumble server for anyone to come on and say "Happy New Year" and talk about whatever they want.
We will leave the recording going until at least <!--% get_new_year_show_end() %-->, and keep recording until the conversation stops.</p>
<p>
So please stop in. Say "Hi" and maybe join in the conversation with other HPR listeners and contributors. It's always a good time!!<br />
</p>
<h2>History</h2>
<p>Suggested by <a href="https://hackerpublicradio.org/correspondents/0128.html">pokey</a> in 2011.
As podcasting tends to be a one way conversation, he thought it would be nice to get all the FLOSS, Linux, Free Culture, podcasters and Listeners in one place to get together and chat in person.
Initially it was planned to be just a few hours, but we kept missing members from other parts of the world.
The show was extended to welcome ever time zone to the New Year, which actually turns out to be <a href="https://en.wikipedia.org/wiki/List_of_UTC_offsets">38 Timezones</a>, over 26 Hours.</p>
<p>So we will record for at least 26 Hours, but will keep the recording going for an "After Show".
Some years the after show has been even longer than the show itself.
While this is on the HPR Site, it is entirely a community initiative which is supported heavily by the fine folks over at the <a href="https://linuxlugcast.com/">LinuxLugCast</a>, with the Mumble Server been provided by <a href="https://hackerpublicradio.org/correspondents/0228.html">Delwin</a>.</p>
<h2>Ground Rules</h2>
<h3>Use Push to Talk, and a Headset</h3>
<p>With so many people on the chat, you must use push to talk.
You also need to use a Headset so the audio of the room is not fed back.
If there is a problem with your setup, then please drop and listen to the stream.
Trying to correct poor audio in post is a lot of work, that someone else will have to do.</p>
<h3>Be Polite</h3>
<p>When you enter the room please do not interrupt ongoing conversations.
Wait for a pause in the conversation and say Hi.
It's quite common for people you might not know to join as they wish to speak with other people in the room.
They may have been waiting all year for the chance to meet, so please give people the space to have these conversations.</p>
<h3>Do not announce the Time Zones</h3>
<p>As there are so <a moz-do-not-send="true" href="https://en.wikipedia.org/wiki/Time_zone">many Time Zones</a> there is no need to interrupt the conversation to announce every one.
If you are joining from a time zone that is currently switching to the New Year, then please wait for a pause and wish people Happy New Year.</p>
<h3>Don't Fill Dead Air</h3>
<p>This is a relaxed meet-up, and not a traditional "Radio Broadcast".
If there are no conversations going on at a given time, don't feel the need to "fill dead air".
Before the recording is posted as a podcast the <a href="https://manual.audacityteam.org/man/truncate_silence.html">silences will be truncated</a>.</p>
<h3>Do not monopolise the conversation</h3>
<p>Please be mindful that you (or your beverage of choice) may be speaking too much ;-).</p>
<h3>You are a Guest</h3>
<p>Be respectful, and remember that attendance on the New Year Show does not <a href="https://hub.hackerpublicradio.org/calendar.php">constitute a show</a>.</p>
<h3>CC-BY-SA</h3>
<p>The recording will be released as a podcast on HPR under a <a rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/"> Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)</a> license.
The recordings will be released mid year, when there is a lull in submissions.</p>

View File

@@ -0,0 +1,22 @@
<!--% PROCESS 'shared-utils.tpl.html' %-->
<div class="lane stack">
<article>
<header>
<h2 class="title"><a href="<!--% absolute_path(baseurl) %-->new_year.html">The <!--% get_new_year_show_ordinal_year %--> Annual 26 Hour New Year's Eve Show</a></h2>
</header>
<h3>Welcome every <a href="https://www.timeanddate.com/counters/multicountdown.html">TimeZone</a>!</h3>
<p>
<em>If you keep talking, we'll keep recording.</em>
</p>
<p>For those who don't know, on New Year's Eve <!--% get_new_year_show_start() %-->, we will have a recording going on the HPR Mumble server for anyone to come on and say "Happy New Year" and talk about whatever they want.
We will leave the recording going until at least <!--% get_new_year_show_end() %-->, and keep recording until the conversation stops.</p>
<p>
So please stop in. Say "Hi" and maybe join in the conversation with other HPR listeners and contributors. It's always a good time!!<br>
<audio controls preload="none">
<source src="<!--% absolute_path(baseurl) %-->promos/hpr-nye-promo.ogg" type="audio/ogg">
</audio>
</p>
<p><a href="<!--% absolute_path(baseurl) %-->new_year.html">More information…</a></p>
</article>
</div>

View File

@@ -13,6 +13,7 @@
<li>Date of earliest show: <!--% series.earliest_show %--></li> <li>Date of earliest show: <!--% series.earliest_show %--></li>
<li>Date of latest show: <!--% series.latest_show %--></li> <li>Date of latest show: <!--% series.latest_show %--></li>
<li>Series RSS feeds: <a href="<!--% absolute_path(baseurl) %-->hpr_ogg_rss.php?series=<!--% series.id %-->">ogg</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_spx_rss.php?series=<!--% series.id %-->">spx</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_mp3_rss.php?series=<!--% series.id %-->">mp3</a></li> <li>Series RSS feeds: <a href="<!--% absolute_path(baseurl) %-->hpr_ogg_rss.php?series=<!--% series.id %-->">ogg</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_spx_rss.php?series=<!--% series.id %-->">spx</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_mp3_rss.php?series=<!--% series.id %-->">mp3</a></li>
<li><a href="<!--% absolute_url(baseurl,'//series') %-->/<!--% zero_pad_left(series.id) %-->.m3u8">Download the M3U playlist</a></li>
</ul> </ul>
<div class="series-description"><!--% series.description %--></div> <div class="series-description"><!--% series.description %--></div>
</article> </article>

View File

@@ -13,6 +13,7 @@
<li>Date of earliest show: <!--% series.earliest_show %--></li> <li>Date of earliest show: <!--% series.earliest_show %--></li>
<li>Date of latest show: <!--% series.latest_show %--></li> <li>Date of latest show: <!--% series.latest_show %--></li>
<li>Series RSS feeds: <a href="<!--% absolute_path(baseurl) %-->hpr_ogg_rss.php?series=<!--% series.id %-->&full=1&gomax=1">ogg</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_spx_rss.php?series=<!--% series.id %-->&full=1&gomax=1">spx</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_mp3_rss.php?series=<!--% series.id %-->&full=1&gomax=1">mp3</a></li> <li>Series RSS feeds: <a href="<!--% absolute_path(baseurl) %-->hpr_ogg_rss.php?series=<!--% series.id %-->&full=1&gomax=1">ogg</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_spx_rss.php?series=<!--% series.id %-->&full=1&gomax=1">spx</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_mp3_rss.php?series=<!--% series.id %-->&full=1&gomax=1">mp3</a></li>
<li><a href="<!--% absolute_url(baseurl,'//series') %-->/<!--% zero_pad_left(series.id) %-->.m3u8">Download the M3U playlist</a></li>
</ul> </ul>
<p><em><!--% series.description %--></em></p> <p><em><!--% series.description %--></em></p>
<section id="series_episodes" class="lane stack"> <section id="series_episodes" class="lane stack">

View File

@@ -6,23 +6,23 @@
<!--% query_episodes = DBI.prepare(' <!--% query_episodes = DBI.prepare('
WITH episode_maxmin AS ( WITH episode_maxmin AS (
SELECT MAX(id) AS \'latest\', MIN(id) AS \'earliest\', ? AS \'id\' SELECT MAX(id) AS \'latest\', MIN(id) AS \'earliest\', ? AS \'id\'
FROM twat_eps AS eps FROM twt_eps AS eps
), ),
episode_date AS ( episode_date AS (
SELECT eps.date SELECT eps.date
FROM twat_eps AS eps FROM twt_eps AS eps
WHERE eps.id = ? WHERE eps.id = ?
), ),
episode_previous AS ( episode_previous AS (
SELECT MAX(id) AS \'previous\', ? AS \'id\' SELECT MAX(id) AS \'previous\', ? AS \'id\'
FROM twat_eps AS eps FROM twt_eps AS eps
INNER JOIN episode_date INNER JOIN episode_date
ON eps.date < episode_date.date ON eps.date < episode_date.date
WHERE eps.id > 1 WHERE eps.id > 1
), ),
episode_next AS ( episode_next AS (
SELECT MIN(id) AS \'next\', ? AS \'id\' SELECT MIN(id) AS \'next\', ? AS \'id\'
FROM twat_eps AS eps FROM twt_eps AS eps
INNER JOIN episode_date INNER JOIN episode_date
ON eps.date > episode_date.date ON eps.date > episode_date.date
) )
@@ -34,7 +34,7 @@
hosts.hostid, hosts.host, hosts.hostid, hosts.host,
miniseries.name AS \'series\', miniseries.id AS \'seriesid\', miniseries.name AS \'series\', miniseries.id AS \'seriesid\',
miniseries.description AS \'series_description\' miniseries.description AS \'series_description\'
FROM twat_eps AS eps FROM twt_eps AS eps
INNER JOIN hosts ON eps.hostid = hosts.hostid INNER JOIN hosts ON eps.hostid = hosts.hostid
INNER JOIN miniseries ON eps.series = miniseries.id INNER JOIN miniseries ON eps.series = miniseries.id
INNER JOIN episode_maxmin ON eps.id = episode_maxmin.id INNER JOIN episode_maxmin ON eps.id = episode_maxmin.id

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,6 +1,6 @@
<!--% USE DBI(constants.driver) %--> <!--% USE DBI(constants.driver) %-->
<!--% FOREACH episode IN DBI.query( <!--% FOREACH episode IN DBI.query(
'select eps.id from twat_eps AS eps' 'select eps.id from twt_eps AS eps'
) %--> ) %-->
,<!--% episode.id %--> ,<!--% episode.id %-->
<!--% END %--> <!--% END %-->

View File

@@ -0,0 +1,13 @@
<!--% PROCESS 'shared-utils.tpl.html' %-->
<!--% PROCESS 'queries-series_episodes.tpl.html' %-->
<!--% USE DBI(constants.driver) %-->
<!--% results_hpr_shows = DBI.prepare(query_shows_sql) %-->
<!--% hpr_shows = results_hpr_shows.execute(id); %-->
<!--% FOREACH hpr_show IN hpr_shows; %-->
#EXTINF: <!--% hpr_show.duration %-->,<!--% hpr_show.host %--> - <!--% hpr_show.title %-->
<!--% media_path(hpr_show.id, 'hpr', 'mp3', baseurl, media_baseurl) %-->
<!--% END %-->

View File

@@ -33,7 +33,7 @@
%--> %-->
<!--% query_twt_show_count = ' <!--% query_twt_show_count = '
SELECT COUNT(id) as Tally SELECT COUNT(id) as Tally
FROM twat_eps AS eps FROM twt_eps AS eps
WHERE eps.hostid = ? WHERE eps.hostid = ?
' '
%--> %-->
@@ -48,7 +48,7 @@
hosts.hostid, hosts.hostid,
hosts.host, hosts.email, hosts.profile, hosts.host, hosts.email, hosts.profile,
miniseries.name AS series, miniseries.id AS seriesid miniseries.name AS series, miniseries.id AS seriesid
FROM twat_eps AS eps FROM twt_eps AS eps
INNER JOIN hosts ON eps.hostid = hosts.hostid INNER JOIN hosts ON eps.hostid = hosts.hostid
INNER JOIN miniseries ON eps.series = miniseries.id INNER JOIN miniseries ON eps.series = miniseries.id
WHERE hosts.hostid = ? WHERE hosts.hostid = ?

View File

@@ -1 +1 @@
<!--% query_tags = 'SELECT id, tags FROM eps' %--> <!--% query_tags = 'SELECT id, tags FROM eps WHERE eps.date <= date(\'now\')' %-->

View File

@@ -134,3 +134,34 @@
<!--% END %--> <!--% END %-->
<span><a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.latest) %-->/index.html" rel="last" aria-label="latest episode">Latest<span class="no-css"> &gt;&gt;</span><!--% INSERT $arrow_last %--></a></span></nav> <span><a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.latest) %-->/index.html" rel="last" aria-label="latest episode">Latest<span class="no-css"> &gt;&gt;</span><!--% INSERT $arrow_last %--></a></span></nav>
<!--% END %--> <!--% END %-->
<!--% MACRO get_new_year_show_start BLOCK %-->
<!--% start_year = date.format(date.now, '%Y') %-->
<!--% IF date.format(date.now, '%m') != 12 || date.format(date.now, '%j') == 1 %-->
<!--% start_year = start_year - 1 %-->
<!--% END %-->
<time datetime="<!--% start_year %-->-12-31T10:00Z"><!--% start_year %-->-12-31 10:00 UTC (5:00 AM EST)</time>
<!--% END %-->
<!--% MACRO get_new_year_show_end BLOCK %-->
<!--% end_year = date.format(date.now, '%Y') %-->
<!--% IF date.format(date.now, '%m') == 12 || date.format(date.now, '%j') == 1 %-->
<!--% end_year = end_year + 1 %-->
<!--% END %-->
<time datetime="<!--% end_year %-->-01-01T12:00Z"><!--% end_year %-->-01-01 12:00 UTC (7:00 AM EST)</time>
<!--% END %-->
<!--% MACRO get_new_year_show_ordinal_year BLOCK %-->
<!--% ordinal_year = date.format(date.now, '%Y') - 2011 %-->
<!--% IF date.format(date.now, '%m') != 12 || date.format(date.now, '%j') == 1 %-->
<!--% ordinal_year = ordinal_year - 1 %-->
<!--% END %-->
<!--% years.14 = 'Fourteenth'
years.15 = 'Fifteenth'
years.16 = 'Sixteenth'
years.17 = 'Seventeenth'
years.18 = 'Eighteenth'
years.19 = 'Nineteenth'
years.20 = 'Twentieth' %-->
<!--% years.$ordinal_year %-->
<!--% END %-->