================================================================================ 2021-02-12 - v1.3000 (the 'Prepare for Stage 2' update) Updated OC API from v1.3 to v2.0. Unfortunately, this means that many school routes and longer-term ETAs are not being delivered anymore, at least currently in testing. Changed GPS adjusted detection from a provided 'GPSSpeed' to a provided 'Longitude' or 'Latitude' value, as 'GPSSpeed' is deprecated as of API v2.0. Stage 2 deprecates the names 'Confederation' for Line 1, and 'Trillium' for Line 2; Lines 3 and 4 are not assigned names. As such, internal names will be changing to reflect line numbering more than the current line names. Changes to icons: Added Line 3 (octL3), Route R3 (octL3R), Line 4 (octL4), and Route R4 (octL4R), and hypothetical infrequent variants (octL3X, octL4X) using official colours published in Stage 2 preview press release. Retired octOldNorm, octOldPeak, octOldExpr, and oldOldEarl as they haven't been relevant for over a year now. Reduced most route icon files into the new file iconsvg.json, instead of many disparate files that are, by and large, the same. This will reduce the number of requests to the server, and make future colour-swapped icons trivial to implement. Updated icons.json: octConfed -> octL1 octConfedR -> octL1R octConfedX -> octL1X octTrill -> octL2 octTrillR -> octL2R octTrillX -> octL2X +octL3: 3 +octL3R: R3,703 +octL4: 4 +octL4R: R4,704 +octFiller: 675 -octFiller: 401,402,403 stoRapBlu -> stoRB1 stoRapRed -> stoRB2 stoRapWht -> stoRBP stoRapBlk -> stoRBR -stoRBP: 300 -stoNorm: 51,53 -stoPeak: 22,24,25,29,32,44,46,60,61,88,94,98 +stoOther: 297,325,327,331,333,334,429,431,432,433,434,435,437,449,472,533, 534,549,550,566,571,576,634,650,652,653,654,731,734,740,749,750, 751,753,754,825,827,829,831,833,834,837,867,874 Changes to the stop reference: Added Chapel Hill with 3074 Added Corso Italia/Gladstone with 2358;6652;8949;6665 Changed Rideau [3009;7576;7577;7596;2351;7485] to remove 7577;7596;2351;7485 Moved South Keys to O-Train Stations for Line 2 and 4. Moved Walkley to O-Train Stations for Line 2 Renamed Carling/Dow's Lake to Dow's Lake/Carling Renamed St. Laurent to St-Laurent Stubbed Bowesville (2022) with 0000 Stubbed Convent Glen (2024) with 0000 Stubbed Limebank (2022) with 0000 Stubbed New Orchard (2025) with 0000 Stubbed Queensview (2025) with 0000 Stubbed Sherbourne (2025) with 0000 Stubbed Uplands (2022) with 0000 Under museums, added National Gallery with 8001. Under museums, added Royal Canadian Mint with 7581. Baseline and Dominion will be renamed once those changes are implemented by OC Transpo, expected to be in 2025. Leitrim and Airport/Aéroport will be moved once Lines 2/4 or R2/R4 begin serving them. Trim, Place d'Orléans, Jeanne d'Arc, Montréal, Westboro, Kìchì Sìbì/Dominion, Lincoln Fields, Iris, Algonquin/Baseline, Pinecrest, Bayshore, and Moodie will be moved once Lines 1/3 or R1/S1/R3/S3 begin serving them. Added disabled Line 1, 2, 3, and 4 icons to all future O-Train station listings and stubs. Updated synonyms.json with minor changes and removed unnecessary replacements. Because STO has now made their RT data feed public, it's probably time for a rewrite of the codebase that injests and processes data, in order for its addition to not be a giant ugly hack. As of yet, however, it has not been included. ================================================================================ 2020-06-03 - v1.2004 Minor synonyms.json changes. Changes to the stop reference: Changed Rideau (3009;7576) to include 7577;7596;2351;7485 (Rideau St. closure, 2020-04-26) Updated icons.json with missing entries: +octConfedR: R1 -octTrill: 2 (because Trillium is down for 2 years) +octTrillR: 2 (because Trillium is down for 2 years) ================================================================================ 2020-01-23 - v1.2003 (unpublished) Minor bug fixes. ================================================================================ 2019-10-06 - v1.2002 (the 'Goodbye, 95' update) Rebuild of synonyms.json has begun. Silent unnumbered updated will occur over the next week or two for this file. Changes to the stop reference: Changed Laurier (3020;0644) to include 0639 (flag for rtes 16, 19, etc). Updated icons.json with missing entries: +octFreq: 90 +octLocal: 55 +octConnex: 258,266 +octFiller: 190,639 ================================================================================ 2019-09-14 - v1.2001 (the 'Ready for Rail' update) Fixed clock during initialization from displaying aN:aN:aN. Now displays --:--:-- until clock can be synched from server. Fixed (possibly) settings failing to register on non-cached page loads due to function triggering before script is ready. Fixed language select failing to change language when translation file had previously been loaded/cached. Changed theme colour for mobile Chrome to black (instead of white). Changes to the stop reference: Created a new 'O-Train' section with for just O-Train stations (both lines). Re-added Cyrville (3026;1742;1748) and uOttawa/Campus (3021;6783;6782) as they return valid now. Added Cambrian Minto Recreation Complex (0339;0340) Added Central Station / Greyhound(2480;6850) Changed Carling (3061;8014;7369;2357) to include 2397 (stop C on Preston) and 6657 (stop D on Preston). Changed Laurier (3020) to include 0644 (stop 1A, for some reason). Changed Marketplace (3047;6946) to remove 6946, as Rte 175 info has been fixed in OC's live data. Changed Mooney's Bay (3063;1342;5602;1004) to include 1123 (stop D, on Heron). Changed Rideau (3009) to include 7576 (stop D, on Dalhousie). Removed all temporary stopcodes below 0050 because they aren't needed, and are no longer valid according to the OC's live data. Removed Moodie (old) (6478;6480;7962;0315;6461;5284) because all routes now appear to be represented in the new station's stopcode (3042). Updated news.json to show fall service has begun. Updated icons.json (some routes have been removed preemptively): +octRapid: 39,57,74,75 -octRapid: 91,94,95,96,104 +octFreq: 14,25,51,53,85,87 +octLocal: 5,9,30,35,46,58,170,171,175 +octConnex: 251,284 -octConnex: 293 +octFiller: 15,33,73,114,140,141,154,161,162,165,166,173,199 -octFiller: 174,696 -octOldNorm: 5,9,14,30,33,85,87,101,112,122,129,135,144,146,147,148,149,152, 161,162,165,170,171,173,175 -octOldPeak: 22,103,105,154,166,199 Will completely rebuild synonyms.json after 2019-10-06 changes happen, due to the large number of changed routes. ================================================================================ 2019-04-19 - no version update Fixed news.json for accurate v1.2 release date of April 15th (instead of 13th) and OC Transpo summer service beginning date of June 23rd (instead of 30th). ================================================================================ 2019-04-15 - v1.2000 (mislabelled v1.1200 at top of source code) Updated OC API from v1.2 to v1.3, which natively supports route numbers with letter prefixes and suffixes. Faster data retrieval times are also expected. - Route numbers now use strings instead of integers/floats - Sorting function adjusted to convert strings into integers - Route icon table altered to use strings instead of integers - GRSFRS.Routes.Route might be null when no routes serve stop. Updated bodge.json to remove routes no longer having data oddities. - 27,45,89,167,175,179,299,624,635,658,696 Updated icons.json with missing routes and renumbering of 269 to 257. +octConfedR: R1,701 +octTrillR: R2 +octConnex: 257 -octConnex: 269 +octFiller: 153,620,631,638,645,686,689 -octOldNorm: 153 Updated Carlingwood stop reference to remove 5889 & 8049 from service, and add temporary stop 0099, due to the ongoing Sears demolition. Some issues regarding loading settings from bookmark have been noted and will be examined in the coming weeks. ================================================================================ 2018-12-30 - v1.1901 Stopcodes 0001 through 0012 have been reassigned to the Elgin detour stops, so they've been removed from the major stop directory. The other sub-0100 transit codes are probably temporary, but will be maintained until proven so/removed from use. Known bug: The December 23rd changes have reverted some of the October 17th and December 3rd service changes in the API data feed (mostly regarding new stops for certain routes, which have been accidentally unassigned again). This is a problem on OC Transpo's end, and cannot be solved in the app. ================================================================================ 2018-12-23 - v1.1900 Rewriting sections of data loading and user settings handling to be clearer/easier to maintain. Use of for(let x of y){} has been converted to y.forEach(function(x){}) for the benefit of compatibility with IE11. User settings automatically/silently saved to query string without refresh, using history.replaceState() instead of window.location.href, meaning the 'Permalink' button and hard-refreshing to save is no longer required. Updated the privacy statement a bit to remove references to the 'Permalink' function, and to mention that some data is saved to browser history. When control panel is open, the browser's button should now close the panel instead of directing away, and the forward button should reopen it if previously opened, using history.pushState(). When the number of lines displayed (lineCount) is changed in the UI, immediately populate the new display with the last build of the display (displayTable) instead of leaving the display blank until the next per-second display redraw. Added Park & Ride icons to stop directory. Green icons are for full-size lots, while white icons are for smaller, rural, or permit-only lots. Replaced WBRs after every code in stop directory with BRs after every 3 codes, for the benefit of compatibility with IE11. Enabling Lyon and Parliament stations in stop directory, and adding new stop codes (likely temporary) for Bayview, Pimisi, Lyon, Parliament, Rideau, uOttawa, Lees, Tremblay, St-Laurent, and Cyrville. All these codes are between 0001 and 0030. The GPS API has finally started responding to the Moodie Station stopcode, so that line has been added and the previous 6 stop codes removed. Updated icons.json with October and December updates and additional, missed changes. +octFiller: 167,609,624,635,658,696 +octConnex: 275 -octOldPeak: 167 Updated synonyms.json to remove invalid entries now visible with refactored tableRebuild() code, and to add missed changes. Externalized routeBlacklist, routeBlacklistWeird, and routeDupelist to bodge.json, and made them company/agency-specific (facilitating the addition of other agencies, like STO/TCO, should that ever occur). Also included in bodge.json are rail-replacement routes with letter prefixes, so that the rail-replacement routes internally numbered 701 and 702 are correctly displayed as R1 and R2, respectively. Added dupeListInverse to bodge.json for Route 658, where PM trips are direction 0, & AM trips are direction 1...but dupeList behaviour also occurs. Added more error messages for when things go wrong instead of silently failing and locking up/panicking. Also changed error messages so stopcodes under 1000 will show all four digits and without an icon if they are identical to a valid existing route. ================================================================================ 2018-11-21 - no version increment Updated news.json as Sept 2nd was incorrectly labelled as the beginning of summer service instead of fall service. Updated news.json to show Dec 24 as beginning of winter service. ================================================================================ 2018-09-10 - v1.1809 Updated icons.json with additional, missed changes. Changes are only made to the icons file when all print materials (route map and system map) reflect the new designation. +octFreq: 7,12,16 +octLocal: 19,106,168 +octFiller: 155,164 -octOldNorm: 7,12,16,19,106,168 -octOldPeak: 155,164 ================================================================================ 2018-09-08 - v1.1808 Update delayed due to illness. Updated icons.json and synonyms.json to reflect Sep 2nd route changes, as well as some previously missed changes. +octTrillR: 702 +octFreq: 10,111 +octLocal: 20,34,38,64,131,138 -octLocal: 32 +octFiller: 32 -octOldNorm: 4,64,111,131,134 -octOldPeak: 34,38 -octTrill: 107 Added new route icons for train replacement routes R1 and R2, and new classes for those routes ("octConfedR" and "octTrillR"). Some additional work may be required for these to appear correctly. Added new alternate route icons for infrequent routing (outlined shape + coloured number, instead of solid shape + white number). Currently unused, except for Local-Infrequent which already uses "octFiller". ("octConfedX", "octTrillX", "octRapidX", "octFreqX", "octLocalX", "octConnexX") Removed .png fallbacks for route icons - they appear to never have been used. CSS now only includes references to .svg files. Due to a lack of heavy use of the app, cache times for data have been reduced to 5 minutes across all stops and days, instead of ranging from 5 minutes for Transitway stops on weekdays to 20 minutes for regular stops on weekends. Changes have been made server-side to allow for these frequent requests as well. ================================================================================ 2018-06-26 - v1.1807 Updated icons.json and synonyms.json to reflect Jun 24th route changes. -octTrill: 750 +octLocal: 18,86,89 +octFiller: 139,151,174 -octOldNorm: 18,86,174 Added Parliament (0019) and Lyon (0018) LRT station stopcodes as published by OC Transpo on their website, despite not being in use yet. Added markers beside stations serviced by lines 1 (once open) and 2 (currently). Added stop-specific filters for wrongly duplicated 89 and 151 listings from OC. ================================================================================ 2018-04-24 - v1.1806 Updated icons.json and synonyms.json to reflect Apr 22nd route changes. Fixed changelog using '2017' as year for 2018 entries. Happens to the best of us, right? Removed April Fools gag code entirely. ================================================================================ 2018-04-07 - v1.18051 Disabled April Fools gag by default; still viewable with stop 0000. ================================================================================ 2018-04-01 - v1.1805 ('One Year Anniversary') Added a random info generator when no stops are loaded as an April Fools gag. Fixed script trying to load stop 0000. ================================================================================ 2018-03-14 - v1.1804a Updated synonyms.json with minor changes that have appeared over the last 2 months. ================================================================================ 2018-01-03 - v1.1804 Updated synonyms.json with more Dec 24th route changes. Deblacklisted route 107 and certain connexion routes as changes have been made to correct flaws in the data on OC's end. Blacklisted route 750 as wrong data was appearing; valid Trillium data is listed under route 2, as expected. ================================================================================ 2017-12-24 - v1.1803 Updated icons.json and synonyms.json to reflect Dec 24th route changes. Some additional updates will likely be required later this week for currently undocumented changes in OC's data, if there are any. Fixed "Full Screen" radio button bug - previously, if the Full Screen mode was enabled via Permalink/URL, the feature would correctly enable but the options panel would show 'Off' selected. "Moodie" station code updated from 6478;6480;7962;0315;6461;5284 to 3042. "Confederation" station name updated to "Mooney's Bay / Confederation". ================================================================================ 2017-10-14 - v1.1802 Added a 'sleep' value if there are connection errors with OC's API servers. This should prevent the app breaking or spamming the server with data requests because it hasn't received valid data. Excluded stop 3064 from the 3000-3099 transitway range. 3064 is uniquely the only stop in this range that is not a major transit station, being a stop on River Road, behind the airport, only serviced by the five runs of the south-bound 189 to Leitrim weekday mornings from 6AM to 8AM. ================================================================================ 2017-09-28 - v1.1801 Reorganized "Major Stop Reference" into sections - 'Core', 'Transit', 'Hospitals', 'Malls', 'Museums', and 'Other Landmarks'. Added more reference entries. Fixed a few Synonym entries. NEW KNOWN BUG: Route Icons don't necessarily use 'official' colours, due to OC not keeping said colours consistant even within a single official document, let alone between them. If a specific colour is ever chosen, the icons will be adjusted to match it. Confed. Trill. Rapid Freq. Local Connex. Route Maps | --- |#64BC44|#005DA6|#F36C21|#6C6D70|#B66B95| System Map | --- |#6DC62D|#1573C4|#F58329|#656262|#BF5FB1| System Map (Filler Alt) | | | | |#5A5757| | Ready for Rail Site |#D62E3B|#76BF43|#1A559B|#F26532|#404040|#9B5BA4| Ready for Rail (Filler Alt) | | | | |#6D6E71| | Renumber Bulletin 2017-04 | --- | --- |#004FB0|#FB3F00|#656262| --- | Renumber Bulletin 2017-06 | --- | --- | --- |#F0411D|#656262|#B25496| Renumber Bulletin 2017-09 | --- | --- | --- |#F15D22|#636363| --- | ================================================================================ 2017-09-03 - v1.1800 Updated icons.json and synonyms.json to reflect Sept 3rd route changes. Some additional updates will likely be required later this week for currently undocumented changes in OC's data, if there are any. The "Major Stop Reference" area now has quick add buttons. When clicked, the stopcode field value will be replaced and data for the new stopcodes will be immediately requested. OCT route icon SVGs have been renamed (iconType.svg -> octType.svg) to match the CSS classes that use them, and the SVGs themselves have been minified to remove the extra bits Inkscape adds to them. /res/ folder has been refreshed because certain small changes in beta version were not being propagated to production. ================================================================================ 2017-08-10 - v1.1702 SSL Certificate acquired from https://letsencrypt.org/ - all traffic is now redirected to use HTTPS. There may not be much reason to do this on this app, but it may come in handy with other projects on the same server. Removed buggy reload-with-altered-settings that only ever partially worked on Firefox. Now, if settings are not found in the query string, defaults will be used and the form elements will be reinitialized. New social media thumbnail featuring the full post-2018 route icon set and a properly displayed name and URL. ================================================================================ 2017-08-05 - v1.1701 Cleaned up synonyms.json, changed how synonyms are applied (primarily to correct odd destinations like "Hurdman Night Stop" instead of just "Hurdman") Removed inactive code to account for the Trillium line (750) being replaced with route 107 at the end of June (added v1.1603). ================================================================================ 2017-06-25 - v1.17 Still maintaining this, I swear. Updated icons.json to reflect June 25th route changes. Actual numbers will be added when the date arrives. Updated icons.json with STO and Transcollins routes, and updated the main code with at least the possibility of handling route data from multiple transit authorities. Relevant SVGs have been created and classes in the CSS are ready. NOTE: At this time, STO and TCO (and others) run data have NOT been included. Investigating STO GTFS data (as well as creating data for 500-routes and TCO). Looking at automated (or at least mostly automated) parsing/restructuring as GTFS is not convenient directly and manually sorting that much data is unreasonable, especially if it updates every 3-4 months. Adding dummy stopAge data on manual load to potentially fix any "Stop not loaded" errors. Adding "no trips" message when there are no scheduled buses at loaded stops to provide feedback that the screen is intentionally blank. Changed 6h+ mode to squish three digits into the space of two, in order to improve usability/readability while not completely compromising the monospaced display aesthetic. For instance, 2 hours will display as '120' instead of 'C0'. ================================================================================ 2017-06-12 - v1.1604 Stops with no routes servicing it on a particular day was not updated by the client (intended behaviour) even if the date had changed and routes now served said stop (unintended). New condition has been added to refresh stop data if data is from before 4AM of the current day, regardless of if it has routes or not. Note that this is strictly for stops with no routes at all during the day; stops with at least one bus run of one route at some point between 4AM and 3:59AM the next day are not considered stops with "no routes", provided that run is acknowledged in GPS data (300-series/450-series never are). ================================================================================ 2017-06-11 - v1.1603 Planned Trillium shutdown for 2 weeks; added a bit of code to the main display loop to watch the time and to switch routeBlacklist from 107 to 750 between June 17th, 4AM and 30th, 4AM. ================================================================================ 2017-04-24 - v1.1602 I am completely embarrassed by the number of bugs and technical glitches that have surfaced over the last 48 hours. ================================================================================ 2017-04-23 - v1.1601 Emergency rewrite of query loading code because some browsers *cough* IE11 and Pale Moon *cough* don't like URLSearchParams. IE11 also doesn't like String.prototype.repeat(). ================================================================================ 2017-04-23 - v1.16 Updated icons.json to reflect April 23rd route changes. Minor fix with server time usage. Removed from console.log spam used for debugging. Attempted to improve permalink-generating code by using window.location.href instead of window.location.search for potential wider compatibility. Added new sorting options: by region (tens digit of number) and by type (consults iconData/icons.json, with order being defined by iconData.categories). Tentatively, type order will be Confederation, Trillium, Rapid (blue), Frequent (orange), Connexion (purple), Local (gray), Filler 'Local' (white). Added translations for new sorting option. ================================================================================ 2017-04-14 - v1.15 Now synch to server time instead of relying on device time. I've realized that likely no one has a phone with properly set time due to the sheer number of time-gated games that people seem to love for some reason. ================================================================================ 2017-04-12 - v1.1401 Fixed minor errors in html which may have caused problems. ================================================================================ 2017-04-11 - v1.14 Major bug fix - order of stop codes actually matters now, like it's been advertised to do all along. Fixed resultant bug of parsing information in user order instead of load order by briefly displaying a 'isn't loaded yet' message for a stop not yet loaded. ================================================================================ 2017-04-10 - v1.1303 Force displayRebuild() on jsonLoad() for snappier apparent loading time. Added email address/contact information in about section. ================================================================================ 2017-04-08 - v1.1302 Set meta viewport for mobile devices and adjusted fullscreen/scale mode accordingly. Added a modified 'Courier Prime' as a fallback font if Courier New unavailable. ================================================================================ 2017-04-06 - v1.1301 Fixed language permalink loading and saving. ================================================================================ 2017-04-06 - v1.1300 Added i18n and (very poor, most likely) french translation. Option to expand to more languages available if translators present themselves. ================================================================================ 2017-04-05 - v1.1203 Throw error message if someone hits 'Load Stops' while busstop input is empty. ================================================================================ 2017-04-03 - v1.1202 Removed some swearing from the source code. Considering submitting app to OC Transpo. ================================================================================ 2017-04-02 - v1.1201 Minor bug fix. ================================================================================ 2017-04-02 - v1.12 Added GPS Marking mode, which highlights all trips that are actually GPS-adjusted in what I'm hoping is a colourblind-safe green. Relabeled array references in filterJSON, tableRebuild, and displayRebuild to use constants as labels in an effort to make the code more understandable. ================================================================================ 2017-03-21 - v1.11 Complete rewrite of control panel UI to be more friendly for mobile devices. Added notes for April 23rd renumbering to icons.json Added new 'line count' slider to increase or decrease number of visible lines in display. May be useful for vertical widescreen displays. ================================================================================ 2017-03-07 - (no version increment) Duplicated and missing routes fixed thanks to OC Transpo; special filters for routes 193, 261, 630, 678, & 750 (Trillium Line) disabled. Added additional font-family entries for platforms that do not have "Courier New" installed. This should make mobile platforms look better, especially Firefox on Android. ================================================================================ 2017-03-02 - (no version increment) Data fetcher decided to adjust to Daylight Saving Time 2 weeks early. Because timezones are hard. Was a 2 character fix. (>7 instead of <8) ================================================================================ 2017-02-22 - v1.10 Switched to ES6 'let' for loop incrementers instead of 'var'. Better documented missing and bugged routes in source code. Added missing stop codes for Millennium (useful for Gisele Lalonde school buses) ================================================================================ 2017-02-17 - v1.09 Implemented permalink and reloading of settings from query string. ================================================================================ 2017-01-19 - v1.081 Implemented auto-updating and reloading of settings on refresh. ================================================================================ 2017-01-19 - v1.08 Rewrote filterJSON() - additional structure possibilities were unaccounted for in the original, and the code was becoming more and more spaghetti-like due to detection methods being hacked in. The new filterJSON() should now be able to handle any of the 9 known ways GRSFSR.Routes.Route can be presented. Added an internal version number. Looking at adding query-string settings and auto-updating if a new version is detected (embed version info in JSON data?) ================================================================================ 2017-01-13 - v1.07 Added detection for if/when GPS data is delivered to the client without an age timestamp, resulting in all ETAs being NaN, nothing being displayed, and the script refusing to attempt to fetch new data. Added additional blacklisting for routes that are both erroneously coming and going at their terminus. (193, for instance.) Switched to SVG route icons to improve look in full screen mode. PNGs still available as a fallback. ================================================================================ 2017-01-05 - v1.06 Added 'Unspecial Special Run Filter' - when all displayed runs of a given route have the same exceptional destination, they will be marked as unexceptional and the route's main destination will be altered to reflect the true destination. This is meant to help with routes that have different destinations during different days of the week/times of the day, like "12 Rideau" vs "12 Bank", as well as stops that are only part of an extended route, like "91 Orleans" vs "91 Trim". ================================================================================ 2016-12-15 - v1.05 Added 'Route Icons' - using colours and shapes similar to those found in official OC documents to represent the various routes, instead of simply white numbers on black background like the original screens. Styles available for all pre-2018 and post-2018 route types (Standard, Peak, and Express; Confederation, Trillium, Rapid, Frequent, Local, Connexion, and 'Other') ================================================================================ 2016-12-05 - v1.04 (retroactively written on 2017-01-13) Sped up requesting of data. Should download within 2-3 seconds instead of around 10 seconds. ================================================================================ 2016-12-03 - v1.03 ================================================================================ 2016-12-01 - v1.02 (retroactively written on 2017-01-13) GTFS data largely abandoned. GPS data requests now working. Most functionality rewritten to accommodate OC's GPS .JSON formatting instead of hardcoded or randomly generated tables. ================================================================================ 2016-11-27 - v1.01 (retroactively written on 2017-01-13) Revisting project after a month of inactivity. Investigating GTFS dataset for inclusion. ================================================================================ 2016-10-09 - v1.00 (retroactively written on 2017-01-13) Hard-coded data for 4 stops (2325+2331, and 6960+7941) added for demonstration purposes. Project considered complete, but useless toy. ================================================================================ 2016-10-01 (retroactively written on 2017-01-13) Project started to recreate info screens using randomly generated data. ================================================================================