site-generator: Changed the routine used to generate entities in
'HTML::Entities'; see filter function 'xml_entity'
site.cfg: Added root variable 'http_baseurl' which defines the base URL
using 'http'
templates/rss.tpl.xml: RSS template defining the channel and inserting
the 'item' definitions; adjusted to be in step with the PHP version.
templates/shared-item.tpl.xml: RSS template used for each 'item' in an
RSS feed; contains a call to 'HTML::Strip' which turns off the
addition of spaces when removing tags; adjusted to be in step with
the PHP version.
templates/shared-utils.tpl.html: Macro collection used by other
templates; addition of temporay macro 'display_explicit_feed_2'
which generates 'Yes/No' strings to be in step with the PHP version.
templates/queries-correspondent-mysql.tpl.html,
templates/queries-correspondent-sqlite.tpl.html,
templates/queries-index-mysql.tpl.html,
templates/queries-index-sqlite.tpl.html: All SQL queries used a CASE
expression to return either 'Explicit' or 'Clean' depending on the
0/1 setting of the 'explicit' column. However, the TT² templates
using these queries were written to expect the numeric form. All the
'CASE' expressions have been replaced by the field name and now the
correct flag is being displayed.
templates/queries-correspondent-mysql.tpl.html,
templates/queries-correspondent-sqlite.tpl.html: enhanced the queries to
include the 'profile' field.
templates/content-correspondent.tpl.html: the 'profile' string from
whichever of the above two queries is invoked is displayed after the
(obscured) 'email' address
templates/content-index.tpl.html: the `TT²` algorithm can be simplified
because the new query returns less. We get the date of the show
before the free slot, and can increment it differently depending on
whether the previous show is on a Friday or not - catering for
weekends in other words!
templates/queries-index-mysql.tpl.html,
templates/queries-index-sqlite.tpl.html: using a 'find unused index
numbers' query available in many places on the Internet, but
modified to return the id number and date for the show *before* the
next free slot.
templates/content-index.tpl.html: Now contains TT² code and an in-built
query to determine the next free slot. No need for an external
query. Old code that used to use this has been deleted.
templates/queries-index-mysql.tpl.html,
templates/queries-index-sqlite.tpl.html: Old queries called
'query_next_available_episode' removed since no longer needed.
templates/queries-index-mysql.tpl.html,
templates/queries-index-sqlite.tpl.html:
Rather than driving the search from the eps table itself, this
version makes a counter that generates slot numbers from the current
show number to the highest show number in the system. The counter is
used to interrogate the eps table to find the first empty slot. This
sems to be a more reliable approach (but time will tell).
templates/queries-index-mysql.tpl.html,
templates/queries-index-sqlite.tpl.html: Enhanced the query that finds
the next free slot (query_next_available_episode). Also made it
compute the days to the slot from the current day. The query returns
data for calling Date::Calc to compute the number of days, but this
calculation is no longer necessary. Next release will remove this.
templates/content-index.tpl.html: The number of days to the next free
slot is reported here. The original Date::Calc computation which did
this is no longer needed and has been removed since the query
(query_next_available_episode) does it.
site-generator:
Added all the modules that the script and the templates use to make
it explicit what is required.
templates/shared-utils.tpl.html:
Added a new TT² macro called 'absolute_url' which takes two
arguments, the base and the path or relative URL. It's fairly
primitive but seems to work.
templates/content-about.tpl.html,
templates/content-recording.tpl.html,
templates/content-request_a_slot.tpl.html,
templates/content-requested_topics.tpl.html,
templates/page.tpl.html:
All calls to 'absolute_url' changed to use two arguments, and the
link definitions adjusted to match this change.