mirror of
https://github.com/overte-org/overte.git
synced 2025-08-06 18:50:00 +02:00
Merge pull request #7342 from imgntn/consoleversion2
Add version number and make adding new menu items to Server Console easier
This commit is contained in:
commit
27fec45e95
1 changed files with 103 additions and 91 deletions
|
@ -477,118 +477,130 @@ function performContentMigration() {
|
||||||
|
|
||||||
var logWindow = null;
|
var logWindow = null;
|
||||||
|
|
||||||
|
var labels = {
|
||||||
|
serverState: {
|
||||||
|
label: 'Server - Stopped',
|
||||||
|
enabled: false
|
||||||
|
},
|
||||||
|
version: {
|
||||||
|
label: 'Version - ' + buildInfo.buildIdentifier,
|
||||||
|
enabled: false
|
||||||
|
},
|
||||||
|
restart: {
|
||||||
|
label: 'Start Server',
|
||||||
|
click: function() {
|
||||||
|
homeServer.restart();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
stopServer: {
|
||||||
|
label: 'Stop Server',
|
||||||
|
visible: false,
|
||||||
|
click: function() {
|
||||||
|
homeServer.stop();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
goHome: {
|
||||||
|
label: 'Go Home',
|
||||||
|
click: goHomeClicked,
|
||||||
|
enabled: false
|
||||||
|
},
|
||||||
|
quit: {
|
||||||
|
label: 'Quit',
|
||||||
|
accelerator: 'Command+Q',
|
||||||
|
click: function() {
|
||||||
|
shutdown();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
settings: {
|
||||||
|
label: 'Settings',
|
||||||
|
click: function() {
|
||||||
|
shell.openExternal('http://localhost:40100/settings');
|
||||||
|
},
|
||||||
|
enabled: false
|
||||||
|
},
|
||||||
|
viewLogs: {
|
||||||
|
label: 'View Logs',
|
||||||
|
click: function() {
|
||||||
|
logWindow.open();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
share: {
|
||||||
|
label: 'Share',
|
||||||
|
click: function() {
|
||||||
|
shell.openExternal('http://localhost:40100/settings/?action=share')
|
||||||
|
}
|
||||||
|
},
|
||||||
|
migrateContent: {
|
||||||
|
label: 'Migrate Stack Manager Content',
|
||||||
|
click: function() {
|
||||||
|
promptToMigrateContent();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
shuttingDown: {
|
||||||
|
label: "Shutting down...",
|
||||||
|
enabled: false
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
var separator = {
|
||||||
|
type: 'separator'
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
function buildMenuArray(serverState) {
|
function buildMenuArray(serverState) {
|
||||||
var menuArray = null;
|
|
||||||
|
updateLabels(serverState);
|
||||||
|
|
||||||
|
var menuArray = [];
|
||||||
|
|
||||||
if (isShuttingDown) {
|
if (isShuttingDown) {
|
||||||
menuArray = [
|
menuArray.push(labels.shuttingDown);
|
||||||
{
|
|
||||||
label: "Shutting down...",
|
|
||||||
enabled: false
|
|
||||||
}
|
|
||||||
];
|
|
||||||
} else {
|
} else {
|
||||||
menuArray = [
|
menuArray.push(labels.serverState);
|
||||||
{
|
menuArray.push(labels.version);
|
||||||
label: 'Server - Stopped',
|
menuArray.push(separator);
|
||||||
enabled: false
|
menuArray.push(labels.goHome);
|
||||||
},
|
menuArray.push(separator);
|
||||||
{
|
menuArray.push(labels.restart);
|
||||||
type: 'separator'
|
menuArray.push(labels.stopServer);
|
||||||
},
|
menuArray.push(labels.settings);
|
||||||
{
|
menuArray.push(labels.viewLogs);
|
||||||
label: 'Go Home',
|
menuArray.push(separator);
|
||||||
click: goHomeClicked,
|
menuArray.push(labels.share);
|
||||||
enabled: false
|
menuArray.push(separator);
|
||||||
},
|
menuArray.push(labels.quit);
|
||||||
{
|
|
||||||
type: 'separator'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'Start Server',
|
|
||||||
click: function() { homeServer.restart(); }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'Stop Server',
|
|
||||||
visible: false,
|
|
||||||
click: function() { homeServer.stop(); }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'Settings',
|
|
||||||
click: function() { shell.openExternal('http://localhost:40100/settings'); },
|
|
||||||
enabled: false
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'View Logs',
|
|
||||||
click: function() { logWindow.open(); }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
type: 'separator'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'Share',
|
|
||||||
click: function() { shell.openExternal('http://localhost:40100/settings/?action=share') }
|
|
||||||
},
|
|
||||||
{
|
|
||||||
type: 'separator'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'Quit',
|
|
||||||
accelerator: 'Command+Q',
|
|
||||||
click: function() { shutdown(); }
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
var foundStackManagerContent = isStackManagerContentPresent();
|
var foundStackManagerContent = isStackManagerContentPresent();
|
||||||
if (foundStackManagerContent) {
|
if (foundStackManagerContent) {
|
||||||
// add a separator and the stack manager content migration option
|
// add a separator and the stack manager content migration option
|
||||||
menuArray.splice(menuArray.length - 1, 0, {
|
menuArray.splice(menuArray.length - 1, 0, labels.migrateContent, separator);
|
||||||
label: 'Migrate Stack Manager Content',
|
|
||||||
click: function() { promptToMigrateContent(); }
|
|
||||||
}, {
|
|
||||||
type: 'separator'
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
updateMenuArray(menuArray, serverState);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return menuArray;
|
return menuArray;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const GO_HOME_INDEX = 2;
|
function updateLabels(serverState) {
|
||||||
const SERVER_LABEL_INDEX = 0;
|
|
||||||
const RESTART_INDEX = 4;
|
|
||||||
const STOP_INDEX = 5;
|
|
||||||
const SETTINGS_INDEX = 6;
|
|
||||||
|
|
||||||
function updateMenuArray(menuArray, serverState) {
|
|
||||||
// update the tray menu state
|
// update the tray menu state
|
||||||
var running = serverState == ProcessGroupStates.STARTED;
|
var running = serverState == ProcessGroupStates.STARTED;
|
||||||
|
labels.goHome.enabled = running;
|
||||||
var serverLabelItem = menuArray[SERVER_LABEL_INDEX];
|
labels.stopServer.visible = running;
|
||||||
var restartItem = menuArray[RESTART_INDEX];
|
labels.settings.enabled = running;
|
||||||
|
|
||||||
// Go Home is only enabled if running
|
|
||||||
menuArray[GO_HOME_INDEX].enabled = running;
|
|
||||||
|
|
||||||
// Stop is only visible if running
|
|
||||||
menuArray[STOP_INDEX].visible = running;
|
|
||||||
|
|
||||||
// Settings is only visible if running
|
|
||||||
menuArray[SETTINGS_INDEX].enabled = running;
|
|
||||||
|
|
||||||
if (serverState == ProcessGroupStates.STARTED) {
|
if (serverState == ProcessGroupStates.STARTED) {
|
||||||
serverLabelItem.label = "Server - Started";
|
labels.serverState.label = "Server - Started";
|
||||||
restartItem.label = "Restart Server";
|
labels.restart.label = "Restart Server";
|
||||||
} else if (serverState == ProcessGroupStates.STOPPED) {
|
} else if (serverState == ProcessGroupStates.STOPPED) {
|
||||||
serverLabelItem.label = "Server - Stopped";
|
labels.serverState.label = "Server - Stopped";
|
||||||
restartItem.label = "Start Server";
|
labels.restart.label = "Start Server";
|
||||||
|
labels.restart.enabled = true;
|
||||||
} else if (serverState == ProcessGroupStates.STOPPING) {
|
} else if (serverState == ProcessGroupStates.STOPPING) {
|
||||||
serverLabelItem.label = "Server - Stopping";
|
labels.serverState.label = "Server - Stopping";
|
||||||
|
labels.restart.label = "Restart Server";
|
||||||
restartItem.label = "Restart Server";
|
labels.restart.enabled = false;
|
||||||
restartItem.enabled = false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue