Database version 5
Major features:
Config file parsing
Multiple projects per instance
Searching across multiple projects
Art sprites, usable by project, medium and support
Minor features:
The search results are now sortable
Optimised the search page sorting
Fixes:
More reliable file system monitoring
Well-formed templates are now valid, even with the absence of assets
Correctly resove ~ in paths
Gracefully handle the lack of an internet connection
Renamed "annotator" to "indexer"
Removed PlayerURLPrefix, in favour of .hmml "output" parameter
Replaced the flags collection with:
-0 Dry-run mode
-c Set the config file path
-e Examine the database
-v Print version
-h Print help
New template tags:
__CINERA_NAV__ dropdown
__CINERA_NAV__ horizontal
__CINERA_NAV__ plain
__CINERA_PROJECT_PLAIN__
Deleted template tags:
__CINERA_MENUS__
__CINERA_SCRIPT__
We no longer prevent enforcement of strict server security policies (to
be documented)
Add bounds-checking to the Copy string functions, fixing buffer sizes
Fix the marker skipping (e.g. :afk)
Different ISBN database, and slightly more flexible BuildReference()
Permit line-breaking on '/' in the references menu
cinera.css and cinera_player*.js:
More subtle "click here to regain focus" - for @insofaras
Persist theatre mode - for @insofaras
Resume in-progress video at previous timecode - for @AsafGartner
cinera_player_pre.js: Episode keyboard navigation. Also swap out A for
K, and D for J
cinera_player_pre.js: Handle the case in onRefChanged() in which the
filter_container or filterState is not present
cinera.c: Refetch quotes when processing a set of annotations >60 mins
after the last fetch
Flags:
-w Force quote cache rebuild
Also compress the template code
cinera_player_pre.js: Fix bug in which onRefChanged() tried to call
player.jumpToNextMarker(); before the player was ready. This could
happen if its first marker's timecode is 0:00 and medium is :afk
Enable Theatre mode to work in containers styled with max-width or
max-height
Also fix the inotify loop, augment the index (the .metadata files) to
contain data useful for insobot, and futureproof UpgradeDB()
Flags:
* -e Examine Index
Just pop an -e on the end of your usual list of flags
* -u Update Interval (was -U)
This also changes the hardcoded, unintegrated output to wrap cineraMenus
and cineraPlayerContainer in a <div>, as newly reflected in the example
template_player.html
This is hardcoded for now, for ease of use, pending the config system
Also add Medium to the ProjectInfo array, to save users having to set
this with -m (which option remains available to them)
Reorganise the CSS, Images and JS files back to their location in the
same directory, since a default invocation of the program assumes they
are in the same directory as the Root Directory, to hopefully alleviate
some potential user frustration thanks to the requirement to set their
locations (with -c, -i and -j) before any usable output is produced