From be879e3660ff2b6544b086f89e2203ac21546a98 Mon Sep 17 00:00:00 2001 From: Davide Passoni Date: Fri, 7 Mar 2025 16:14:42 +0100 Subject: [PATCH] feat: added ability to change and check SRS port in manager --- manager/ejs/connections.ejs | 10 ++++++++++ manager/ejs/expertsettings.ejs | 10 ++++++++++ manager/ejs/instances.ejs | 4 ++++ manager/javascripts/dcsinstance.js | 2 ++ manager/javascripts/filesystem.js | 1 + manager/javascripts/manager.js | 5 +++++ 6 files changed, 32 insertions(+) diff --git a/manager/ejs/connections.ejs b/manager/ejs/connections.ejs index 5c33209c..59ab59f1 100644 --- a/manager/ejs/connections.ejs +++ b/manager/ejs/connections.ejs @@ -44,6 +44,16 @@ +
+ SRS port + + +
+ " + onchange="signal('onSRSPortChanged', this.value)"> +
+
Enable direct backend API connection diff --git a/manager/ejs/expertsettings.ejs b/manager/ejs/expertsettings.ejs index 8d3b49df..f6a55080 100644 --- a/manager/ejs/expertsettings.ejs +++ b/manager/ejs/expertsettings.ejs @@ -66,6 +66,16 @@
+
+ SRS port + + +
+ " + onchange="signal('onSRSPortChanged', this.value)"> +
+
Enable direct backend API connection diff --git a/manager/ejs/instances.ejs b/manager/ejs/instances.ejs index 4c3d707b..3936546c 100644 --- a/manager/ejs/instances.ejs +++ b/manager/ejs/instances.ejs @@ -92,6 +92,10 @@
Backend address
<%= instances[i].installed? instances[i].backendAddress: "N/A" %>
+
+
SRS port
+
<%= instances[i].installed? instances[i].SRSPort: "N/A" %>
+
diff --git a/manager/javascripts/dcsinstance.js b/manager/javascripts/dcsinstance.js index 9be3aa89..e93767b1 100644 --- a/manager/javascripts/dcsinstance.js +++ b/manager/javascripts/dcsinstance.js @@ -150,6 +150,7 @@ class DCSInstance { blueCommanderPasswordEdited = false; redCommanderPasswordEdited = false; autoconnectWhenLocal = false; + SRSPort = 5002; constructor(folder) { this.folder = folder; @@ -186,6 +187,7 @@ class DCSInstance { this.backendAddress = config["backend"]["address"]; this.gameMasterPasswordHash = config["authentication"]["gameMasterPassword"]; this.autoconnectWhenLocal = config["frontend"]["autoconnectWhenLocal"]; + this.SRSPort = config["audio"]["SRSPort"]; this.gameMasterPasswordEdited = false; this.blueCommanderPasswordEdited = false; diff --git a/manager/javascripts/filesystem.js b/manager/javascripts/filesystem.js index 7cffc58f..ae2f1a59 100644 --- a/manager/javascripts/filesystem.js +++ b/manager/javascripts/filesystem.js @@ -164,6 +164,7 @@ async function applyConfiguration(folder, instance) { config["frontend"]["autoconnectWhenLocal"] = instance.autoconnectWhenLocal; config["backend"]["port"] = instance.backendPort; config["backend"]["address"] = instance.backendAddress; + config["audio"]["SRSPort"] = instance.SRSPort; if (instance.gameMasterPassword !== "") config["authentication"]["gameMasterPassword"] = sha256(instance.gameMasterPassword); diff --git a/manager/javascripts/manager.js b/manager/javascripts/manager.js index b753c9bf..451aa617 100644 --- a/manager/javascripts/manager.js +++ b/manager/javascripts/manager.js @@ -517,6 +517,11 @@ class Manager { this.setPort('backend', Number(value)); } + /* When the srs port input value is changed */ + async onSRSPortChanged(value) { + this.getActiveInstance().SRSPort = Number(value); + } + /* When the "Enable API connection" checkbox is clicked */ async onEnableAPIClicked() { if (this.getActiveInstance()) {