/* Pan.do/ra Settings You can edit this file. */ { "additionalSort": [ {"key": "title", "operator": "+"} ], "annotations": { "showUsers": true }, "cantPlay": { "icon": "", "link": "", "text": "" }, /* 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": 0, "member": 0, "staff": 4, "admin": 4}, "canEditAnnotations": {"staff": true, "admin": true}, "canEditEvents": {"staff": true, "admin": true}, "canEditFeaturedEdits": {"staff": true, "admin": true}, "canEditFeaturedLists": {"staff": true, "admin": true}, "canEditFeaturedTexts": {"staff": true, "admin": true}, "canEditMetadata": {"staff": true, "admin": true}, "canEditPlaces": {"staff": true, "admin": true}, "canEditSitePages": {"staff": true, "admin": true}, "canEditUsers": {"admin": true}, "canImportAnnotations": {"member": true, "staff": true, "admin": true}, "canManagePlacesAndEvents": {"member": true, "staff": true, "admin": true}, "canManageTitlesAndNames": {"member": true, "staff": true, "admin": true}, "canManageUsers": {"staff": true, "admin": true}, "canPlayClips": {"guest": 1, "member": 1, "staff": 4, "admin": 4}, "canPlayVideo": {"guest": 1, "member": 1, "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": 1, "member": 1, "staff": 4, "admin": 4}, "canSeeSize": {"staff": true, "admin": true}, "canSeeSoftwareVersion": {"staff": true, "admin": true}, "canSendMail": {"staff": true, "admin": true}, "canUploadVideo": {"guest": false, "member": true, "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. // FIXME: the last bit is not implemented. */ "clipLayers": ["transcripts", "keywords", "places", "events", "descriptions"], // fixme: either this, or filter: true in itemKeys, but not both "filters": [ {"id": "source", "title": "Sources", "type": "string"}, {"id": "project", "title": "Projects", "type": "string"}, {"id": "topic", "title": "Topics", "type": "string"}, {"id": "name", "title": "People", "type": "string"}, {"id": "language", "title": "Languages", "type": "string"}, {"id": "license", "title": "License", "type": "string"}, {"id": "places", "title": "Places", "type": "string"}, {"id": "events", "title": "Events", "type": "string"}, {"id": "keywords", "title": "Keywords", "type": "string"} ], "flags": false, /* 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", "autocomplete": true, "autocompleteSortKey": "timesaccessed", "columnRequired": true, "columnWidth": 180, "find": true, "sort": true, "sortType": "title" }, { "id": "source", "title": "Source", "type": "string", "autocomplete": true, "description": true, "columnWidth": 180, "filter": true, "find": true, "sort": true }, { "id": "project", "title": "Project", "type": "string", "autocomplete": true, "description": true, "columnWidth": 120, "filter": true, "find": true, "sort": true }, { "id": "topic", "title": "Topic", "type": ["string"], "autocomplete": true, "columnWidth": 180, "filter": true, "find": true, "sort": true }, { "id": "name", "title": "People", "type": ["string"], "autocomplete": true, "find": true }, { "id": "director", "title": "Director", "type": ["string"], "autocomplete": true, "columnRequired": true, "columnWidth": 180, "sort": true, "sortType": "person" }, { "id": "cinematographer", "title": "Cinematographer", "type": ["string"], "autocomplete": true, "columnWidth": 180, "sort": true, "sortType": "person" }, { "id": "featuring", "title": "Featuring", "type": ["string"], "autocomplete": true, "columnRequired": true, "columnWidth": 180, "filter": true, "sort": true, "sortType": "person" }, { "id": "language", "title": "Language", "type": ["string"], "autocomplete": true, "columnWidth": 120, "filter": true, "find": true, "sort": true }, { "id": "location", "title": "Location", "type": "string", "autocomplete": true, "columnWidth": 180, "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": "summary", "title": "Summary", "type": "text", "find": true }, { "id": "id", "title": "ID", "type": "string", "columnWidth": 90, "sort": true }, { "id": "annotations", "title": "Annotations", "type": "string", "find": true }, { "id": "places", "title": "Places", "type": "layer", "find": true }, { "id": "events", "title": "Events", "type": "layer", "find": true }, { "id": "keywords", "title": "Keywords", "type": "layer", "find": true }, { "id": "descriptions", "title": "Descriptions", "type": "layer", "find": true }, { "id": "transcripts", "title": "Transcripts", "type": "layer", "find": true }, { "id": "numberofannotations", "title": "Annotations", "type": "integer", "columnWidth": 60, "sort": true }, { "id": "duration", "title": "Duration", "type": "float", "columnWidth": 90, "format": {"type": "duration", "args": [0, "short"]}, "sort": true }, { "id": "resolution", "title": "Resolution", "type": ["integer"], "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", "columnWidth": 90, "format": {"type": "value", "args": ["px"]}, "sort": true }, { "id": "hue", "title": "Hue", "type": "hue", "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": "canSeeFiles", "columnWidth": 60, "format": {"type": "value", "args": ["B"]}, "sort": true }, { "id": "bitrate", "title": "Bitrate", "type": "integer", "columnWidth": 60, "format": {"type": "value", "args": ["bps"]}, "sort": true }, { "id": "numberoffiles", "title": "Number of Files", "type": "integer", "capability": "canSeeFiles", "columnWidth": 60, "sort": true, "value": {"key": "files", "type": "length"} }, { "id": "user", "title": "User", "type": "string", "capability": "canSeeFiles", "find": true }, { "id": "filename", "title": "Filename", "type": ["string"], "capability": "canSeeFiles", "find": true }, { "id": "created", "title": "Date Created", "type": "date", "columnWidth": 120, "format": {"type": "date", "args": ["%Y-%m-%d %H:%M:%S"]}, "sort": true }, { "id": "modified", "title": "Last Modified", "type": "date", "columnWidth": 90, "format": {"type": "date", "args": ["%Y-%m-%d %H:%M:%S"]}, "sort": true }, { "id": "accessed", "title": "Last Accessed", "type": "date", "capability": "canSeeAccessed", "columnWidth": 90, "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": "license", "title": "License", "type": ["string"], "columnWidth": 120, "filter": true, "sort": true, "default": [ "Creative Commons Attribution-ShareAlike 3.0 License", "Pad.ma General Public License" ] }, { "id": "rightslevel", "title": "Rights Level", "type": "enum", "columnWidth": 90, "format": {"type": "ColorLevel", "args": [ ["Public", "Restricted", "Private"] ]}, "sort": true, "sortOperator": "+", "values": ["Public", "Restricted", "Private", "Unknown"] }, { "id": "random", "title": "Random", "type": "integer", "sort": true } ], "itemName": { "singular": "Video", "plural": "Videos" }, "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"} ], "layers": [ { "id": "places", "title": "Places", "canAddAnnotations": {"member": true, "staff": true, "admin": true}, "item": "Place", "overlap": true, "type": "place" }, { "id": "events", "title": "Events", "canAddAnnotations": {"member": true, "staff": true, "admin": true}, "item": "Event", "overlap": true, "type": "event" }, { "id": "keywords", "title": "Keywords", "canAddAnnotations": {"member": true, "staff": true, "admin": true}, "item": "Keyword", "overlap": true, "type": "string" }, { "id": "descriptions", "title": "Descriptions", "canAddAnnotations": {"member": true, "staff": true, "admin": true}, "item": "Description", "showInfo": true, "type": "text" }, { "id": "transcripts", "title": "Transcripts", "canAddAnnotations": {"member": true, "staff": true, "admin": true}, "item": "Transcript", "showInfo": true, "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": false, "importFrames": false }, "personalLists": [ {"title": "Favorites"} ], "rightsLevel": {"member": 2, "staff": 2, "admin": 2}, "rightsLevels": [ {"name": "Public", "color": [128, 255, 128]}, {"name": "Restricted", "color": [255, 192, 128]}, {"name": "Private", "color": [255, 128, 128]} ], "sendReferrer": true, "site": { "description": "Pad.ma is an online archive of densely text-annotated video material, primarily footage and not finished films. The entire collection is searchable and viewable online, and is free to download for non-commercial use.", "email": { // E-mail address in contact form (to) "contact": "pad.ma@pad.ma", "footer": "-- \nPad.ma - http://pad.ma", "prefix": "Pad.ma News -", // E-mail address uses by the system (from) "system": "system@pad.ma" }, "id": "padma", "name": "Pad.ma", "url": "pad.ma", "videoprefix": "" }, "sitePages": [ {"id": "about", "title": "About"}, {"id": "news", "title": "News"}, //{"id": "tour", "title": "Take a Tour"}, {"id": "faq", "title": "Frequently Asked Questions"}, {"id": "terms", "title": "Terms of Service"}, {"id": "license", "title": "License"}, {"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": "files", "admin": true}, {"id": "duration", "admin": true}, {"id": "size", "admin": true}, {"id": "pixels"} ], "tv": { "showLogo": false }, "user": { "level": "guest", "ui": { "annotationsCalendarSize": 128, "annotationsFont": "small", "annotationsMapSize": 128, "annotationsRange": "position", "annotationsSize": 256, "annotationsSort": "position", "clipsColumns": 2, "columns": { "Colors": { "columns": ["title", "source", "project", "language", "hue", "saturation", "brightness"], "columnWidth": {} } }, "filters": [ {"id": "source", "sort": [{"key": "name", "operator": "+"}]}, {"id": "project", "sort": [{"key": "name", "operator": "+"}]}, {"id": "topic", "sort": [{"key": "items", "operator": "-"}]}, {"id": "name", "sort": [{"key": "items", "operator": "-"}]}, {"id": "keywords", "sort": [{"key": "items", "operator": "-"}]}, {"id": "places", "sort": [{"key": "items", "operator": "-"}]} ], "filtersSize": 176, "find": {"conditions": [], "operator": "&"}, "followPlayer": true, "icons": "frames", "infoIconSize": 256, "item": "", "text": "", "edit": "", "itemFind": "", "itemSort": [{"key": "position", "operator": "+"}], "itemView": "info", "listColumns": ["title", "source", "project", "topic", "language", "duration"], "listColumnWidth": {}, "listSelection": [], "listSort": [{"key": "title", "operator": "+"}], "listView": "grid", "lists": {}, "mapFind": "", "mapSelection": "", "page": "", "section": "items", "sequenceMode": "shape", "sequenceSort": [{"key": "director", "operator": "+"}], "showAnnotations": true, "showAnnotationsCalendar": true, "showAnnotationsMap": true, "showBrowser": true, "showCalendarControls": true, // fixme: should be false "showFilters": true, "showHome": true, "showIconBrowser": false, "showInfo": true, "showLayers": { "places": false, "events": false, "keywords": true, "descriptions": true, "transcripts": 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": 240, "videoScale": "fit", "videoSize": "large", "videoTimeline": "antialias", "videoView": "player", "videoVolume": 1 }, "username": "", "volumes": [] }, "userLevels": ["guest", "member", "staff", "admin"], "video": { "download": true, "formats": ["webm", "mp4"], "previewRatio": 1.3333333333, //supported resolutions are //1080, 720, 480, 432, 360, 288, 240, 144, 96 "resolutions": [480, 240, 96] } }