109 lines
4.4 KiB
JSON
109 lines
4.4 KiB
JSON
{
|
|
"id": "service-times",
|
|
"name": "Service Times",
|
|
"version": "1.0.0",
|
|
"proddash": ">=1.4.0",
|
|
"description": "Sunday service times for every campus, marked up for replays and services production cannot use",
|
|
"client": "client.js",
|
|
"server": "server.js",
|
|
"style": "style.css",
|
|
"minSize": { "w": 3, "h": 3 },
|
|
"defaultSize": { "w": 6, "h": 5 },
|
|
"configGroups": {
|
|
"Website": {
|
|
"help": "Service times are read from the campus pages at <site>/locations/<campus>/ and refreshed on their own, so the board follows the website whenever the times change. Campuses are discovered from the site's sitemap — tick the ones production is responsible for."
|
|
},
|
|
"Broadcast": {
|
|
"help": "Which campuses originate the Sunday broadcast, and which campus each of the others takes its resi from. This is what lets the board show, when a service is marked unusable, every campus affected by it."
|
|
},
|
|
"Manual campuses": {
|
|
"collapsed": "whenSet",
|
|
"help": "A stopgap for a campus the website has not published yet. The website stays the source of truth: as soon as it carries a campus by this name, its times take over and the health line above says the line here can be removed."
|
|
},
|
|
"Marks": {
|
|
"collapsed": true,
|
|
"help": "Marks are shared by every tile and every browser, and survive a restart of ProdDash."
|
|
}
|
|
},
|
|
"configSchema": {
|
|
"siteUrl": {
|
|
"type": "string",
|
|
"label": "Website",
|
|
"default": "https://waterschurch.org",
|
|
"group": "Website",
|
|
"help": "The church website's address. Campus pages are read from /locations/ underneath it."
|
|
},
|
|
"campuses": {
|
|
"type": "multiselect",
|
|
"label": "Campuses",
|
|
"default": ["north-attleboro", "woonsocket", "southcoast", "apollo-beach"],
|
|
"group": "Website",
|
|
"optionsRoute": "/discovered",
|
|
"help": "Leave every campus unticked to follow all of them."
|
|
},
|
|
"refreshMinutes": {
|
|
"type": "number",
|
|
"label": "Refresh (min)",
|
|
"default": 360,
|
|
"group": "Website",
|
|
"help": "How often the website is re-read. Times change a few times a year, so this can be slow; a failed read retries every minute and the last good times stay on screen."
|
|
},
|
|
"broadcast": {
|
|
"type": "multiselect",
|
|
"label": "Broadcast campuses",
|
|
"default": ["north-attleboro", "apollo-beach"],
|
|
"group": "Broadcast",
|
|
"optionsRoute": "/campuses",
|
|
"help": "The campuses the broadcast originates from."
|
|
},
|
|
"feeds": {
|
|
"type": "text",
|
|
"label": "Resi sources",
|
|
"default": "woonsocket = north-attleboro\nsouthcoast = north-attleboro",
|
|
"group": "Broadcast",
|
|
"help": "One campus per line: campus = the broadcast campus it takes resi from. Names or slugs both work."
|
|
},
|
|
"manual": {
|
|
"type": "text",
|
|
"label": "Campuses and times",
|
|
"default": "",
|
|
"group": "Manual campuses",
|
|
"help": "One campus per line: Name | Day | 9:00a, 11:00a. The day is optional and defaults to Sunday. Lines starting with # are ignored."
|
|
},
|
|
"retentionHours": {
|
|
"type": "number",
|
|
"label": "Marks clear after (h)",
|
|
"default": 36,
|
|
"group": "Marks",
|
|
"help": "A mark disappears this long after it was made, so Saturday's and Sunday's notes are gone before the next week. Set 0 to keep marks until they are cleared by hand."
|
|
}
|
|
},
|
|
"instanceGroups": {
|
|
"Show": { "collapsed": true, "columns": 2 }
|
|
},
|
|
"instanceSchema": {
|
|
"campuses": {
|
|
"type": "multiselect",
|
|
"label": "Campuses",
|
|
"optionsRoute": "/campuses",
|
|
"columns": 2,
|
|
"allByDefault": true
|
|
},
|
|
"layout": {
|
|
"type": "select",
|
|
"label": "Layout",
|
|
"default": "cards",
|
|
"options": [
|
|
{ "value": "cards", "label": "Cards" },
|
|
{ "value": "list", "label": "List" }
|
|
]
|
|
},
|
|
"showDay": { "type": "boolean", "label": "Day", "default": true, "group": "Show" },
|
|
"showRole": { "type": "boolean", "label": "Role", "default": true, "group": "Show" },
|
|
"showSource": { "type": "boolean", "label": "Resi source", "default": true, "group": "Show" },
|
|
"showDependents": { "type": "boolean", "label": "Campuses fed", "default": true, "group": "Show" },
|
|
"showNotes": { "type": "boolean", "label": "Notes", "default": true, "group": "Show" },
|
|
"showUpdated": { "type": "boolean", "label": "Updated line", "default": false, "group": "Show" }
|
|
}
|
|
}
|