settings: de-dupe settings

all DOM elements now based off DOMSetting, which encompasses most
functionality. Extending classes (i forgot the terminology) pretty much just pass a
custom "input" element, "hider" element (the one to unfocus). DOMList
and DOMSelect remain slightly more complicated, but are much cleaner
now. Some CSS stuff has been adjusted too.
This commit is contained in:
Harvey Tindall
2024-08-23 21:12:16 +01:00
parent 32161139b2
commit a7aa3fd53e
4 changed files with 211 additions and 436 deletions

View File

@@ -896,11 +896,20 @@
"value": false,
"description": "Send emails as plain text instead of HTML."
},
"collect": {
"name": "Collect on sign-up",
"required": false,
"requires_restart": false,
"depends_true": "method",
"type": "bool",
"value": true,
"description": "Ask for an email address on the sign-up form."
},
"required": {
"name": "Require on sign-up",
"required": false,
"requires_restart": false,
"depends_true": "method",
"depends_true": "collect",
"type": "bool",
"value": false,
"description": "Require an email address on sign-up."
@@ -909,6 +918,7 @@
"name": "Require unique address",
"required": false,
"requires_restart": true,
"depends_true": "method",
"type": "bool",
"value": false,
"description": "Disables using the same address on multiple accounts."