1
0
mirror of https://github.com/KubaPro010/fm-dx-webserver.git synced 2026-02-26 22:13:53 +01:00

user kick, plugins, bugfixes

This commit is contained in:
NoobishSVK
2024-04-25 20:41:05 +02:00
parent 981c0f25e2
commit 510ed6b8f3
15 changed files with 152 additions and 46 deletions

View File

@@ -13,6 +13,7 @@ const storage = require('./storage');
const { logInfo, logDebug, logWarn, logError, logFfmpeg, logs } = require('./console');
const dataHandler = require('./datahandler');
const fmdxList = require('./fmdx_list');
const { allPluginConfigs } = require('./plugins');
// Endpoints
router.get('/', (req, res) => {
@@ -56,6 +57,7 @@ router.get('/', (req, res) => {
tuningUpperLimit: serverConfig.webserver.tuningUpperLimit,
chatEnabled: serverConfig.webserver.chatEnabled,
device: serverConfig.device,
plugins: serverConfig.plugins,
bwSwitch: serverConfig.bwSwitch ? serverConfig.bwSwitch : false
});
}
@@ -108,6 +110,7 @@ router.get('/setup', (req, res) => {
memoryUsage: (process.memoryUsage.rss() / 1024 / 1024).toFixed(1) + ' MB',
processUptime: formattedProcessUptime,
consoleOutput: logs,
plugins: allPluginConfigs,
onlineUsers: dataHandler.dataToSend.users,
connectedUsers: storage.connectedUsers
});
@@ -154,6 +157,17 @@ router.get('/logout', (req, res) => {
});
});
router.get('/kick', (req, res) => {
const ipAddress = req.query.ip; // Extract the IP address parameter from the query string
// Terminate the WebSocket connection for the specified IP address
if(req.session.isAdminAuthenticated) {
helpers.kickClient(ipAddress);
}
setTimeout(() => {
res.redirect('/setup');
}, 500);
});
router.post('/saveData', (req, res) => {
const data = req.body;
let firstSetup;
@@ -215,7 +229,8 @@ router.get('/static_data', (req, res) => {
qthLongitude: serverConfig.identification.lon,
presets: serverConfig.webserver.presets || [],
defaultTheme: serverConfig.webserver.defaultTheme || 'theme1',
bgImage: serverConfig.webserver.bgImage || ''
bgImage: serverConfig.webserver.bgImage || '',
rdsMode: serverConfig.webserver.rdsMode || false,
});
});