/***** V 3.0 *****/
/*
* IMPORTANT!!!!!
*
* READ ME FIRST!!!
*
* Requirements: A working directory under which are 2 directories named
* 'tmp' to store the html output files and another named
* 'dump' where the RSS feed text files are stored.
*
* There is NO error checking here. If these directries are
* not created first, there will be no notice, the script will
* NOT abort and tell you what happened.
*
* I run this from the command prompt: "php -f reader.php"
*/
/*
* FILE: reader.php
* Written by: Brett Blake
* Date: 6 August 2012
*
* Purpose: "reader.php" is the framework for a routine which downloads RSS
* standardized feeds, extracts news stories from them, and writes
* them to a series of web pages. A news-junkie's dream. The feeds
* fall into a series of categories based on the type of source being
* accessed: MSM, blogs, overseas media, official sources, etc for
* easier navigation. The inputs are a series of arrays found in
* Feedlist.php. There you will find the 200-odd feeds I currently
* retrieve. The output is about 2500 news stories every time this
* is run. Without removing posts older than 24 hours, that outpot
* doubles. The concept behind this enormous output isn't necessarily
* to keep track of a particular story as it develops, though I have
* a page devoted to this, but to provide an easy way to scan through
* lots of material quickly in order to see what's being reported and
* talked about.
*
* This is scalable by editing the Feedlist.php file, by adding
* and/or subtracting RSS feeds from the arrays. Thus, this is scalable to
* whatever degree you wish. Array indexes are explicitly made in the code
* which I know is unnecessary, but I just suck it up and renumber the index
* as I go along. You may change this as you wish. It is the one area in which
* I abandoned ease of maintenance, and yes, I do check this from time to time.
*
* $alt[] = array( "Alternet", "http://feeds.feedblitz.com/alternet",
* "http://www.alternet.org/", true );
* $alt[] = . . .
*
* will work equally as well.
*
* V3.0 makes use of PHP's OOP functionality, which I find extends the run
* time 3X, however I accept this drawback in favor of ease of code
* maintenance. In most aspects the design philosophy has been to be as
* easy as possible to maintain and scale this script and produce output
* which is both lightweight and durable.
*
* Files included here: reader.php
* Feedlist.php
* news_html.php
* reader.css
* index.html
* menu.html
*/
/*
* FILE: Feedlist.php
* Written By: Brett Blake
* Date: 6 August 2012
*
* Purpose: The application begins with data used to access RSS feeds and this data
* is stored here in arrays. The array structure used here is structured as
* follows:
*
* Field 0: The name of the feed.
* Field 1: The RSS URL
* Field 2: The top-level URL of the site, blog, etc.
* Field 3: Whether the user (me) considers this a must read.
*/
/*
* FILE: news_html.php
* Written by: Brett Blake
* Date: 6 August 2012
*
* Purpose: Functionality here deals with producing output which makes it
* easy to scan through lots of headlines at a glance, and somewhat
* easier to navigate through different kinds of news and opinion
* RSS feeds. The sole input is a massive array of Story_class objects
* and it is the task of generate_pages() to manage the material within,
* manage destination file creation, and ensure that the correct material
* lands in the correct file and calls on write_page() to actually write
* the html.
*
* *** There is one implicit dependency here: all categories of feed must
* be contiguous within the array for this level or organization to work.
*/