Finishing off 'query2*' scripts
Database/hosts_list.tpl, Database/hosts_showcount.sqlite.sql: examples of using 'query2tt2' Database/query2csv, Database/query2json, Database/query2tt2: minor bug fix relating to '-dbarg=ARG' option
This commit is contained in:
parent
bf8f6db45c
commit
fdd0823f93
39
Database/hosts_list.tpl
Normal file
39
Database/hosts_list.tpl
Normal file
@ -0,0 +1,39 @@
|
||||
[%# ==========================================================================
|
||||
This is the TT2 file for making a list of hosts contributing to HPR in the
|
||||
current year which is run in conjunction with 'query2tt2'. It's invoked
|
||||
thus:
|
||||
year="2022" # or whatever
|
||||
./query2tt2 -query=$HOME/HPR/Community_News/hosts_showcount.sql \
|
||||
-conf=$HOME/HPR/.hpr_livedb.cfg \
|
||||
-dbargs "${year}-01-01" -dbargs "${year}-12-31" -def year=${year} \
|
||||
-template=$HOME/HPR/Community_News/hosts_list.tpl \
|
||||
> $HOME/HPR/Community_News/hosts_showcount_${year}.html
|
||||
|
||||
[We can't use the planned pure TT2 version since Template::Plugin::DBI
|
||||
can't run over the SSH tunnel.]
|
||||
|
||||
2023-10-30 The correspondent URL has changed with the static site, and needs
|
||||
the hostid to be zero-padded.
|
||||
========================================================================== -%]
|
||||
[%- USE date -%]
|
||||
[%- DEFAULT
|
||||
year = date.format(date.now,'%Y','UTC')
|
||||
-%]
|
||||
<h3>Thanks to all [% result.size %] HPR contributors in [% year %]!</h3>
|
||||
|
||||
[% limit = 8 -%]
|
||||
[% count = 0 -%]
|
||||
<p><ul><li>
|
||||
[% FOREACH h = result -%]
|
||||
<a href="https://hackerpublicradio.org/correspondents/[% h.hostid %].html">[% h.hostname %]</a>
|
||||
[%- IF loop.count mod limit == 0 || loop.count == result.size -%].[% ELSE %],[% END %]
|
||||
[% count = count + 1 -%]
|
||||
[% IF count == limit -%]
|
||||
[% count = 0 -%]
|
||||
</li><li>
|
||||
[% END -%]
|
||||
[% END -%]
|
||||
</li></ul></p>
|
||||
[%#
|
||||
# vim: syntax=tt2:ts=8:sw=4:ai:et:tw=78:fo=tcrqn21:fdm=marker
|
||||
-%]
|
15
Database/hosts_showcount.sqlite.sql
Normal file
15
Database/hosts_showcount.sqlite.sql
Normal file
@ -0,0 +1,15 @@
|
||||
--
|
||||
-- Query for use with 'query2tt2' to generate a list of hosts who contributed
|
||||
-- shows in a particular year. Designed to be used with the 'hosts_list.tpl'
|
||||
-- template.
|
||||
-- The two '?' placeholders in the query are to be filled with 'YYYY-01-01'
|
||||
-- for the start of the year and 'YYYY-12-31'. The values can be passed using
|
||||
-- the '-dbargs' option to 'query2tt2'.
|
||||
--
|
||||
SELECT DISTINCT
|
||||
printf('%04d',h.hostid) AS hostid, h.host AS hostname
|
||||
FROM eps e
|
||||
JOIN hosts h ON e.hostid = h.hostid
|
||||
WHERE e.date BETWEEN ? AND ?
|
||||
AND title != 'Reserved'
|
||||
ORDER BY h.host
|
@ -21,7 +21,7 @@
|
||||
# AUTHOR: Dave Morriss (djm), Dave.Morriss@gmail.com
|
||||
# VERSION: 0.0.4
|
||||
# CREATED: 2015-07-11 15:53:01
|
||||
# REVISION: 2025-05-07 17:20:00
|
||||
# REVISION: 2025-05-09 14:13:17
|
||||
#
|
||||
#===============================================================================
|
||||
|
||||
@ -359,8 +359,8 @@ sub _dbargs {
|
||||
|
||||
my @args;
|
||||
|
||||
if ( defined( $opts->{dbargs} ) ) {
|
||||
@args = @{ $opts->{dbargs} };
|
||||
if ( defined( $opts->{dbarg} ) ) {
|
||||
@args = @{ $opts->{dbarg} };
|
||||
}
|
||||
|
||||
return (@args);
|
||||
@ -381,7 +381,7 @@ sub Options {
|
||||
|
||||
my @options = (
|
||||
"help", "documentation|man", "debug=i", "config=s",
|
||||
"output=s", "query=s", "dbargs=s@", "header!",
|
||||
"output=s", "query=s", "dbarg=s@", "header!",
|
||||
);
|
||||
|
||||
if ( !GetOptions( $optref, @options ) ) {
|
||||
|
@ -20,7 +20,7 @@
|
||||
# AUTHOR: Dave Morriss (djm), Dave.Morriss@gmail.com
|
||||
# VERSION: 0.0.3
|
||||
# CREATED: 2021-06-18 13:24:49
|
||||
# REVISION: 2025-05-07 17:20:07
|
||||
# REVISION: 2025-05-09 14:13:27
|
||||
#
|
||||
#===============================================================================
|
||||
|
||||
@ -343,8 +343,8 @@ sub _dbargs {
|
||||
|
||||
my @args;
|
||||
|
||||
if ( defined( $opts->{dbargs} ) ) {
|
||||
@args = @{ $opts->{dbargs} };
|
||||
if ( defined( $opts->{dbarg} ) ) {
|
||||
@args = @{ $opts->{dbarg} };
|
||||
}
|
||||
|
||||
return (@args);
|
||||
|
@ -28,7 +28,7 @@
|
||||
# AUTHOR: Dave Morriss (djm), Dave.Morriss@gmail.com
|
||||
# VERSION: 0.0.8
|
||||
# CREATED: 2021-06-18 13:24:49
|
||||
# REVISION: 2025-05-07 17:19:15
|
||||
# REVISION: 2025-05-09 14:13:04
|
||||
#
|
||||
#===============================================================================
|
||||
|
||||
@ -119,7 +119,6 @@ pod2usage(
|
||||
-noperldoc => 0,
|
||||
) if ( $options{'documentation'} );
|
||||
|
||||
|
||||
#
|
||||
# Collect options
|
||||
#
|
||||
@ -420,8 +419,8 @@ sub _dbargs {
|
||||
|
||||
my @args;
|
||||
|
||||
if ( defined( $opts->{dbargs} ) ) {
|
||||
@args = @{ $opts->{dbargs} };
|
||||
if ( defined( $opts->{dbarg} ) ) {
|
||||
@args = @{ $opts->{dbarg} };
|
||||
}
|
||||
|
||||
return (@args);
|
||||
@ -469,7 +468,7 @@ sub Options {
|
||||
"help", "documentation|man",
|
||||
"debug=i", "config=s",
|
||||
"output=s", "query=s",
|
||||
"template=s", "dbargs=s@",
|
||||
"template=s", "dbarg=s@",
|
||||
"define=s%",
|
||||
);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user