import sql from "./sql"; let cfg = { client: {}, main: {}, websrv: {}, trigger: {} }; let admins = []; const read = () => new Promise((resolve, reject) => { sql.exec("select * from cfg").then(rows => { for (let row in rows) { cfg[rows[row].class][rows[row].key] = { val: ((type, value) => { switch (type) { case "string": return value; case "int": return parseInt(value); case "bool": return value === "true"; case "json": return JSON.parse(value); } })(rows[row].type, rows[row].value), hidden: rows[row].hidden === 1, type: rows[row].type } } loadAdmins().then(() => resolve()); }) .catch(err => { reject("no cfg"); }) }); export const loadAdmins = () => new Promise((resolve, reject) => { admins = []; sql.exec(`select * from admins`) .then(rows => { rows.forEach(row => { admins.push({ id: row.id, prefix: row.prefix, account: row.account, network: row.network, level: row.level }); }); resolve(); }) .catch(err => { reject("keine Admins vorhanden"); }); }); export { cfg, read, admins };