Compare commits
77 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 30e4f6a4d8 | |||
| e43386ac95 | |||
|
2f273d61dd
|
|||
|
57d5989b29
|
|||
| 292e501f69 | |||
|
824c2d77c7
|
|||
| 5464725b7d | |||
|
f61fe7c6c8
|
|||
| 611a022aab | |||
|
9ecb30f51f
|
|||
| e885c78fb5 | |||
|
0a5dea473b
|
|||
| de316e7f6b | |||
|
7161b99eb0
|
|||
| 84e89a53ad | |||
|
5004f4fe88
|
|||
|
6520bdac8b
|
|||
| 2eece012fa | |||
|
3d74b6f084
|
|||
| 24f2b5f9ee | |||
|
020d6395c1
|
|||
| a40774b1e8 | |||
|
face5e1fbe
|
|||
|
7b9e8a94f0
|
|||
| 3ca1a903df | |||
|
ae5bfc12b4
|
|||
|
21c664ecf9
|
|||
|
c17ce1bf74
|
|||
|
c922ea6281
|
|||
|
98c51ee9fe
|
|||
|
ae96d602a4
|
|||
| 904d14d083 | |||
|
7170015a0e
|
|||
| e649c09803 | |||
|
eeb955d9fe
|
|||
|
b2f5322aec
|
|||
|
23f91a0410
|
|||
|
2be718287f
|
|||
| 3bd64bf5cf | |||
|
7a59a769ed
|
|||
|
30cca2bac0
|
|||
| 3a475742e4 | |||
|
4e2ecc4efc
|
|||
|
c85a4b8c6e
|
|||
| f11106223c | |||
|
1ad43c462a
|
|||
| 3bcd385279 | |||
|
aa722bda55
|
|||
|
ed6779fa5a
|
|||
|
126e184126
|
|||
|
192d994556
|
|||
| 2f779fb9d0 | |||
|
7a02c7b1c1
|
|||
| 48fbd272e4 | |||
|
b850c51e4f
|
|||
|
3bf5769b52
|
|||
| 67e56ea102 | |||
|
2c9e75bf1a
|
|||
| ccc904c691 | |||
|
d0c371a0f9
|
|||
|
466ef289b1
|
|||
|
b5755ddedb
|
|||
|
2a119bd920
|
|||
|
a8dc69d7ad
|
|||
|
09f5c60d60
|
|||
|
b122f7c1c0
|
|||
|
70fd148928
|
|||
|
c53c6d50aa
|
|||
|
c4d94bb019
|
|||
|
1075833562
|
|||
|
fb46c13394
|
|||
| f78789fdc4 | |||
| 4327c15823 | |||
|
39c14fb3e4
|
|||
|
47e1ebf69c
|
|||
|
88f9362279
|
|||
|
96e4d9a402
|
1
_sql/sqlite/Rename_twt_table.sql
Normal file
@@ -0,0 +1 @@
|
|||||||
|
ALTER TABLE twat_eps RENAME TO twt_eps;
|
||||||
@@ -47,12 +47,15 @@ https://creativecommons.org/publicdomain/
|
|||||||
--link-secondary: #a8f8ff;
|
--link-secondary: #a8f8ff;
|
||||||
--link-secondary-hover: #f9e9c2;
|
--link-secondary-hover: #f9e9c2;
|
||||||
--link-title-color: #00003e;
|
--link-title-color: #00003e;
|
||||||
|
--link-navigation-hover: #030303;
|
||||||
--primary-content-line-height: 1.45;
|
--primary-content-line-height: 1.45;
|
||||||
|
|
||||||
--font-family-hpr: Verdana, Arial, Helvetica, sans-serif; /* 1em/1.5 OpenDyslexic, */;
|
--font-family-hpr: Verdana, Arial, Helvetica, sans-serif; /* 1em/1.5 OpenDyslexic, */;
|
||||||
--font-size-default: clamp(1rem, 15px + 0.3vw, 1.07rem);
|
--font-size-default: clamp(1rem, 15px + 0.3vw, 1.07rem);
|
||||||
--font-size-emphasis: clamp(1.1rem, 15px + 0.3vw, 1.25rem);
|
--font-size-emphasis: clamp(1.1rem, 15px + 0.3vw, 1.25rem);
|
||||||
|
|
||||||
|
--episode-nav-padding: clamp(0.15em, 15px + 0.3vw, 0.4em);
|
||||||
|
--show-notes-pre-background: #f9e9c2;
|
||||||
--logo-font-family: var(--font-family-hpr);
|
--logo-font-family: var(--font-family-hpr);
|
||||||
--logo-font-weight: bolder;
|
--logo-font-weight: bolder;
|
||||||
--logo-font-size: 7.5rem;
|
--logo-font-size: 7.5rem;
|
||||||
@@ -349,7 +352,7 @@ article > p,
|
|||||||
2px 4px 4px var(--shadow-cards);
|
2px 4px 4px var(--shadow-cards);
|
||||||
transition: 0.3s;
|
transition: 0.3s;
|
||||||
flex: 1 0 100%;
|
flex: 1 0 100%;
|
||||||
overflow-x: scroll;
|
overflow: auto;
|
||||||
padding-bottom: 1rem;
|
padding-bottom: 1rem;
|
||||||
}
|
}
|
||||||
.lane > article:hover,
|
.lane > article:hover,
|
||||||
@@ -400,6 +403,9 @@ article > p,
|
|||||||
font-size: var(--default-header-4-font-size);
|
font-size: var(--default-header-4-font-size);
|
||||||
margin-left: 22px;
|
margin-left: 22px;
|
||||||
}
|
}
|
||||||
|
.lane.stack > article > footer {
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
a.lane-button {
|
a.lane-button {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
@@ -411,7 +417,8 @@ a.lane-button {
|
|||||||
border-style: solid;
|
border-style: solid;
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
background: linear-gradient(to bottom, #a9d9db, #d6f0f1);
|
background-image: url("../images/lane-button-background.png");
|
||||||
|
|
||||||
}
|
}
|
||||||
a.lane-button p {
|
a.lane-button p {
|
||||||
font-family: var(--lane-button-font-family);
|
font-family: var(--lane-button-font-family);
|
||||||
@@ -634,7 +641,7 @@ fieldset > table td input[type="radio"] {
|
|||||||
margin-bottom: 0.5rem;
|
margin-bottom: 0.5rem;
|
||||||
}
|
}
|
||||||
.no-css {
|
.no-css {
|
||||||
display: none;
|
display: none !important;
|
||||||
}
|
}
|
||||||
#tags .date {
|
#tags .date {
|
||||||
margin:0;
|
margin:0;
|
||||||
@@ -668,12 +675,20 @@ fieldset > table td input[type="radio"] {
|
|||||||
background: var(--background-secondary);
|
background: var(--background-secondary);
|
||||||
color: var(--background-primary);
|
color: var(--background-primary);
|
||||||
}
|
}
|
||||||
|
#hosts td:nth-child(2) {
|
||||||
|
display: inline-flex;
|
||||||
|
}
|
||||||
#hosts td:nth-child(-n+2) a {
|
#hosts td:nth-child(-n+2) a {
|
||||||
color: var(--link-secondary);
|
color: var(--link-secondary);
|
||||||
|
flex: 1;
|
||||||
}
|
}
|
||||||
#hosts td:nth-child(-n+2) a:hover {
|
#hosts td:nth-child(-n+2) a:hover {
|
||||||
color: var(--link-secondary-hover);
|
color: var(--link-secondary-hover);
|
||||||
}
|
}
|
||||||
|
#hosts td:nth-child(-n+2) a strong {
|
||||||
|
display: inline-block;
|
||||||
|
line-height: 1.5rem;
|
||||||
|
}
|
||||||
#hosts td:nth-child(2) {
|
#hosts td:nth-child(2) {
|
||||||
padding: 0.25rem 0 0 8px;
|
padding: 0.25rem 0 0 8px;
|
||||||
width: calc(100% - 90px);
|
width: calc(100% - 90px);
|
||||||
@@ -693,9 +708,15 @@ fieldset > table td input[type="radio"] {
|
|||||||
border-radius: 0.25rem;
|
border-radius: 0.25rem;
|
||||||
}
|
}
|
||||||
#host {
|
#host {
|
||||||
justify-content: flex-start;
|
justify-content: center;
|
||||||
align-items: end;
|
align-items: center;
|
||||||
gap: 0;
|
gap: 0.5rem;
|
||||||
|
}
|
||||||
|
#host_id {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
#host_id > h2 {
|
||||||
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
#host_id img {
|
#host_id img {
|
||||||
border-radius: 0.25rem;
|
border-radius: 0.25rem;
|
||||||
@@ -715,10 +736,13 @@ fieldset > table td input[type="radio"] {
|
|||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
.series-description {
|
.series-description {
|
||||||
margin: 0;
|
margin: 0 0 1rem 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
}
|
}
|
||||||
|
.series-desciption > *:last-child {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
.sr-only {
|
.sr-only {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 1px;
|
width: 1px;
|
||||||
@@ -729,6 +753,70 @@ fieldset > table td input[type="radio"] {
|
|||||||
clip: rect(0, 0, 0, 0);
|
clip: rect(0, 0, 0, 0);
|
||||||
border: 0;
|
border: 0;
|
||||||
}
|
}
|
||||||
|
#show_notes {
|
||||||
|
max-width: 98vw;
|
||||||
|
}
|
||||||
|
#show_notes pre
|
||||||
|
{
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
#show_notes code {
|
||||||
|
display: inline-block;
|
||||||
|
background-color: var(--show-notes-pre-background);
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
padding: 0.1em 0;
|
||||||
|
}
|
||||||
|
nav.episodes {
|
||||||
|
color: var(--background-primary);
|
||||||
|
font-size: 0.9em;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
justify-content: space-around;
|
||||||
|
max-width: 100vw;
|
||||||
|
}
|
||||||
|
nav.episodes span {
|
||||||
|
color: var(--text-primary);
|
||||||
|
display: inline-block;
|
||||||
|
text-align: center;
|
||||||
|
border: solid thin var(--text-primary);
|
||||||
|
}
|
||||||
|
nav.episodes span:nth-child(-n+2),
|
||||||
|
nav.episodes span:nth-child(-n+2) a {
|
||||||
|
border-top-left-radius: 2rem;
|
||||||
|
border-bottom-left-radius: 2rem;
|
||||||
|
}
|
||||||
|
nav.episodes span:nth-child(n+3),
|
||||||
|
nav.episodes span:nth-child(n+3) a {
|
||||||
|
border-top-right-radius: 2rem;
|
||||||
|
border-bottom-right-radius: 2rem;
|
||||||
|
}
|
||||||
|
nav.episodes span.no-link,
|
||||||
|
nav.episodes span a {
|
||||||
|
padding: 0.3em var(--episode-nav-padding) 0.1em var(--episode-nav-padding);
|
||||||
|
display: inline-block;
|
||||||
|
min-width: 4.4em;
|
||||||
|
min-height: 1.5em;
|
||||||
|
}
|
||||||
|
nav.episodes span a:hover {
|
||||||
|
background-color: var(--link-primary-hover);
|
||||||
|
color: var(--link-secondary-hover);
|
||||||
|
}
|
||||||
|
nav.episodes svg {
|
||||||
|
margin: 0 0.2rem;
|
||||||
|
height: 0.85em;
|
||||||
|
max-width: 13px;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
nav.episodes span a svg #arrow,
|
||||||
|
nav.episodes span a svg #bar {
|
||||||
|
stroke: var(--link-primary);
|
||||||
|
fill: var(--link-primary);
|
||||||
|
}
|
||||||
|
nav.episodes span a:hover svg #arrow,
|
||||||
|
nav.episodes span a:hover svg #bar {
|
||||||
|
stroke: var(--link-secondary-hover);
|
||||||
|
fill: var(--link-secondary-hover);
|
||||||
|
}
|
||||||
@media (min-width: 600px) {
|
@media (min-width: 600px) {
|
||||||
body > header .bounding-box {
|
body > header .bounding-box {
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
@@ -823,7 +911,10 @@ fieldset > table td input[type="radio"] {
|
|||||||
max-width: 45%;
|
max-width: 45%;
|
||||||
}
|
}
|
||||||
#host {
|
#host {
|
||||||
gap: 1rem;
|
gap: 2rem;
|
||||||
|
}
|
||||||
|
nav.episodes {
|
||||||
|
display: inline-block;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@media (min-width: 900px) {
|
@media (min-width: 900px) {
|
||||||
@@ -840,3 +931,54 @@ fieldset > table td input[type="radio"] {
|
|||||||
max-width: 30%;
|
max-width: 30%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--link-primary: #bbdfe7;
|
||||||
|
--link-header-hover: #b54c08; /* original --link-primary-hover */;
|
||||||
|
--link-primary-hover: var(--link-secondary-hover);
|
||||||
|
--background-primary: #4d4d4d; /* HPR Grey */
|
||||||
|
--text-primary: #dfdfdf /*#fffff7#fafafa#fbfbee #dfdfdf */;
|
||||||
|
--banner-text-primary: #b6b6b6;
|
||||||
|
--shadow-secondary-color: hsl(0, 0%, 40%);
|
||||||
|
--input-border-primary: var(--shadow-secondary-color);
|
||||||
|
--lane-button-color: #d5e6ea;
|
||||||
|
--show-notes-pre-background: #b54c08;
|
||||||
|
}
|
||||||
|
body > header {
|
||||||
|
background-image: url("/images/main-header-background-dark.png");
|
||||||
|
background-color: #22545a;
|
||||||
|
}
|
||||||
|
img {
|
||||||
|
filter: brightness(0.70);
|
||||||
|
}
|
||||||
|
a.lane-button {
|
||||||
|
background-image: url("/images/lane-button-background-dark.png");
|
||||||
|
color: var(--lane-button-color);
|
||||||
|
}
|
||||||
|
a.lane-button img {
|
||||||
|
filter: none;
|
||||||
|
}
|
||||||
|
.lane > article > header {
|
||||||
|
color: var(--text-secondary);
|
||||||
|
}
|
||||||
|
#title a:hover {
|
||||||
|
color: var(--link-header-hover);
|
||||||
|
}
|
||||||
|
#hosts td:nth-child(-n+2) {
|
||||||
|
color: var(--text-primary);
|
||||||
|
}
|
||||||
|
nav.episodes span a:hover {
|
||||||
|
background-color: var(--link-primary-hover);
|
||||||
|
color: var(--link-navigation-hover);
|
||||||
|
}
|
||||||
|
nav.episodes span svg #arrow,
|
||||||
|
nav.episodes span svg #bar {
|
||||||
|
stroke: var(--text-primary);
|
||||||
|
fill: var(--text-primary);
|
||||||
|
}
|
||||||
|
nav.episodes span a:hover svg #arrow,
|
||||||
|
nav.episodes span a:hover svg #bar {
|
||||||
|
stroke: var(--link-navigation-hover);
|
||||||
|
fill: var(--link-navigation-hover);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
BIN
public_html/images/hpr_feed_small.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
24
public_html/images/icons/arrow-first.svg
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
<svg
|
||||||
|
viewBox="0 0 12 12"
|
||||||
|
version="1.1"
|
||||||
|
id="arrow_first"
|
||||||
|
width="12"
|
||||||
|
height="12"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg">
|
||||||
|
<path
|
||||||
|
id="arrow"
|
||||||
|
style="stroke-width:0.584448;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||||
|
d="M 9.9303359,11.572157 11.530286,10.119277 7.0035163,5.9964088 11.484768,1.9181465 9.8743209,0.45252151 3.7931149,5.986851 Z" />
|
||||||
|
<rect
|
||||||
|
style="stroke-width:0.524;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;marker-start:url(#Arrow1Lstart);paint-order:normal"
|
||||||
|
id="bar"
|
||||||
|
width="2.2"
|
||||||
|
height="11.263"
|
||||||
|
x="0.5"
|
||||||
|
y="0.36860976"
|
||||||
|
rx="0"
|
||||||
|
ry="0.0015425405" />
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 877 B |
25
public_html/images/icons/arrow-last.svg
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
<svg
|
||||||
|
viewBox="0 0 12 12"
|
||||||
|
version="1.1"
|
||||||
|
id="arrow_last"
|
||||||
|
width="12"
|
||||||
|
height="12"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg">
|
||||||
|
<path
|
||||||
|
id="arrow"
|
||||||
|
style="stroke-width:0.584448;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||||
|
d="M 2.0731448,11.604466 0.47319466,10.151586 4.9999643,6.0287178 0.51871266,1.9504555 2.1291598,0.48483049 8.2103658,6.01916 Z" />
|
||||||
|
<rect
|
||||||
|
style="stroke-width:0.524;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;marker-start:url(#Arrow1Lstart);paint-order:normal"
|
||||||
|
id="bar"
|
||||||
|
width="2.2"
|
||||||
|
height="11.263"
|
||||||
|
x="-11.503481"
|
||||||
|
y="0.40091875"
|
||||||
|
rx="0"
|
||||||
|
ry="0.0015425405"
|
||||||
|
transform="scale(-1,1)" />
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 911 B |
15
public_html/images/icons/arrow-next.svg
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
<svg
|
||||||
|
viewBox="0 0 12 12"
|
||||||
|
version="1.1"
|
||||||
|
id="arrow_next"
|
||||||
|
width="12"
|
||||||
|
height="12"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg">
|
||||||
|
<path
|
||||||
|
id="arrow"
|
||||||
|
style="stroke-width:0.584448;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||||
|
d="M 2.0731448,11.604466 0.47319466,10.151586 4.9999643,6.0287178 0.51871266,1.9504555 2.1291598,0.48483049 8.2103658,6.01916 Z" />
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 575 B |
15
public_html/images/icons/arrow-previous.svg
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
<svg
|
||||||
|
viewBox="0 0 12 12"
|
||||||
|
version="1.1"
|
||||||
|
id="arrow_previous"
|
||||||
|
width="12"
|
||||||
|
height="12"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg">
|
||||||
|
<path
|
||||||
|
id="arrow"
|
||||||
|
style="stroke-width:0.584448;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
|
||||||
|
d="M 9.9303359,11.572157 11.530286,10.119277 7.0035163,5.9964088 11.484768,1.9181465 9.8743209,0.45252151 3.7931149,5.986851 Z" />
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 578 B |
BIN
public_html/images/lane-button-background-dark.png
Normal file
|
After Width: | Height: | Size: 25 KiB |
BIN
public_html/images/main-header-background-dark.png
Normal file
|
After Width: | Height: | Size: 611 KiB |
22
site.cfg
@@ -10,7 +10,7 @@ driver: dbi:SQLite:hpr.db
|
|||||||
|
|
||||||
# Configure the location of the templates and the generated HTML
|
# Configure the location of the templates and the generated HTML
|
||||||
[app_paths]
|
[app_paths]
|
||||||
templates_path: ./templates
|
templates_path: ./templates:./public_html/images/icons
|
||||||
output_path: ./public_html
|
output_path: ./public_html
|
||||||
|
|
||||||
# Configure the root template page which pulls in the navigation and
|
# Configure the root template page which pulls in the navigation and
|
||||||
@@ -108,9 +108,9 @@ content: content-sitemap.tpl.html
|
|||||||
navigation: navigation-main.tpl.html
|
navigation: navigation-main.tpl.html
|
||||||
content: content-tags.tpl.html
|
content: content-tags.tpl.html
|
||||||
|
|
||||||
[twat_episode]
|
[twt_episode]
|
||||||
navigation: navigation-get-shows.tpl.html
|
navigation: navigation-get-shows.tpl.html
|
||||||
content: content-twat_episode.tpl.html
|
content: content-twt_episode.tpl.html
|
||||||
multipage: true
|
multipage: true
|
||||||
filename: eps/twt[id]/index.html
|
filename: eps/twt[id]/index.html
|
||||||
|
|
||||||
@@ -130,6 +130,10 @@ content: content-promote.tpl.html
|
|||||||
navigation: navigation-about.tpl.html
|
navigation: navigation-about.tpl.html
|
||||||
content: content-comments_viewer.tpl.html
|
content: content-comments_viewer.tpl.html
|
||||||
|
|
||||||
|
[new_year]
|
||||||
|
navigation: navigation-about.tpl.html
|
||||||
|
content: content-new_year.tpl.html
|
||||||
|
|
||||||
[hpr_ogg]
|
[hpr_ogg]
|
||||||
root_template: rss.tpl.xml
|
root_template: rss.tpl.xml
|
||||||
content: rss-hpr.tpl.xml
|
content: rss-hpr.tpl.xml
|
||||||
@@ -171,3 +175,15 @@ media_file_extension: spx
|
|||||||
[comments]
|
[comments]
|
||||||
root_template: rss-comments.tpl.xml
|
root_template: rss-comments.tpl.xml
|
||||||
filename: comments.rss
|
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
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ You can copy and redistribute the shows for free provided you adhere to the
|
|||||||
<p>Hacker Public Radio (HPR) is an Internet Radio show (podcast) that releases shows every weekday Monday through Friday.
|
<p>Hacker Public Radio (HPR) is an Internet Radio show (podcast) that releases shows every weekday Monday through Friday.
|
||||||
HPR has a long lineage going back to <a href="https://web.archive.org/web/20230323053905/http://www.oldskoolphreak.com/" >Radio FreeK America</a>,
|
HPR has a long lineage going back to <a href="https://web.archive.org/web/20230323053905/http://www.oldskoolphreak.com/" >Radio FreeK America</a>,
|
||||||
<a href="https://web.archive.org/web/20220123174618/https://www.binrev.com/forums/" >Binary Revolution Radio</a> & <a href="https://web.archive.org/web/20150208172826/http://www.nomicon.info/" >Infonomicon</a>,
|
<a href="https://web.archive.org/web/20220123174618/https://www.binrev.com/forums/" >Binary Revolution Radio</a> & <a href="https://web.archive.org/web/20150208172826/http://www.nomicon.info/" >Infonomicon</a>,
|
||||||
and it is a rename of <a href="<!--% absolute_url(baseurl,'twat.html') %-->" >Today With a Techie</a> radio.
|
and it is a rename of <a href="<!--% absolute_url(baseurl,'eps/index.html#twt_episodes') %-->" >Today With a Techie</a> radio.
|
||||||
Please listen to StankDawg's "<a href="<!--% media_path(1, 'hpr', 'mp3', baseurl, media_baseurl) %-->" >
|
Please listen to StankDawg's "<a href="<!--% media_path(1, 'hpr', 'mp3', baseurl, media_baseurl) %-->" >
|
||||||
Introduction to HPR</a>" for more information.</p>
|
Introduction to HPR</a>" for more information.</p>
|
||||||
|
|
||||||
|
|||||||
@@ -3,46 +3,17 @@
|
|||||||
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
||||||
<!--% PROCESS "queries-correspondent.tpl.html" %-->
|
<!--% PROCESS "queries-correspondent.tpl.html" %-->
|
||||||
<!--% USE DBI(constants.driver) %-->
|
<!--% USE DBI(constants.driver) %-->
|
||||||
<!--% results_hpr_shows = DBI.prepare(query_hpr_shows)
|
<!--% results_hpr_shows = DBI.prepare(query_hpr_shows) %-->
|
||||||
%-->
|
|
||||||
<!--% results_hpr_show_count = DBI.prepare(query_hpr_show_count) %-->
|
<!--% results_hpr_show_count = DBI.prepare(query_hpr_show_count) %-->
|
||||||
<!--% hpr_shows_to_count = results_hpr_show_count.execute(id); %-->
|
<!--% hpr_result_status = results_hpr_show_count.execute(id); %-->
|
||||||
<!--% hpr_shows = results_hpr_shows.execute(id); %-->
|
<!--% hpr_shows = results_hpr_shows.execute(id); %-->
|
||||||
<!--% hpr_show_count = 0 %-->
|
<!--% hpr_show_count = results_hpr_show_count.fetchrow_array %-->
|
||||||
<!--% FOREACH show IN hpr_shows_to_count %-->
|
|
||||||
<!--% hpr_show_count = hpr_show_count +1; %-->
|
|
||||||
<!--% END %-->
|
|
||||||
|
|
||||||
<!--% query_twat_show_count = DBI.prepare('
|
<!--% results_hpr_shows = DBI.prepare(query_twt_shows) %-->
|
||||||
SELECT id
|
<!--% results_twt_show_count = DBI.prepare(query_twt_show_count) %-->
|
||||||
FROM twat_eps AS eps
|
<!--% twt_result_status = results_twt_show_count.execute(id); %-->
|
||||||
WHERE eps.hostid = ?
|
<!--% twt_shows = results_hpr_shows.execute(id); %-->
|
||||||
')
|
<!--% twt_show_count = results_twt_show_count.fetchrow_array %-->
|
||||||
%-->
|
|
||||||
<!--% query_twat_shows = DBI.prepare('
|
|
||||||
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.notes,
|
|
||||||
hosts.local_image,
|
|
||||||
hosts.hostid,
|
|
||||||
hosts.host, hosts.email, hosts.profile,
|
|
||||||
miniseries.name AS series, miniseries.id AS seriesid
|
|
||||||
FROM twat_eps AS eps
|
|
||||||
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
|
||||||
INNER JOIN miniseries ON eps.series = miniseries.id
|
|
||||||
WHERE hosts.hostid = ?
|
|
||||||
ORDER BY eps.id DESC
|
|
||||||
')
|
|
||||||
%-->
|
|
||||||
<!--% twat_shows_to_count = query_twat_show_count.execute(id); %-->
|
|
||||||
<!--% twat_shows = query_twat_shows.execute(id); %-->
|
|
||||||
<!--% twat_show_count = 0 %-->
|
|
||||||
<!--% FOREACH show IN twat_shows_to_count %-->
|
|
||||||
<!--% twat_show_count = twat_show_count +1; %-->
|
|
||||||
<!--% END %-->
|
|
||||||
|
|
||||||
<!--% hosts = DBI.tie('hosts', 'hostid') %-->
|
<!--% hosts = DBI.tie('hosts', 'hostid') %-->
|
||||||
|
|
||||||
@@ -57,22 +28,23 @@
|
|||||||
<div id="host_meta">
|
<div id="host_meta">
|
||||||
<p><label>email:</label> <u><!--% this_host.email %--></u></p>
|
<p><label>email:</label> <u><!--% this_host.email %--></u></p>
|
||||||
<div><label>profile:</label> <!--% this_host.profile %--></div>
|
<div><label>profile:</label> <!--% this_host.profile %--></div>
|
||||||
<p><label>episodes:</label> <strong><!--% hpr_show_count + twat_show_count %--></strong></p>
|
<p><label>episodes:</label> <strong><!--% hpr_show_count + twt_show_count %--></strong></p>
|
||||||
|
<p><a href="<!--% absolute_url(baseurl,'//correspondents') %-->/<!--% zero_pad_left(this_host.hostid) %-->/playlist.m3u8">Download the M3U playlist</a>.</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="lane stack">
|
<div id="episodes" class="lane stack">
|
||||||
<!--% FOREACH hpr_show IN hpr_shows; %-->
|
<!--% FOREACH hpr_show IN hpr_shows; %-->
|
||||||
<article>
|
<article>
|
||||||
<!--% show_summary(hpr_show, 'hide_host') %-->
|
<!--% show_summary(hpr_show, 'hide_host') %-->
|
||||||
<p class="listen-in"><!--% display_listen_in(hpr_show.id) %--></p>
|
<p class="listen-in"><!--% display_listen_in(hpr_show.id) %--></p>
|
||||||
</article>
|
</article>
|
||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
<!--% FOREACH twat_show IN twat_shows; %-->
|
<!--% FOREACH twt_show IN twt_shows; %-->
|
||||||
<article>
|
<article>
|
||||||
|
|
||||||
<!--% twat_show_summary(twat_show, 'hide_host') %-->
|
<!--% twt_show_summary(twt_show, 'hide_host') %-->
|
||||||
<p class="listen-in"><!--% display_listen_in(twat_show.id,"twat") %--></p>
|
<p class="listen-in"><!--% display_listen_in(twt_show.id,"twt") %--></p>
|
||||||
</article>
|
</article>
|
||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
</div>
|
</div>
|
||||||
<p><a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">Become a Correspondent</a></p>
|
<p><a href="<!--% absolute_url(baseurl) %-->../about.html#so_you_want_to_record_a_podcast">Become a Correspondent</a></p>
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
||||||
<!--% PROCESS 'shared-avatar.tpl.html' %-->
|
<!--% PROCESS 'shared-avatar.tpl.html' %-->
|
||||||
<h2 class="title">Correspondents</h2>
|
<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_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 />
|
||||||
<!--% USE DBI(constants.driver) %-->
|
<!--% USE DBI(constants.driver) %-->
|
||||||
<!--% host_cnt = 0 %-->
|
<!--% host_cnt = 0 %-->
|
||||||
<table id="hosts" class="hosts lane stack">
|
<table id="hosts" class="hosts lane stack">
|
||||||
@@ -18,18 +18,17 @@
|
|||||||
from hosts as h
|
from hosts as h
|
||||||
inner join (select hostid, max(date) as date from eps group by hostid) as e
|
inner join (select hostid, max(date) as date from eps group by hostid) as e
|
||||||
on h.hostid = e.hostid
|
on h.hostid = e.hostid
|
||||||
order by h.host'
|
order by h.host COLLATE NOCASE asc'
|
||||||
) %-->
|
) %-->
|
||||||
<tr class="lane">
|
<tr class="lane">
|
||||||
<td><!--% get_avatar(host.hostid, host.host, host_cnt > 8) %--></td>
|
<td><!--% get_avatar(host.hostid, host.host, host_cnt > 8) %--></td>
|
||||||
|
|
||||||
<td><strong><!--% host.host %--></strong><br>
|
<td><a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pad_left(host.hostid) %-->.html"><strong><!--% host.host %--></strong><br>
|
||||||
|
Host ID: <!--% host.hostid %--></a></td>
|
||||||
Host ID: <a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pad_left(host.hostid) %-->.html"><!--% host.hostid %--></a></td>
|
|
||||||
<td><!--% host.license %--></td>
|
<td><!--% host.license %--></td>
|
||||||
<td><!--% host.date %--></td>
|
<td><!--% host.date %--></td>
|
||||||
</tr><!--% host_cnt = host_cnt + 1 %-->
|
</tr><!--% host_cnt = host_cnt + 1 %-->
|
||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</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_url(baseurl) %-->../about.html#so_you_want_to_record_a_podcast">Become a Correspondent</a></p>
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ Hosted by <a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pa
|
|||||||
<h3><!--% show_series(episode.series, episode.seriesid, "Part of the series") %--></h3>
|
<h3><!--% show_series(episode.series, episode.seriesid, "Part of the series") %--></h3>
|
||||||
<p><em><!--% episode.series_description %--></em></p>
|
<p><em><!--% episode.series_description %--></em></p>
|
||||||
</header>
|
</header>
|
||||||
<div><!--% episode.notes %--></div>
|
<div id="show_notes"><!--% episode.notes %--></div>
|
||||||
<footer>
|
<footer>
|
||||||
<p>
|
<p>
|
||||||
<!--% episode_navigation %-->
|
<!--% episode_navigation %-->
|
||||||
@@ -61,11 +61,11 @@ Subscribe to the comments <a href="<!--% absolute_path(baseurl) %-->comments.rss
|
|||||||
<h2>Leave Comment</h2>
|
<h2>Leave Comment</h2>
|
||||||
<p>
|
<p>
|
||||||
<strong>Note to Verbose Commenters</strong><br />
|
<strong>Note to Verbose Commenters</strong><br />
|
||||||
If you can't fit everything you want to say in the comment below then you really should <a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">record</a> a response show instead.
|
If you can't fit everything you want to say in the comment below then you really should <a href="<!--% absolute_url(baseurl) %-->../../about.html#so_you_want_to_record_a_podcast">record</a> a response show instead.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<strong>Note to Spammers</strong><br />
|
<strong>Note to Spammers</strong><br />
|
||||||
All comments are moderated. All links are checked by humans. We strip out all html. Feel free to <a href="<!--% absolute_url(baseurl) %-->about.html#so_you_want_to_record_a_podcast">record</a> a show about yourself, or your industry, or any other topic we may find interesting. <em>We also check shows for spam :)</em>.
|
All comments are moderated. All links are checked by humans. We strip out all html. Feel free to <a href="<!--% absolute_url(baseurl) %-->../../about.html#so_you_want_to_record_a_podcast">record</a> a show about yourself, or your industry, or any other topic we may find interesting. <em>We also check shows for spam :)</em>.
|
||||||
</p>
|
</p>
|
||||||
<form method="POST" action="<!--% hub_baseurl %-->comment_confirm.php">
|
<form method="POST" action="<!--% hub_baseurl %-->comment_confirm.php">
|
||||||
<fieldset>
|
<fieldset>
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
<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>
|
<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>
|
<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>
|
||||||
<div class="lane stack">
|
<div class="lane stack">
|
||||||
<!--% FOREACH twat_episode IN DBI.query('
|
<!--% FOREACH twt_episode IN DBI.query('
|
||||||
SELECT
|
SELECT
|
||||||
eps.id,
|
eps.id,
|
||||||
eps.explicit,
|
eps.explicit,
|
||||||
@@ -29,14 +29,14 @@
|
|||||||
hosts.hostid,
|
hosts.hostid,
|
||||||
hosts.host, hosts.email, hosts.local_image,
|
hosts.host, hosts.email, hosts.local_image,
|
||||||
miniseries.name AS series, miniseries.id AS seriesid
|
miniseries.name AS series, miniseries.id AS seriesid
|
||||||
FROM twat_eps as eps
|
FROM twt_eps as eps
|
||||||
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
||||||
INNER JOIN miniseries ON eps.series = miniseries.id
|
INNER JOIN miniseries ON eps.series = miniseries.id
|
||||||
ORDER BY eps.id DESC
|
ORDER BY eps.id DESC
|
||||||
')
|
')
|
||||||
%-->
|
%-->
|
||||||
<article>
|
<article>
|
||||||
<!--% twat_show_summary(twat_episode) %-->
|
<!--% twt_show_summary(twt_episode) %-->
|
||||||
</article>
|
</article>
|
||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1 +1,22 @@
|
|||||||
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
||||||
|
<div class="lane stack">
|
||||||
|
<article>
|
||||||
|
<header>
|
||||||
|
<h2 class="title"><a href="<!--% absolute_path(baseurl) %-->new_year.html">The Fourteenth Annual 26 Hour New Year's Eve Show</a></h2>
|
||||||
|
</header>
|
||||||
|
<h3>Welcome every <a href="https://www.timeanddate.com/counters/multicountdown.html">TimeZone</a>!</h3>
|
||||||
|
<p>
|
||||||
|
<em>If you keep talking, we'll keep recording.</em>
|
||||||
|
</p>
|
||||||
|
<p>For those who don't know, on New Year's Eve 2025-12-31 10:00 UTC (5:00 AM EST), we will have a recording going on the HPR Mumble server for anyone to come on and say "Happy New Year" and talk about whatever they want.
|
||||||
|
We will leave the recording going until at least 2026-01-01 12:00 UTC (7:00 AM EST), and keep recording until the conversation stops.</p>
|
||||||
|
<p>
|
||||||
|
So please stop in. Say "Hi" and maybe join in the conversation with other HPR listeners and contributors. It's always a good time!!<br>
|
||||||
|
<audio controls preload="none">
|
||||||
|
<source src="<!--% absolute_path(baseurl) %-->promos/hpr-nye-promo.ogg" type="audio/ogg">
|
||||||
|
</audio>
|
||||||
|
</p>
|
||||||
|
<p><a href="<!--% absolute_path(baseurl) %-->new_year.html">More information…</a></p>
|
||||||
|
|
||||||
|
</article>
|
||||||
|
</div>
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
<!--% PROCESS 'shared-listen-now.tpl.html' %-->
|
<!--% PROCESS 'shared-listen-now.tpl.html' %-->
|
||||||
<!--% PROCESS 'shared-show-transcript.tpl.html' %-->
|
<!--% PROCESS 'shared-show-transcript.tpl.html' %-->
|
||||||
<!--% PROCESS 'shared-call_for_shows.tpl.html' %-->
|
<!--% PROCESS 'shared-call_for_shows.tpl.html' %-->
|
||||||
<!--% INCLUDE 'content-index-announcement.tpl.html' %-->
|
|
||||||
<!--% PROCESS "queries-index.tpl.html" %-->
|
<!--% PROCESS "queries-index.tpl.html" %-->
|
||||||
<!--% MACRO tidy_notes(all_lines) BLOCK %-->
|
<!--% MACRO tidy_notes(all_lines) BLOCK %-->
|
||||||
<!--% lines = all_lines %-->
|
<!--% lines = all_lines %-->
|
||||||
@@ -37,6 +36,7 @@
|
|||||||
<!--% delta = date.calc.N_Delta_YMD(2005,9,19, date.format(date.now, '%Y'),date.format(date.now, '%m'),date.format(date.now, '%d')) %-->
|
<!--% delta = date.calc.N_Delta_YMD(2005,9,19, date.format(date.now, '%Y'),date.format(date.now, '%m'),date.format(date.now, '%d')) %-->
|
||||||
<section id="welcome">
|
<section id="welcome">
|
||||||
<p>Hacker Public Radio is a technology focused podcast that releases shows every weekday Monday to Friday. Our shows are produced by listeners like you and can be on any topic that is of interest to hackers, makers, hobbyists, etc. We are a welcoming community that offers positive feedback and encourages respectful debate.</p>
|
<p>Hacker Public Radio is a technology focused podcast that releases shows every weekday Monday to Friday. Our shows are produced by listeners like you and can be on any topic that is of interest to hackers, makers, hobbyists, etc. We are a welcoming community that offers positive feedback and encourages respectful debate.</p>
|
||||||
|
<!--% PROCESS 'content-index-announcement.tpl.html' %-->
|
||||||
<div id="call_for_shows">
|
<div id="call_for_shows">
|
||||||
<!--% display_call_for_shows() %-->
|
<!--% display_call_for_shows() %-->
|
||||||
</div>
|
</div>
|
||||||
@@ -97,13 +97,14 @@
|
|||||||
<dl>
|
<dl>
|
||||||
<!--% FOREACH latest_episodes IN DBI.query(query_latest_episodes)
|
<!--% FOREACH latest_episodes IN DBI.query(query_latest_episodes)
|
||||||
%-->
|
%-->
|
||||||
<dt><a href="<!--% absolute_path(baseurl) %-->eps/hpr<!--% zero_pad_left(latest_episodes.id) %-->/index.html">hpr<!--% latest_episodes.id %--> (<!--% latest_episodes.date %-->) :: <!--% latest_episodes.title %--></a> by <!--% latest_episodes.host %--></dt>
|
<dt><a href="<!--% absolute_path(baseurl) %-->eps/hpr<!--% zero_pad_left(latest_episodes.id) %-->/index.html">hpr<!--% latest_episodes.id %--> (<!--% latest_episodes.date %-->) :: <!--% latest_episodes.title %--></a> by <a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pad_left(latest_episodes.hostid) %-->.html"><!--% latest_episodes.host %--></a></dt>
|
||||||
<dd>
|
<dd>
|
||||||
<!--% latest_episodes.summary %-->
|
<!--% latest_episodes.summary %-->
|
||||||
</dd>
|
</dd>
|
||||||
<!--% host_cnt = host_cnt + 1 %-->
|
<!--% host_cnt = host_cnt + 1 %-->
|
||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
</dl>
|
</dl>
|
||||||
|
<p><a href="<!--% absolute_path(baseurl) %-->eps/index.html">More Episodes…</a></p>
|
||||||
</section>
|
</section>
|
||||||
<section id="latest_comments">
|
<section id="latest_comments">
|
||||||
<header><h2>Latest Comments</h2></header>
|
<header><h2>Latest Comments</h2></header>
|
||||||
@@ -138,5 +139,6 @@
|
|||||||
<dd>on hpr<!--% item.eps_id %--> (<!--% item.episode_date %-->) "<!--% item.episode_title %-->" by <!--% item.host %--></dd>
|
<dd>on hpr<!--% item.eps_id %--> (<!--% item.episode_date %-->) "<!--% item.episode_title %-->" by <!--% item.host %--></dd>
|
||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
</dl>
|
</dl>
|
||||||
|
<p><a href="<!--% absolute_path(baseurl) %-->comments_viewer.html">More Comments…</a></p>
|
||||||
</section>
|
</section>
|
||||||
</section>
|
</section>
|
||||||
|
|||||||
64
templates/content-new_year.tpl.html
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
<!--% PROCESS 'shared-utils.tpl.html' %-->
|
||||||
|
|
||||||
|
<h1><u>The Fourteenth Annual 26 Hour New Years Eve Show</u></h1>
|
||||||
|
<h2>Welcome every <a href="https://www.timeanddate.com/counters/multicountdown.html">TimeZone</a>!</h2>
|
||||||
|
<p>
|
||||||
|
<em>If you keep talking, we'll keep recording.</em>
|
||||||
|
</p>
|
||||||
|
<p>For those who don't know, on New Years Eve 2025-12-31 10:00 UTC (5:00 AM EST), we will have a recording going on the HPR Mumble server for anyone to come on and say "Happy New Years" and talk about whatever they want.
|
||||||
|
We will leave the recording going until at least 2026-01-01 12:00 UTC (7:00 AM EST), and keep recording until the conversation stops.</p>
|
||||||
|
<p>
|
||||||
|
So please stop in. Say "Hi" and maybe join in the conversation with other HPR listeners and contributors. It's always a good time!!<br />
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>History</h2>
|
||||||
|
|
||||||
|
<p>Suggested by <a href="https://hackerpublicradio.org/correspondents/0128.html">pokey</a> in 2011.
|
||||||
|
As podcasting tends to be a one way conversation, he thought it would be nice to get all the FLOSS, Linux, Free Culture, podcasters and Listeners in one place to get together and chat in person.
|
||||||
|
Initially it was planned to be just a few hours, but we kept missing members from other parts of the world.
|
||||||
|
The show was extended to welcome ever time zone to the New Year, which actually turns out to be <a href="https://en.wikipedia.org/wiki/List_of_UTC_offsets">38 Timezones</a>, over 26 Hours.</p>
|
||||||
|
|
||||||
|
<p>So we will record for at least 26 Hours, but will keep the recording going for an "After Show".
|
||||||
|
Some years the after show has been even longer than the show itself.
|
||||||
|
While this is on the HPR Site, it is entirely a community initiative which is supported heavily by the fine folks over at the <a href="https://linuxlugcast.com/">LinuxLugCast</a>, with the Mumble Server been provided by <a href="https://hackerpublicradio.org/correspondents/0228.html">Delwin</a>.</p>
|
||||||
|
|
||||||
|
<h2>Ground Rules</h2>
|
||||||
|
<h3>Use Push to Talk, and a Headset</h3>
|
||||||
|
|
||||||
|
<p>With so many people on the chat, you must use push to talk.
|
||||||
|
You also need to use a Headset so the audio of the room is not fed back.
|
||||||
|
If there is a problem with your setup, then please drop and listen to the stream.
|
||||||
|
Trying to correct poor audio in post is a lot of work, that someone else will have to do.</p>
|
||||||
|
|
||||||
|
<h3>Be Polite</h3>
|
||||||
|
|
||||||
|
<p>When you enter the room please do not interrupt ongoing conversations.
|
||||||
|
Wait for a pause in the conversation and say Hi.
|
||||||
|
It's quite common for people you might not know to join as they wish to speak with other people in the room.
|
||||||
|
They may have been waiting all year for the chance to meet, so please give people the space to have these conversations.</p>
|
||||||
|
|
||||||
|
<h3>Do not announce the Time Zones</h3>
|
||||||
|
|
||||||
|
<p>As there are so <a moz-do-not-send="true" href="https://en.wikipedia.org/wiki/Time_zone">many Time Zones</a> there is no need to interrupt the conversation to announce every one.
|
||||||
|
If you are joining from a time zone that is currently switching to the New Year, then please wait for a pause and wish people Happy New Year.</p>
|
||||||
|
|
||||||
|
<h3>Don't Fill Dead Air</h3>
|
||||||
|
|
||||||
|
<p>This is a relaxed meet-up, and not a traditional "Radio Broadcast".
|
||||||
|
If there are no conversations going on at a given time, don't feel the need to "fill dead air".
|
||||||
|
Before the recording is posted as a podcast the <a href="https://manual.audacityteam.org/man/truncate_silence.html">silences will be truncated</a>.</p>
|
||||||
|
|
||||||
|
<h3>Do not monopolise the conversation</h3>
|
||||||
|
|
||||||
|
<p>Please be mindful that you (or your beverage of choice) may be speaking too much ;-).</p>
|
||||||
|
|
||||||
|
<h3>You are a Guest</h3>
|
||||||
|
|
||||||
|
<p>Be respectful, and remember that attendance on the New Year Show does not <a href="https://hub.hackerpublicradio.org/calendar.php">constitute a show</a>.</p>
|
||||||
|
|
||||||
|
<h3>CC-BY-SA</h3>
|
||||||
|
|
||||||
|
<p>The recording will be released as a podcast on HPR under a <a rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/"> Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)</a> license.
|
||||||
|
The recordings will be released mid year, when there is a lull in submissions.</p>
|
||||||
|
|
||||||
|
|
||||||
@@ -13,6 +13,7 @@
|
|||||||
<li>Date of earliest show: <!--% series.earliest_show %--></li>
|
<li>Date of earliest show: <!--% series.earliest_show %--></li>
|
||||||
<li>Date of latest show: <!--% series.latest_show %--></li>
|
<li>Date of latest show: <!--% series.latest_show %--></li>
|
||||||
<li>Series RSS feeds: <a href="<!--% absolute_path(baseurl) %-->hpr_ogg_rss.php?series=<!--% series.id %-->">ogg</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_spx_rss.php?series=<!--% series.id %-->">spx</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_mp3_rss.php?series=<!--% series.id %-->">mp3</a></li>
|
<li>Series RSS feeds: <a href="<!--% absolute_path(baseurl) %-->hpr_ogg_rss.php?series=<!--% series.id %-->">ogg</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_spx_rss.php?series=<!--% series.id %-->">spx</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_mp3_rss.php?series=<!--% series.id %-->">mp3</a></li>
|
||||||
|
<li><a href="<!--% absolute_url(baseurl,'//series') %-->/<!--% zero_pad_left(series.id) %-->.m3u8">Download the M3U playlist</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="series-description"><!--% series.description %--></div>
|
<div class="series-description"><!--% series.description %--></div>
|
||||||
</article>
|
</article>
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
<li>Date of earliest show: <!--% series.earliest_show %--></li>
|
<li>Date of earliest show: <!--% series.earliest_show %--></li>
|
||||||
<li>Date of latest show: <!--% series.latest_show %--></li>
|
<li>Date of latest show: <!--% series.latest_show %--></li>
|
||||||
<li>Series RSS feeds: <a href="<!--% absolute_path(baseurl) %-->hpr_ogg_rss.php?series=<!--% series.id %-->&full=1&gomax=1">ogg</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_spx_rss.php?series=<!--% series.id %-->&full=1&gomax=1">spx</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_mp3_rss.php?series=<!--% series.id %-->&full=1&gomax=1">mp3</a></li>
|
<li>Series RSS feeds: <a href="<!--% absolute_path(baseurl) %-->hpr_ogg_rss.php?series=<!--% series.id %-->&full=1&gomax=1">ogg</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_spx_rss.php?series=<!--% series.id %-->&full=1&gomax=1">spx</a>, <a href="<!--% absolute_path(baseurl) %-->hpr_mp3_rss.php?series=<!--% series.id %-->&full=1&gomax=1">mp3</a></li>
|
||||||
|
<li><a href="<!--% absolute_url(baseurl,'//series') %-->/<!--% zero_pad_left(series.id) %-->.m3u8">Download the M3U playlist</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
<p><em><!--% series.description %--></em></p>
|
<p><em><!--% series.description %--></em></p>
|
||||||
<section id="series_episodes" class="lane stack">
|
<section id="series_episodes" class="lane stack">
|
||||||
|
|||||||
@@ -6,23 +6,23 @@
|
|||||||
<!--% query_episodes = DBI.prepare('
|
<!--% query_episodes = DBI.prepare('
|
||||||
WITH episode_maxmin AS (
|
WITH episode_maxmin AS (
|
||||||
SELECT MAX(id) AS \'latest\', MIN(id) AS \'earliest\', ? AS \'id\'
|
SELECT MAX(id) AS \'latest\', MIN(id) AS \'earliest\', ? AS \'id\'
|
||||||
FROM twat_eps AS eps
|
FROM twt_eps AS eps
|
||||||
),
|
),
|
||||||
episode_date AS (
|
episode_date AS (
|
||||||
SELECT eps.date
|
SELECT eps.date
|
||||||
FROM twat_eps AS eps
|
FROM twt_eps AS eps
|
||||||
WHERE eps.id = ?
|
WHERE eps.id = ?
|
||||||
),
|
),
|
||||||
episode_previous AS (
|
episode_previous AS (
|
||||||
SELECT MAX(id) AS \'previous\', ? AS \'id\'
|
SELECT MAX(id) AS \'previous\', ? AS \'id\'
|
||||||
FROM twat_eps AS eps
|
FROM twt_eps AS eps
|
||||||
INNER JOIN episode_date
|
INNER JOIN episode_date
|
||||||
ON eps.date < episode_date.date
|
ON eps.date < episode_date.date
|
||||||
WHERE eps.id > 1
|
WHERE eps.id > 1
|
||||||
),
|
),
|
||||||
episode_next AS (
|
episode_next AS (
|
||||||
SELECT MIN(id) AS \'next\', ? AS \'id\'
|
SELECT MIN(id) AS \'next\', ? AS \'id\'
|
||||||
FROM twat_eps AS eps
|
FROM twt_eps AS eps
|
||||||
INNER JOIN episode_date
|
INNER JOIN episode_date
|
||||||
ON eps.date > episode_date.date
|
ON eps.date > episode_date.date
|
||||||
)
|
)
|
||||||
@@ -34,7 +34,7 @@
|
|||||||
hosts.hostid, hosts.host,
|
hosts.hostid, hosts.host,
|
||||||
miniseries.name AS \'series\', miniseries.id AS \'seriesid\',
|
miniseries.name AS \'series\', miniseries.id AS \'seriesid\',
|
||||||
miniseries.description AS \'series_description\'
|
miniseries.description AS \'series_description\'
|
||||||
FROM twat_eps AS eps
|
FROM twt_eps AS eps
|
||||||
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
||||||
INNER JOIN miniseries ON eps.series = miniseries.id
|
INNER JOIN miniseries ON eps.series = miniseries.id
|
||||||
INNER JOIN episode_maxmin ON eps.id = episode_maxmin.id
|
INNER JOIN episode_maxmin ON eps.id = episode_maxmin.id
|
||||||
@@ -55,8 +55,8 @@
|
|||||||
<p><!--% show_avatar(episode.hostid, episode.host) %-->
|
<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><!--% day_and_date(episode.date) %--></span> is flagged as <span><!--% display_explicit(episode.explicit) %--></span> and is released under a <span><!--% episode.license %--> license</span>. <br>
|
Hosted by <a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pad_left(episode.hostid) %-->.html"><!--% episode.host %--></a> on <span><!--% day_and_date(episode.date) %--></span> is flagged as <span><!--% display_explicit(episode.explicit) %--></span> and is released under a <span><!--% episode.license %--> license</span>. <br>
|
||||||
<!--% display_tags(episode.tags) %--> <br>
|
<!--% display_tags(episode.tags) %--> <br>
|
||||||
<!--% listen_now(episode, "twat", baseurl, media_baseurl) %-->
|
<!--% listen_now(episode, "twt", baseurl, media_baseurl) %-->
|
||||||
<!--% display_listen_in(episode.id, "twat") %-->
|
<!--% display_listen_in(episode.id, "twt") %-->
|
||||||
</p>
|
</p>
|
||||||
<h3><!--% show_series(episode.series, episode.seriesid, "Part of the series") %--></h3>
|
<h3><!--% show_series(episode.series, episode.seriesid, "Part of the series") %--></h3>
|
||||||
<p><em><!--% episode.series_description %--></em></p>
|
<p><em><!--% episode.series_description %--></em></p>
|
||||||
7
templates/ids-correspondent_m3u.tpl.html
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
<!--% USE DBI(constants.driver) %-->
|
||||||
|
<!--% FOREACH host IN DBI.query(
|
||||||
|
'select h.hostid from hosts as h'
|
||||||
|
) %-->
|
||||||
|
,<!--% host.hostid %-->
|
||||||
|
<!--% END %-->
|
||||||
|
|
||||||
7
templates/ids-series_episodes_m3u.tpl.html
Normal 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 %-->
|
||||||
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
<!--% USE DBI(constants.driver) %-->
|
<!--% USE DBI(constants.driver) %-->
|
||||||
<!--% FOREACH episode IN DBI.query(
|
<!--% FOREACH episode IN DBI.query(
|
||||||
'select eps.id from twat_eps AS eps'
|
'select eps.id from twt_eps AS eps'
|
||||||
) %-->
|
) %-->
|
||||||
,<!--% episode.id %-->
|
,<!--% episode.id %-->
|
||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
24
templates/m3u-correspondent.tpl.m3u8
Normal 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 %-->
|
||||||
13
templates/m3u-series_episodes.tpl.m3u8
Normal 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
@@ -0,0 +1,2 @@
|
|||||||
|
#EXTM3U
|
||||||
|
<!--% INCLUDE $content %-->
|
||||||
@@ -1,5 +1,12 @@
|
|||||||
<!--% query_hpr_shows = '
|
<!--% query_hpr_shows = 'WITH
|
||||||
|
comment_tallies AS (
|
||||||
SELECT
|
SELECT
|
||||||
|
eps_id,
|
||||||
|
COUNT(eps_id) AS eps_tally
|
||||||
|
FROM comments
|
||||||
|
GROUP BY eps_id
|
||||||
|
)
|
||||||
|
SELECT
|
||||||
eps.id,
|
eps.id,
|
||||||
eps.explicit,
|
eps.explicit,
|
||||||
eps.date, eps.license, eps.duration,
|
eps.date, eps.license, eps.duration,
|
||||||
@@ -8,17 +15,44 @@
|
|||||||
hosts.local_image,
|
hosts.local_image,
|
||||||
hosts.hostid,
|
hosts.hostid,
|
||||||
hosts.host, hosts.email, hosts.profile,
|
hosts.host, hosts.email, hosts.profile,
|
||||||
miniseries.name AS series, miniseries.id AS seriesid
|
miniseries.name AS series, miniseries.id AS seriesid,
|
||||||
|
COALESCE(comment_tallies.eps_tally,0) AS commentsTally
|
||||||
FROM eps
|
FROM eps
|
||||||
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
||||||
INNER JOIN miniseries ON eps.series = miniseries.id
|
INNER JOIN miniseries ON eps.series = miniseries.id
|
||||||
|
LEFT JOIN comment_tallies ON eps.id = comment_tallies.eps_id
|
||||||
WHERE hosts.hostid = ? AND eps.date < date(\'now\', \'+1 days\')
|
WHERE hosts.hostid = ? AND eps.date < date(\'now\', \'+1 days\')
|
||||||
ORDER BY eps.id + 0 DESC
|
ORDER BY eps.id + 0 DESC
|
||||||
'
|
'
|
||||||
%-->
|
%-->
|
||||||
<!--% query_hpr_show_count = '
|
<!--% query_hpr_show_count = '
|
||||||
SELECT id
|
SELECT COUNT(id) as Tally
|
||||||
FROM eps
|
FROM eps
|
||||||
WHERE eps.hostid = ? AND eps.date < date(\'now\', \'+1 days\')
|
WHERE eps.hostid = ? AND eps.date < date(\'now\', \'+1 days\')
|
||||||
'
|
'
|
||||||
%-->
|
%-->
|
||||||
|
<!--% query_twt_show_count = '
|
||||||
|
SELECT COUNT(id) as Tally
|
||||||
|
FROM twt_eps AS eps
|
||||||
|
WHERE eps.hostid = ?
|
||||||
|
'
|
||||||
|
%-->
|
||||||
|
<!--% query_twt_shows = '
|
||||||
|
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.notes,
|
||||||
|
hosts.local_image,
|
||||||
|
hosts.hostid,
|
||||||
|
hosts.host, hosts.email, hosts.profile,
|
||||||
|
miniseries.name AS series, miniseries.id AS seriesid
|
||||||
|
FROM twt_eps AS eps
|
||||||
|
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
||||||
|
INNER JOIN miniseries ON eps.series = miniseries.id
|
||||||
|
WHERE hosts.hostid = ?
|
||||||
|
ORDER BY eps.id DESC
|
||||||
|
'
|
||||||
|
%-->
|
||||||
|
|
||||||
|
|||||||
@@ -1,14 +1,24 @@
|
|||||||
<!--% query_episodes = 'SELECT
|
<!--% query_episodes = 'WITH
|
||||||
|
comment_tallies AS (
|
||||||
|
SELECT
|
||||||
|
eps_id,
|
||||||
|
COUNT(eps_id) AS eps_tally
|
||||||
|
FROM comments
|
||||||
|
GROUP BY eps_id
|
||||||
|
)
|
||||||
|
SELECT
|
||||||
eps.id,
|
eps.id,
|
||||||
eps.explicit,
|
eps.explicit,
|
||||||
eps.date, eps.license, eps.title, eps.summary,
|
eps.date, eps.license, eps.title, eps.summary,
|
||||||
eps.duration, eps.notes, eps.tags,
|
eps.duration, eps.notes, eps.tags,
|
||||||
hosts.hostid,
|
hosts.hostid,
|
||||||
hosts.host, hosts.email, hosts.local_image,
|
hosts.host, hosts.email, hosts.local_image,
|
||||||
miniseries.name AS series, miniseries.id AS seriesid
|
miniseries.name AS series, miniseries.id AS seriesid,
|
||||||
|
COALESCE(comment_tallies.eps_tally,0) AS commentsTally
|
||||||
FROM eps
|
FROM eps
|
||||||
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
INNER JOIN hosts ON eps.hostid = hosts.hostid
|
||||||
INNER JOIN miniseries ON eps.series = miniseries.id
|
INNER JOIN miniseries ON eps.series = miniseries.id
|
||||||
|
LEFT JOIN comment_tallies ON eps.id = comment_tallies.eps_id
|
||||||
WHERE eps.date <= date(\'now\')
|
WHERE eps.date <= date(\'now\')
|
||||||
ORDER BY eps.id + 0 DESC'
|
ORDER BY eps.id + 0 DESC'
|
||||||
%-->
|
%-->
|
||||||
|
|||||||
@@ -14,14 +14,24 @@
|
|||||||
WHERE miniseries.id = ?
|
WHERE miniseries.id = ?
|
||||||
ORDER BY name'
|
ORDER BY name'
|
||||||
%-->
|
%-->
|
||||||
<!--% query_shows_sql = 'SELECT
|
<!--% query_shows_sql = 'WITH
|
||||||
|
comment_tallies AS (
|
||||||
|
SELECT
|
||||||
|
eps_id,
|
||||||
|
COUNT(eps_id) AS eps_tally
|
||||||
|
FROM comments
|
||||||
|
GROUP BY eps_id
|
||||||
|
)
|
||||||
|
SELECT
|
||||||
id, date, title,
|
id, date, title,
|
||||||
duration, summary, notes,
|
duration, summary, notes,
|
||||||
explicit, eps.license, tags,
|
explicit, eps.license, tags,
|
||||||
hosts.host, hosts.hostid
|
hosts.host, hosts.hostid,
|
||||||
|
COALESCE(comment_tallies.eps_tally,0) AS commentsTally
|
||||||
FROM eps
|
FROM eps
|
||||||
INNER JOIN hosts
|
INNER JOIN hosts
|
||||||
ON eps.hostid = hosts.hostid
|
ON eps.hostid = hosts.hostid
|
||||||
|
LEFT JOIN comment_tallies ON eps.id = comment_tallies.eps_id
|
||||||
WHERE series = ? AND eps.date < date(\'now\', \'+1 days\')
|
WHERE series = ? AND eps.date < date(\'now\', \'+1 days\')
|
||||||
ORDER BY eps.id DESC
|
ORDER BY eps.id DESC
|
||||||
'
|
'
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
<!--% query_tags = 'SELECT id, tags FROM eps' %-->
|
<!--% query_tags = 'SELECT id, tags FROM eps WHERE eps.date <= date(\'now\')' %-->
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ or
|
|||||||
<span><label>Flag:</label> <!--% display_explicit(show.explicit) %-->.</span>
|
<span><label>Flag:</label> <!--% display_explicit(show.explicit) %-->.</span>
|
||||||
<span><!--% show_series(show.series, show.seriesid) %--></span> <br>
|
<span><!--% show_series(show.series, show.seriesid) %--></span> <br>
|
||||||
<!--% IF hide_tags == "" %--><!--% display_tags(show.tags) %--><!--% END %-->
|
<!--% IF hide_tags == "" %--><!--% display_tags(show.tags) %--><!--% END %-->
|
||||||
<!--% IF show.comentsTally || show.commentsTally == 0 %-->
|
<!--% IF show.commentsTally || show.commentsTally == 0 %-->
|
||||||
<span><label>Comments:</label> <!--% display_comments_tally(show.id, show.commentsTally) %--></span>
|
<span><label>Comments:</label> <!--% display_comments_tally(show.id, show.commentsTally) %--></span>
|
||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
@@ -56,7 +56,7 @@ or
|
|||||||
<p class="summary"><!--% show.summary %--></p>
|
<p class="summary"><!--% show.summary %--></p>
|
||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
|
|
||||||
<!--% MACRO twat_show_summary(show, hide_host) BLOCK %-->
|
<!--% MACRO twt_show_summary(show, hide_host) BLOCK %-->
|
||||||
|
|
||||||
<h3 class="title"><a href="<!--% absolute_path(baseurl) %-->eps/twt<!--% 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/twt<!--% zero_pad_left(show.id) %-->/index.html">Today with a Techie Ep.<!--% 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>
|
hosted by <a href="<!--% absolute_path(baseurl) %-->correspondents/<!--% zero_pad_left(show.hostid) %-->.html"><!--% show.host %--></a>
|
||||||
|
|||||||
@@ -93,7 +93,7 @@
|
|||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
|
|
||||||
<!--% MACRO media_path(episode_id, episode_type, media_type, baseurl, media_baseurl) BLOCK %-->
|
<!--% MACRO media_path(episode_id, episode_type, media_type, baseurl, media_baseurl) BLOCK %-->
|
||||||
<!--% IF episode_type == "twat" %-->
|
<!--% IF episode_type == "twt" %-->
|
||||||
<!--% episode_type = "twt" %-->
|
<!--% episode_type = "twt" %-->
|
||||||
<!--% padding = 3 %-->
|
<!--% padding = 3 %-->
|
||||||
<!--% media_folder = "eps/"; padding = 3 %-->
|
<!--% media_folder = "eps/"; padding = 3 %-->
|
||||||
@@ -117,16 +117,20 @@
|
|||||||
<!--% IF folder %-->
|
<!--% IF folder %-->
|
||||||
<!--% folder = folder %--><!--% ELSE %--><!--% folder = "hpr" %-->
|
<!--% folder = folder %--><!--% ELSE %--><!--% folder = "hpr" %-->
|
||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
<small><a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.earliest) %-->/index.html" rel="first"><< First</a>,
|
<!--% arrow_first = "arrow-first.svg" %-->
|
||||||
|
<!--% arrow_prev = "arrow-previous.svg" %-->
|
||||||
|
<!--% arrow_next = "arrow-next.svg" %-->
|
||||||
|
<!--% arrow_last = "arrow-last.svg" %-->
|
||||||
|
<nav class="episodes" aria-description="Navigation to other episodes"><span><a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.earliest) %-->/index.html" rel="first" aria-label="first episode"><!--% INSERT $arrow_first %--><span class="no-css"><< </span>First</a></span>,
|
||||||
<!--% IF links.previous %-->
|
<!--% IF links.previous %-->
|
||||||
<a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.previous) %-->/index.html" rel="previous">< Previous</a>,
|
<span><a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.previous) %-->/index.html" rel="previous" aria-label="previous episode"><!--% INSERT $arrow_prev %--><span class="no-css">< </span>Previous</a></span>,
|
||||||
<!--% ELSE %-->
|
<!--% ELSE %-->
|
||||||
<span><</span> Previous,
|
<span class="no-link"><!--% INSERT $arrow_prev %--><span class="no-css">< </span>Previous</span>,
|
||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
<!--% IF links.next %-->
|
<!--% IF links.next %-->
|
||||||
<a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.next) %-->/index.html" rel="next">Next ></a>,
|
<span><a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.next) %-->/index.html" rel="next" aria-label="next episode">Next<span class="no-css"> ></span><!--% INSERT $arrow_next %--></a></span>,
|
||||||
<!--% ELSE %-->
|
<!--% ELSE %-->
|
||||||
Next <span>></span>
|
<span class="no-link">Next<span class="no-css"> ></span><!--% INSERT $arrow_next %--></span>,
|
||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
<a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.latest) %-->/index.html" rel="last">Latest >></a></small>
|
<span><a href="<!--% absolute_path(baseurl) %-->eps/<!--% folder %--><!--% zero_pad_left(links.latest) %-->/index.html" rel="last" aria-label="latest episode">Latest<span class="no-css"> >></span><!--% INSERT $arrow_last %--></a></span></nav>
|
||||||
<!--% END %-->
|
<!--% END %-->
|
||||||
|
|||||||