diff --git a/src/api/routes/service/configPOST.js b/src/api/routes/service/configPOST.js index 9129950..68af467 100644 --- a/src/api/routes/service/configPOST.js +++ b/src/api/routes/service/configPOST.js @@ -28,7 +28,15 @@ class configGET extends Route { }); } - await Util.writeConfigToDb(value); + await Util.wipeConfigDb(); + + const keys = Object.keys(value); + for await (const item of keys) { + Util.writeConfigToDb({ + key: item, + value: value[item] + }); + } return res.status(200).json({ value }); } diff --git a/src/api/utils/Util.js b/src/api/utils/Util.js index 628be82..bd23fd2 100644 --- a/src/api/utils/Util.js +++ b/src/api/utils/Util.js @@ -62,7 +62,15 @@ class Util { }; } - static async writeConfigToDb(config) { + static async wipeConfigDb() { + try { + await db.table('settings').del(); + } catch (error) { + console.error(error); + } + } + + static async writeConfigToDb(config, wipe = false) { // TODO: Check that the config passes the joi schema validation if (!config || !config.key) return; try {