forked from 0x2620/pandora
809 lines
27 KiB
Text
809 lines
27 KiB
Text
/*
|
|
indiancine.ma Settings
|
|
|
|
You can edit this file.
|
|
*/
|
|
{
|
|
"additionalSort": [
|
|
{"key": "director", "operator": "+"},
|
|
{"key": "year", "operator": "-"},
|
|
{"key": "title", "operator": "+"}
|
|
],
|
|
"annotations": {
|
|
"showUsers": false
|
|
},
|
|
"cantPlay": {
|
|
"icon": "NoCopyright",
|
|
"link": "/rights",
|
|
"text": "This film is not out of copyright yet, come back in 60 years"
|
|
},
|
|
/*
|
|
Capabilities are per user level.
|
|
They can either be general:
|
|
{level: true} means a user of that level has the capability)
|
|
or related to items:
|
|
{level: x} means a user of that level has the capability
|
|
for items of a rights level up to and including x
|
|
*/
|
|
"capabilities": {
|
|
"canDeleteItems": {"admin": true},
|
|
"canDownloadVideo": {"guest": -1, "member": -1, "student": -1, "staff": -1, "admin": -1},
|
|
"canEditAnnotations": {"staff": true, "admin": true},
|
|
"canEditEvents": {"staff": true, "admin": true},
|
|
"canEditFeaturedLists": {"staff": true, "admin": true},
|
|
"canEditFeaturedTexts": {"staff": true, "admin": true},
|
|
"canEditFeaturedEdits": {"staff": true, "admin": true},
|
|
"canEditMetadata": {"staff": true, "admin": true},
|
|
"canEditPlaces": {"staff": true, "admin": true},
|
|
"canEditSitePages": {"staff": true, "admin": true},
|
|
"canEditUsers": {"admin": true},
|
|
"canImportAnnotations": {},
|
|
"canManageTitlesAndNames": {"staff": true, "admin": true},
|
|
"canManagePlacesAndEvents": {"staff": true, "admin": true},
|
|
"canManageUsers": {"staff": true, "admin": true},
|
|
"canPlayClips": {"guest": 2, "member": 2, "student": 4, "staff": 4, "admin": 4},
|
|
"canPlayVideo": {"guest": 1, "member": 1, "student": 4, "staff": 4, "admin": 4},
|
|
"canSeeAccessed": {"staff": true, "admin": true},
|
|
"canSeeDebugMenu": {"staff": true, "admin": true},
|
|
"canSeeExtraItemViews": {"staff": true, "admin": true},
|
|
"canSeeFiles": {"staff": true, "admin": true},
|
|
"canSeeItem": {"guest": 3, "member": 3, "student": 4, "staff": 4, "admin": 4},
|
|
"canSeeSize": {"student": true, "staff": true, "admin": true},
|
|
"canSeeSoftwareVersion": {"staff": true, "admin": true},
|
|
"canSendMail": {"staff": true, "admin": true},
|
|
"canUploadVideo": {"guest": false, "member": false, "staff": true, "admin": true}
|
|
},
|
|
/*
|
|
clipKeys are the properties that clips can by sorted by.
|
|
If sortOperator is not specified, it will be + for strings and - for numbers.
|
|
*/
|
|
"clipKeys": [
|
|
{"id": "text", "title": "Text", "type": "string"},
|
|
{"id": "position", "title": "Position", "type": "float", "sortOperator": "+"},
|
|
{"id": "duration", "title": "Duration", "type": "float"},
|
|
{"id": "hue", "title": "Hue", "type": "float", "sortOperator": "+"},
|
|
{"id": "saturation", "title": "Saturation", "type": "float"},
|
|
{"id": "lightness", "title": "Lightness", "type": "float"},
|
|
{"id": "volume", "title": "Volume", "type": "float"}
|
|
],
|
|
/*
|
|
clipLayers is the ordered list of public layers that will appear as the
|
|
text of clips. Excluding a layer from this list means it will not be
|
|
included in find annotations.
|
|
*/
|
|
"clipLayers": ["subtitles"],
|
|
// fixme: either this, or filter: true in itemKeys, but not both
|
|
"filters": [
|
|
{"id": "director", "title": "Director", "type": "string"},
|
|
{"id": "country", "title": "Country", "type": "string"},
|
|
{"id": "year", "title": "Year", "type": "integer"},
|
|
{"id": "language", "title": "Language", "type": "string"},
|
|
{"id": "genre", "title": "Genre", "type": "string"},
|
|
{"id": "writer", "title": "Writer", "type": "string"},
|
|
{"id": "producer", "title": "Producer", "type": "string"},
|
|
{"id": "productioncompany", "title": "Production Company", "type": "string"},
|
|
{"id": "cinematographer", "title": "Cinematographer", "type": "string"},
|
|
{"id": "editor", "title": "Editor", "type": "string"},
|
|
{"id": "actor", "title": "Actor", "type": "string"},
|
|
{"id": "keyword", "title": "Keyword", "type": "string"}
|
|
],
|
|
/*
|
|
An itemKey must have the following properties:
|
|
id: The id of the key (as known by the server)
|
|
title: The title of the key (as displayed by the client)
|
|
type: text, string, float, integer, or array of any of these
|
|
and can have any of the following properties:
|
|
autocomplete: If true, find element will autocomplete
|
|
autocompleteSortKey: The key that suggestions will be sorted by
|
|
capability: A capability required to see this key
|
|
columnRequired: If true, the column can't be removed
|
|
columnWidth: Default column width in px
|
|
filter: If true, one can filter results by this key
|
|
find: If true, this key will appear as a find option
|
|
format: {type: "...", args: [...]}, for special formatting
|
|
(Ox.formatType(args) will be called)
|
|
sort: If true, one can sort results by this key
|
|
sortOperator: sort operator (+, -), in case it differs from the
|
|
default for the key's type (+ for strings, - for numbers)
|
|
sortType: special sort type (title, person)
|
|
value: {key: "...", type: "..."}, for keys that are derived
|
|
from other keys (like number of actors), or "capability"
|
|
*/
|
|
"itemKeys": [
|
|
{
|
|
"id": "*",
|
|
"title": "All",
|
|
"type": "text",
|
|
"find": true
|
|
},
|
|
{
|
|
"id": "title",
|
|
"title": "Title",
|
|
"type": "string",
|
|
"additionalSort": [{"key": "year", "operator": "-"}, {"key": "director", "operator": "+"}],
|
|
"autocomplete": true,
|
|
"autocompleteSortKey": "votes",
|
|
"columnRequired": true,
|
|
"columnWidth": 180,
|
|
"find": true,
|
|
"sort": true,
|
|
"sortType": "title"
|
|
},
|
|
{
|
|
"id": "director",
|
|
"title": "Director",
|
|
"type": ["string"],
|
|
"additionalSort": [{"key": "year", "operator": "-"}, {"key": "title", "operator": "-"}],
|
|
"autocomplete": true,
|
|
"columnRequired": true,
|
|
"columnWidth": 180,
|
|
"filter": true,
|
|
"find": true,
|
|
"sort": true,
|
|
"sortType": "person"
|
|
},
|
|
{
|
|
"id": "country",
|
|
"title": "Country",
|
|
"type": ["string"],
|
|
"autocomplete": true,
|
|
"columnWidth": 120,
|
|
"filter": true,
|
|
"find": true,
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "year",
|
|
"title": "Year",
|
|
"type": "year",
|
|
"additionalSort": [{"key": "director", "operator": "+"}, {"key": "title", "operator": "+"}],
|
|
"autocomplete": true,
|
|
"columnWidth": 60,
|
|
"filter": true,
|
|
"find": true,
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "language",
|
|
"title": "Language",
|
|
"type": ["string"],
|
|
"autocomplete": true,
|
|
"columnWidth": 120,
|
|
"filter": true,
|
|
"find": true,
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "runtime",
|
|
"title": "Runtime",
|
|
"type": "time",
|
|
"columnWidth": 60,
|
|
"format": {"type": "duration", "args": [0, "short"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "writer",
|
|
"title": "Writer",
|
|
"type": ["string"],
|
|
"autocomplete": true,
|
|
"columnWidth": 180,
|
|
"filter": true,
|
|
"find": true,
|
|
"sort": true,
|
|
"sortType": "person"
|
|
},
|
|
{
|
|
"id": "producer",
|
|
"title": "Producer",
|
|
"type": ["string"],
|
|
"autocomplete": true,
|
|
"columnWidth": 180,
|
|
"filter": true,
|
|
"find": true,
|
|
"sort": true,
|
|
"sortType": "person"
|
|
},
|
|
{
|
|
"id": "productioncompany",
|
|
"title": "Production Company",
|
|
"type": ["string"],
|
|
"autocomplete": true,
|
|
"columnWidth": 180,
|
|
"filter": true,
|
|
"find": true,
|
|
"sort": true,
|
|
"sortType": "person"
|
|
},
|
|
{
|
|
"id": "cinematographer",
|
|
"title": "Cinematographer",
|
|
"type": ["string"],
|
|
"autocomplete": true,
|
|
"columnWidth": 180,
|
|
"filter": true,
|
|
"find": true,
|
|
"sort": true,
|
|
"sortType": "person"
|
|
},
|
|
{
|
|
"id": "editor",
|
|
"title": "Editor",
|
|
"type": ["string"],
|
|
"autocomplete": true,
|
|
"columnWidth": 180,
|
|
"filter": true,
|
|
"find": true,
|
|
"sort": true,
|
|
"sortType": "person"
|
|
},
|
|
{
|
|
"id": "actor",
|
|
"title": "Actor",
|
|
"type": ["string"],
|
|
"autocomplete": true,
|
|
"filter": true,
|
|
"find": true,
|
|
"sortType": "person"
|
|
},
|
|
{
|
|
"id": "numberofactors",
|
|
"title": "Number of Actors",
|
|
"type": "integer",
|
|
"columnWidth": 60,
|
|
"sort": true,
|
|
"value": {"key": "actor", "type": "length"}
|
|
},
|
|
{
|
|
"id": "character",
|
|
"title": "Character",
|
|
"type": ["string"],
|
|
"autocomplete": true,
|
|
"find": true,
|
|
"sortType": "string"
|
|
},
|
|
{
|
|
"id": "name",
|
|
"title": "Name",
|
|
"type": ["string"],
|
|
"autocomplete": true,
|
|
"find": true
|
|
},
|
|
{
|
|
"id": "series",
|
|
"title": "TV Series",
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"id": "genre",
|
|
"title": "Genre",
|
|
"type": ["string"],
|
|
"autocomplete": true,
|
|
"columnWidth": 120,
|
|
"filter": true,
|
|
"find": true,
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "summary",
|
|
"title": "Summary",
|
|
"type": "text",
|
|
"find": true
|
|
},
|
|
{
|
|
"id": "trivia",
|
|
"title": "Trivia",
|
|
"type": ["text"]
|
|
},
|
|
{
|
|
"id": "releasedate",
|
|
"title": "Release Date",
|
|
"type": "date",
|
|
"columnWidth": 120,
|
|
"format": {"type": "date", "args": ["%a, %b %e, %Y"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "budget",
|
|
"title": "Budget",
|
|
"type": "integer",
|
|
"columnWidth": 90,
|
|
"format": {"type": "unit", "args": ["$"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "gross",
|
|
"title": "Gross",
|
|
"type": "integer",
|
|
"columnWidth": 90,
|
|
"format": {"type": "unit", "args": ["$"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "profit",
|
|
"title": "Profit",
|
|
"type": "integer",
|
|
"columnWidth": 90,
|
|
"format": {"type": "unit", "args": ["$"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "votes",
|
|
"title": "Mainstream Score",
|
|
"type": "float",
|
|
"columnWidth": 60,
|
|
"format": {"type": "ColorPercent", "args": [1, true]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "likes",
|
|
"title": "Arthouse Score",
|
|
"type": "float",
|
|
"columnWidth": 60,
|
|
"format": {"type": "ColorPercent", "args": [1, true]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "id",
|
|
"title": "ID",
|
|
"type": "string",
|
|
"columnWidth": 90,
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "subtitles",
|
|
"title": "Subtitles",
|
|
"type": "layer",
|
|
"find": true
|
|
},
|
|
{
|
|
"id": "duration",
|
|
"title": "Duration",
|
|
"type": "float",
|
|
"columnWidth": 90,
|
|
"format": {"type": "duration", "args": []},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "resolution",
|
|
"title": "Resolution",
|
|
"type": ["integer"],
|
|
"capability": "canSeeFiles",
|
|
"columnWidth": 90,
|
|
"format": {"type": "resolution", "args": ["px"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "aspectratio",
|
|
"title": "Aspect Ratio",
|
|
"type": "float",
|
|
"columnWidth": 90,
|
|
"format": {"type": "unit", "args": [":1", 3]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "pixels",
|
|
"title": "Pixels",
|
|
"type": "integer",
|
|
"capability": "canSeeFiles",
|
|
"columnWidth": 90,
|
|
"format": {"type": "value", "args": ["px"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "hue",
|
|
"title": "Hue",
|
|
"type": "float",
|
|
"columnWidth": 90,
|
|
"format": {"type": "color", "args": ["hue"]},
|
|
"sort": true,
|
|
"sortOperator": "+"
|
|
},
|
|
{
|
|
"id": "saturation",
|
|
"title": "Saturation",
|
|
"type": "float",
|
|
"columnWidth": 90,
|
|
"format": {"type": "color", "args": ["saturation"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "lightness",
|
|
"title": "Lightness",
|
|
"type": "float",
|
|
"columnWidth": 90,
|
|
"format": {"type": "color", "args": ["lightness"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "volume",
|
|
"title": "Volume",
|
|
"type": "float",
|
|
"columnWidth": 60,
|
|
"format": {"type": "color", "args": ["lightness"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "numberofcuts",
|
|
"title": "Number of Cuts",
|
|
"type": "integer",
|
|
"columnWidth": 60,
|
|
"format": {"type": "number", "args": []},
|
|
"sort": true,
|
|
"value": {"key": "cuts", "type": "length"}
|
|
},
|
|
{
|
|
"id": "cutsperminute",
|
|
"title": "Cuts per Minute",
|
|
"type": "float",
|
|
"columnWidth": 60,
|
|
"format": {"type": "number", "args": [3]},
|
|
"sort": true,
|
|
"value": {"key": "cuts", "type": "lengthperminute"}
|
|
},
|
|
{
|
|
"id": "words",
|
|
"title": "Number of Words",
|
|
"type": "integer",
|
|
"columnWidth": 60,
|
|
"format": {"type": "number", "args": []},
|
|
"sort": true,
|
|
"value": {"layer": "subtitles", "type": "words"}
|
|
},
|
|
{
|
|
"id": "wordsperminute",
|
|
"title": "Words per Minute",
|
|
"type": "float",
|
|
"columnWidth": 60,
|
|
"format": {"type": "number", "args": [3]},
|
|
"sort": true,
|
|
"value": {"layer": "subtitles", "type": "wordsperminute"}
|
|
},
|
|
{
|
|
"id": "size",
|
|
"title": "Size",
|
|
"type": "integer",
|
|
"capability": "canSeeSize",
|
|
"columnWidth": 60,
|
|
"format": {"type": "value", "args": ["B"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "bitrate",
|
|
"title": "Bitrate",
|
|
"type": "integer",
|
|
"capability": "canSeeFiles",
|
|
"columnWidth": 60,
|
|
"format": {"type": "value", "args": ["bps"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "parts",
|
|
"title": "Number of Parts",
|
|
"type": "integer",
|
|
"capability": "canSeeFiles",
|
|
"columnWidth": 60,
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "numberoffiles",
|
|
"title": "Number of Files",
|
|
"type": "integer",
|
|
"capability": "canSeeFiles",
|
|
"columnWidth": 60,
|
|
"sort": true,
|
|
"value": {"key": "files", "type": "length"}
|
|
},
|
|
{
|
|
"id": "filename",
|
|
"title": "Filename",
|
|
"type": ["string"],
|
|
"capability": "canSeeFiles",
|
|
"find": true
|
|
},
|
|
{
|
|
"id": "created",
|
|
"title": "Date Created",
|
|
"type": "date",
|
|
"columnWidth": 150,
|
|
"format": {"type": "date", "args": ["%Y-%m-%d %H:%M:%S"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "modified",
|
|
"title": "Last Modified",
|
|
"type": "date",
|
|
"columnWidth": 150,
|
|
"format": {"type": "date", "args": ["%Y-%m-%d %H:%M:%S"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "accessed",
|
|
"title": "Last Accessed",
|
|
"type": "date",
|
|
"capability": "canSeeAccessed",
|
|
"columnWidth": 150,
|
|
"format": {"type": "date", "args": ["%Y-%m-%d %H:%M:%S"]},
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "timesaccessed",
|
|
"title": "Times Accessed",
|
|
"type": "integer",
|
|
"capability": "canSeeAccessed",
|
|
"columnWidth": 60,
|
|
"sort": true
|
|
},
|
|
{
|
|
"id": "rightslevel",
|
|
"title": "Rights Level",
|
|
"type": "enum",
|
|
"columnWidth": 90,
|
|
"format": {"type": "ColorLevel", "args": [
|
|
["Public", "Relaxed", "Regular", "Restricted", "Private"]
|
|
]},
|
|
"sort": true,
|
|
"sortOperator": "+",
|
|
"values": ["Public", "Relaxed", "Regular", "Restricted", "Private", "Unknown"]
|
|
},
|
|
{
|
|
"id": "canplayvideo",
|
|
"title": "Can Play Video",
|
|
"type": "boolean",
|
|
"value": "capability"
|
|
},
|
|
{
|
|
"id": "canplayclips",
|
|
"title": "Can Play Clips",
|
|
"type": "boolean",
|
|
"value": "capability"
|
|
},
|
|
{
|
|
"id": "random",
|
|
"title": "Random",
|
|
"type": "integer",
|
|
"sort": true
|
|
}
|
|
],
|
|
/*
|
|
itemName specifies how items are being referred to.
|
|
Anything excessively long may cause layout errors.
|
|
*/
|
|
"itemName": {
|
|
"singular": "Movie",
|
|
"plural": "Movies"
|
|
},
|
|
"itemViews": [
|
|
{"id": "info", "title": "Info"},
|
|
{"id": "player", "title": "Player"},
|
|
{"id": "editor", "title": "Editor"},
|
|
{"id": "timeline", "title": "Timeline"},
|
|
{"id": "clips", "title": "Clips"},
|
|
{"id": "map", "title": "Map"},
|
|
{"id": "calendar", "title": "Calendar"},
|
|
{"id": "data", "title": "Data"},
|
|
{"id": "files", "title": "Files"}
|
|
],
|
|
// fixme: should be renamed to annotationLayers
|
|
"layers": [
|
|
{
|
|
"id": "publickeywords",
|
|
"title": "Public Keywords",
|
|
"canAddAnnotations": {"member": true, "student": true, "staff": true, "admin": true},
|
|
"item": "Public Keyword",
|
|
"overlap": true,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"id": "pirvatekeywords",
|
|
"title": "Private Keywords",
|
|
"canAddAnnotations": {"member": true, "student": true, "staff": true, "admin": true},
|
|
"item": "Private Keyword",
|
|
"overlap": true,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"id": "publicnotes",
|
|
"title": "Public Notes",
|
|
"canAddAnnotations": {"member": true, "student": true, "staff": true, "admin": true},
|
|
"item": "Public Note",
|
|
"overlap": true,
|
|
"showInfo": true,
|
|
"type": "text"
|
|
},
|
|
{
|
|
"id": "privatenotes",
|
|
"title": "Private Notes",
|
|
"canAddAnnotations": {"member": true, "student": true, "staff": true, "admin": true},
|
|
"item": "Private Note",
|
|
"overlap": true,
|
|
"private": true,
|
|
"showInfo": true,
|
|
"type": "text"
|
|
},
|
|
{
|
|
"id": "publicnotes",
|
|
"title": "Public Notes",
|
|
"canAddAnnotations": {"member": true, "student": true, "staff": true, "admin": true},
|
|
"item": "Public Note",
|
|
"overlap": true,
|
|
"showInfo": true,
|
|
"type": "text"
|
|
},
|
|
{
|
|
"id": "subtitles",
|
|
"title": "Subtitles",
|
|
"canAddAnnotations": {"staff": true, "admin": true},
|
|
"hasEvents": true,
|
|
"hasPlaces": true,
|
|
"isSubtitles": true,
|
|
"item": "Subtitle",
|
|
"type": "text"
|
|
}
|
|
],
|
|
"listViews": [
|
|
{"id": "list", "title": "as List"},
|
|
{"id": "grid", "title": "as Grid"},
|
|
{"id": "timelines", "title": "with Timelines"},
|
|
{"id": "clips", "title": "with Clips"},
|
|
{"id": "clip", "title": "as Clips"},
|
|
{"id": "map", "title": "on Map"},
|
|
{"id": "calendar", "title": "on Calendar"}
|
|
],
|
|
"media": {
|
|
"importPosters": true,
|
|
"importFrames": true
|
|
},
|
|
"personalLists": [
|
|
{"title": "Favorites"},
|
|
{"title": "Silent Films", "query": {"conditions": [{"key": "language", "value": "None", "operator": "=="}], "operator": "&"}}
|
|
],
|
|
"rightsLevel": {"member": 4, "staff": 3, "admin": 2},
|
|
"rightsLevels": [
|
|
{"name": "Public", "color": [128, 255, 128]},
|
|
{"name": "Relaxed", "color": [192, 255, 128]},
|
|
{"name": "Regular", "color": [255, 255, 128]},
|
|
{"name": "Restricted", "color": [255, 192, 128]},
|
|
{"name": "Private", "color": [255, 128, 128]}
|
|
],
|
|
"sendReferrer": false,
|
|
"site": {
|
|
"description": "Indiancine.ma proposes is an entirely new approach to visualizing and navigating moving images, and we hope that it can serve as a point of reference for individuals and institutions who are dealing with large collections of films.",
|
|
// FIXME: "from" and "to" would be more intuitive as keys here
|
|
"email": {
|
|
// E-mail address in contact form (to)
|
|
"contact": "contact@indiancine.ma",
|
|
"footer": "-- \nIndian Cinema - https://indiancine.ma",
|
|
"prefix": "Indiancine.ma News -",
|
|
// E-mail address uses by the system (from)
|
|
"system": "system@indiancine.ma"
|
|
},
|
|
"id": "indiancinema",
|
|
"name": "Indiancine.ma",
|
|
"url": "indiancine.ma",
|
|
"videoprefix": ""
|
|
},
|
|
"sitePages": [
|
|
{"id": "about", "title": "About"},
|
|
{"id": "news", "title": "News"},
|
|
{"id": "faq", "title": "Frequently Asked Questions"},
|
|
{"id": "terms", "title": "Terms of Service"},
|
|
{"id": "contact", "title": "Contact"}
|
|
],
|
|
"themes": ["oxlight", "oxmedium", "oxdark"],
|
|
"timelines": [
|
|
{"id": "antialias", "title": "Anti-Alias"},
|
|
{"id": "slitscan", "title": "Slit-Scan"},
|
|
{"id": "keyframes", "title": "Keyframes"},
|
|
{"id": "audio", "title": "Waveform"}
|
|
],
|
|
"totals": [
|
|
{"id": "items"},
|
|
{"id": "runtime"},
|
|
{"id": "files", "admin": true},
|
|
{"id": "duration", "admin": true},
|
|
{"id": "size", "admin": true},
|
|
{"id": "pixels"}
|
|
],
|
|
"tv": {
|
|
"showLogo": false
|
|
},
|
|
"user": {
|
|
"level": "guest",
|
|
"newsletter": true,
|
|
"ui": {
|
|
"annotationsFont": "small",
|
|
"annotationsRange": "all",
|
|
"annotationsSize": 256,
|
|
"annotationsSort": "position",
|
|
"clipsColumns": 2,
|
|
"columns": {
|
|
"Colors": {
|
|
"columns": ["title", "director", "country", "year", "hue", "saturation", "brightness"],
|
|
"columnWidth": {}
|
|
}
|
|
},
|
|
"filters": [
|
|
{"id": "director", "sort": [{"key": "items", "operator": "-"}]},
|
|
{"id": "productioncompany", "sort": [{"key": "items", "operator": "-"}]},
|
|
{"id": "year", "sort": [{"key": "name", "operator": "-"}]},
|
|
{"id": "language", "sort": [{"key": "items", "operator": "-"}]},
|
|
{"id": "genre", "sort": [{"key": "items", "operator": "-"}]}
|
|
],
|
|
"filtersSize": 176,
|
|
"find": {"conditions": [], "operator": "&"},
|
|
"followPlayer": true,
|
|
"icons": "posters",
|
|
"infoIconSize": 256,
|
|
"item": "",
|
|
"text": "",
|
|
"edit": "",
|
|
"itemFind": "",
|
|
"itemSort": [{"key": "position", "operator": "+"}],
|
|
"itemView": "info",
|
|
"listColumns": ["title", "director", "country", "year", "language", "runtime", "genre"],
|
|
"listColumnWidth": {},
|
|
"listSelection": [],
|
|
"listSort": [{"key": "director", "operator": "+"}],
|
|
"listView": "grid",
|
|
"lists": {},
|
|
"mapFind": "",
|
|
"mapSelection": "",
|
|
"page": "",
|
|
"section": "items",
|
|
"sequenceMode": "shape",
|
|
"sequenceSort": [{"key": "director", "operator": "+"}],
|
|
"showAnnotations": true,
|
|
"showBrowser": true,
|
|
"showCalendarControls": true, // fixme: should be false
|
|
"showFilters": true,
|
|
"showFlags": false, // fixme: this should be a site preference
|
|
"showHome": true,
|
|
"showIconBrowser": false,
|
|
"showInfo": true,
|
|
"showLayers": {
|
|
"privatenotes": true,
|
|
"publicnotes": true,
|
|
"subtitles": true
|
|
},
|
|
"showMapControls": false,
|
|
"showMapLabels": false,
|
|
"showFolder": {
|
|
"items": {
|
|
"personal": true,
|
|
"favorite": true,
|
|
"featured": true,
|
|
"volumes": true
|
|
},
|
|
"texts": {
|
|
"personal": true,
|
|
"favorite": true,
|
|
"featured": true
|
|
}
|
|
},
|
|
"showSidebar": true,
|
|
"showSitePosters": false,
|
|
"showTimeline": true,
|
|
"sidebarSize": 256,
|
|
"theme": "oxlight",
|
|
"videoMuted": false,
|
|
"videoPoints": {},
|
|
"videoResolution": 96,
|
|
"videoScale": "fit",
|
|
"videoSize": "small",
|
|
"videoSubtitles": true,
|
|
"videoTimeline": "antialias",
|
|
"videoView": "player",
|
|
"videoVolume": 1
|
|
},
|
|
"username": "",
|
|
"volumes": []
|
|
},
|
|
// fixme: this should include colors
|
|
"userLevels": ["guest", "member", "student", "staff", "admin"],
|
|
"video": {
|
|
"download": false,
|
|
"formats": ["webm", "mp4"],
|
|
"previewRatio": 1.7777777778,
|
|
"resolutions": [480, 240]
|
|
}
|
|
}
|