Commit Graph

29 Commits

Author SHA1 Message Date
Matt Mascarenhas 05518781c4 cinera.c: Config
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__
2020-05-09 18:33:25 +01:00
Matt Mascarenhas 9051caa94e cinera: Player page mobile style 2019-03-07 20:16:27 +00:00
Matt Mascarenhas 35b6b803e3 cinera.css: .cineraQueryContainer label margin 2019-03-04 00:08:06 +00:00
Matt Mascarenhas 9278390a38 cinera.c: Put sort button on query box's line 2019-03-03 23:32:58 +00:00
Matt Mascarenhas f5a767ff94 cinera.css: Typo 2019-03-03 01:09:57 +00:00
Matt Mascarenhas d6e633cf3e cinera.css: Search page mobile style
cinera_search.js: Conditionally display the results summary
2019-03-03 00:44:05 +00:00
Matt Mascarenhas c788fd464e cinera.css: Prevent link scrollbar, just in case 2018-05-22 22:57:39 +01:00
Matt Mascarenhas ce367b00aa cinera: Share link (to current annotation) 2018-05-22 22:43:59 +01:00
Matt Mascarenhas be37ea234a cinera: Replace all inline CSS and JS
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)
2018-04-22 21:57:31 +01:00
Matt Mascarenhas 4a0630beb0 cinera.c: Reference and player tweaks
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
2018-04-18 00:05:14 +01:00
Matt Mascarenhas e7aefbada0 cinera.css: Marker and categories style
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
2018-02-28 01:04:06 +00:00
Matt Mascarenhas 2cac3ed03b cinera.c: Add <!-- __CINERA_CUSTOMn__--> tags
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
2018-02-23 23:36:42 +00:00
Matt Mascarenhas c5bc487313 cinera.c: Prev / Next Episode Links
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)
2018-02-21 21:50:23 +00:00
Matt Mascarenhas c7762a0f7d cinera.css: Let cinera__*.css colour the indicator 2018-02-12 22:39:27 +00:00
Matt Mascarenhas 87e63a54e7 cinera.css: Index a:visited style 2018-02-12 21:54:28 +00:00
Matt Mascarenhas 0f27c96b29 cinera_search.js: Prevent crashes caused by | 2018-01-28 21:56:40 +00:00
Matt Mascarenhas 3d7add5b66 cinera: Handle sorting state separately from UI
Also add user-select: none
2018-01-21 19:30:54 +00:00
Matt Mascarenhas d7d27f59b7 cinera: Sortable index 2018-01-21 18:59:09 +00:00
Matt Mascarenhas b8013133b9 cinera: Fix theatre and add GUI clickable for it 2018-01-17 20:15:00 +00:00
Matt Mascarenhas f270ee2afa cinera: Theatre Mode
This also changes the hardcoded, unintegrated output to wrap cineraMenus
and cineraPlayerContainer in a <div>, as newly reflected in the example
template_player.html
2018-01-15 21:52:24 +00:00
Matt Mascarenhas 5e7029d2b0 cinera: Tweak filter
Introduce nullTopic, visually represent the media in annotations and
default to "exclusive" mode
2018-01-15 00:03:11 +00:00
Matt Mascarenhas 78861a1c78 cinera.css: Better behaving search .css
Keeps the results looking more consistent between various display widths
2018-01-12 23:26:07 +00:00
Matt Mascarenhas f1e39e0513 cinera.c: Namespace .text to .cineraText 2017-12-29 16:00:44 +00:00
Matt Mascarenhas f7b3e6ffe2 cinera.css: Help z-index increase 2017-12-10 17:15:37 +00:00
Matt Mascarenhas fda3ee819b cinera: More namespacing and style tweak 2017-12-10 17:05:46 +00:00
Matt Mascarenhas f07cc87629 cinera.c: Namespacing 2017-12-10 00:17:19 +00:00
Matt Mascarenhas 6f751dd2b2 cinera.c: Add support for alternative URL prefixes
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
2017-12-07 21:07:36 +00:00
Matt Mascarenhas f454e01e28 Add -s flag, project info and CINERA_PROJECT tag
-s flag sets the style / theme
Also some general code clean-up and repo organisation
2017-12-07 01:15:13 +00:00
Matt Mascarenhas 4572817837 cinera.c: Search [#7]
Also put the stuff in a new directory called cinera, that contains only
the files needed to get going, with example template files.
2017-11-11 00:34:47 +00:00