Commit Graph

10 Commits

Author SHA1 Message Date
Dave Morriss
e5b5aac104 A further fix to the free slot algorithm
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.
2023-11-17 18:23:22 +00:00
Dave Morriss
097b50b30b Next free slot algorithm now in TT² form
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.
2023-10-29 17:32:02 +00:00
Dave Morriss
8325b2c0d1 Unwanted items commented out 2023-10-29 17:28:04 +00:00
Dave Morriss
c8135d811d Bug fix of query to find days to next free slot
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).
2023-10-20 13:37:37 +01:00
Dave Morriss
dab80f1772 Using even more complex CTE query for testing 2023-10-16 23:01:30 +01:00
Dave Morriss
3ccd6101ee Removed unnecessary computations from query_next_available_episode 2023-10-12 19:36:03 +01:00
Dave Morriss
366729a827 Fixing days to next free slot
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.
2023-10-10 17:55:44 +01:00
Dave Morriss
3f766544ac I145 Various bug fixes
site-generator: fixed an error in the POD documentation and added an
    example. Reformatted 'GetOptions' arguments. Fixed 'parse_page_arg'
    which started its returned array with an empty arrayref. Fixed code
    using this array which skipped this unwanted extra value. Fixed
    'get_ids_from_db' which turns a CSV list of shows into an array, but
    includes a blank element. Removed a few trailing spaces.

templates/content-correspondents.tpl.html: Capitalised "License". Added
    'order by h.host' to the internal query to get hosts sorted
    alphabetically.

templates/content-episode.tpl.html: Added a call to macro
    'zero_pad_left' to add leading zeroes to show number in the title.
    Added a call to 'FILTER html_para' when displaying comments (which
    are plain text). Added a test for whether the show being displayed
    is in the 20-show window before the current one to determine whether
    the short or long comment form is required. Added the code to
    generate the two form types depending on the earlier test.

templates/content-sitemap.tpl.html: Corrected the entry for "Show
    Comments" which contained an invalid URL.

templates/page.tpl.html: Grammar corrections in the '<head>' section.

templates/queries-episode-mysql.tpl.html: Adjusted the date tests in the
    CTE's which compare the episode date with today's date plus one day.
    Why add a day when the test is whether the episode date is less than
    or equal to the current one? Also, it seemed that MySQL/MariaDB
    might need to work with the UTC date rather than the local dat
    implied by 'NOW()'.

templates/queries-episode-sqlite.tpl.html: Similar adjustment to date
    tests in CTE's to the MySQL version. SQLite defaults to UTC however.

templates/queries-episodes-mysql.tpl.html: See above for notes about
    date tests and MySQL UTC dates. Same arguments here.

templates/queries-episodes-sqlite.tpl.html: Date test adjustment
    described above.

templates/queries-ids-episode-mysql.tpl.html: Removed the date test from
    the query so all episode numbers are returned. Added an 'order by'
    since the table can (could in the past) return numbers out of
    numerical sequence.

templates/queries-ids-episode-sqlite.tpl.html: Same change as for the
    MySQL version.

templates/queries-index-mysql.tpl.html: There are three queries here,
    returned as TT² variables. The one called 'query_latest_episodes'
    has been adjusted to use UTC and to avoid adding a day to the
    current date. The query called 'query_last_5_weeks_episodes' has
    been similarly adjusted.

templates/queries-index-sqlite.tpl.html: Changes for the same two
    queries, but just for the tests requiring today's date plus one day.

templates/rss-comments.tpl.xml: Grammar corrections in the
    '<channel><description>' section.

templates/rss.tpl.xml: Grammar corrections in various subsections of the
    '<channel>' section.

templates/shared-call_for_shows.tpl.html: Removed the "FTP server"
    message. Slight tidying.
2023-07-23 17:03:27 +01:00
e7fe824302
Fix calculation of the days until next available episode timeslot
Do all date calulation in DB instead of naively adding 1 to the
day that is returned.
2023-05-18 09:04:04 -04:00
2a486cb58b
Add SQLite specific query templates 2023-02-08 16:05:36 -05:00