rewrite to a module

This commit is contained in:
Mystikfluu
2022-08-19 19:29:14 +02:00
parent c78f4cba3a
commit 6ed17497c5
13 changed files with 1522 additions and 540 deletions
+45 -52
View File
@@ -1,55 +1,48 @@
const allowed_settings = { //"settingname":["validtypes"]
const allowed_settings = {
"ACCR": ["boolean"]
}
module.exports = {
"setup": function(router,con,server) {
router.get("/api/settings",function(req,res) {
res.json(res.locals.settings)
})
router.post("/api/settings",function(req,res) {
if(!req.body.setting) {
res.json({"error":"no setting to change"})
return
};
export const setup = function (router, con, server) {
router.get("/api/settings", function (req, res) {
res.json(res.locals.settings);
});
router.post("/api/settings", function (req, res) {
if (!req.body.setting) {
res.json({ "error": "no setting to change" });
return;
}
if ((typeof req.body.setting) != "string") {
res.json({ "error": "no setting to change" });
return;
}
let types = allowed_settings[req.body.setting];
let allowed = false;
let got = typeof req.body.value;
for (let index = 0; index < types.length; index++) {
if (types[index] == got) {
allowed = true;
break;
}
if((typeof req.body.setting) != "string") {
res.json({"error":"no setting to change"})
return
}
if (!allowed) {
console.log(5, "incorrect type given, received, expected", typeof req.body.value, allowed_settings[req.body.setting]);
res.json({ "error": "no new setting value given" });
return;
}
let setting_to_change = req.body.setting;
let setting_new_value = req.body.value;
res.locals.settings[setting_to_change] = setting_new_value;
console.log(5, "changing settings", setting_to_change, setting_new_value, res.locals.settings);
let sql = "update ipost.users set User_Settings=? where User_Name=?";
let values = [JSON.stringify(res.locals.settings), res.locals.username];
con.query(sql, values, function (err, result) {
if (err) {
res.json({ "status": "error", "code": err });
return;
}
let types = allowed_settings[req.body.setting]
let allowed = false
let got = typeof req.body.value
for (let index = 0; index < types.length; index++) {
if(types[index] == got) {
allowed = true;
break;
}
}
if(!allowed) {
console.log(5,"incorrect type given, received, expected", typeof req.body.value, allowed_settings[req.body.setting])
res.json({"error":"no new setting value given"})
return
}
let setting_to_change = req.body.setting
let setting_new_value = req.body.value
res.locals.settings[setting_to_change] = setting_new_value
console.log(5,"changing settings", setting_to_change, setting_new_value, res.locals.settings)
let sql = "update ipost.users set User_Settings=? where User_Name=?"
let values = [JSON.stringify(res.locals.settings),res.locals.username]
con.query(sql, values, function (err, result) {
if(err) {
res.json({"status":"error","code":err})
return
}
res.json({"status":"success"})
})
})
}
}
res.json({ "status": "success" });
});
});
};
export default {
setup
};