From 33d7f8645a08af90bd67bb313f580d519b1c8238 Mon Sep 17 00:00:00 2001 From: LouisLam Date: Sat, 31 Jul 2021 22:02:30 +0800 Subject: [PATCH] json format for setting value --- server/util-server.js | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/server/util-server.js b/server/util-server.js index d892c1069..c329d0ab6 100644 --- a/server/util-server.js +++ b/server/util-server.js @@ -40,9 +40,15 @@ exports.ping = function (hostname) { } exports.setting = async function (key) { - return await R.getCell("SELECT `value` FROM setting WHERE `key` = ? ", [ + let value = await R.getCell("SELECT `value` FROM setting WHERE `key` = ? ", [ key, - ]) + ]); + + try { + return JSON.parse(value); + } catch (e) { + return value; + } } exports.setSetting = async function (key, value) { @@ -53,7 +59,7 @@ exports.setSetting = async function (key, value) { bean = R.dispense("setting") bean.key = key; } - bean.value = value; + bean.value = JSON.stringify(value); await R.store(bean) } @@ -65,7 +71,11 @@ exports.getSettings = async function (type) { let result = {}; for (let row of list) { - result[row.key] = JSON.parse(row.value); + try { + result[row.key] = JSON.parse(row.value); + } catch (e) { + result[row.key] = row.value; + } } return result;