update config
This commit is contained in:
parent
89f2a97a80
commit
d75b4a7b25
1 changed files with 323 additions and 3 deletions
326
config.jsonc
326
config.jsonc
|
@ -6,7 +6,8 @@
|
||||||
|
|
||||||
{
|
{
|
||||||
"annotations": {
|
"annotations": {
|
||||||
"showUsers": true
|
"showUsers": true,
|
||||||
|
"separator": ","
|
||||||
},
|
},
|
||||||
"cantPlay": {
|
"cantPlay": {
|
||||||
"icon": "NoCopyright",
|
"icon": "NoCopyright",
|
||||||
|
@ -55,7 +56,15 @@
|
||||||
"canSeeItem": {"guest": 3, "member": 3, "researcher": 3, "staff": 3, "admin": 3},
|
"canSeeItem": {"guest": 3, "member": 3, "researcher": 3, "staff": 3, "admin": 3},
|
||||||
"canSeeSize": {"researcher": true, "staff": true, "admin": true},
|
"canSeeSize": {"researcher": true, "staff": true, "admin": true},
|
||||||
"canSeeSoftwareVersion": {"researcher": true, "staff": true, "admin": true},
|
"canSeeSoftwareVersion": {"researcher": true, "staff": true, "admin": true},
|
||||||
"canSendMail": {"staff": true, "admin": true}
|
"canSendMail": {"staff": true, "admin": true},
|
||||||
|
"canAddDocuments": {"member": true, "admin": true, "staff": true},
|
||||||
|
"canEditFeaturedCollections": {"admin": true, "staff": true},
|
||||||
|
"canImportItems": {"member": true, "admin": true, "staff": true},
|
||||||
|
"canManageHome": {"admin": true, "staff": true},
|
||||||
|
"canManageTranslations": {"admin": true},
|
||||||
|
"canRemoveDocuments": {"admin": true, "staff": true},
|
||||||
|
"canSeeAllTasks": {"admin": true, "staff": true},
|
||||||
|
"canSeeDocument": {"member": 1, "admin": 4, "staff": 4, "guest": 1}
|
||||||
},
|
},
|
||||||
/*
|
/*
|
||||||
clipKeys are the properties that clips can be sorted by.
|
clipKeys are the properties that clips can be sorted by.
|
||||||
|
@ -76,6 +85,303 @@
|
||||||
included in find annotations.
|
included in find annotations.
|
||||||
*/
|
*/
|
||||||
"clipLayers": ["subtitles", "keywords", "notes"],
|
"clipLayers": ["subtitles", "keywords", "notes"],
|
||||||
|
/*
|
||||||
|
"documentKeys" defines the metadata associated with each document. Required keys
|
||||||
|
are "*", "id" and "title".
|
||||||
|
A documentKey must have the following properties:
|
||||||
|
"id": The unique id of the key (as used by the server)
|
||||||
|
"title": The title of the key (as displayed by the client)
|
||||||
|
"type": Can be "boolean", "date", "enum", "float", "hue", "integer",
|
||||||
|
"layer", "string", "text", "time" or ["..."] (list of values of
|
||||||
|
this type). If type is "layer", this is a reference to the
|
||||||
|
annotations layer with the same id.
|
||||||
|
and can have any of the following properties:
|
||||||
|
"additionalSort": Ordered list of {key, operator} objects, where key is
|
||||||
|
another itemKey and operator is "+" or "-". This can be used to
|
||||||
|
override user.ui.listSort when results are sorted by this key.
|
||||||
|
"autocomplete": If true, the find element will provide autocomplete
|
||||||
|
"autocompleteSort": Sort order of autocomplete suggestions
|
||||||
|
"capability": A capability required to see data for this key
|
||||||
|
"columnRequired": If true, the column can't be removed from list view
|
||||||
|
"columnWidth": Default column width in px. If absent, no column for
|
||||||
|
this key can be added in list view.
|
||||||
|
"filter": If true, one can filter results by this key
|
||||||
|
"find": If true, this key will appear as an option in the find element
|
||||||
|
"flag": Can be "country" or "language". If set (and filter is true), a
|
||||||
|
flag icon corresponding to the field's value will be displayed.
|
||||||
|
"format": {type: string, args: [value, value, ...]}, used for special
|
||||||
|
formatting. This will invoke Ox.formatType(args). For details, see
|
||||||
|
https://oxjs.org/#doc/Ox.formatArea etc.
|
||||||
|
"secondaryId": If true, loading the URL "/value" will redirect to the
|
||||||
|
corresponding item, in case there is an exact match for this key
|
||||||
|
"sort": If true, one can sort results by this key
|
||||||
|
"sortOperator": Sort order ("+" or "-"), in case it differs from the
|
||||||
|
default for the key's type ("+" for strings, "-" for numbers)
|
||||||
|
"sortType": Special sort type ("person" or "title") which can be
|
||||||
|
further configured in "Manage Names" or "Manage Titles"
|
||||||
|
"value": {key: string, type: string} or {layer: string, type: string},
|
||||||
|
for keys whose value is derived from other keys or layers (like
|
||||||
|
"number of actors" or "words per minute"). Possible values for type
|
||||||
|
are "length", "lengthperminute", "words", and "wordsperminute".
|
||||||
|
Alternatively, "value" can be set to the string "capability", which
|
||||||
|
results in an itemKey whose boolean value indicates the presence or
|
||||||
|
absence of a userLevel-dependent capability. This can be used to
|
||||||
|
create queries and lists like "all items this user can play" etc.
|
||||||
|
"values": [value, value, ...] Ordered list of values, in case "type" is
|
||||||
|
"enum"
|
||||||
|
*/
|
||||||
|
"documentKeys": [
|
||||||
|
{
|
||||||
|
"id": "*",
|
||||||
|
"title": "All",
|
||||||
|
"type": "text",
|
||||||
|
"find": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "title",
|
||||||
|
"operator": "+",
|
||||||
|
"title": "Title",
|
||||||
|
"type": "string",
|
||||||
|
"find": true,
|
||||||
|
"sort": true,
|
||||||
|
"sortType": "title",
|
||||||
|
"autocomplete": true,
|
||||||
|
"columnWidth": 256
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "type",
|
||||||
|
"operator": "+",
|
||||||
|
"title": "Type",
|
||||||
|
"type": "string",
|
||||||
|
"filter": true,
|
||||||
|
"find": true,
|
||||||
|
"sort": true,
|
||||||
|
"autocomplete": true,
|
||||||
|
"columnWidth": 128
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "author",
|
||||||
|
"operator": "+",
|
||||||
|
"title": "Author",
|
||||||
|
"type": ["string"],
|
||||||
|
"filter": true,
|
||||||
|
"find": true,
|
||||||
|
"sort": true,
|
||||||
|
"sortType": "person",
|
||||||
|
"autocomplete": true,
|
||||||
|
"columnWidth": 256
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "publisher",
|
||||||
|
"operator": "+",
|
||||||
|
"title": "Publisher",
|
||||||
|
"type": "string",
|
||||||
|
"filter": true,
|
||||||
|
"find": true,
|
||||||
|
"sort": true,
|
||||||
|
"autocomplete": true,
|
||||||
|
"columnWidth": 256
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "place",
|
||||||
|
"title": "Place",
|
||||||
|
"type": ["string"],
|
||||||
|
"columnWidth": 128,
|
||||||
|
"filter": true,
|
||||||
|
"find": true,
|
||||||
|
"sort": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "date",
|
||||||
|
"title": "Date",
|
||||||
|
"type": "string",
|
||||||
|
"columnWidth": 120,
|
||||||
|
//"format": {"type": "date", "args": ["%a, %b %e, %Y"]},
|
||||||
|
"sort": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "series",
|
||||||
|
"title": "Series",
|
||||||
|
"type": "string",
|
||||||
|
"columnWidth": 128,
|
||||||
|
"find": true,
|
||||||
|
"sort": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "edition",
|
||||||
|
"title": "Edition",
|
||||||
|
"type": "string",
|
||||||
|
"columnWidth": 128,
|
||||||
|
"find": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "language",
|
||||||
|
"title": "Language",
|
||||||
|
"type": ["string"],
|
||||||
|
"columnWidth": 128,
|
||||||
|
"filter": true,
|
||||||
|
"find": true,
|
||||||
|
"sort": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "id",
|
||||||
|
"operator": "+",
|
||||||
|
"title": "ID",
|
||||||
|
"type": "string",
|
||||||
|
"sort": true,
|
||||||
|
"columnWidth": 64
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "extension",
|
||||||
|
"operator": "+",
|
||||||
|
"title": "Extension",
|
||||||
|
"type": "string",
|
||||||
|
"filter": true,
|
||||||
|
"find": true,
|
||||||
|
"sort": true,
|
||||||
|
"autocomplete": true,
|
||||||
|
"columnWidth": 64
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "dimensions",
|
||||||
|
"operator": "-",
|
||||||
|
"title": "Dimensions",
|
||||||
|
"type": "integer",
|
||||||
|
"sort": true,
|
||||||
|
"columnWidth": 128
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "size",
|
||||||
|
"operator": "-",
|
||||||
|
"title": "Size",
|
||||||
|
"type": "integer",
|
||||||
|
"sort": true,
|
||||||
|
"format": {"type": "value", "args": ["B"]},
|
||||||
|
"columnWidth": 64
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "description",
|
||||||
|
"operator": "+",
|
||||||
|
"title": "Description",
|
||||||
|
"type": "text",
|
||||||
|
"find": true,
|
||||||
|
"sort": true,
|
||||||
|
"columnWidth": 256
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "matches",
|
||||||
|
"operator": "-",
|
||||||
|
"title": "Matches",
|
||||||
|
"type": "integer",
|
||||||
|
"sort": true,
|
||||||
|
"columnWidth": 64
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "user",
|
||||||
|
"operator": "+",
|
||||||
|
"title": "User",
|
||||||
|
"type": "string",
|
||||||
|
"filter": true,
|
||||||
|
"find": true,
|
||||||
|
"sort": true,
|
||||||
|
"autocomplete": true,
|
||||||
|
"columnWidth": 128
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "created",
|
||||||
|
"operator": "-",
|
||||||
|
"title": "Created",
|
||||||
|
"format": {"type": "date", "args": ["%Y-%m-%d %H:%M:%S"]},
|
||||||
|
"type": "date",
|
||||||
|
"sort": true,
|
||||||
|
"columnWidth": 144
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "modified",
|
||||||
|
"operator": "-",
|
||||||
|
"title": "Modified",
|
||||||
|
"format": {"type": "date", "args": ["%Y-%m-%d %H:%M:%S"]},
|
||||||
|
"type": "date",
|
||||||
|
"sort": true,
|
||||||
|
"columnWidth": 144
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"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,
|
||||||
|
"format": {"type": "number", "args": []},
|
||||||
|
"sort": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "rightslevel",
|
||||||
|
"title": "Rights Level",
|
||||||
|
"type": "enum",
|
||||||
|
"columnWidth": 90,
|
||||||
|
"format": {"type": "ColorLevel", "args": [
|
||||||
|
["Public", "Out of Copyright", "Under Copyright", "Private"]
|
||||||
|
]},
|
||||||
|
"sort": true,
|
||||||
|
"sortOperator": "+",
|
||||||
|
"values": ["Public", "Out of Copyright", "Under Copyright", "Private", "Unknown"]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
/*
|
||||||
|
"documentRightsLevel" defines which initial rights level will be assigned to documents
|
||||||
|
created by users of these user levels.
|
||||||
|
*/
|
||||||
|
"documentRightsLevel": {"member": 0, "staff": 0, "admin": 0},
|
||||||
|
/*
|
||||||
|
"documentRightsLevels" is an ordered list of rights levels, one of which will be
|
||||||
|
assigned to each document.
|
||||||
|
*/
|
||||||
|
"documentRightsLevels": [
|
||||||
|
{"name": "Public", "color": [128, 255, 128]},
|
||||||
|
{"name": "Restricted", "color": [255, 212, 128]},
|
||||||
|
{"name": "Private", "color": [255, 128, 128]}
|
||||||
|
],
|
||||||
|
/*
|
||||||
|
"entities" can be used to store arbitrary data. They can be referenced in
|
||||||
|
annotations, info view, or elsewhere. Each entry defines a specific class
|
||||||
|
of entity object, its properties and their types (for example an "actor"
|
||||||
|
with "name", "biography", "portrait" etc). The HTML representation for
|
||||||
|
entities can be customized by adding "/static/js/entity.SITENAME.js".
|
||||||
|
Each entity has the following properties:
|
||||||
|
"id": Unique internal ID (can be referenced in "layers")
|
||||||
|
"title": Human-readable title
|
||||||
|
"keys": List of properties
|
||||||
|
"sortType": Optional. If set to "person" or "title", then the sort
|
||||||
|
order can be configured in "Manage Names" or "Manage Titles"
|
||||||
|
Each key has the properties "id", "title" and "type". "type" can be
|
||||||
|
"boolean", "number", "string", "text", "document" (reference to the id of a
|
||||||
|
document added via "Manage Documents") or ["string"] (list of strings).
|
||||||
|
"id" and "name" keys are required. If "alternativeNames" is present, these
|
||||||
|
will act as synonyms when autocompleting values entered as annotations.
|
||||||
|
*/
|
||||||
|
"entities": [
|
||||||
|
{
|
||||||
|
"id": "people",
|
||||||
|
"title": "People",
|
||||||
|
"keys": [
|
||||||
|
{"id": "id", "title": "ID", "type": "string"},
|
||||||
|
{"id": "name", "title": "Name", "type": "string"},
|
||||||
|
{"id": "additionalNames", "title": "Additional Names", "type": ["string"]},
|
||||||
|
{"id": "biography", "title": "Biography", "type": "text"},
|
||||||
|
{"id": "portrait", "title": "Portrait", "type": "document"}
|
||||||
|
],
|
||||||
|
"sortType": "person"
|
||||||
|
}
|
||||||
|
],
|
||||||
"flags": false,
|
"flags": false,
|
||||||
"help": [
|
"help": [
|
||||||
{"id": "help", "title": "Help"},
|
{"id": "help", "title": "Help"},
|
||||||
|
@ -715,6 +1021,7 @@
|
||||||
},
|
},
|
||||||
"folderdepth": 4,
|
"folderdepth": 4,
|
||||||
"https": true,
|
"https": true,
|
||||||
|
"public": true,
|
||||||
"id": "turkishcinema",
|
"id": "turkishcinema",
|
||||||
"name": "turkishcine.ma",
|
"name": "turkishcine.ma",
|
||||||
"url": "turkishcine.ma",
|
"url": "turkishcine.ma",
|
||||||
|
@ -763,6 +1070,8 @@
|
||||||
"annotationsRange": "all",
|
"annotationsRange": "all",
|
||||||
"annotationsSize": 256,
|
"annotationsSize": 256,
|
||||||
"annotationsSort": "position",
|
"annotationsSort": "position",
|
||||||
|
"annotationsHighlight": "none",
|
||||||
|
"clipSize": 416,
|
||||||
"calendarFind": "",
|
"calendarFind": "",
|
||||||
"calendarSelection": "",
|
"calendarSelection": "",
|
||||||
"clipColumns": 2,
|
"clipColumns": 2,
|
||||||
|
@ -772,12 +1081,20 @@
|
||||||
"columnWidth": {}
|
"columnWidth": {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"collectionColumnWidth": {},
|
||||||
|
"collectionColumns": ["title", "id", "extension", "dimensions", "size", "description", "matches", "user", "created", "modified"],
|
||||||
|
"collectionSelection": [],
|
||||||
|
"collectionSort": [{"key": "title", "operator": "+"}, {"key": "extension", "operator": "+"}],
|
||||||
|
"collectionView": "grid",
|
||||||
|
"collections": {},
|
||||||
|
|
||||||
"document": "",
|
"document": "",
|
||||||
"documents": {},
|
"documents": {},
|
||||||
"documentSize": 256,
|
"documentSize": 256,
|
||||||
"documentsSelection": {},
|
"documentsSelection": {},
|
||||||
"documentsSort": [{"key": "name", "operator": "+"}],
|
"documentsSort": [{"key": "name", "operator": "+"}],
|
||||||
"documentsView": "grid",
|
"documentsView": "grid",
|
||||||
|
"documentView": "view",
|
||||||
"edit": "",
|
"edit": "",
|
||||||
"edits": {},
|
"edits": {},
|
||||||
"editSelection": [],
|
"editSelection": [],
|
||||||
|
@ -802,6 +1119,7 @@
|
||||||
],
|
],
|
||||||
"filtersSize": 176,
|
"filtersSize": 176,
|
||||||
"find": {"conditions": [], "operator": "&"},
|
"find": {"conditions": [], "operator": "&"},
|
||||||
|
"findDocuments": {"conditions": [], "operator": "&"},
|
||||||
"followPlayer": true,
|
"followPlayer": true,
|
||||||
"help": "",
|
"help": "",
|
||||||
"icons": "posters",
|
"icons": "posters",
|
||||||
|
@ -828,6 +1146,7 @@
|
||||||
"part": {
|
"part": {
|
||||||
"api": "",
|
"api": "",
|
||||||
"documents": "",
|
"documents": "",
|
||||||
|
"document": "",
|
||||||
"entities": "",
|
"entities": "",
|
||||||
"faq": "",
|
"faq": "",
|
||||||
"help": "",
|
"help": "",
|
||||||
|
@ -868,7 +1187,7 @@
|
||||||
"featured": true,
|
"featured": true,
|
||||||
"volumes": true
|
"volumes": true
|
||||||
},
|
},
|
||||||
"texts": {
|
"documents": {
|
||||||
"personal": true,
|
"personal": true,
|
||||||
"favorite": true,
|
"favorite": true,
|
||||||
"featured": true
|
"featured": true
|
||||||
|
@ -898,6 +1217,7 @@
|
||||||
"username": "",
|
"username": "",
|
||||||
"volumes": []
|
"volumes": []
|
||||||
},
|
},
|
||||||
|
"importMetadata": {"title": "{title}"},
|
||||||
// fixme: this should include colors
|
// fixme: this should include colors
|
||||||
"userLevels": ["guest", "member", "researcher", "staff", "admin"],
|
"userLevels": ["guest", "member", "researcher", "staff", "admin"],
|
||||||
"video": {
|
"video": {
|
||||||
|
|
Loading…
Reference in a new issue