add basic xternjs functionality
This commit is contained in:
@@ -24,6 +24,7 @@ export class Instance extends HTMLElement {
|
||||
<div class="btn-group">
|
||||
<img id="power-btn">
|
||||
<img id="configure-btn" alt="change instance configuration">
|
||||
<img id="console-btn" alt="connect to instance console or display">
|
||||
</div>
|
||||
</article>
|
||||
`;
|
||||
@@ -73,9 +74,16 @@ export class Instance extends HTMLElement {
|
||||
configButton.title = instances[this.status].configButtonAlt;
|
||||
configButton.addEventListener("click", this.handleConfigButton.bind(this));
|
||||
|
||||
let consoleButton = this.shadowElement.querySelector("#console-btn");
|
||||
consoleButton.src = instances[this.status].consoleButtonSrc;
|
||||
consoleButton.alt = instances[this.status].consoleButtonAlt;
|
||||
consoleButton.title = instances[this.status].consoleButtonAlt;
|
||||
consoleButton.addEventListener("click", this.handleConsoleButton.bind(this));
|
||||
|
||||
if (this.node.status !== "online") {
|
||||
powerButton.classList.add("hidden");
|
||||
configButton.classList.add("hidden");
|
||||
consoleButton.classList.add("hidden");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -120,6 +128,12 @@ export class Instance extends HTMLElement {
|
||||
goToPage("config.html", {node: this.node.name, type: this.type, vmid: this.vmid});
|
||||
}
|
||||
}
|
||||
|
||||
handleConsoleButton () {
|
||||
if (this.status === "running") {
|
||||
goToPage("pve-xtermjs/index.html", {type: this.type, vmid: this.vmid, name: this.name, node: this.node.name, user: "alu@ldap", url: "pve.tronnet.net/api2/json"});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export class Dialog extends HTMLElement {
|
||||
|
@@ -37,19 +37,25 @@ export const instances = {
|
||||
powerButtonSrc: "images/actions/stop.svg",
|
||||
powerButtonAlt: "Shutdown Instance",
|
||||
configButtonSrc: "images/actions/config-inactive.svg",
|
||||
configButtonAlt: "Configuration Disabled"
|
||||
configButtonAlt: "Configuration Disabled",
|
||||
consoleButtonSrc: "images/actions/console-active.svg",
|
||||
consoleButtonAlt: "Open Console"
|
||||
},
|
||||
stopped: {
|
||||
powerButtonSrc: "images/actions/start.svg",
|
||||
powerButtonAlt: "Start Instance",
|
||||
configButtonSrc: "images/actions/config-active.svg",
|
||||
configButtonAlt: "Configure Instance"
|
||||
configButtonAlt: "Configure Instance",
|
||||
consoleButtonSrc: "images/actions/console-inactive.svg",
|
||||
consoleButtonAlt: "Console Inactive"
|
||||
},
|
||||
loading: {
|
||||
powerButtonSrc: "images/actions/loading.svg",
|
||||
powerButtonAlt: "Loading Instance",
|
||||
configButtonSrc: "images/actions/config-inactive.svg",
|
||||
configButtonAlt: "Configuration Disabled"
|
||||
configButtonAlt: "Configuration Disabled",
|
||||
consoleButtonSrc: "images/actions/console-inactive.svg",
|
||||
consoleButtonAlt: "Console Inactive"
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user