Merge pull request #812 from Pax1601/manager-wizard

Bugfixing on manager
This commit is contained in:
Pax1601 2024-01-28 10:22:19 +01:00 committed by GitHub
commit f0ab43d320
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
10 changed files with 79 additions and 372 deletions

View File

@ -6,7 +6,7 @@
{
"label": "mirror-package",
"type": "shell",
"command": "call ./scripts/mirror-package.bat",
"command": "./scripts/mirror-package.bat",
"isBackground": true
}
]

View File

@ -1,9 +1,13 @@
<style>
#manager-instances .scroll-container {
#manager-instances {
height: 100%;
}
#manager-instances .scroll-container {
overflow-y: auto;
max-width: 100% !important;
width: 100%;
height: calc(100% - 120px);
}
#manager-instances .scrollable {
@ -29,6 +33,7 @@
border-left: 5px solid var(--blue);
flex-direction: column;
row-gap: 25px;
position: relative;
}
#manager-instances .option:not(.installed) {
@ -214,9 +219,19 @@
#manager-instances .install {
margin-left: auto;
}
#manager-instances .content {
height: 100%;
overflow-x: hidden;
overflow-y: scroll;
}
#manager-instances .content > div {
height: fit-content;
}
</style>
<div id="manager-instances" style="margin-bottom: 10px;">
<div id="manager-instances">
<div class="content">
<div class="instructions" style="display: flex; flex-direction: column; row-gap: 10px; align-items: center; padding: 20px;">
<span style="color: var(--offwhite); font-size: 18px; font-weight: 600;">
@ -278,6 +293,10 @@
<div class="button open-browser hide" onclick="signal('onOpenBrowserClicked', '<%= instances[i].name %>')">Open in browser</div>
<div class="button stop hide" onclick="signal('onStopClicked', '<%= instances[i].name %>')">Stop Olympus</div>
</div>
<div style="position: absolute; top: 15px; right: 15px; text-decoration: underline; cursor: pointer;" onclick="
signal('onTextFileClicked', '<%= instances[i].folder.replaceAll('\\', '/')+'/Logs/dcs.log' %>');
signal('onTextFileClicked', '<%= instances[i].folder.replaceAll('\\', '/')+'/Logs/Olympus_log.txt' %>');
">Open logs</div>
</div>
<% } %>
</div>

View File

@ -114,7 +114,7 @@
</div>
</div>
<div style="font-size: 13px;">
Alternatively, you can run the <b>Olympus Server</b> instead and visit <div class="link">http://localhost:<%= activeInstance["clientPort"] %></div> in a web browser (Google Chrome recommended) to replace the first step above.
Alternatively, you can run the <b>Olympus Server</b> instead and visit <div class="link" onclick="signal('onLinkClicked', 'http://localhost:<%= activeInstance["clientPort"] %>')" >http://localhost:<%= activeInstance["clientPort"] %></div> in a web browser (Google Chrome recommended) to replace the first step above.
</div>
<% } else { %>
<div class="usage-instructions">
@ -128,7 +128,7 @@
<div>
<img src="./icons/chrome.svg">
<div>
To access Olympus remotely visit <div class="link">http://<%= ip %>:<%= activeInstance["clientPort"] %></div> <b>in a web browser</b> (Google Chrome recommended).
To access Olympus remotely visit <div class="link" onclick="signal('onLinkClicked', 'http://<%= ip %>:<%= activeInstance["clientPort"] %>')">http://<%= ip %>:<%= activeInstance["clientPort"] %></div> <b>in a web browser</b> (Google Chrome recommended).
</div>
</div>
<img src="./icons/arrow-right-solid.svg">
@ -140,7 +140,7 @@
</div>
</div>
<div style="font-size: 13px;">
<b>To access Olympus from this PC</b>, you need to visit <div class="link">http://localhost:<%= activeInstance["clientPort"] %></div> in a web browser (Google Chrome recommended) instead.
<b>To access Olympus from this PC</b>, you need to visit <div class="link" onclick="signal('onLinkClicked', 'http://localhost:<%= activeInstance["clientPort"] %>')">http://localhost:<%= activeInstance["clientPort"] %></div> in a web browser (Google Chrome recommended) instead.
</div>
<% } %>
</div>

View File

@ -29,6 +29,7 @@
border-left: 5px solid var(--blue);
flex-direction: column;
row-gap: 25px;
position: relative;
}
#manager-settings .option:not(.installed) {
@ -226,7 +227,7 @@
View and manage installs
</span>
<span style="color: var(--offwhite); font-size: 14px; text-align: center;">
The following DCS installations have been identified. <br>You can modify settings and uninstall below.
The following Olympus installations have been identified. <br>You can modify settings and uninstall below.
</span>
</div>
<div class="scroll-container">
@ -252,6 +253,10 @@
<div> <%= instances[i].installed? instances[i].backendAddress: "N/A" %> </div>
</div>
</div>
<div style="position: absolute; top: 15px; right: 15px; text-decoration: underline; cursor: pointer;" onclick="
signal('onTextFileClicked', '<%= instances[i].folder.replaceAll('\\', '/')+'/Logs/dcs.log' %>');
signal('onTextFileClicked', '<%= instances[i].folder.replaceAll('\\', '/')+'/Logs/Olympus_log.txt' %>');
">Open logs</div>
</div>
<div class="instance-buttons">
<div class="button edit" onclick="signal('onEditClicked', '<%= instances[i].name %>')">Edit settings</div>

View File

@ -30,9 +30,9 @@
<div class="link" data-link="https://github.com/Pax1601/DCSOlympus/wiki/Setup-Troubleshooting">Troubleshooting Guide</div>
<div id="switch-mode" class="link"> </div>
<div style="width: 15px;"></div>
<img class="link" data-link="https://github.com/Pax1601/DCSOlympus" src="./icons/github.svg" />
<img class="link" data-link="https://discord.gg/pCfCykAdrw" src="./icons/discord.svg" />
<img class="link" data-link="https://www.youtube.com/@DCSOlympus" src="./icons/youtube.svg" />
<img class="link" onClick="signal('onLinkClicked', 'https://github.com/Pax1601/DCSOlympus')" src="./icons/github.svg" />
<img class="link" onClick="signal('onLinkClicked', 'https://discord.gg/pCfCykAdrw')" src="./icons/discord.svg" />
<img class="link" onClick="signal('onLinkClicked', 'https://www.youtube.com/@DCSOlympus')" src="./icons/youtube.svg" />
</div>
<div id="loader" class="manager-page hide">
<div style="font-weight: bold;">Loading, please wait...</div>

View File

@ -41,15 +41,18 @@ class DCSInstance {
if (result[shellFoldersKey] !== undefined && result[shellFoldersKey]["exists"] && result[shellFoldersKey]['values'][saveGamesKey] !== undefined && result[shellFoldersKey]['values'][saveGamesKey]['value'] !== undefined) {
/* Read all the folders in Saved Games */
const searchpath = result[shellFoldersKey]['values'][saveGamesKey]['value'];
const folders = fs.readdirSync(searchpath);
var folders = fs.readdirSync(searchpath).map((folder) => {return path.join(searchpath, folder);});
console.log(folders);
var instances = [];
folders = folders.concat(getManager().options.additionalDCSInstances);
console.log(folders);
/* A DCS Instance is created if either the appsettings.lua or serversettings.lua file is detected */
for (let i = 0; i < folders.length; i++) {
const folder = folders[i];
if (fs.existsSync(path.join(searchpath, folder, "Config", "appsettings.lua")) ||fs.existsSync(path.join(searchpath, folder, "Config", "serversettings.lua"))) {
if (fs.existsSync(path.join(folder, "Config", "appsettings.lua")) || fs.existsSync(path.join(folder, "Config", "serversettings.lua")) || getManager().options.additionalDCSInstances.includes(folder)) {
logger.log(`Found instance in ${folder}, checking for Olympus`)
var newInstance = new DCSInstance(path.join(searchpath, folder));
var newInstance = new DCSInstance(path.join(folder));
/* Check if Olympus is already installed */
getManager().setLoadingProgress(`Found instance in ${folder}, checking for Olympus...`, (i + 1) / folders.length * 100);
@ -471,11 +474,11 @@ class DCSInstance {
logger.log(`Editing completed successfully`);
hidePopup();
this.options.mode === "basic"? getManager().menuPage.show(): getManager().instancesPage.show();
getManager().options.mode === "basic"? getManager().menuPage.show(): getManager().instancesPage.show();
} catch (err) {
logger.log(`An error occurred during editing: ${err}`);
hidePopup();
showErrorPopup(`A critical error occurred, check ${this.options.logLocation} for more info.`)
showErrorPopup(`A critical error occurred, check ${getManager().options.logLocation} for more info.`)
}
}

View File

@ -167,9 +167,10 @@ class Manager {
*/
createOptionsFile(mode) {
try {
fs.writeFileSync("options.json", JSON.stringify({ mode: mode }));
fs.writeFileSync("options.json", JSON.stringify({ mode: mode, additionalDCSInstances: [] }, null, 2));
location.reload();
} catch (e) {
} catch (err) {
logger.log(err);
showErrorPopup(`A critical error occurred, check ${this.options.logLocation} for more info.`)
}
}
@ -182,7 +183,7 @@ class Manager {
/* Change the mode in the options.json and reload the page */
var options = JSON.parse(fs.readFileSync("options.json"));
options.mode = newMode;
fs.writeFileSync("options.json", JSON.stringify(options));
fs.writeFileSync("options.json", JSON.stringify(options, null, 2));
location.reload();
}
@ -240,13 +241,7 @@ class Manager {
onEditMenuClicked() {
this.activePage.hide()
this.options.install = false;
if (this.options.singleInstance) {
this.options.activeInstance = this.options.instances[0];
this.connectionsTypePage.show();
} else {
this.settingsPage.show();
}
this.settingsPage.show();
}
/** When a folder is selected, find what instance was clicked to set as active
@ -271,8 +266,9 @@ class Manager {
this.typePage.getElement().querySelector(`.multiplayer`).classList.toggle("selected", type === 'multiplayer');
if (this.options.activeInstance)
this.options.activeInstance.installationType = type;
else
showErrorPopup(`A critical error occurred, check ${this.options.logLocation} for more info.`)
else {
showErrorPopup(`A critical error occurred, check ${this.options.logLocation} for more info.`);
}
}
/* When the connections type is selected */
@ -281,8 +277,9 @@ class Manager {
this.connectionsTypePage.getElement().querySelector(`.manual`).classList.toggle("selected", type === 'manual');
if (this.options.activeInstance)
this.options.activeInstance.connectionsType = type;
else
showErrorPopup(`A critical error occurred, check ${this.options.logLocation} for more info.`)
else {
showErrorPopup(`A critical error occurred, check ${this.options.logLocation} for more info.`);
}
}
/* When the next button of a wizard page is clicked */
@ -340,7 +337,7 @@ class Manager {
if (this.options.activeInstance) {
if (this.options.activeInstance.installed && !this.options.activeInstance.arePasswordsEdited()) {
this.activePage.hide();
this.options.install? this.options.activeInstance.install(): this.options.activeInstance.edit();
this.options.install ? this.options.activeInstance.install() : this.options.activeInstance.edit();
}
else {
if (!this.options.activeInstance.arePasswordsSet()) {
@ -349,7 +346,7 @@ class Manager {
showErrorPopup('Please, set different passwords for the Game Master, Blue Commander, and Red Commander roles!');
} else {
this.activePage.hide();
this.options.install? this.options.activeInstance.install(): this.options.activeInstance.edit();
this.options.install ? this.options.activeInstance.install() : this.options.activeInstance.edit();
}
}
} else {
@ -377,8 +374,9 @@ class Manager {
if (!this.options.activeInstance.redCommanderPasswordEdited)
this.passwordsPage.getElement().querySelector(".red-commander input").value = "";
}
else
showErrorPopup(`A critical error occurred, check ${this.options.logLocation} for more info.`)
else {
showErrorPopup(`A critical error occurred, check ${this.options.logLocation} for more info.`);
}
}
onBlueCommanderPasswordChanged(value) {
@ -389,8 +387,9 @@ class Manager {
if (!this.options.activeInstance.redCommanderPasswordEdited)
this.passwordsPage.getElement().querySelector(".red-commander input").value = "";
}
else
showErrorPopup(`A critical error occurred, check ${this.options.logLocation} for more info.`)
else {
showErrorPopup(`A critical error occurred, check ${this.options.logLocation} for more info.`);
}
}
onRedCommanderPasswordChanged(value) {
@ -401,8 +400,9 @@ class Manager {
if (!this.options.activeInstance.blueCommanderPasswordEdited)
this.passwordsPage.getElement().querySelector(".blue-commander input").value = "";
}
else
showErrorPopup(`A critical error occurred, check ${this.options.logLocation} for more info.`)
else {
showErrorPopup(`A critical error occurred, check ${this.options.logLocation} for more info.`);
}
}
/* When the client port input value is changed */
@ -472,7 +472,7 @@ class Manager {
this.options.activeInstance = instance;
this.options.install = false;
this.activePage.hide();
this.connectionsTypePage.show();
this.typePage.show();
}
}
@ -494,6 +494,14 @@ class Manager {
await instance.uninstall();
}
onLinkClicked(url) {
exec(`start ${url}`);
}
onTextFileClicked(path) {
exec(`notepad "${path}"`);
}
async getClickedInstance(name) {
var instances = await DCSInstance.getInstances()
return instances.find((instance) => { return instance.name === name; });
@ -556,7 +564,7 @@ class Manager {
instanceDiv.querySelector(".backend.online").classList.toggle("hide", !instance.backendOnline);
instanceDiv.querySelector(".backend.offline").classList.toggle("hide", instance.backendOnline);
if (this.backendOnline) {
if (instance.backendOnline) {
instanceDiv.querySelector(".fps .data").innerText = instance.fps;
instanceDiv.querySelector(".load .data").innerText = instance.load;
}
@ -567,7 +575,7 @@ class Manager {
instanceDiv.querySelector(".button.open-browser").classList.toggle("hide", !instance.webserverOnline);
instanceDiv.querySelector(".button.stop").classList.toggle("hide", !instance.webserverOnline);
if (this.webserverOnline)
if (instance.webserverOnline)
instanceDiv.querySelector(".button.start").classList.remove("loading");
}
}

View File

@ -69,9 +69,9 @@ async function updateOlympusBeta() {
var artifact = artifacts.find((artifact) => { return artifact.name = "development_build_not_a_release" });
const date1 = new Date(artifact.updated_at);
const date2 = fs.statSync(path.join("package.json")).birthtime;
const date2 = fs.statSync(".").mtime;
if (date1 > date2) {
showConfirmPopup(`<span>Latest beta artifact has a timestamp of <i style="color: orange">${artifact.updated_at}</i>, while your installation was created on <i style="color: orange">${date2.toISOString()}</i>. Do you want to update to the newest beta version?</span>`, () => {
showConfirmPopup(`<span style="font-size: 18px; max-width: 100%; margin-bottom: 15px;">Looks like you are running a beta version of Olympus!</span><span>Latest beta artifact timestamp of: <i style="color: orange">${date1.toLocaleString()}</i> <br> Your installation timestamp: <i style="color: orange">${date2.toLocaleString()}</i> <br><br> Do you want to update to the newest beta version?</span>`, () => {
/* Run the browser and download the artifact */ //TODO: try and directly download the file from code rather than using the browser
exec(`start https://github.com/Pax1601/DCSOlympus/actions/runs/${artifact.workflow_run.id}/artifacts/${artifact.id}`)
showConfirmPopup('A browser window was opened to download the beta artifact. Please wait for the download to complete, then press "Accept" and select the downloaded beta artifact.',
@ -262,17 +262,6 @@ contextBridge.exposeInMainWorld(
window.addEventListener('DOMContentLoaded', async () => {
document.getElementById("loader").classList.remove("hide");
await getManager().start();
/* Create event listeners for the hyperlinks */
var links = document.querySelectorAll(".link");
for (let i = 0; i < links.length; i++) {
if (links[i].dataset.link) {
links[i].addEventListener("click", (e) => {
if (e.target.dataset.link)
exec("start " + e.target.dataset.link);
})
}
}
})
window.addEventListener('resize', () => {

View File

@ -1,317 +0,0 @@
======================= New log starting at Thu Jan 11 2024 16:07:31 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
Development build detected, skipping version checks...
======================= New log starting at Thu Jan 11 2024 16:11:52 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:11:54 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:11:56 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:13:03 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:13:31 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:13:41 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:13:48 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:23:11 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
ReferenceError: ./ejs/connections.ejs:32
30| <div id="manager-connections">
31| <div class="step-summary">
>> 32| <div class="blue <%= !install || basic? 'hide': '' %>">User path</div>
33| <div class="white">Ports and address</div>
34| <div class="empty">Passwords</div>
35| <div class="empty"> <%= install? 'Install': 'Update' %></div>
basic is not defined
at eval ("./ejs/connections.ejs":12:38)
at connections (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:703:17)
at tryHandleCache (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:274:36)
at exports.renderFile (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:491:10)
at ConnectionsPage.show (D:\Documents\DCSOlympus\manager\javascripts\connections.js:41:13)
at Manager.start (D:\Documents\DCSOlympus\manager\javascripts\manager.js:70:42)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async D:\Documents\DCSOlympus\manager\javascripts\preload.js:268:5 {
path: './ejs/connections.ejs'
}
======================= New log starting at Thu Jan 11 2024 16:24:03 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
ReferenceError: ./ejs/connections.ejs:32
30| <div id="manager-connections">
31| <div class="step-summary">
>> 32| <div class="blue <%= !install || basic? 'hide': '' %>">User path</div>
33| <div class="white">Ports and address</div>
34| <div class="empty">Passwords</div>
35| <div class="empty"> <%= install? 'Install': 'Update' %></div>
basic is not defined
at eval ("./ejs/connections.ejs":12:38)
at connections (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:703:17)
at tryHandleCache (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:274:36)
at exports.renderFile (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:491:10)
at ConnectionsPage.show (D:\Documents\DCSOlympus\manager\javascripts\connections.js:41:13)
at Manager.start (D:\Documents\DCSOlympus\manager\javascripts\manager.js:70:42)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async D:\Documents\DCSOlympus\manager\javascripts\preload.js:268:5 {
path: './ejs/connections.ejs'
}
======================= New log starting at Thu Jan 11 2024 16:24:25 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
ReferenceError: ./ejs/connections.ejs:32
30| <div id="manager-connections">
31| <div class="step-summary">
>> 32| <div class="blue <%= !install || basic? 'hide': '' %>">User path</div>
33| <div class="white">Ports and address</div>
34| <div class="empty">Passwords</div>
35| <div class="empty"> <%= install? 'Install': 'Update' %></div>
basic is not defined
at eval ("./ejs/connections.ejs":12:38)
at connections (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:703:17)
at tryHandleCache (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:274:36)
at exports.renderFile (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:491:10)
at ConnectionsPage.show (D:\Documents\DCSOlympus\manager\javascripts\connections.js:41:13)
at Manager.start (D:\Documents\DCSOlympus\manager\javascripts\manager.js:71:42)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async D:\Documents\DCSOlympus\manager\javascripts\preload.js:268:5 {
path: './ejs/connections.ejs'
}
======================= New log starting at Thu Jan 11 2024 16:24:45 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
ReferenceError: ./ejs/connections.ejs:32
30| <div id="manager-connections">
31| <div class="step-summary">
>> 32| <div class="blue <%= !install || basic? 'hide': '' %>">User path</div>
33| <div class="white">Ports and address</div>
34| <div class="empty">Passwords</div>
35| <div class="empty"> <%= install? 'Install': 'Update' %></div>
basic is not defined
at eval ("./ejs/connections.ejs":12:38)
at connections (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:703:17)
at tryHandleCache (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:274:36)
at exports.renderFile (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:491:10)
at ConnectionsPage.show (D:\Documents\DCSOlympus\manager\javascripts\connections.js:41:13)
at Manager.start (D:\Documents\DCSOlympus\manager\javascripts\manager.js:71:42)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async D:\Documents\DCSOlympus\manager\javascripts\preload.js:268:5 {
path: './ejs/connections.ejs'
}
======================= New log starting at Thu Jan 11 2024 16:25:20 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
ReferenceError: ./ejs/connections.ejs:32
30| <div id="manager-connections">
31| <div class="step-summary">
>> 32| <div class="blue <%= !install || basic? 'hide': '' %>">User path</div>
33| <div class="white">Ports and address</div>
34| <div class="empty">Passwords</div>
35| <div class="empty"> <%= install? 'Install': 'Update' %></div>
basic is not defined
at eval ("./ejs/connections.ejs":12:38)
at connections (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:703:17)
at tryHandleCache (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:274:36)
at exports.renderFile (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:491:10)
at ConnectionsPage.show (D:\Documents\DCSOlympus\manager\javascripts\connections.js:41:13)
at Manager.start (D:\Documents\DCSOlympus\manager\javascripts\manager.js:78:42)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async D:\Documents\DCSOlympus\manager\javascripts\preload.js:268:5 {
path: './ejs/connections.ejs'
}
======================= New log starting at Thu Jan 11 2024 16:28:55 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
ReferenceError: ./ejs/connections.ejs:52
50| </span>
51| <div>
>> 52| <input type="number" min="1024" max="65535" value="<%= instance["clientPort"] %>">
53| <img class="success hide">
54| <div class="error hide">
55| <img> <span>Port already in use</span>
instance is not defined
at eval ("./ejs/connections.ejs":18:26)
at connections (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:703:17)
at tryHandleCache (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:274:36)
at exports.renderFile (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:491:10)
at ConnectionsPage.show (D:\Documents\DCSOlympus\manager\javascripts\connections.js:41:13)
at Manager.start (D:\Documents\DCSOlympus\manager\javascripts\manager.js:78:42)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async D:\Documents\DCSOlympus\manager\javascripts\preload.js:268:5 {
path: './ejs/connections.ejs'
}
======================= New log starting at Thu Jan 11 2024 16:29:02 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
ReferenceError: ./ejs/connections.ejs:52
50| </span>
51| <div>
>> 52| <input type="number" min="1024" max="65535" value="<%= instance["clientPort"] %>">
53| <img class="success hide">
54| <div class="error hide">
55| <img> <span>Port already in use</span>
instance is not defined
at eval ("./ejs/connections.ejs":18:26)
at connections (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:703:17)
at tryHandleCache (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:274:36)
at exports.renderFile (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:491:10)
at ConnectionsPage.show (D:\Documents\DCSOlympus\manager\javascripts\connections.js:41:13)
at Manager.start (D:\Documents\DCSOlympus\manager\javascripts\manager.js:78:42)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async D:\Documents\DCSOlympus\manager\javascripts\preload.js:268:5 {
path: './ejs/connections.ejs'
}
======================= New log starting at Thu Jan 11 2024 16:31:06 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
ReferenceError: ./ejs/connections.ejs:52
50| </span>
51| <div>
>> 52| <input type="number" min="1024" max="65535" value="<%= instance["clientPort"] %>">
53| <img class="success hide">
54| <div class="error hide">
55| <img> <span>Port already in use</span>
instance is not defined
at eval ("./ejs/connections.ejs":18:26)
at connections (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:703:17)
at tryHandleCache (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:274:36)
at exports.renderFile (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:491:10)
at ConnectionsPage.show (D:\Documents\DCSOlympus\manager\javascripts\connections.js:41:13)
at Manager.start (D:\Documents\DCSOlympus\manager\javascripts\manager.js:77:42)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async D:\Documents\DCSOlympus\manager\javascripts\preload.js:268:5 {
path: './ejs/connections.ejs'
}
======================= New log starting at Thu Jan 11 2024 16:37:31 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
ReferenceError: ./ejs/connections.ejs:52
50| </span>
51| <div>
>> 52| <input type="number" min="1024" max="65535" value="<%= instance["clientPort"] %>">
53| <img class="success hide">
54| <div class="error hide">
55| <img> <span>Port already in use</span>
instance is not defined
at eval ("./ejs/connections.ejs":18:26)
at connections (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:703:17)
at tryHandleCache (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:274:36)
at exports.renderFile (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:491:10)
at ConnectionsPage.show (D:\Documents\DCSOlympus\manager\javascripts\connections.js:38:13)
at Manager.start (D:\Documents\DCSOlympus\manager\javascripts\manager.js:77:42)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async D:\Documents\DCSOlympus\manager\javascripts\preload.js:268:5 {
path: './ejs/connections.ejs'
}
======================= New log starting at Thu Jan 11 2024 16:38:57 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:39:52 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:41:14 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:41:25 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:41:48 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:42:27 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:42:52 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:43:06 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:43:24 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3000
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3001
======================= New log starting at Thu Jan 11 2024 16:54:16 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
======================= New log starting at Thu Jan 11 2024 16:54:21 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3000
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3001
ReferenceError: ./ejs/passwords.ejs:6
4| <div id="manager-passwords">
5| <div class="step-summary">
>> 6| <div class="blue <%= !install || singleInstance? 'hide': '' %>">User path</div>
7| <div class="blue">Ports and address</div>
8| <div class="white">Passwords</div>
9| <div class="empty"> <%= install? 'Install': 'Update' %></div>
install is not defined
at eval ("./ejs/passwords.ejs":12:27)
at passwords (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:703:17)
at tryHandleCache (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:274:36)
at exports.renderFile (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:491:10)
at PasswordsPage.show (D:\Documents\DCSOlympus\manager\javascripts\passwords.js:35:13)
at ConnectionsPage.onNextClicked (D:\Documents\DCSOlympus\manager\javascripts\connections.js:58:36)
at HTMLDivElement.<anonymous> (D:\Documents\DCSOlympus\manager\javascripts\connections.js:21:87) {
path: './ejs/passwords.ejs'
}
======================= New log starting at Thu Jan 11 2024 16:54:49 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3000
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3001
ReferenceError: ./ejs/passwords.ejs:44
42| </div>
43| </div>
>> 44| <% if (!basic) { %>
45| <div class="button cancel">
46| <%= install? "Cancel installation": "Cancel editing" %>
47| </div>
basic is not defined
at eval ("./ejs/passwords.ejs":18:8)
at passwords (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:703:17)
at tryHandleCache (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:274:36)
at exports.renderFile (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:491:10)
at PasswordsPage.show (D:\Documents\DCSOlympus\manager\javascripts\passwords.js:35:13)
at ConnectionsPage.onNextClicked (D:\Documents\DCSOlympus\manager\javascripts\connections.js:58:36)
at HTMLDivElement.<anonymous> (D:\Documents\DCSOlympus\manager\javascripts\connections.js:21:87) {
path: './ejs/passwords.ejs'
}
======================= New log starting at Thu Jan 11 2024 16:55:57 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3000
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3001
======================= New log starting at Fri Jan 12 2024 08:51:22 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
Development build detected, skipping version checks...
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3000
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3001
======================= New log starting at Fri Jan 12 2024 08:53:17 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3000
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3001
======================= New log starting at Fri Jan 12 2024 08:53:42 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3000
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3001
ReferenceError: ./ejs/result.ejs:132
130| <div>
131| <span>
>> 132| <%= instance.name %>
133| </span>
134| <span><img src="./icons/folder-open-solid.svg">
135| <%= instance.folder %>
instance is not defined
at eval ("./ejs/result.ejs":27:26)
at result (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:703:17)
at tryHandleCache (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:274:36)
at exports.renderFile (D:\Documents\DCSOlympus\manager\node_modules\ejs\lib\ejs.js:491:10)
at ResultPage.show (D:\Documents\DCSOlympus\manager\javascripts\result.js:25:13)
at PasswordsPage.onNextClicked (D:\Documents\DCSOlympus\manager\javascripts\passwords.js:40:33)
at HTMLDivElement.<anonymous> (D:\Documents\DCSOlympus\manager\javascripts\managerpage.js:39:87) {
path: './ejs/result.ejs'
}
======================= New log starting at Fri Jan 12 2024 08:54:41 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3000
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3001
======================= New log starting at Fri Jan 12 2024 08:56:11 GMT+0100 (Central European Standard Time) =======================
Running in D:\Documents\DCSOlympus\manager\javascripts
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3000
Instance C:\Users\dpassoni\Saved Games\dcs.openbeta client port set to 3001
Installing hooks in C:\Users\dpassoni\Saved Games\dcs.openbeta
Error installing hooks in C:\Users\dpassoni\Saved Games\dcs.openbeta: Error: ENOENT: no such file or directory, lstat 'D:\Documents\DCSOlympus\scripts\OlympusHook.lua'

View File

@ -275,8 +275,8 @@ input {
left: 0px;
width: 100%;
height: 100%;
background-color: white;
opacity: 15%;
background-color: black;
opacity: 30%;
z-index: 999;
}