fix autobackup: true

Signed-off-by: si458 <simonsmith5521@gmail.com>

si458 committed Jul 18, 2024 at 10:48 UTC 62cae4cf8a8a109720fd8b68ed23b72475e2b5f3
2 files changed +7 -4
meshcentral-config-schema.json
+5 -2
@@ -818,8 +818,11 @@
818 ]
819 },
820 "autoBackup": {
821 - "type": "object",
822 - "description": "Enable automatic backups of your meshcentral-data",
821 + "type": [
822 + "boolean",
823 + "object"
824 + ],
825 + "description": "If set to \"true\", automatic backups of your MeshCentral data will be enabled. Alternatively, you can provide an object with additional values such as \"webdav\", \"backupPath\", \"backupIntervalHours\", and more.",
826 "properties": {
827 "mongoDumpPath": {
828 "type": "string",
meshcentral.js
+2 -2
@@ -1957,9 +1957,9 @@ function CreateMeshCentralServer(config, args) {
1957 obj.updateServerState('state', "running");
1958
1959 // Setup auto-backup defaults
1960 - if (obj.config.settings.autobackup == null) { obj.config.settings.autobackup = { backupintervalhours: 24, keeplastdaysbackup: 10 }; }
1960 + if (obj.config.settings.autobackup == null || obj.config.settings.autobackup === true) { obj.config.settings.autobackup = { backupintervalhours: 24, keeplastdaysbackup: 10 }; }
1961 else if (obj.config.settings.autobackup === false) { delete obj.config.settings.autobackup; }
1962 - else {
1962 + else if (typeof obj.config.settings.autobackup == 'object'){
1963 if (typeof obj.config.settings.autobackup.backupintervalhours != 'number') { obj.config.settings.autobackup.backupintervalhours = 24; }
1964 if (typeof obj.config.settings.autobackup.keeplastdaysbackup != 'number') { obj.config.settings.autobackup.keeplastdaysbackup = 10; }
1965 }