forked from rho_n/hpr_generator
Compare commits
No commits in common. "main" and "167_Several_templates_use_non-existent_absolute_url" have entirely different histories.
main
...
167_Severa
30
README.md
30
README.md
@ -4,16 +4,16 @@ Static web page generator for the Hacker Public Radio website.
|
||||
## Installation
|
||||
* Clone or download this repository
|
||||
* With SQLite
|
||||
* Create the sqlite3 database from the hpr.sql MySQL dump file available on
|
||||
hackerpublicradio.org. The default name for the database file is "hpr.db"
|
||||
and should be located in the root of the project directory. The name and
|
||||
* Create the sqlite3 database from the hpr.sql MySQL dump file available on
|
||||
hackerpublicradio.org. The default name for the database file is "hpr.db"
|
||||
and should be located in the root of the project directory. The name and
|
||||
location can be set in the site.cfg file.
|
||||
* An "update-hpr.sh" helper script is available in the utils directory. This
|
||||
script will download the hpr.sql file, convert it to the SQLite hpr.db file,
|
||||
and regenerate the website using the site-generator.
|
||||
* An "update-hpr.sh" helper script is available in the utils directory. This
|
||||
script will download the hpr.sql file, convert it to the SQLite hpr.db file,
|
||||
and regenerate the website using the site-generator.
|
||||
1. `cd` into the root of the project directory
|
||||
2. Run `./utils/update-hpr.sh`
|
||||
* SQLite v3.8.3 or greater is recommended. CTE WITH clauses are used in some template queries. Must convert WITH
|
||||
* SQLite v3.8.3 or greater is recommended. CTE WITH clauses are used in some template queries. Must convert WITH
|
||||
clauses to sub-queries when using earlier versions of SQLite.
|
||||
* With MySQL
|
||||
* Create database hpr_hpr in the MySQL server from HPR dump file.
|
||||
@ -31,24 +31,18 @@ Static web page generator for the Hacker Public Radio website.
|
||||
* Template
|
||||
* Template::Plugin::File
|
||||
* Template::Plugin::DBI
|
||||
* Template::Plugin::Date
|
||||
* Template::Plugin::HTML::Strip
|
||||
* DBI
|
||||
* Tie::DBI
|
||||
* DBD::SQLite or DBD:mysql
|
||||
* Date::Calc
|
||||
* Text::CSV_XS
|
||||
* HTML::Entities
|
||||
|
||||
* See the [Getting Started](GETTING_STARTED.md) tutorial for more details on
|
||||
* See the Getting Started tutorial (GETTING_STARTED.md) for more details on
|
||||
installing the HPR generator.
|
||||
|
||||
## Usage
|
||||
Generate two specific pages:
|
||||
`site-generator index about`
|
||||
`site-generator index about`
|
||||
|
||||
Generate the whole site:
|
||||
`site-generator --all`
|
||||
`site-generator --all`
|
||||
|
||||
Generate pages based on the same template:
|
||||
`site-generator correspondent=1,3,5..10`
|
||||
@ -71,7 +65,7 @@ To make a suggestion, please [submit an Issue](https://repo.anhonesthost.net/rho
|
||||
and add the label "**Feature Request**".
|
||||
|
||||
## Authors and acknowledgment
|
||||
* Roan "Rho`n" Horning
|
||||
* Roan "Rho`n" Horning
|
||||
* gordons
|
||||
* Ken Fallon
|
||||
* norrist
|
||||
* norrist
|
@ -1,7 +1,7 @@
|
||||
@charset "utf-8";
|
||||
/* Website design Copyright Ken Fallon - Released into the public domain/
|
||||
|
||||
https://creativecommons.org/publicdomain/
|
||||
http://creativecommons.org/publicdomain/
|
||||
|
||||
*/
|
||||
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 1.4 MiB |
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 1.3 MiB |
Binary file not shown.
Before Width: | Height: | Size: 838 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -67,21 +67,18 @@ Perl Template Toolkit.
|
||||
- GRANT EXECUTE ON `hpr_hpr`.* TO 'hpr-generator'@'localhost';
|
||||
|
||||
Install the needed Perl modules using preferred method (distribution packages, CPAN, etc.)
|
||||
* Config::Std
|
||||
* DBD::SQLite or DBD:mysql
|
||||
* DBI
|
||||
* Data::Dumper
|
||||
* Date::Calc
|
||||
* GetOpt::Long
|
||||
* HTML::Entities
|
||||
* GetOpt
|
||||
* Pod::Usage
|
||||
* Config::Std
|
||||
* Template
|
||||
* Template::Plugin::DBI
|
||||
* Template::Plugin::Date
|
||||
* Template::Plugin::File
|
||||
* Template::Plugin::DBI
|
||||
* Template::Plugin::HTML::Strip
|
||||
* Text::CSV_XS
|
||||
* DBI
|
||||
* Tie::DBI
|
||||
* DBD::SQLite or DBD:mysql
|
||||
* Date::Calc
|
||||
* Text::CSV_XS
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
@ -118,8 +115,7 @@ use Getopt::Long qw(:config auto_help);
|
||||
use Pod::Usage;
|
||||
use Config::Std;
|
||||
use Text::CSV_XS;
|
||||
#use HTML::Entities qw(encode_entities_numeric);
|
||||
use HTML::Entities qw(encode_entities);
|
||||
use HTML::Entities qw(encode_entities_numeric);
|
||||
use Date::Calc;
|
||||
use DBI;
|
||||
use DBD::SQLite;
|
||||
@ -236,7 +232,7 @@ sub main {
|
||||
return 0;
|
||||
}
|
||||
|
||||
sub get_template_html {
|
||||
sub get_template_html (\%@) {
|
||||
# For an HTML based Template file, define the
|
||||
# template start and end tags to also function as
|
||||
# HTML comments to make the template file valid HTML.
|
||||
@ -429,8 +425,7 @@ sub parse_csv {
|
||||
sub xml_entity {
|
||||
my ($text) = @_;
|
||||
|
||||
# encode_entities_numeric( $text );
|
||||
encode_entities( $text );
|
||||
encode_entities_numeric( $text );
|
||||
|
||||
return $text;
|
||||
}
|
||||
|
119
site.cfg
119
site.cfg
@ -29,7 +29,6 @@ content: page.tpl.html
|
||||
#baseurl: OPTIONAL [i.e. file://<full path to local website directory>]
|
||||
#baseurl: file:///home/roan/Development/hpr/website/hpr_generator/public_html/
|
||||
baseurl: https://hackerpublicradio.org/
|
||||
http_baseurl: http://hackerpublicradio.org/
|
||||
hub_baseurl: https://hub.hackerpublicradio.org/
|
||||
media_baseurl: https://archive.org/download/hpr$eps_id/
|
||||
generator_name: The HPR Robot
|
||||
@ -69,6 +68,10 @@ navigation: navigation-about.tpl.html
|
||||
content: content-correspondents.tpl.html
|
||||
filename: correspondents/index.html
|
||||
|
||||
# [contact]
|
||||
# navigation: navigation-about.tpl.html
|
||||
# content: content-contact.tpl.html
|
||||
|
||||
[correspondent]
|
||||
navigation: navigation-about.tpl.html
|
||||
content: content-correspondent.tpl.html
|
||||
@ -101,10 +104,50 @@ filename: eps/hpr[id]/index.html
|
||||
navigation: navigation-get-shows.tpl.html
|
||||
content: content-syndication.tpl.html
|
||||
|
||||
[contribute]
|
||||
navigation: navigation-give-shows.tpl.html
|
||||
content: content-contribute.tpl.html
|
||||
|
||||
[search]
|
||||
navigation: navigation-main.tpl.html
|
||||
content: content-search.tpl.html
|
||||
|
||||
[help_out]
|
||||
navigation: navigation-contribute.tpl.html
|
||||
content: content-help_out.tpl.html
|
||||
|
||||
[download]
|
||||
navigation: navigation-get-shows.tpl.html
|
||||
content: content-download.tpl.html
|
||||
|
||||
# [stuff_you_need_to_know]
|
||||
# navigation: navigation-give-shows.tpl.html
|
||||
# content: content-stuff_you_need_to_know.tpl.html
|
||||
|
||||
[theme]
|
||||
navigation: navigation-give-shows.tpl.html
|
||||
content: content-theme.tpl.html
|
||||
|
||||
[requested_topics]
|
||||
navigation: navigation-give-shows.tpl.html
|
||||
content: content-requested_topics.tpl.html
|
||||
|
||||
[recording]
|
||||
navigation: navigation-give-shows.tpl.html
|
||||
content: content-recording.tpl.html
|
||||
|
||||
[request_a_slot]
|
||||
navigation: navigation-give-shows.tpl.html
|
||||
content: content-request_a_slot.tpl.html
|
||||
|
||||
[podcatchers]
|
||||
navigation: navigation-contribute.tpl.html
|
||||
content: content-podcatchers.tpl.html
|
||||
|
||||
[promote]
|
||||
navigation: navigation-about.tpl.html
|
||||
content: content-promote.tpl.html
|
||||
|
||||
[sitemap]
|
||||
navigation: navigation-about.tpl.html
|
||||
content: content-sitemap.tpl.html
|
||||
@ -128,43 +171,43 @@ content: content-mumble-howto.tpl.html
|
||||
navigation: navigation-about.tpl.html
|
||||
content: content-comments_viewer.tpl.html
|
||||
|
||||
[hpr_ogg]
|
||||
root_template: rss.tpl.xml
|
||||
content: rss-hpr.tpl.xml
|
||||
filename: hpr_ogg.rss
|
||||
media_file_extension: ogg
|
||||
|
||||
[hpr_mp3]
|
||||
root_template: rss.tpl.xml
|
||||
content: rss-hpr.tpl.xml
|
||||
filename: hpr_mp3.rss
|
||||
media_file_extension: mp3
|
||||
audio_mime_type: mpeg
|
||||
|
||||
[hpr_spx]
|
||||
root_template: rss.tpl.xml
|
||||
content: rss-hpr.tpl.xml
|
||||
filename: hpr_spx.rss
|
||||
media_file_extension: spx
|
||||
|
||||
[hpr_total_ogg]
|
||||
root_template: rss.tpl.xml
|
||||
content: rss-hpr_total.tpl.xml
|
||||
filename: hpr_total_ogg.rss
|
||||
media_file_extension: ogg
|
||||
|
||||
[hpr_total_mp3]
|
||||
root_template: rss.tpl.xml
|
||||
content: rss-hpr_total.tpl.xml
|
||||
filename: hpr_total_mp3.rss
|
||||
media_file_extension: mp3
|
||||
audio_mime_type: mpeg
|
||||
|
||||
[hpr_total_spx]
|
||||
root_template: rss.tpl.xml
|
||||
content: rss-hpr_total.tpl.xml
|
||||
filename: hpr_total_spx.rss
|
||||
media_file_extension: spx
|
||||
# [hpr_ogg]
|
||||
# root_template: rss.tpl.xml
|
||||
# content: rss-hpr.tpl.xml
|
||||
# filename: hpr_ogg.rss
|
||||
# media_file_extension: ogg
|
||||
#
|
||||
# [hpr_mp3]
|
||||
# root_template: rss.tpl.xml
|
||||
# content: rss-hpr.tpl.xml
|
||||
# filename: hpr_mp3.rss
|
||||
# media_file_extension: mp3
|
||||
# audio_mime_type: mpeg
|
||||
#
|
||||
# [hpr_spx]
|
||||
# root_template: rss.tpl.xml
|
||||
# content: rss-hpr.tpl.xml
|
||||
# filename: hpr_spx.rss
|
||||
# media_file_extension: spx
|
||||
#
|
||||
# [hpr_total_ogg]
|
||||
# root_template: rss.tpl.xml
|
||||
# content: rss-hpr_total.tpl.xml
|
||||
# filename: hpr_total_ogg.rss
|
||||
# media_file_extension: ogg
|
||||
#
|
||||
# [hpr_total_mp3]
|
||||
# root_template: rss.tpl.xml
|
||||
# content: rss-hpr_total.tpl.xml
|
||||
# filename: hpr_total_mp3.rss
|
||||
# media_file_extension: mp3
|
||||
# audio_mime_type: mpeg
|
||||
#
|
||||
# [hpr_total_spx]
|
||||
# root_template: rss.tpl.xml
|
||||
# content: rss-hpr_total.tpl.xml
|
||||
# filename: hpr_total_spx.rss
|
||||
# media_file_extension: spx
|
||||
|
||||
[comments]
|
||||
root_template: rss-comments.tpl.xml
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -28,7 +28,7 @@
|
||||
|
||||
<article>
|
||||
<header>
|
||||
<h1><a href="<!--% absolute_path(baseurl) %-->eps/hpr<!--% zero_pad_left(item.eps_id) %-->/index.html#comment_<!--% item.comment_id %-->"><!--% item.comment_author_name %--> says</a>: <!--% item.comment_title %--></h1>
|
||||
<h1><!--% item.comment_author_name %--> says: <!--% item.comment_title %--></h1>
|
||||
<p><small>Posted at <!--% item.comment_timestamp %--> relating to the show <a href="<!--% absolute_path(baseurl) %-->eps/hpr<!--% zero_pad_left(item.eps_id) %-->/index.html">hpr<!--% item.eps_id %--></a> which was released on <!--% item.episode_date %--> by <a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pad_left(item.host_id) %-->.html"><!--% item.host %--></a> entitled <em><!--% item.episode_title %--></em></small>
|
||||
</p>
|
||||
</header>
|
||||
|
87
templates/content-contribute.tpl.html
Normal file
87
templates/content-contribute.tpl.html
Normal file
@ -0,0 +1,87 @@
|
||||
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
||||
<!--% USE DBI(constants.driver, constants.user, constants.password) %-->
|
||||
<!--% FOREACH correspondents IN DBI.query('
|
||||
SELECT COUNT(hostid) AS \'tally\' FROM hosts;
|
||||
') %-->
|
||||
<h1>So you want to do a podcast ?</h1>
|
||||
<p>Well you've come to the right place. Our goal here at HPR is to make it as easy as possible for you to get a podcast released. We take care of the hard bits so you don't need to. Recording your first show is always a daunting prospect but over <a href="<!--% absolute_path(baseurl) %-->correspondents/index.html"><!--% correspondents.tally %--></a> people like yourself have done it and so can you.
|
||||
<!--% END %-->
|
||||
</p>
|
||||
<h2>1. Stuff you need to know</h2>
|
||||
<ul>
|
||||
<li>HPR will stop as a project if there are not enough <a href="<!--% absolute_path(baseurl) %-->stuff_you_need_to_know.html#no_shows_no_hpr">Shows</a>.</li>
|
||||
<li>We do not <a href="<!--% absolute_path(baseurl) %-->stuff_you_need_to_know.html#syndication">syndicate</a> shows not produced for HPR.</li>
|
||||
<li>You are agreeing to <a href="<!--% absolute_path(baseurl) %-->stuff_you_need_to_know.html#license">license</a> your show CC BY-SA 4.0.</li>
|
||||
<li>You have <a href="<!--% absolute_path(baseurl) %-->stuff_you_need_to_know.html#permission">permission</a> to redistribute your show in its entirety.</li>
|
||||
<li>Your audio will <a href="<!--% absolute_path(baseurl) %-->stuff_you_need_to_know.html#not_moderated">not be moderated.</a></li>
|
||||
<li>Your show will be signaled as containing <a href="<!--% absolute_path(baseurl) %-->stuff_you_need_to_know.html#explicit">explicit</a> content.</li>
|
||||
<li>You determine where in the <a href="<!--% absolute_path(baseurl) %-->stuff_you_need_to_know.html#schedule">schedule</a> your show will be released.</li>
|
||||
<li>We use <a href="<!--% absolute_path(baseurl) %-->stuff_you_need_to_know.html#utf8">UTF-8</a> end to end.</li>
|
||||
<li>Your show will be heard by an <a href="<!--% absolute_path(baseurl) %-->stuff_you_need_to_know.html#international">International</a> Audience.</li>
|
||||
<li>We also need <a href="<!--% absolute_path(baseurl) %-->stuff_you_need_to_know.html#emergency_queue">emergency</a> shows.</li>
|
||||
<li>You will no longer be allowed to edit HPR pages on <a href="<!--% absolute_path(baseurl) %-->stuff_you_need_to_know.html#wikipedia">Wikipedia</a>.</li>
|
||||
</ul>
|
||||
<p>
|
||||
<a href="<!--% absolute_path(baseurl) %-->stuff_you_need_to_know.html">More information.</a>
|
||||
</p>
|
||||
|
||||
<h2>2. Select a Topic</h2>
|
||||
<p>
|
||||
The first thing you will need to do is decide on a topic for your show. You might already have an idea but if not you can have a look at our <a href="<!--% absolute_path(baseurl) %-->eps/index.html">Archive</a> page for examples of shows people have recorded in the past. You can also look at our <a href="<!--% absolute_path(baseurl) %-->requested_topics.html">Requested Topics</a>, or our <a href="<!--% absolute_path(baseurl) %-->series/index.html">Series</a> page to see if you can add your knowledge to the pool.
|
||||
</p>
|
||||
<p>
|
||||
If you are <a href="<!--% absolute_path(baseurl) %-->will-my-show-be-of-interest-to-hackers.html">worried that your show may not be of interest to Hackers then follow this link</a> to check if it is.
|
||||
</p>
|
||||
<p>
|
||||
If you can't think of anything to talk about then please just record a show telling us <a href="<!--% absolute_path(baseurl) %-->series/0029.html">how you got into tech</a> as a way to introducing yourself to the community.
|
||||
</p>
|
||||
|
||||
<h2>3. Record your show</h2>
|
||||
<p>
|
||||
Please select <a href="<!--% absolute_path(baseurl) %-->recording.html">more detailed information on how to record a show</a>:
|
||||
</p>
|
||||
<ul>
|
||||
<!-- <li>Recording with the <a href="<!--% absolute_path(baseurl) %-->recording.html#callin_numbers">telephone</a>.</li> -->
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->recording.html#portable_media_player">Recording with a portable media player</a>.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->recording.html#smart_phone">Recording with a smart phone</a>.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->recording.html#editing">Recording/Editing using your Computer</a>.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->recording.html#phone_interviews">Recording Interviews with the Phone</a>.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->recording.html#round_table">Recording round table discussions</a>.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->recording.html#background_music">Avoid Bedding/background music</a>.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->recording.html#encoding">We mix down to Mono</a>.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->recording.html#no_metadata">No need to add Metadata</a> to the file.</li>
|
||||
</ul>
|
||||
<p>Don't forget to <strong>introduce yourself</strong> in your show.</p>
|
||||
|
||||
<h2>4. Upload your show</h2>
|
||||
<p>
|
||||
Once you have your audio ready you can post your show by going to the <a href="<!--% hub_baseurl %-->calendar.php">Calendar</a> page or press the <strong><a href="<!--% hub_baseurl %-->calendar.php">⇧Upload⇧</strong></a> button.
|
||||
</p>
|
||||
<p>
|
||||
After you have selected a date you will be redirected to the <a href="https://www.hackerpublicradio.org/request.php">request page</a>, where you will be asked to select your show and email address. We will send a link to where you can upload your show to this address and so it must be a valid working address that you can access quickly. We intend to use <a href="https://www.gnupg.org/">GPG</a> to speed up the validation of hosts, so you may wish to use an email address that has an associated public key available on public key servers.
|
||||
</p>
|
||||
<p>
|
||||
<a href="<!--% absolute_path(baseurl) %-->request_a_slot.html">More Information</a>.
|
||||
</p>
|
||||
|
||||
<h2>Questions ?</h2>
|
||||
<p>
|
||||
Got any questions not covered here, then just email <strong>"admin" at "www.hackerpublicradio.org"</strong>, and we’ll get in touch with you with all you need to know about getting your show published.<br />
|
||||
You can chat with other podcasters using IRC in the <strong>#oggcastplanet</strong> channel on the <a href="https://web.libera.chat/gamja/?channels=oggcastplanet">freenode.net</a> network. Follow us on <a href="https://identi.ca/group/hpr">identi.ca</a> (use the tag <strong>!hpr</strong>) and on <a href="https://twitter.com/hpr">Twitter</a> (use the tag <strong>#hpr</strong>). We have a <a href="https://www.facebook.com/home.php?sk=group_130169220378872">Facebook</a> and <a href="https://www.linkedin.com/groups?mostPopular=&gid=3737302">LinkedIn</a> group, so please join and spread the word.</p>
|
||||
<h2>Still Nervous</h2>
|
||||
<p>
|
||||
Fellow listeners like yourself contribute the shows and so we all know how hard it is to do that first show. You're probably worried that we won't like the topic. Well don't be, have a look at our <a href="<!--% absolute_path(baseurl) %-->eps/index.html">archive</a> to see how diverse the contributions have been. You're probably worried about the quality of your audio, that you sound funny, that English isn't your native language, that you suffer from a speech impediment, that your show has loads of ummms and awws in it, well don't be. We have plenty of hosts that fall into all these categories but continue to produce great shows.
|
||||
</p>
|
||||
<p>
|
||||
At the end of the day the show is about the content and not the quality of the audio. That's not to say we won't help you with ways to improve the audio if you wish, or narrate your script if you can't or won't record it yourself. Drop into the IRC channel <a href="https://web.libera.chat/gamja/?channels=oggcastplanet">#oggcastplanet</a> where there are people who will help.<br />
|
||||
</p>
|
||||
|
||||
<h2 id="motto">Our Mottos</h2>
|
||||
<blockquote>Any audio is better than no audio.</blockquote>
|
||||
<blockquote>Any topic of intrest to hackers.</blockquote>
|
||||
<blockquote>It ain't a show unless it's on the server.</blockquote>
|
||||
<blockquote>If you tell us you are doing a show, then you owe us a show.</blockquote>
|
||||
|
||||
<p>You don't need anyones permission to upload a show, but if you have any questions then drop into the <a href="https://web.libera.chat/gamja/?channels=oggcastplanet">#oggcastplanet</a> channel on freenode and chat with a live person 24/7.
|
||||
</p>
|
||||
|
@ -6,7 +6,7 @@
|
||||
<!--% query_hpr_show_count = DBI.prepare('
|
||||
SELECT id
|
||||
FROM eps
|
||||
WHERE eps.hostid = ?
|
||||
WHERE eps.hostid = ?
|
||||
')
|
||||
%-->
|
||||
<!--% results_hpr_shows = DBI.prepare(query_hpr_shows)
|
||||
@ -25,18 +25,18 @@
|
||||
')
|
||||
%-->
|
||||
<!--% query_twat_shows = DBI.prepare('
|
||||
SELECT
|
||||
eps.id,
|
||||
CASE eps.explicit WHEN 1 THEN \'Explicit\' ELSE \'Clean\' END AS explicit ,
|
||||
SELECT
|
||||
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.title, eps.summary, eps.tags,
|
||||
eps.notes,
|
||||
hosts.local_image,
|
||||
hosts.hostid,
|
||||
hosts.host, hosts.email, hosts.profile,
|
||||
hosts.hostid,
|
||||
hosts.host, hosts.email,
|
||||
miniseries.name AS series, miniseries.id AS seriesid
|
||||
FROM twat_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
|
||||
WHERE hosts.hostid = ?
|
||||
ORDER BY eps.id DESC
|
||||
@ -58,7 +58,6 @@
|
||||
<p><!--% get_avatar(this_host.hostid, this_host.host) %--><br>
|
||||
<label>Host ID</label>: <!--% this_host.hostid %--><br><br>
|
||||
<label>email:</label> <u><!--% this_host.email %--></u><br>
|
||||
<label>profile:</label> <!--% this_host.profile %--><br><br>
|
||||
<label>episodes:</label> <strong><!--% hpr_show_count + twat_show_count %--></strong>
|
||||
</p>
|
||||
<!--% FOREACH hpr_show IN hpr_shows; %-->
|
||||
@ -72,4 +71,4 @@
|
||||
<p class="listen-in"><!--% display_listen_in(twat_show.id,"twat") %--></p>
|
||||
<!--% END %-->
|
||||
</article>
|
||||
<p><a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">Become a Correspondent</a></p>
|
||||
<p><a href="contribute.html">Become a Correspondent</a></p>
|
||||
|
@ -2,7 +2,7 @@
|
||||
<!--% PROCESS 'shared-avatar.tpl.html' %-->
|
||||
<article>
|
||||
<h2 class="title">Correspondents</h2>
|
||||
<p>For more information on how to become a Correspondent see our <a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">contribute</a></center> page. To add a logo here, either email one to admin at hpr or setup your email on <a href="https://en.gravatar.com/">Gravatar</a>. To protect your browsing privacy we gather the images every hour and serve them directly from HPR.<p />
|
||||
<p>For more information on how to become a Correspondent see our <a href="<!--% absolute_path(baseurl) %-->contribute.html">contribute</a></center> page. To add a logo here, either email one to admin at hpr or setup your email on <a href="https://en.gravatar.com/">Gravatar</a>. To protect your browsing privacy we gather the images every hour and serve them directly from HPR.<p />
|
||||
<!--% USE DBI(constants.driver, constants.user, constants.password) %-->
|
||||
<!--% host_cnt = 0 %-->
|
||||
<table class="hosts">
|
||||
@ -29,5 +29,5 @@
|
||||
</tr><!--% host_cnt = host_cnt + 1 %-->
|
||||
<!--% END %-->
|
||||
</table>
|
||||
<p><a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">Become a Correspondent</a></p>
|
||||
<p><a href="<!--% absolute_path(baseurl) %-->contribute.html">Become a Correspondent</a></p>
|
||||
</article>
|
||||
|
57
templates/content-download.tpl.html
Normal file
57
templates/content-download.tpl.html
Normal file
@ -0,0 +1,57 @@
|
||||
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
||||
<article>
|
||||
<header>
|
||||
<h1>Download Archive</h1>
|
||||
<p>Please be aware that our Archive exceeds <strong>62Gb</strong> <em>(Ogg: 21Gb, Spx: 16Gb, mp3: 25Gb)</em>. We are happy for you to download them, but please make sure that you are not going to incur additional bandwidth charges on your side.</p>
|
||||
<p>We will be happy to post you DVD's of the episodes anywhere in the world if bandwidth is an issue.</p>
|
||||
</header>
|
||||
<h2>Full Episode Guide</h2>
|
||||
<p>
|
||||
The <a href="<!--% absolute_path(baseurl) %-->eps/index.html">compete episode guide</a> is available to you, and it lists all the shows on one page going right back to the very first episode.
|
||||
</p>
|
||||
<h2>Command line download</h2>
|
||||
<p>
|
||||
You can download the audio of the episodes directly from the command line using the following commands:
|
||||
</p>
|
||||
<ul>
|
||||
<li>ogg:<br />
|
||||
<span style="font-family:monospace;">curl 'https://www.hackerpublicradio.org/eps/hpr[0001-3657].ogg' -o "hpr#1.ogg"</span></li>
|
||||
<li>spx:<br />
|
||||
<span style="font-family:monospace;">curl 'https://www.hackerpublicradio.org/eps/hpr[0001-3657].spx' -o "hpr#1.spx"</span></li>
|
||||
<li>mp3:<br />
|
||||
<span style="font-family:monospace;">curl 'https://www.hackerpublicradio.org/eps/hpr[0001-3657].mp3' -o "hpr#1.mp3"</span></li>
|
||||
</li>
|
||||
</ul>
|
||||
<h2>Full RSS feed, BitTorrent and Magnet links</h2>
|
||||
<p>The full rss feed is updated daily and contains the complete show note with links to supporting articles. The torrent/magnet also contains this information and is a snaphot of the archive taken between 2007 and November 2013. </p>
|
||||
<ul>
|
||||
<li><span style="font-family:monospace;">ogg: <a href="hpr_total_ogg_rss.php">rss</a>, <a href="https://www.talkgeektome.us/torrents/HPR-Ogg-2007-Nov2013.torrent">torrent</a>, <a href="magnet:?xt=urn:btih:390C66903BBB2B6A067C438C70B2E90988AA8207&dn=HPR-Ogg-2007-Nov2013&tr=http%3A%2F%2Ftracker.info-underground.net%3A16880%2Fannounce">magnet</a></span></li>
|
||||
<li><span style="font-family:monospace;">spx: <a href="hpr_total_spx_rss.php">rss</a>, <a href="https://www.talkgeektome.us/torrents/HPR-Mp3-2007-Nov2013.torrent">torrent</a>, <a href="magnet:?xt=urn:btih:E2573BEF0209B8C2E3C7908BAF220EC34D4A5B8E&dn=HPR-Speex-2007-Nov2013&tr=http%3A%2F%2Ftracker.info-underground.net%3A16880%2Fannounce">magnet</a></span></li>
|
||||
<li><span style="font-family:monospace;">mp3: <a href="hpr_total_rss.php">rss</a>, <a href="https://www.talkgeektome.us/torrents/HPR-Mp3-2007-Nov2013.torrent">torrent</a>, <a href="magnet:?xt=urn:btih:6E9492AD78BCCA2B8D6A42C9C0BCAB0E6FA778F8&dn=HPR-Mp3-2007-Nov2013&tr=http%3A%2F%2Ftracker.info-underground.net%3A16880%2Fannounce">magnet</a></span></li>
|
||||
</ul>
|
||||
<h3>Direct download of the remaining shows</h3>
|
||||
<p>
|
||||
You can download the remaining episodes since the torrent was created directly from the command line using the following commands:
|
||||
</p>
|
||||
<ul>
|
||||
<li>ogg:<br />
|
||||
<span style="font-family:monospace;">curl 'https://www.hackerpublicradio.org/eps/hpr[1391-3657].ogg' -o "hpr#1.ogg"</span>
|
||||
</li>
|
||||
</li>
|
||||
</ul>
|
||||
<ul>
|
||||
<li>spx:<br />
|
||||
<span style="font-family:monospace;">curl 'https://www.hackerpublicradio.org/eps/hpr[1391-3657].spx' -o "hpr#1.spx"</span>
|
||||
</li>
|
||||
</li>
|
||||
</ul>
|
||||
<ul>
|
||||
<li>mp3:<br />
|
||||
<span style="font-family:monospace;">curl 'https://www.hackerpublicradio.org/eps/hpr[1391-3657].mp3' -o "hpr#1.mp3"</span>
|
||||
</li>
|
||||
</li>
|
||||
</ul>
|
||||
<footer>
|
||||
<p>Big to DeepGeek and the team for providing the BitTorrent service.</p>
|
||||
</footer>
|
||||
</article>
|
@ -18,10 +18,9 @@
|
||||
</p>
|
||||
<p><!--% show_avatar(episode.hostid, episode.host) %-->
|
||||
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) %-->
|
||||
<!--% display_tags(episode.tags) %-->
|
||||
|
||||
<label>Comments: </label><!--% display_comments_tally(episode.id, episode.eps_tally) %--> <br>
|
||||
The show is available on the Internet Archive at: <a href="https://archive.org/details/hpr<!--% zero_pad_left(episode.id) %-->">https://archive.org/details/hpr<!--% zero_pad_left(episode.id) %--></a>
|
||||
<!--% listen_now(episode, "hpr", baseurl, media_baseurl) %-->
|
||||
</p>
|
||||
<h3><!--% show_series(episode.series, episode.seriesid, "Part of the series") %--></h3>
|
||||
@ -54,7 +53,7 @@ Subscribe to the comments <a href="<!--% absolute_path(baseurl) %-->comments.rss
|
||||
<!--% comment_index = 1 %-->
|
||||
<!--% comments_result = query_comments.execute(id) %-->
|
||||
<!--% FOREACH comment IN comments_result %-->
|
||||
<h5 id="comment_<!--% comment.id %-->"><a href="/eps/hpr<!--% zero_pad_left(episode.id) %-->/index.html#comment_<!--% comment.id %-->">Comment #<!--% comment_index %--></a> posted on <!--% comment.comment_timestamp %--> by <!--% comment.comment_author_name %--></h5>
|
||||
<h5 id="comment_<!--% comment.id %-->">Comment #<!--% comment_index %--> posted on <!--% comment.comment_timestamp %--> by <!--% comment.comment_author_name %--></h5>
|
||||
<h4><!--% comment.comment_title %--></h4>
|
||||
<!--% comment.comment_text FILTER html_para %-->
|
||||
<!--% comment_index = comment_index + 1 %-->
|
||||
@ -63,11 +62,11 @@ Subscribe to the comments <a href="<!--% absolute_path(baseurl) %-->comments.rss
|
||||
<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="<!--% 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_path(baseurl) %-->contribute.html">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="<!--% 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_path(baseurl) %-->contribute.html">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="<!--% hub_baseurl %-->comment_confirm.php">
|
||||
<fieldset>
|
||||
@ -110,7 +109,7 @@ Subscribe to the comments <a href="<!--% absolute_path(baseurl) %-->comments.rss
|
||||
</tr>
|
||||
<!-- . -->
|
||||
<tr>
|
||||
<td>What is the <strong>HOST_ID</strong> for the host of this show?</td>
|
||||
<td>Who hosted this show?</td>
|
||||
<td>
|
||||
<input required type="text" name="hostid" size="20" maxlength="5" placeholder="Type the host number"></td>
|
||||
<td>
|
||||
|
@ -16,8 +16,8 @@
|
||||
<h2 id="twat_episodes">Today With a Techie Archived Shows</h2>
|
||||
<p>
|
||||
<!-- Creative Commons License -->
|
||||
<a rel="license" href="https://creativecommons.org/licenses/by-nc-sa/2.5/"><img alt="Creative Commons License" border="0" src="https://creativecommons.org/images/public/somerights20.png" width="88" height="31" /></a><br>The following work is licensed under a <a rel="license" href="https://creativecommons.org/licenses/by-nc-sa/2.5/">Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License</a>.</p>
|
||||
<p>Today With a Techie Radio was brought to you by <a href="https://en.wikipedia.org/wiki/Infonomicon">The Infonomicon Computer Club</a></p>
|
||||
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.5/"><img alt="Creative Commons License" border="0" src="http://creativecommons.org/images/public/somerights20.png" width="88" height="31" /></a><br>The following work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.5/">Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License</a>.</p>
|
||||
<p>T.W.A.T. Radio was brought to you by <a href="https://en.wikipedia.org/wiki/Infonomicon">The Infonomicon Computer Club</a></p>
|
||||
<!--% FOREACH twat_episode IN DBI.query('
|
||||
SELECT
|
||||
eps.id,
|
||||
|
11
templates/content-help_out.tpl.html
Normal file
11
templates/content-help_out.tpl.html
Normal file
@ -0,0 +1,11 @@
|
||||
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
||||
<h1>Help Out.</h1>
|
||||
<h2>Submit a show</h2>
|
||||
<p>One of the best ways to help out is to <a href="<!--% absolute_path(baseurl) %-->contribute.html">contribute a show</a>. You can find out <a href="<!--% absolute_path(baseurl) %-->stuff_you_need_to_know.html">everything you need to know here</a>. </p>
|
||||
<h2>Suggest Topics</h2>
|
||||
<p>If there is a technical topic you would like us to cover, or if you are looking for topics to record a show on, then look no further than our <a href="<!--% absolute_path(baseurl) %-->requested_topics.html">Requested topics</a> page.</p>
|
||||
<h2>Podcatcher Support</h2>
|
||||
<p>
|
||||
Please report your experiences with our feeds to admin@hpr. We maintain a podcatcher <a href="<!--% absolute_path(baseurl) %-->podcatchers.html">compatibility list.</a>
|
||||
</p>
|
||||
|
@ -1 +1,2 @@
|
||||
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
||||
|
||||
|
@ -11,36 +11,34 @@
|
||||
<!--% img_re = '(?six)^(.*?)\<img ([^\>]+\>)(.+)$' %-->
|
||||
<!--% lazy_re = '(?i)loading="lazy"' %-->
|
||||
<!--% WHILE (matches = lines.match(img_re)) %-->
|
||||
<!--% img_tag = matches.1 %-->
|
||||
<!--% after_html = matches.2 %-->
|
||||
<!--% matches.0 %-->
|
||||
<!--% IF (img_tag.search(lazy_re)) %-->
|
||||
<!--% img_tag = matches.1 %-->
|
||||
<!--% after_html = matches.2 %-->
|
||||
<!--% matches.0 %-->
|
||||
<!--% IF (img_tag.search(lazy_re)) %-->
|
||||
<img <!--% img_tag %-->
|
||||
<!--% ELSE %-->
|
||||
<!--% ELSE %-->
|
||||
<img loading="lazy" <!--% img_tag %-->
|
||||
<!--% END %-->
|
||||
<!--% lines = after_html %-->
|
||||
<!--% END %-->
|
||||
<!--% lines = after_html %-->
|
||||
<!--% END %-->
|
||||
<!--% after_html %-->
|
||||
<!--% END %-->
|
||||
<hr>
|
||||
<article>
|
||||
<header>
|
||||
<h3>Welcome to HPR, the Community Podcast</h3>
|
||||
<h3>Welcome to HPR the Community Podcast</h3>
|
||||
</header>
|
||||
<!--% days_till_next_episode = 0 %-->
|
||||
<!--% USE DBI(constants.driver, constants.user, constants.password) %-->
|
||||
<!--% FOREACH next_available_episode_result IN DBI.query(query_next_available_episode)
|
||||
%-->
|
||||
<!--% USE date %-->
|
||||
<!--% calc = date.calc %-->
|
||||
<!--% episodes = DBI.query(query_next_available_episode).get_all() %-->
|
||||
<!--% last_date = episodes.0.date.split('-') %-->
|
||||
<!--% offset = (calc.Day_of_Week(last_date.0,last_date.1,last_date.2) == 5 ? 3 : 1) %-->
|
||||
<!--% slot_date = calc.Add_Delta_Days(last_date.0,last_date.1,last_date.2,offset) %-->
|
||||
<!--% now = calc.Today() %-->
|
||||
<!--% days_till_next_episode = calc.Delta_Days(now.0,now.1,now.2,slot_date.0,slot_date.1,slot_date.2) %-->
|
||||
|
||||
<!--% days_till_next_episode = calc.Delta_Days(date.format(date.now, '%Y'),date.format(date.now, '%m'),date.format(date.now, '%d'),next_available_episode_result.last_year,next_available_episode_result.last_month,next_available_episode_result.last_day) %-->
|
||||
<!--% END %-->
|
||||
<!--% USE date %-->
|
||||
<!--% delta = date.calc.N_Delta_YMD(2005,9,19, date.format(date.now, '%Y'),date.format(date.now, '%m'),date.format(date.now, '%d')) %-->
|
||||
<p>We started producing shows as <a href="<!--% absolute_path(baseurl) %-->eps/index.html#twat_episodes"><em>Today with a Techie</em></a> on 2005-09-19, <!--% delta.0 %--> years, <!--% delta.1 %--> months, <!--% delta.2 %--> days ago. Our shows are produced by <a href="<!--% absolute_path(baseurl) %-->correspondents/index.html">listeners</a> like you and can be on any <a href="<!--% absolute_path(baseurl) %-->eps/index.html">topics</a> that <strong>"are of interest to <a href="https://en.wikipedia.org/wiki/hacker_(hobbyist)">hackers</a>"</strong>. If you listen to HPR then please consider contributing one show a year. If you <a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">record</a> your show now it could be <a href="<!--% hub_baseurl %-->calendar.php">released</a> in <strong><!--% days_till_next_episode %--></strong> days.</p>
|
||||
<p>We started producing shows as <a href="<!--% absolute_path(baseurl) %-->eps/index.html#twat_episodes"><em>Today with a Techie</em></a> on 2005-09-19, <!--% delta.0 %--> years, <!--% delta.1 %--> months, <!--% delta.2 %--> days ago. our shows are produced by <a href="<!--% absolute_path(baseurl) %-->correspondents/index.html">listeners</a> like you and can be on any <a href="<!--% absolute_path(baseurl) %-->eps/index.html">topic</a> that <strong>"are of interest to <a href="https://en.wikipedia.org/wiki/hacker_(hobbyist)">hackers</a>"</strong>. if you listen to HPR then please consider contributing one show a year. if you <a href="<!--% absolute_path(baseurl) %-->contribute.html">record</a> your show now it could be <a href="<!--% hub_baseurl %-->calendar.php">released</a> in <strong><!--% days_till_next_episode %--></strong> days.</p>
|
||||
</article>
|
||||
<!--% display_call_for_shows() %-->
|
||||
<hr>
|
||||
@ -56,7 +54,7 @@
|
||||
<h3><!--% latest_episodes.summary%--></h3>
|
||||
<p class="meta"$><!--% show_avatar(latest_episodes.hostid, latest_episodes.host, host_cnt) %-->
|
||||
Hosted by <a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pad_left(latest_episodes.hostid) %-->.html"><!--% latest_episodes.host %--></a> on <!--% latest_episodes.date %--> is flagged as <!--% display_explicit(latest_episodes.explicit) %--> and released under a <!--% latest_episodes.license %--> license. <br>
|
||||
<!--% display_tags(latest_episodes.tags) %-->
|
||||
<!--% display_tags(latest_episodes.tags) %-->
|
||||
<span><!--% show_series(latest_episodes.series, latest_episodes.seriesid) %--></span>
|
||||
<span><label>Comments: </label><!--% display_comments_tally(latest_episodes.id, latest_episodes.eps_tally) %--></span><br>
|
||||
<!--% listen_now(latest_episodes, "hpr", baseurl, media_baseurl) %-->
|
||||
@ -74,7 +72,7 @@
|
||||
<hr>
|
||||
<h1>Previous five weeks</h1>
|
||||
</header>
|
||||
<!--% FOREACH last_5_weeks_episodes IN DBI.query(query_last_5_weeks_episodes)
|
||||
<!--% FOREACH last_5_weeks_episodes IN DBI.query(query_last_5_weeks_episodes)
|
||||
%-->
|
||||
<!--% show_summary(last_5_weeks_episodes) %-->
|
||||
<p class="listen-in"><!--% display_listen_in(last_5_weeks_episodes.id) %--></p>
|
||||
|
151
templates/content-podcatchers.tpl.html
Normal file
151
templates/content-podcatchers.tpl.html
Normal file
@ -0,0 +1,151 @@
|
||||
<h1>Podcast Clients Test Status</h1>
|
||||
<table style="width:100%">
|
||||
<caption></caption>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>MP3</th>
|
||||
<th>OGG</th>
|
||||
<th>SPX</th>
|
||||
<th>HTML</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>gPodder</td>
|
||||
<td>OK</td>
|
||||
<td>OK</td>
|
||||
<td>OK</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Bashpodder</td>
|
||||
<td>OK</td>
|
||||
<td>OK</td>
|
||||
<td>OK</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>podget</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Akregator</td>
|
||||
<td>?</td>
|
||||
<td>OK</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>BeyondPod</td>
|
||||
<td>?</td>
|
||||
<td>OK</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>AntennaPod, Version 1.5.2.0</td>
|
||||
<td>OK</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>Reading the itunes:summary which has no html.<br />Should we also enable html here as well - how to fix the 4k limit ?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>PodKicker Pro for Android</td>
|
||||
<td>?</td>
|
||||
<td>FAIL</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>pocketcasts</td>
|
||||
<td>?</td>
|
||||
<td>FAIL</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Podlisten</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Soundwaves</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Podax</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>PodKicker Pro</td>
|
||||
<td>OK</td>
|
||||
<td>FAIL</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>RssDemon</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>newsbeuter</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>iTunes</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>VLC</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/jgoerzen/hpodder/wiki">hpodder</a></td>
|
||||
<td>OK</td>
|
||||
<td>OK</td>
|
||||
<td>OK</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://play.google.com/store/apps/details?id=com.podkicker">PodKicker Pro for Android</a></td>
|
||||
<td>OK</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>OK</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
<td>?</td>
|
||||
</tr>
|
||||
</table>
|
23
templates/content-promote.tpl.html
Normal file
23
templates/content-promote.tpl.html
Normal file
@ -0,0 +1,23 @@
|
||||
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
||||
<article>
|
||||
<header>
|
||||
<h1>Please promote HPR</h1>
|
||||
</header>
|
||||
<p>Feel free to use the promotional material to spread the word in your podcasts, or have them played on to other shows.</p>
|
||||
<h2>General HPR promotion</h2>
|
||||
<ul>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->media/promos/HPRpromoKlaatu.ogg">Klaatu explains HPR Daily podcast by the www.hackerpublicradio.org Community for the www.hackerpublicradio.org Community</a></li>
|
||||
<!--<li><a href="../media/promos/HPRpromoNewsCast.ogg">A News Caster tells us about HPR</a></li>
|
||||
<li><a href="../media/promos/HPRpromoSkirlet.ogg">Skirlet tells us we need to listen to HPR</a></li>-->
|
||||
</ul>
|
||||
|
||||
<h2>Requests for contributions</h2>
|
||||
<p>
|
||||
<ul>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->media/promos/Jude-aka-Mrs_Peter64_HPR-needs-shows.flac">Jude Mrs. Peter64 HPR needs shows</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->media/promos/hpr-contributor-promo-sax.ogg">slick0 basenet theme</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->media/promos/hpr-contributor-promo-basenettheme.ogg">slick0 sax roll</a></li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
</article>
|
@ -16,7 +16,7 @@
|
||||
<li>Installing a VPN to your home network</li>
|
||||
<li>Init and System.d</li>
|
||||
<li>Episodes for the <a href="<!--% absolute_url(baseurl,'series/0007.html') %-->">LPI</a>, or the Networking series.</li>
|
||||
<li><a href="https://web.archive.org/web/20160629174556/opensourcemusician.com/index.php/Beginning_Audio_Series_for_HPR_and_OSMP_Release">Beginning Audio Series for HPR and OSMP Release</a></li>
|
||||
<li><a href="http://opensourcemusician.com/index.php/Beginning_Audio_Series_for_HPR_and_OSMP_Release">Beginning Audio Series for HPR and OSMP Release</a></li>
|
||||
<li>Hackintosh computers - what are they, why would you want one.</li>
|
||||
<li>Grub 2.0 introduction and customization.</li>
|
||||
<li>FM Transmitter hack to listen into internet streams</li>
|
||||
|
@ -5,7 +5,7 @@
|
||||
<hr />
|
||||
<h2>Search Show Tags</h2>
|
||||
<p>
|
||||
<a href="<!--% absolute_path(baseurl) %-->tags.html">Complete list of all the Tags</a></p>
|
||||
<a href="https://www.hackerpublicradio.org/tags.html">Complete list of all the Tags</a></p>
|
||||
<hr />
|
||||
<h2>Google</h2>
|
||||
<form name="google-search" method="get" action="https://www.google.com/search">
|
||||
@ -27,7 +27,7 @@
|
||||
<input type="submit" value="Search HPR with DuckDuckGo" />
|
||||
</form>
|
||||
<br />
|
||||
<a href="https://duckduckgo.com/privacy">privacy policy</a>
|
||||
<a href="httpss://duckduckgo.com/privacy">privacy policy</a>
|
||||
</p>
|
||||
<hr />
|
||||
<h2>Bing</h2>
|
||||
|
@ -10,7 +10,7 @@
|
||||
<li>Open/closed: <!--% display_choice(series.private, '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="<!--% 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="https://www.hackerpublicradio.org/hpr_ogg_rss.php?series=<!--% series.id %-->">ogg</a>, <a href="https://www.hackerpublicradio.org/hpr_spx_rss.php?series=<!--% series.id %-->">spx</a>, <a href="https://www.hackerpublicradio.org/hpr_mp3_rss.php?series=<!--% series.id %-->">mp3</a></li>
|
||||
</ul>
|
||||
<em><!--% series.description %--></em>
|
||||
<!--% END %-->
|
||||
|
@ -13,7 +13,7 @@
|
||||
<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="<!--% 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="https://www.hackerpublicradio.org/hpr_ogg_rss.php?series=<!--% series.id %-->&full=1&gomax=1">ogg</a>, <a href="https://www.hackerpublicradio.org/hpr_spx_rss.php?series=<!--% series.id %-->&full=1&gomax=1">spx</a>, <a href="https://www.hackerpublicradio.org/hpr_mp3_rss.php?series=<!--% series.id %-->&full=1&gomax=1">mp3</a></li>
|
||||
</ul>
|
||||
<div><em><!--% series.description %--></em></div>
|
||||
<!--% END %-->
|
||||
|
@ -7,18 +7,19 @@
|
||||
<ul>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->correspondents/index.html">Full Episode Guide</a> ← Complete list of all the Shows.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->series/index.html">In-Depth Series</a> ← Overview of the In-Depth Series.</li>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->about.html#download">Download Options</a> ← How to download the entire archive.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->download.html">Download Options</a> ← How to download the entire archive.</li>
|
||||
</ul>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">Give Shows</a> ← Upload your podcast show here.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->contribute.html">Give Shows</a> ← Upload your podcast show here.</li>
|
||||
<ul>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->about.html#requested_topics">Topics</a> ← Requested topics.</li>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->about.html#recording_a_podcast">Recording</a> ← How to record a podcast.</li>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->about.html#requesting_slot">Scheduling</a> ← Picking a slot for your show.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->theme.html">Theme</a> ← Information about HPR Theme Music.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->requested_topics.html">Topics</a> ← Requested topics.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->recording.html">Recording</a> ← How to record a podcast.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->request_a_slot.html">Scheduling</a> ← Picking a slot for your show.</li>
|
||||
</ul>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->about.html#how_to_help">Contribute</a> ← How you can help HPR.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->help_out.html">Contribute</a> ← How you can help HPR.</li>
|
||||
<ul>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">Submit Show</a> ← Upload your podcast show here.</li>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->about.html#requested_topics">Topics</a> ← Requested topics.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->contribute.html">Submit Show</a> ← Upload your podcast show here.</li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->requested_topics.html">Topics</a> ← Requested topics.</li>
|
||||
</ul>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->about.html">About</a> ← Information about the History and Governance of HPR.</li>
|
||||
<ul>
|
||||
|
@ -1,4 +1,5 @@
|
||||
<h1>RSS Syndication</h1>
|
||||
<p><small><em><a href="http://hackerpublicradio.org/advanced_rss_settings.php">Advanced Settings</a>.</em></small></p>
|
||||
|
||||
<article>
|
||||
<header>
|
||||
@ -37,9 +38,9 @@
|
||||
Use these feeds to keep up to date with the latest HPR Episodes.
|
||||
</p>
|
||||
<ul>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->hpr_ogg_rss.php">ogg</a> Larger file size higher quality feed.</li>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->hpr_rss.php">mp3</a> Larger file size regular quality feed in a common format.</li>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->hpr_spx_rss.php">spx</a> Small file size lower quality feed. <br/>Ideal for dial-up/mobile connections.</li>
|
||||
<li><a href="hpr_ogg_rss.php">ogg</a> Larger file size higher quality feed.</li>
|
||||
<li><a href="hpr_rss.php">mp3</a> Larger file size regular quality feed in a common format.</li>
|
||||
<li><a href="hpr_spx_rss.php">spx</a> Small file size lower quality feed. <br/>Ideal for dial-up/mobile connections.</li>
|
||||
</ul>
|
||||
<p>
|
||||
We also maintain an <a href="https://archive.org/details/hackerpublicradio">Archive.org</a> page where you can get the shows in even more formats. For more recent shows we are now including the original upload as delivered.
|
||||
@ -77,16 +78,12 @@
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->comments.rss">Listener contributed comments to the episodes</a></li>
|
||||
</ul>
|
||||
</article>
|
||||
<hr />
|
||||
<h1>Other Download Options</h1>
|
||||
<article>
|
||||
<header>
|
||||
<h2>Site Replication Sources</h2>
|
||||
</header>
|
||||
<ul>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->hpr.sql">Daily Database Dump in SQL Format</a></li>
|
||||
<li><a href="https://repo.anhonesthost.net/explore/repos">All the HPR Source Code is on GitTea</a></li>
|
||||
<li><a href="https://hub.hackerpublicradio.org/stats.json">Current Statistics on the HPR Project (updated every 15 mins)</a></li>
|
||||
<ul>
|
||||
</article>
|
||||
<article>
|
||||
@ -95,41 +92,66 @@
|
||||
</header>
|
||||
<ul>
|
||||
<li><a href="https://archive.org/details/hackerpublicradio">Archive.org</a></li>
|
||||
<li><a href="https://music.amazon.fr/podcasts/9d9e6211-ff78-4501-93b6-6a9e560c4dbd/hacker-public-radio">Amazon Music</a></li>
|
||||
<li><a href="https://nl.radio.net/podcast/hacker-public-radio">Radio.net</a></li>
|
||||
<li><a href="https://open.spotify.com/show/7e2hYcnHj9vKgUzsIOf4r3">Spotify</a></li>
|
||||
<li><a href="https://player.fm/series/hacker-public-radio">PlayerFM</a></li>
|
||||
<li><a href="https://podcasts.apple.com/us/podcast/hacker-public-radio/id281699640">iTunes</a></li>
|
||||
<li><a href="https://itunes.apple.com/us/podcast/hacker-public-radio/id281699640?mt=2">iTunes</a></li>
|
||||
<li><a href="https://podcasts.google.com/feed/aHR0cDovL2hhY2tlcnB1YmxpY3JhZGlvLm9yZy9ocHJfcnNzLnBocA">Google Podcasts</a></li>
|
||||
<li><a href="https://toppodcast.com/podcast_feeds/hacker-public-radio/">Top Podcasts</a></li>
|
||||
<li><a href="https://www.iheart.com/podcast/256-hacker-public-radio-30994513/" target="_blank">iHeart Radio</a></li>
|
||||
<li><a href="https://www.listennotes.com/de/podcasts/hacker-public-radio-hacker-public-radio-mNH-jsI7LcJ/">Listen Notes</a></li>
|
||||
<li><a href="https://player.fm/series/hacker-public-radio">PlayerFM</a></li>
|
||||
<li><a href="https://open.spotify.com/show/7e2hYcnHj9vKgUzsIOf4r3">Spotify</a></li>
|
||||
<li><a href="https://www.mixcloud.com/hackerpublicradio/">MixCloud</a></li>
|
||||
<li><a href="https://www.podchaser.com/podcasts/hacker-public-radio-76781">Podchaser</a></li>
|
||||
<ul>
|
||||
</article>
|
||||
|
||||
<article>
|
||||
<header>
|
||||
<h1>Download Archive</h1>
|
||||
<p>Please be aware that our Archive exceeds <strong>62Gb</strong> <em>(Ogg: 21Gb, Spx: 16Gb, mp3: 25Gb)</em>. We are happy for you to download them, but please make sure that you are not going to incur additional bandwidth charges on your side.</p>
|
||||
<p>We will be happy to post you DVD's of the episodes anywhere in the world if bandwidth is an issue.</p>
|
||||
<h1>Download Archive</h1>
|
||||
<p>Please be aware that our Archive exceeds <strong>62Gb</strong> <em>(Ogg: 21Gb, Spx: 16Gb, mp3: 25Gb)</em>. We are happy for you to download them, but please make sure that you are not going to incur additional bandwidth charges on your side.</p>
|
||||
<p>We will be happy to post you DVD's of the episodes anywhere in the world if bandwidth is an issue.</p>
|
||||
</header>
|
||||
<h2>Full Episode Guide</h2>
|
||||
<p>
|
||||
The <a href="<!--% absolute_path(baseurl) %-->eps/index.html">compete episode guide</a> is available to you, and it lists all the shows on one page going right back to the very first episode.
|
||||
</p>
|
||||
<h2>Command line download</h2>
|
||||
<p>
|
||||
You can download the audio of the episodes directly from the command line using the following commands:
|
||||
</p>
|
||||
<ul>
|
||||
<li>ogg:<br />
|
||||
<span style="font-family:monospace;">curl '<!--% absolute_path(baseurl) %-->eps/hpr[0001-<!--% episode.latest %-->].ogg' -o "hpr#1.ogg"</span></li>
|
||||
<li>spx:<br />
|
||||
<span style="font-family:monospace;">curl '<!--% absolute_path(baseurl) %-->eps/hpr[0001-<!--% episode.latest %-->].spx' -o "hpr#1.spx"</span></li>
|
||||
<li>mp3:<br />
|
||||
<span style="font-family:monospace;">curl '<!--% absolute_path(baseurl) %-->eps/hpr[0001-<!--% episode.latest %-->].mp3' -o "hpr#1.mp3"</span></li>
|
||||
</ul>
|
||||
|
||||
</article>
|
||||
<h2>Full Episode Guide</h2>
|
||||
<p>
|
||||
The <a href="<!--% absolute_path(baseurl) %-->eps/index.html">compete episode guide</a> is available to you, and it lists all the shows on one page going right back to the very first episode.
|
||||
</p>
|
||||
<h2>Command line download</h2>
|
||||
<p>
|
||||
You can download the audio of the episodes directly from the command line using the following commands:
|
||||
</p>
|
||||
<ul>
|
||||
<li>ogg:<br />
|
||||
<span style="font-family:monospace;">curl 'https://www.hackerpublicradio.org/eps/hpr[0001-3657].ogg' -o "hpr#1.ogg"</span></li>
|
||||
<li>spx:<br />
|
||||
<span style="font-family:monospace;">curl 'https://www.hackerpublicradio.org/eps/hpr[0001-3657].spx' -o "hpr#1.spx"</span></li>
|
||||
<li>mp3:<br />
|
||||
<span style="font-family:monospace;">curl 'https://www.hackerpublicradio.org/eps/hpr[0001-3657].mp3' -o "hpr#1.mp3"</span></li>
|
||||
</li>
|
||||
</ul>
|
||||
<h2>Full RSS feed, BitTorrent and Magnet links</h2>
|
||||
<p>The full rss feed is updated daily and contains the complete show note with links to supporting articles. The torrent/magnet also contains this information and is a snaphot of the archive taken between 2007 and November 2013. </p>
|
||||
<ul>
|
||||
<li><span style="font-family:monospace;">ogg: <a href="hpr_total_ogg_rss.php">rss</a>, <a href="https://www.talkgeektome.us/torrents/HPR-Ogg-2007-Nov2013.torrent">torrent</a>, <a href="magnet:?xt=urn:btih:390C66903BBB2B6A067C438C70B2E90988AA8207&dn=HPR-Ogg-2007-Nov2013&tr=http%3A%2F%2Ftracker.info-underground.net%3A16880%2Fannounce">magnet</a></span></li>
|
||||
<li><span style="font-family:monospace;">spx: <a href="hpr_total_spx_rss.php">rss</a>, <a href="https://www.talkgeektome.us/torrents/HPR-Mp3-2007-Nov2013.torrent">torrent</a>, <a href="magnet:?xt=urn:btih:E2573BEF0209B8C2E3C7908BAF220EC34D4A5B8E&dn=HPR-Speex-2007-Nov2013&tr=http%3A%2F%2Ftracker.info-underground.net%3A16880%2Fannounce">magnet</a></span></li>
|
||||
<li><span style="font-family:monospace;">mp3: <a href="hpr_total_rss.php">rss</a>, <a href="https://www.talkgeektome.us/torrents/HPR-Mp3-2007-Nov2013.torrent">torrent</a>, <a href="magnet:?xt=urn:btih:6E9492AD78BCCA2B8D6A42C9C0BCAB0E6FA778F8&dn=HPR-Mp3-2007-Nov2013&tr=http%3A%2F%2Ftracker.info-underground.net%3A16880%2Fannounce">magnet</a></span></li>
|
||||
</ul>
|
||||
<h3>Direct download of the remaining shows</h3>
|
||||
<p>
|
||||
You can download the remaining episodes since the torrent was created directly from the command line using the following commands:
|
||||
</p>
|
||||
<ul>
|
||||
<li>ogg:<br />
|
||||
<span style="font-family:monospace;">curl 'https://www.hackerpublicradio.org/eps/hpr[1391-3657].ogg' -o "hpr#1.ogg"</span>
|
||||
</li>
|
||||
</li>
|
||||
</ul>
|
||||
<ul>
|
||||
<li>spx:<br />
|
||||
<span style="font-family:monospace;">curl 'https://www.hackerpublicradio.org/eps/hpr[1391-3657].spx' -o "hpr#1.spx"</span>
|
||||
</li>
|
||||
</li>
|
||||
</ul>
|
||||
<ul>
|
||||
<li>mp3:<br />
|
||||
<span style="font-family:monospace;">curl 'https://www.hackerpublicradio.org/eps/hpr[1391-3657].mp3' -o "hpr#1.mp3"</span>
|
||||
</li>
|
||||
</li>
|
||||
</ul>
|
||||
<footer>
|
||||
<p>Big to DeepGeek and the team for providing the BitTorrent service.</p>
|
||||
</footer>
|
||||
|
42
templates/content-theme.tpl.html
Normal file
42
templates/content-theme.tpl.html
Normal file
@ -0,0 +1,42 @@
|
||||
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
||||
<h1>HPR Theme Music</h1>
|
||||
<p>
|
||||
An HPR episode is composed of a few parts which are all now added automatically.
|
||||
</p>
|
||||
<ol>
|
||||
<li>
|
||||
<h3 id="Synopsis">Show Synopsis</h3>
|
||||
<p>
|
||||
We will take the <a href="<!--% absolute_path(baseurl) %-->contribute.html#show_notes_file_format">fields</a> from the Show Notes and use those to create a short summary of what the show is about.<br />
|
||||
The format is:
|
||||
</p>
|
||||
<blockquote>
|
||||
This is HPR episode ${show_number) entitled "${title}". It is hosted by ${hostname} and is ${duration} minutes long. The Summary: "${summary}"
|
||||
</blockquote>
|
||||
<p>Most of the information is taken from the <a href="<!--% absolute_path(baseurl) %-->request_a_slot.html">Show Notes</a><br />
|
||||
<strong>Note:</strong> <em>This is automatically added after you upload your show.</em>
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<h3 id="show">The Show</h3>
|
||||
<p>
|
||||
The most important bit. As long as you like, on any topic you like as long as it is <em>"of interest to Hackers"</em>.
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<h3 id="outro">HPR Outro Music </h3>
|
||||
<p>
|
||||
This is automatically added after you upload your show.
|
||||
</p>
|
||||
</li>
|
||||
</ol>
|
||||
|
||||
<h2>Media Files</h2>
|
||||
<ol>
|
||||
<li><a href="http://www.hackerpublicradio.org/media/theme-music/">outro-music-MrX-ccbysa-accordion.wav</a> (2.8M)</li>
|
||||
<li><a href="http://www.hackerpublicradio.org/media/theme-music/">outro-music-rollercostermusic.com-ccbysa-v1-ccbysa.wav</a> (31M)</li>
|
||||
<li><a href="http://www.hackerpublicradio.org/media/theme-music/">outro-music-rollercostermusic.com-ccbysa-v2-ccbysa.wav</a> (26M)</li>
|
||||
<li><a href="http://www.hackerpublicradio.org/media/theme-music/">outro-music-rollercostermusic.com-ccbysa-v3-ccbysa.wav</a> (31M)</li>
|
||||
<li><a href="http://www.hackerpublicradio.org/media/theme-music/">outro-music-slick0-cc0.flac</a> (12M)</li>
|
||||
<li><a href="http://www.hackerpublicradio.org/media/theme-music/">outro-speech-manon_fallon-cc0.flac</a> (4.6M)</li>
|
||||
</ol>
|
@ -3,6 +3,6 @@
|
||||
<li><a href="<!--% hub_baseurl %-->"><strong>⇧Upload⇧</strong></a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->index.html"><strong>Home</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->help_out.html">Contribute »</strong></a></li>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">Submit Show</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->contribute.html">Submit Show</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->requested_topics.html">Topics</a></li>
|
||||
</ul>
|
||||
|
@ -2,10 +2,10 @@
|
||||
<ul>
|
||||
<li><a href="<!--% hub_baseurl %-->"><strong>⇧Upload⇧</strong></a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->index.html"><strong>Home</a></li>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">Give Shows »</strong></a>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->contribute.html">Give Shows »</strong></a>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->stuff_you_need_to_know.html">Info</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->theme.html">Theme</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->requested_topics.html">Topics</a></li>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->about.html#recording_a_podcast">Recording</a></li>
|
||||
<li><!--% absolute_url(baseurl) %-->about.html#requesting_slot">Scheduling</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->recording.html">Recording</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->request_a_slot.html">Scheduling</a></li>
|
||||
</ul>
|
||||
|
@ -3,8 +3,8 @@
|
||||
<li><a href="<!--% hub_baseurl %-->calendar.php"><strong>⇧Upload⇧</strong></a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->index.html"><strong>Home »</strong></a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->syndication.html">Get Shows</a></li>
|
||||
<li><a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">Give Shows</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->about.html#how_to_help">Contribute</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->contribute.html">Give Shows</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->help_out.html">Contribute</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->tags.html">Tags</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->about.html">About</a></li>
|
||||
<li><a href="<!--% absolute_path(baseurl) %-->search.html">Search</a></li>
|
||||
|
@ -22,7 +22,7 @@
|
||||
display:none;
|
||||
}
|
||||
</style>
|
||||
<link rel="shortcut icon" href="<!--% absolute_url(baseurl) %-->hpr.ico" >
|
||||
<link rel="shortcut icon" href="hpr.ico" >
|
||||
<link rel="alternate" type="application/rss+xml" title="Hacker Public Radio Ogg Vorbis RSS" href="<!--% absolute_path(baseurl) %-->hpr_ogg_rss.php" />
|
||||
<link rel="alternate" type="application/rss+xml" title="Hacker Public Radio Speex RSS" href="<!--% absolute_path(baseurl) %-->hpr_spx_rss.php" />
|
||||
<link rel="alternate" type="application/rss+xml" title="Hacker Public Radio MP3 RSS" href="<!--% absolute_path(baseurl) %-->hpr_mp3_rss.php" />
|
||||
@ -39,27 +39,27 @@
|
||||
<body id="give">
|
||||
<div id="container" class="shadow">
|
||||
<header>
|
||||
<a href="<!--% absolute_path(baseurl) %-->"><img id="hprlogo" src="<!--% absolute_path(baseurl) %-->images/hpr_logo.png" alt="hprlogo"></a>
|
||||
<div id="hpr_banner">
|
||||
<p id="accessible_menu">
|
||||
<a href="<!--% absolute_path(baseurl) %-->sitemap.html">Site Map</a>
|
||||
- <a href="#maincontent">skip to main content</a>
|
||||
</p>
|
||||
<h1 id="sitename">
|
||||
<a href="<!--% absolute_path(baseurl) %-->correspondents/index.html">H</a>acker
|
||||
<a href="<!--% absolute_path(baseurl) %-->comments_viewer.html">P</a>ublic
|
||||
<a href="<!--% absolute_path(baseurl) %-->syndication.html">R</a>adio
|
||||
</h1>
|
||||
<h2>Your ideas, projects, opinions - podcasted.</h2>
|
||||
<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="<!--% absolute_path(baseurl) %-->sitemap.html">Site Map</a>
|
||||
- <a href="#maincontent">skip to main content</a>
|
||||
</p>
|
||||
<h1 id="sitename">
|
||||
<a href="<!--% absolute_path(baseurl) %-->correspondents/index.html">H</a>acker
|
||||
<a href="<!--% absolute_path(baseurl) %-->comments_viewer.html">P</a>ublic
|
||||
<a href="<!--% absolute_path(baseurl) %-->syndication.html">R</a>adio
|
||||
</h1>
|
||||
<h2>Your ideas, projects, opinions - podcasted.</h2>
|
||||
<h3>New episodes every weekday Monday through Friday.<br />
|
||||
<em><small>This page was <a href="https://repo.anhonesthost.net/rho_n/hpr_generator">generated</a> by <a href="mailto:<!--% generator_email %-->"><!--% generator_name %--></a> at <time dateTime="<!--% format_iso8601_date(date.now) %-->"><!--% format_feed_date(date.now) %--></time></small></em></h3>
|
||||
<em><small>This page was <a href="https://repo.anhonesthost.net/rho_n/hpr_generator">generated</a> by <a href="mailto:<!--% generator_email %-->"><!--% generator_name %--></a> at <time dateTime="<!--% format_iso8601_date(date.now) %-->"><!--% format_feed_date(date.now) %--></time></small></em></h3>
|
||||
|
||||
</div>
|
||||
<hr />
|
||||
|
||||
<nav class="menu" role="navigation">
|
||||
</div>
|
||||
<hr />
|
||||
|
||||
<nav class="menu" role="navigation">
|
||||
<!--% INCLUDE $navigation %-->
|
||||
</nav>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main id="maincontent">
|
||||
@ -75,7 +75,7 @@
|
||||
<li><a href="http://audio.textfiles.com/shows/radiofreekamerica/">Radio Freek America</a></li>
|
||||
<li><a href="http://audio.textfiles.com/shows/binrev/">BinRev Radio</a></li>
|
||||
<li><a href="http://audio.textfiles.com/shows/infonomicon/">Infonomicon</a></li>
|
||||
<li><a href="http://audio.textfiles.com/shows/twat/">Today With a Techie</a></li>
|
||||
<li><a href="http://audio.textfiles.com/shows/twat/">Talk With a Techie</a></li>
|
||||
</ul>
|
||||
</nav>
|
||||
<nav class="column">
|
||||
@ -86,41 +86,35 @@
|
||||
<li><a href="https://matrix.to/#/#hpr:matrix.org" >Matrix</a></li>
|
||||
<li><a href="mumble://chatter.skyehaven.net:64738/Hacker%20Public%20Radio?version=1.2.0" >Mumble</a></li>
|
||||
<li><a href="https://web.libera.chat/gamja/?channels=oggcastplanet" target="_blank">#oggcastplanet</a></li>
|
||||
<li><a href="https://t.me/+6fEhQrf5IEc4ZGU8">Telegram</a></li>
|
||||
<li><a href="https://twitter.com/HPR">Twitter.com</a></li>
|
||||
<li><a href="https://www.facebook.com/HenryPartickReilly" target="_blank">Facebook</a></li>
|
||||
<li><a href="https://plus.google.com/u/0/s/hacker%20public%20radio" target="_blank">Google+</a></li>
|
||||
<li><a href="https://www.facebook.com/home.php?sk=group_130169220378872¬if_t=group_r2j" target="_blank">Facebook</a></li>
|
||||
<li><a href="https://www.linkedin.com/company/hackerpublicradio/" target="_blank">Linked-In</a></li>
|
||||
<li><a href="http://itunes.apple.com/us/podcast/hacker-public-radio/id281699640" target="_blank">iTunes</a></li>
|
||||
<li><a href="https://play.google.com/music/m/Igrhzh3izdb5qxv536ii6qpbgv4?t=Hacker_Public_Radio" target="_blank">Google Play</a></li>
|
||||
</ul>
|
||||
</nav>
|
||||
</nav>
|
||||
<nav class="column">
|
||||
<h2>Unaffiliates</h2>
|
||||
<h2>Affiliates</h2>
|
||||
<ul>
|
||||
<li><a href="https://archive.org/details/hackerpublicradio">Archive.org</a></li>
|
||||
<li><a href="https://music.amazon.fr/podcasts/9d9e6211-ff78-4501-93b6-6a9e560c4dbd/hacker-public-radio">Amazon Music</a></li>
|
||||
<li><a href="https://podcasts.google.com/feed/aHR0cDovL2hhY2tlcnB1YmxpY3JhZGlvLm9yZy9ocHJfcnNzLnBocA">Google Podcasts</a></li>
|
||||
<li><a href="https://www.iheart.com/podcast/256-hacker-public-radio-30994513/" target="_blank">iHeart Radio</a></li>
|
||||
<li><a href="https://podcasts.apple.com/us/podcast/hacker-public-radio/id281699640">iTunes</a></li>
|
||||
<li><a href="https://www.listennotes.com/de/podcasts/hacker-public-radio-hacker-public-radio-mNH-jsI7LcJ/">Listen Notes</a></li>
|
||||
<li><a href="https://www.mixcloud.com/hackerpublicradio/">MixCloud</a></li>
|
||||
<li><a href="https://player.fm/series/hacker-public-radio">PlayerFM</a></li>
|
||||
<li><a href="https://www.podchaser.com/podcasts/hacker-public-radio-76781">Podchaser</a></li>
|
||||
<li><a href="https://nl.radio.net/podcast/hacker-public-radio">Radio.net</a></li>
|
||||
<li><a href="https://open.spotify.com/show/7e2hYcnHj9vKgUzsIOf4r3">Spotify</a></li>
|
||||
<li><a href="https://toppodcast.com/podcast_feeds/hacker-public-radio/">Top Podcasts</a></li>
|
||||
<li><a href="http://www.hackradiolive.org/">Hack Radio Live</a></li>
|
||||
<li><a href="http://www.binrev.com/">Binary Revolution</a></li>
|
||||
<li><a href="http://hackermedia.org">Hackermedia</a></li>
|
||||
<li><a href="http://www.nomicon.info/">Infonomicon</a></li>
|
||||
<li><a href="http://www.packetsniffers.org/">Packetsniffers</a></li>
|
||||
</ul>
|
||||
</nav>
|
||||
<nav class="column">
|
||||
<h2>Commons</h2>
|
||||
<ul>
|
||||
<li><a href="https://freeculturepodcasts.org/">Free Culture Podcasts</a></li>
|
||||
<li><a href="https://archive.org/details/hackerpublicradio">archive.org</a></li>
|
||||
<li><a href="https://repo.anhonesthost.net/explore/repos" >HPR Source Code</a></li>
|
||||
<li><a href="https://cchits.net/">cchits.net</a></li>
|
||||
<li><a href="https://freesound.org/">freesound.org</a></li>
|
||||
<li><a href="http://cchits.net/">cchits.net</a></li>
|
||||
<li><a href="http://freemusi.cc/">FreeMusi.cc</a></li>
|
||||
<li><a href="http://freesound.org/">freesound.org</a></li>
|
||||
<li><a href="https://librivox.org/">librivox.org</a></li>
|
||||
<li><a href="https://openclipart.org/">openclipart.org</a></li>
|
||||
<li><a href="https://openfontlibrary.org/">openfontlibrary.org</a></li>
|
||||
<li><a href="https://www.openrouteservice.org/">openrouteservice.org/</a></li>
|
||||
<li><a href="http://openclipart.org/">openclipart.org</a></li>
|
||||
<li><a href="http://openfontlibrary.org/">openfontlibrary.org</a></li>
|
||||
<li><a href="http://www.openrouteservice.org/">openrouteservice.org/</a></li>
|
||||
<li><a href="https://pixabay.com/">pixabay.com/</a></li>
|
||||
</ul>
|
||||
</nav>
|
||||
@ -129,7 +123,6 @@
|
||||
<ul>
|
||||
<li><a href="https://anhonesthost.com/hosting/shared-hosting">AnHonestHost.com</a></li>
|
||||
<li><a href="https://archive.org/donate/">Archive.org</a></li>
|
||||
<li><a href="https://rsync.net/">rsync.net</a></li>
|
||||
</ul>
|
||||
</nav>
|
||||
</div><!-- more_info -->
|
||||
@ -139,7 +132,7 @@
|
||||
Unless otherwise stated, our shows are released 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.</p>
|
||||
<p>
|
||||
The <span property="dct:title">HPR Website Design</span> is released to the <a rel="license" href="https://creativecommons.org/publicdomain/mark/1.0/">Public Domain</a>.
|
||||
The <span property="dct:title">HPR Website Design</span> is released to the <a rel="license" href="http://creativecommons.org/publicdomain/mark/1.0/">Public Domain</a>.
|
||||
</p>
|
||||
<hr />
|
||||
</div><!-- copyright -->
|
||||
|
@ -1,18 +1,18 @@
|
||||
<!--% query_hpr_shows = '
|
||||
SELECT
|
||||
eps.id,
|
||||
eps.explicit,
|
||||
SELECT
|
||||
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.title, eps.summary, eps.tags,
|
||||
eps.notes,
|
||||
hosts.local_image,
|
||||
hosts.hostid,
|
||||
hosts.host, hosts.email, hosts.profile,
|
||||
hosts.hostid,
|
||||
hosts.host, hosts.email,
|
||||
miniseries.name AS series, miniseries.id AS seriesid
|
||||
FROM eps
|
||||
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
||||
FROM eps
|
||||
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
||||
INNER JOIN miniseries ON eps.series = miniseries.id
|
||||
WHERE hosts.hostid = ? AND eps.date < DATE_ADD(NOW(), INTERVAL 1 DAY)
|
||||
ORDER BY eps.id DESC
|
||||
WHERE hosts.hostid = ? AND eps.date < DATE_ADD(NOW(), INTERVAL 1 DAY)
|
||||
ORDER BY eps.id DESC
|
||||
'
|
||||
%-->
|
||||
|
@ -1,18 +1,18 @@
|
||||
<!--% query_hpr_shows = '
|
||||
SELECT
|
||||
eps.id,
|
||||
eps.explicit,
|
||||
SELECT
|
||||
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.title, eps.summary, eps.tags,
|
||||
eps.notes,
|
||||
hosts.local_image,
|
||||
hosts.hostid,
|
||||
hosts.host, hosts.email, hosts.profile,
|
||||
hosts.hostid,
|
||||
hosts.host, hosts.email,
|
||||
miniseries.name AS series, miniseries.id AS seriesid
|
||||
FROM eps
|
||||
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
||||
FROM eps
|
||||
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
||||
INNER JOIN miniseries ON eps.series = miniseries.id
|
||||
WHERE hosts.hostid = ? AND eps.date < date(\'now\', \'+1 days\')
|
||||
ORDER BY eps.id + 0 DESC
|
||||
WHERE hosts.hostid = ? AND eps.date < date(\'now\', \'+1 days\')
|
||||
ORDER BY eps.id + 0 DESC
|
||||
'
|
||||
%-->
|
||||
|
@ -1,54 +1,58 @@
|
||||
<!--% query_next_available_episode = '
|
||||
SELECT id, date FROM eps e WHERE id = (
|
||||
SELECT id + 1 FROM eps mo
|
||||
WHERE NOT EXISTS (
|
||||
SELECT NULL
|
||||
FROM eps mi
|
||||
WHERE mi.id = mo.id + 1
|
||||
)
|
||||
ORDER BY id
|
||||
LIMIT 1) - 1
|
||||
'
|
||||
WITH next_id AS (
|
||||
SELECT id, id + 1 AS \'id_next\', date as \'last_date\'
|
||||
FROM eps
|
||||
WHERE eps.date > NOW()
|
||||
)
|
||||
SELECT
|
||||
MIN(next_id.id_next) AS \'next_id\',
|
||||
DATE_FORMAT(DATE_ADD(MIN(last_date), INTERVAL 1 DAY), \'%Y\') AS \'last_year\',
|
||||
DATE_FORMAT(DATE_ADD(MIN(last_date), INTERVAL 1 DAY), \'%d\') AS \'last_day\',
|
||||
DATE_FORMAT(DATE_ADD(MIN(last_date), INTERVAL 1 DAY), \'%m\') AS \'last_month\'
|
||||
FROM next_id
|
||||
LEFT JOIN eps ON next_id.id_next = eps.id
|
||||
WHERE eps.id IS NULL
|
||||
'
|
||||
%-->
|
||||
<!--% query_latest_episodes = '
|
||||
WITH comment_tallies AS (
|
||||
SELECT
|
||||
WITH comment_tallies AS (
|
||||
SELECT
|
||||
eps_id,
|
||||
COUNT(eps_id) AS eps_tally
|
||||
FROM comments
|
||||
GROUP BY eps_id
|
||||
GROUP BY eps_id
|
||||
)
|
||||
SELECT
|
||||
eps.id,
|
||||
eps.explicit,
|
||||
eps.date, eps.license, eps.duration,
|
||||
eps.title, eps.summary, eps.tags,
|
||||
SELECT
|
||||
eps.id,
|
||||
eps.explicit,
|
||||
eps.date, eps.license, eps.duration,
|
||||
eps.title, eps.summary, eps.tags,
|
||||
eps.notes,
|
||||
hosts.local_image,
|
||||
hosts.hostid,
|
||||
hosts.hostid,
|
||||
hosts.host, hosts.email,
|
||||
miniseries.name AS series, miniseries.id AS seriesid,
|
||||
COALESCE (comment_tallies.eps_tally, 0) AS eps_tally
|
||||
FROM eps
|
||||
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
|
||||
LEFT JOIN comment_tallies ON eps.id = comment_tallies.eps_id
|
||||
WHERE eps.date <= UTC_DATE()
|
||||
ORDER BY eps.id DESC
|
||||
ORDER BY eps.id DESC
|
||||
LIMIT 10
|
||||
'
|
||||
%-->
|
||||
<!--% query_last_5_weeks_episodes = '
|
||||
SELECT
|
||||
eps.id,
|
||||
eps.explicit,
|
||||
eps.date, eps.license, eps.title, eps.summary,
|
||||
SELECT
|
||||
eps.id,
|
||||
CASE eps.explicit WHEN 1 THEN \'Explicit\' ELSE \'Clean\' END AS explicit ,
|
||||
eps.date, eps.license, eps.title, eps.summary,
|
||||
eps.duration, eps.notes, eps.tags,
|
||||
hosts.hostid,
|
||||
hosts.host, hosts.email, hosts.local_image,
|
||||
hosts.hostid,
|
||||
hosts.host, hosts.email, hosts.local_image,
|
||||
miniseries.name AS series, miniseries.id AS seriesid
|
||||
FROM eps
|
||||
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
||||
FROM eps
|
||||
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
||||
INNER JOIN miniseries ON eps.series = miniseries.id
|
||||
WHERE eps.date <= UTC_DATE()
|
||||
ORDER BY eps.id DESC
|
||||
|
@ -1,54 +1,58 @@
|
||||
<!--% query_next_available_episode = '
|
||||
SELECT id, date FROM eps e WHERE id = (
|
||||
SELECT id + 1 FROM eps mo
|
||||
WHERE NOT EXISTS (
|
||||
SELECT NULL
|
||||
FROM eps mi
|
||||
WHERE mi.id = mo.id + 1
|
||||
)
|
||||
ORDER BY id
|
||||
LIMIT 1) - 1
|
||||
'
|
||||
WITH next_id AS (
|
||||
SELECT id, id + 1 AS \'id_next\', date as \'last_date\'
|
||||
FROM eps
|
||||
WHERE eps.date > date(\'now\')
|
||||
)
|
||||
SELECT
|
||||
MIN(next_id.id_next) AS \'next_id\',
|
||||
strftime(\'%Y\', DATE (MIN (last_date), \'+1 Days\')) AS \'last_year\',
|
||||
strftime(\'%d\', DATE (MIN (last_date), \'+1 Days\')) AS \'last_day\',
|
||||
strftime(\'%m\', DATE (MIN (last_date), \'+1 Days\')) AS \'last_month\'
|
||||
FROM next_id
|
||||
LEFT JOIN eps ON next_id.id_next = eps.id
|
||||
WHERE eps.id IS NULL
|
||||
'
|
||||
%-->
|
||||
<!--% query_latest_episodes = '
|
||||
WITH comment_tallies AS (
|
||||
SELECT
|
||||
WITH comment_tallies AS (
|
||||
SELECT
|
||||
eps_id,
|
||||
COUNT(eps_id) AS eps_tally
|
||||
FROM comments
|
||||
GROUP BY eps_id
|
||||
GROUP BY eps_id
|
||||
)
|
||||
SELECT
|
||||
eps.id,
|
||||
eps.explicit,
|
||||
eps.date, eps.license, eps.duration,
|
||||
eps.title, eps.summary, eps.tags,
|
||||
SELECT
|
||||
eps.id,
|
||||
eps.explicit,
|
||||
eps.date, eps.license, eps.duration,
|
||||
eps.title, eps.summary, eps.tags,
|
||||
eps.notes,
|
||||
hosts.local_image,
|
||||
hosts.hostid,
|
||||
hosts.hostid,
|
||||
hosts.host, hosts.email,
|
||||
miniseries.name AS series, miniseries.id AS seriesid,
|
||||
COALESCE (comment_tallies.eps_tally, 0) AS eps_tally
|
||||
FROM eps
|
||||
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
|
||||
LEFT JOIN comment_tallies ON eps.id = comment_tallies.eps_id
|
||||
WHERE eps.date <= date(\'now\')
|
||||
ORDER BY eps.id + 0 DESC
|
||||
ORDER BY eps.id + 0 DESC
|
||||
LIMIT 10
|
||||
'
|
||||
%-->
|
||||
<!--% query_last_5_weeks_episodes = '
|
||||
SELECT
|
||||
eps.id,
|
||||
eps.explicit,
|
||||
eps.date, eps.license, eps.title, eps.summary,
|
||||
SELECT
|
||||
eps.id,
|
||||
CASE eps.explicit WHEN 1 THEN \'Explicit\' ELSE \'Clean\' END AS explicit ,
|
||||
eps.date, eps.license, eps.title, eps.summary,
|
||||
eps.duration, eps.notes, eps.tags,
|
||||
hosts.hostid,
|
||||
hosts.host, hosts.email, hosts.local_image,
|
||||
hosts.hostid,
|
||||
hosts.host, hosts.email, hosts.local_image,
|
||||
miniseries.name AS series, miniseries.id AS seriesid
|
||||
FROM eps
|
||||
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
||||
FROM eps
|
||||
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
||||
INNER JOIN miniseries ON eps.series = miniseries.id
|
||||
WHERE eps.date <= date(\'now\')
|
||||
ORDER BY eps.id + 0 DESC
|
||||
|
@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<rss version="2.0" xmlns:atom="https://www.w3.org/2005/Atom" >
|
||||
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" >
|
||||
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
||||
<!--% PROCESS 'shared-episode-summary.tpl.html' %-->
|
||||
<!--% USE date %-->
|
||||
@ -12,7 +12,7 @@
|
||||
<managingEditor>feedback.nospam@nospam.hackerpublicradio.org (HPR Feedback)</managingEditor>
|
||||
<webMaster>admin.nospam@nospam.hackerpublicradio.org (HPR Webmaster)</webMaster>
|
||||
<generator>https://repo.anhonesthost.net/rho_n/hpr_generator</generator>
|
||||
<docs>https://www.rssboard.org/rss-specification</docs>
|
||||
<docs>http://www.rssboard.org/rss-specification</docs>
|
||||
<ttl>600</ttl>
|
||||
<image>
|
||||
<url><!--% baseurl %-->images/hpr_feed_small.png</url>
|
||||
|
@ -7,7 +7,7 @@
|
||||
xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" >
|
||||
<channel>
|
||||
<title>Hacker Public Radio</title>
|
||||
<link><!--% absolute_url(baseurl) %-->about.html</link>
|
||||
<link>https://www.hackerpublicradio.org/about.html</link>
|
||||
<itunes:subtitle>A daily show hosted by the community on topics that are of interest to hackers and hobbyists.</itunes:subtitle>
|
||||
<description>Hacker Public Radio is a podcast that releases shows every weekday Monday through Friday. Our shows are produced by the community (you) and can be on any topic that is of interest to hackers and hobbyists.</description>
|
||||
<language>en-us</language>
|
||||
@ -17,7 +17,7 @@
|
||||
<itunes:category text="Education">
|
||||
<itunes:category text="Training"/>
|
||||
</itunes:category>
|
||||
<itunes:image href="<!--% absolute_url(http_baseurl) %-->images/hpr_feed_itunes.png"/>
|
||||
<itunes:image href="https://www.hackerpublicradio.org/images/hpr_feed_itunes.png"/>
|
||||
<itunes:explicit>yes</itunes:explicit>
|
||||
<itunes:author>Hacker Public Radio</itunes:author>
|
||||
<itunes:keywords>Community Radio, Tech Interviews, Linux, Open, Hobby, Software Freedom</itunes:keywords>
|
||||
@ -31,15 +31,15 @@
|
||||
<webMaster>admin@hackerpublicradio.org (HPR Volunteer)</webMaster>
|
||||
<generator>site-generator</generator>
|
||||
<docs>http://www.rssboard.org/rss-specification</docs>
|
||||
<ttl>720</ttl>
|
||||
<ttl>43200</ttl>
|
||||
<skipDays>
|
||||
<day>Saturday</day>
|
||||
<day>Sunday</day>
|
||||
</skipDays>
|
||||
<image>
|
||||
<url><!--% absolute_url(baseurl) %-->images/hpr_feed_small.png</url>
|
||||
<url>https://www.hackerpublicradio.org/images/hpr_feed_small.png</url>
|
||||
<title>Hacker Public Radio</title>
|
||||
<link><!--% absolute_url(baseurl) %-->about.html</link>
|
||||
<link>https://www.hackerpublicradio.org/about.html</link>
|
||||
<description>The Hacker Public Radio Old Microphone Logo</description>
|
||||
<height>164</height>
|
||||
<width>144</width>
|
||||
@ -47,9 +47,9 @@
|
||||
<googleplay:author>HPR Volunteer</googleplay:author>
|
||||
<googleplay:description>Hacker Public Radio is a podcast that releases shows every weekday Monday through Friday. Our shows are produced by the community (you) and can be on any topic that is of interest to hackers and hobbyists.</googleplay:description>
|
||||
<googleplay:email>admin@hackerpublicradio.org</googleplay:email>
|
||||
<googleplay:image href="<!--% absolute_url(http_baseurl) %-->images/hpr_feed_itunes.png"/>
|
||||
<googleplay:image href="https://www.hackerpublicradio.org/images/hpr_feed_itunes.png"/>
|
||||
<googleplay:category text="Technology"/>
|
||||
<atom:link href="<!--% absolute_url(http_baseurl) %--><!--% filename %-->" rel="self" type="application/rss+xml" />
|
||||
<atom:link href="https://www.hackerpublicradio.org/<!--% filename %-->" rel="self" type="application/rss+xml" />
|
||||
<pubDate><!--% format_feed_date(date.now) %--></pubDate>
|
||||
|
||||
<!--% INCLUDE $content %-->
|
||||
|
@ -57,7 +57,7 @@ or
|
||||
|
||||
<!--% MACRO twat_show_summary(show, hide_host) BLOCK %-->
|
||||
|
||||
<h3 class="title"><a href="<!--% absolute_path(baseurl) %-->eps/twat<!--% zero_pad_left(show.id) %-->/index.html">Today with a Techie Ep.<!--% show.id %--> :: <!--% show.title %--></a> <!--% IF hide_host == "" %-->
|
||||
<h3 class="title"><a href="<!--% absolute_path(baseurl) %-->eps/twat<!--% zero_pad_left(show.id) %-->/index.html">twat<!--% show.id %--> :: <!--% show.title %--></a> <!--% IF hide_host == "" %-->
|
||||
hosted by <a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pad_left(show.hostid) %-->.html"><!--% show.host %--></a>
|
||||
<!--% END %-->
|
||||
</h3>
|
||||
|
@ -1,25 +1,24 @@
|
||||
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
||||
<!--% MACRO display_item(episode, file_extension, audio_mime_type) BLOCK %-->
|
||||
<!--% USE HTML.Strip emit_spaces = 0 %-->
|
||||
<!--% USE HTML.Strip %-->
|
||||
<!--% IF audio_mime_type == "" %-->
|
||||
<!--% audio_mime_type = 'ogg' %-->
|
||||
<!--% END %-->
|
||||
<item>
|
||||
<itunes:explicit><!--% display_explicit_feed(episode.explicit) %--></itunes:explicit>
|
||||
<googleplay:explicit><!--% display_explicit_feed_2(episode.explicit) %--></googleplay:explicit>
|
||||
<title>HPR<!--% zero_pad_left(episode.id) %-->: <!--% episode.title | html_strip | xml_entity %--></title>
|
||||
<googleplay:explicit><!--% display_explicit_feed(episode.explicit) %--></googleplay:explicit>
|
||||
<title>HPR<!--% zero_pad_left(episode.id) %-->: <!--% episode.title %--></title>
|
||||
<author><!--% episode.email %--> (<!--% episode.host %-->)</author>
|
||||
<googleplay:author><!--% episode.email %--> (<!--% episode.host %-->)</googleplay:author>
|
||||
<itunes:author><!--% episode.email %--> (<!--% episode.host %-->)</itunes:author>
|
||||
<googleplay:image href="<!--% absolute_url(http_baseurl) %-->images/hpr_feed_itunes.png"/>
|
||||
<link><!--% absolute_url(baseurl) %-->eps/hpr<!--% zero_pad_left(episode.id) %-->/index.html</link>
|
||||
<googleplay:image href="https://www.hackerpublicradio.org/images/hpr_feed_itunes.png"/>
|
||||
<link>https://www.hackerpublicradio.org/eps/hpr<!--% zero_pad_left(episode.id) %-->/index.html</link>
|
||||
<description><![CDATA[<!--% episode.notes %-->]]>
|
||||
</description>
|
||||
<itunes:summary><![CDATA[<!--% episode.notes.substr(0, 4000) | html_strip | xml_entity %-->]]>
|
||||
</itunes:summary>
|
||||
<pubDate><!--% format_feed_date(episode.date) %--></pubDate>
|
||||
<enclosure url="<!--% http_baseurl %-->eps/hpr<!--% zero_pad_left(episode.id) %-->.<!--% file_extension %-->" length="<!--% episode.length %-->" type="audio/<!--% audio_mime_type %-->"/>
|
||||
<guid><!--% http_baseurl %-->eps/hpr<!--% zero_pad_left(episode.id) %-->.<!--% file_extension %--></guid>
|
||||
</item>
|
||||
|
||||
<enclosure url="http://hackerpublicradio.org/eps/hpr<!--% zero_pad_left(episode.id) %-->.<!--% file_extension %-->" length="<!--% episode.length %-->" type="audio/<!--% audio_mime_type %-->"/>
|
||||
<guid>http://hackerpublicradio.org/eps/hpr<!--% zero_pad_left(episode.id) %-->.<!--% file_extension %--></guid>
|
||||
</item>
|
||||
<!--% END %-->
|
||||
|
@ -2,9 +2,7 @@
|
||||
<h2>Show Transcript</h2>
|
||||
<p>Automatically generated using <a href="https://github.com/openai/whisper">whisper</a>
|
||||
<pre><code>whisper --model tiny --language en hpr<!--% zero_pad_left(episode.id) %-->.wav</code></pre></p>
|
||||
<p>
|
||||
You can save these subtitle files to the same location as the HPR Episode, and they will automatically show in players like <a href="https://mpv.io/">mpv</a>, <a href="https://www.videolan.org/vlc/">vlc</a>. Some players allow you to specify the subtitle file location.
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>Text: <a href="<!--% media_path(episode.id, episode_type, 'txt', baseurl, media_baseurl) %-->">hpr<!--% zero_pad_left(episode.id) %-->.txt</a></li>
|
||||
<li><a href="https://en.wikipedia.org/wiki/WebVTT">WebVTT</a>: <a href="<!--% media_path(episode.id, episode_type, 'vtt', baseurl, media_baseurl) %-->">hpr<!--% zero_pad_left(episode.id) %-->.vtt</a></li>
|
||||
|
@ -35,10 +35,6 @@
|
||||
<!--% display_choice(is_explicit, 'yes', 'no') %-->
|
||||
<!--% END %-->
|
||||
|
||||
<!--% MACRO display_explicit_feed_2(is_explicit) BLOCK %-->
|
||||
<!--% display_choice(is_explicit, 'Yes', 'No') %-->
|
||||
<!--% END %-->
|
||||
|
||||
<!--% MACRO format_feed_date(date_to_format) BLOCK %-->
|
||||
<!--% USE feed_date = date(format = '%a, %d %b %Y %H:%M:%S +0000', gmt=1) %-->
|
||||
<!--% feed_date.format(date_to_format) %-->
|
||||
|
Loading…
Reference in New Issue
Block a user