14 Commits

Author SHA1 Message Date
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
ae96d602a4 Allow creation of m3u playlist for a host 2025-11-15 12:09:50 -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
10 changed files with 78 additions and 5 deletions

View File

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

View File

@@ -171,3 +171,15 @@ media_file_extension: spx
[comments]
root_template: rss-comments.tpl.xml
filename: comments.rss
[correspondent_m3u]
root_template: m3u.tpl.m3u8
content: m3u-correspondent.tpl.m3u8
filename: correspondents/[id]/playlist.m3u8
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,9 @@
<p><label>email:</label> <u><!--% this_host.email %--></u></p>
<div><label>profile:</label> <!--% this_host.profile %--></div>
<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 class="lane stack">
<div class="lane stack">
<!--% FOREACH hpr_show IN hpr_shows; %-->
<article>
<!--% show_summary(hpr_show, 'hide_host') %-->

View File

@@ -13,6 +13,7 @@
<li>Date of earliest show: <!--% series.earliest_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><a href="<!--% absolute_url(baseurl,'//series') %-->/<!--% zero_pad_left(series.id) %-->.m3u8">Download the M3U playlist</a></li>
</ul>
<div class="series-description"><!--% series.description %--></div>
</article>

View File

@@ -13,6 +13,7 @@
<li>Date of earliest show: <!--% series.earliest_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><a href="<!--% absolute_url(baseurl,'//series') %-->/<!--% zero_pad_left(series.id) %-->.m3u8">Download the M3U playlist</a></li>
</ul>
<p><em><!--% series.description %--></em></p>
<section id="series_episodes" class="lane stack">

View File

@@ -0,0 +1,7 @@
<!--% USE DBI(constants.driver) %-->
<!--% FOREACH host IN DBI.query(
'select h.hostid from hosts as h'
) %-->
,<!--% host.hostid %-->
<!--% END %-->

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

@@ -0,0 +1,24 @@
<!--% PROCESS 'shared-utils.tpl.html' %-->
<!--% PROCESS 'queries-correspondent.tpl.html' %-->
<!--% USE DBI(constants.driver) %-->
<!--% results_hpr_shows = DBI.prepare(query_hpr_shows) %-->
<!--% 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 %-->
<!--% results_hpr_shows = DBI.prepare(query_twt_shows) %-->
<!--% twt_result_status = results_twt_show_count.execute(id); %-->
<!--% twt_shows = results_hpr_shows.execute(id); %-->
<!--% FOREACH hpr_show IN twt_shows; %-->
#EXTINF: <!--% hpr_show.duration %-->,<!--% hpr_show.host %--> - <!--% hpr_show.title %-->
<!--% media_path(hpr_show.id, 'twt', 'mp3', baseurl, media_baseurl) %-->
<!--% 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 %-->

2
templates/m3u.tpl.m3u8 Normal file
View File

@@ -0,0 +1,2 @@
#EXTM3U
<!--% INCLUDE $content %-->