2022-06-27 01:36:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# hpr_generator
  
						 
					
						
							
								
									
										
										
										
											2022-07-02 12:52:50 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Static web page generator for the Hacker Public Radio website.
							 
						 
					
						
							
								
									
										
										
										
											2022-06-27 01:36:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								## Installation
  
						 
					
						
							
								
									
										
										
										
											2022-07-02 12:52:50 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  Clone or download this repository 
						 
					
						
							
								
									
										
										
										
											2022-10-22 21:11:57 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  With SQLite 
						 
					
						
							
								
									
										
										
										
											2023-10-06 15:47:09 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									*  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
							 
						 
					
						
							
								
									
										
										
										
											2023-03-03 23:53:21 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									  location can be set in the site.cfg file.
							 
						 
					
						
							
								
									
										
										
										
											2023-10-06 15:47:09 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									*  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.
							 
						 
					
						
							
								
									
										
										
										
											2023-03-03 23:53:21 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										1.  `cd`  into the root of the project directory
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										2.   Run `./utils/update-hpr.sh` 
							 
						 
					
						
							
								
									
										
										
										
											2023-10-06 15:47:09 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									*  SQLite v3.8.3 or greater is recommended. CTE WITH clauses are used in some template queries. Must convert WITH
							 
						 
					
						
							
								
									
										
										
										
											2022-10-22 21:11:57 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									  clauses to sub-queries when using earlier versions of SQLite.
							 
						 
					
						
							
								
									
										
										
										
											2022-07-02 12:52:50 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  Install the needed Perl modules using preferred method (distribution packages, CPAN, etc.) 
						 
					
						
							
								
									
										
										
										
											2024-09-08 09:05:34 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    *  Getopt::Long
							 
						 
					
						
							
								
									
										
										
										
											2022-07-02 12:52:50 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    *  Pod::Usage
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    *  Config::Std
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    *  Template
							 
						 
					
						
							
								
									
										
										
										
											2022-08-04 19:09:32 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    *  Template::Plugin::File
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    *  Template::Plugin::DBI
							 
						 
					
						
							
								
									
										
										
										
											2023-10-06 15:47:09 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    *  Template::Plugin::Date
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    *  Template::Plugin::HTML::Strip
							 
						 
					
						
							
								
									
										
										
										
											2022-07-02 12:52:50 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    *  DBI
							 
						 
					
						
							
								
									
										
										
										
											2022-08-02 12:44:54 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    *  Tie::DBI
							 
						 
					
						
							
								
									
										
										
										
											2025-07-24 08:21:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    *  DBD::SQLite
							 
						 
					
						
							
								
									
										
										
										
											2022-08-02 12:44:54 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    *  Date::Calc
							 
						 
					
						
							
								
									
										
										
										
											2023-10-06 15:47:09 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    *  Text::CSV_XS
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    *  HTML::Entities
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								*  See the [Getting Started ](GETTING_STARTED.md ) tutorial for more details on 
						 
					
						
							
								
									
										
										
										
											2023-03-09 21:39:53 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  installing the HPR generator.
							 
						 
					
						
							
								
									
										
										
										
											2023-10-06 15:47:09 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-06-27 01:36:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								## Usage
  
						 
					
						
							
								
									
										
										
										
											2022-07-02 12:52:50 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Generate two specific pages:
							 
						 
					
						
							
								
									
										
										
										
											2023-10-06 15:47:09 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								`site-generator index about`  
						 
					
						
							
								
									
										
										
										
											2022-07-02 12:52:50 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Generate the whole site:
							 
						 
					
						
							
								
									
										
										
										
											2023-10-06 15:47:09 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								`site-generator --all`  
						 
					
						
							
								
									
										
										
										
											2022-06-27 01:36:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-08-02 12:56:01 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Generate pages based on the same template:
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								`site-generator correspondent=1,3,5..10`  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-06-27 01:36:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								## Support
  
						 
					
						
							
								
									
										
										
										
											2024-10-01 16:40:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Please [submit an Issue ](https://repo.anhonesthost.net/HPR/hpr_generator/issues ),
							 
						 
					
						
							
								
									
										
										
										
											2022-07-02 12:52:50 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								and add the label "**Help Request**" for help running or installing the site-generator.
							 
						 
					
						
							
								
									
										
										
										
											2022-06-27 01:36:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2024-10-01 16:40:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								For discussing HPR site generation in general, please [submit an Issue ](https://repo.anhonesthost.net/HPR/hpr_generator/issues ) and add the label "**General Discussion**".
							 
						 
					
						
							
								
									
										
										
										
											2022-06-27 01:36:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								## Contributing
  
						 
					
						
							
								
									
										
										
										
											2022-07-02 12:52:50 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Happy to take any contributions or suggestions.
							 
						 
					
						
							
								
									
										
										
										
											2022-06-27 01:36:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2024-10-01 16:40:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								To contribute code or documentation, please create a fork of the project and [submit a pull request ](https://repo.anhonesthost.net/HPR/hpr_generator/pulls ) or send a patch. If an issue exists that is related to your patch, please assign the issue to yourself, or if it is already assigned to someone else, please coordinate with them to minimize duplicated efforts.
							 
						 
					
						
							
								
									
										
										
										
											2022-06-27 01:36:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2024-10-01 16:40:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								If you have found an error in the code or the generated HTML, please [submit an Issue ](https://repo.anhonesthost.net/HPR/hpr_generator/issues ),
							 
						 
					
						
							
								
									
										
										
										
											2022-07-02 12:52:50 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								and add the label "**Bug Found**".
							 
						 
					
						
							
								
									
										
										
										
											2022-06-27 01:36:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2024-10-01 16:40:52 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								To make a suggestion, please [submit an Issue ](https://repo.anhonesthost.net/HPR/hpr_generator/issues ),
							 
						 
					
						
							
								
									
										
										
										
											2022-07-02 12:52:50 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								and add the label "**Feature Request**".
							 
						 
					
						
							
								
									
										
										
										
											2022-06-27 01:36:01 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2022-07-02 12:52:50 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								## Authors and acknowledgment
  
						 
					
						
							
								
									
										
										
										
											2023-10-06 15:47:09 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  Roan "Rho`n" Horning 
						 
					
						
							
								
									
										
										
										
											2024-06-21 15:43:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  Dave Morriss 
						 
					
						
							
								
									
										
										
										
											2023-03-13 20:47:59 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  gordons 
						 
					
						
							
								
									
										
										
										
											2023-04-02 14:36:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  Ken Fallon 
						 
					
						
							
								
									
										
										
										
											2023-10-06 15:47:09 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  norrist 
						 
					
						
							
								
									
										
										
										
											2025-07-24 08:21:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  Paul Jewell 
						 
					
						
							
								
									
										
										
										
											2025-10-21 22:23:26 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  Lee Hanken 
						 
					
						
							
								
									
										
										
										
											2024-06-21 15:43:57 +00:00