const express = require('express'); const fs = require('fs'); const path = require('path'); const router = express.Router(); const fileUpload = require('express-fileupload'); const authMiddleware = require('../../../Middlewares/authMiddleware'); const { loggers } = require('winston'); const ncp = require('ncp'); const util = require('util'); const ncpAsync = util.promisify(ncp.ncp); const configFile = fs.readFileSync(path.join(__dirname, '../../../data', 'setup.json'), 'utf-8') const config = JSON.parse(configFile); const bodyParser = require('body-parser'); const crypto = require('crypto'); const os = require('os'); const osUtils = require('os-utils'); const Convert = require('ansi-to-html'); const convert = new Convert() const { getUserData, getSetupData } = require('../../../Middlewares/watcherMiddleware'); const { logger, logRequestInfo, ErrorLogger, authLogger } = require('../../../config/logs'); let setupData = getSetupData(); let userData = getUserData(); router.use(bodyParser.json()); const User = require('../../../data/user.json'); const setup = JSON.parse(fs.readFileSync(path.join(__dirname, '../../../data', 'setup.json'), 'utf-8')); router.get('/', (req, res) => { res.status(400).json({ error: 'Bad Request. The request cannot be fulfilled due to bad syntax or missing parameters.' }); }); router.post('/', authMiddleware, async (req, res) => { try { let setup = JSON.parse(fs.readFileSync(path.join(__dirname, '../data', 'setup.json'), 'utf-8')); if (!req.body.ldap || !req.body.ldap.enabled) { delete setup.ldap; } else { setup.ldap = req.body.ldap; } if (!req.body.discord || !req.body.discord.enabled) { delete setup.discord; } else { setup.discord = req.body.discord; } setup.domain = req.body.domain; setup.uptime = req.body.uptime; fs.writeFileSync(path.join(__dirname, '../../../data', 'setup.json'), 'utf-8'), JSON.stringify(setup, null, 2); res.redirect('/dpanel/dashboard/admin'); } catch (err) { console.error(err); res.status(500).send('Server Error'); } }); module.exports = router;