summaryrefslogtreecommitdiff
path: root/kvmd
diff options
context:
space:
mode:
authorDevaev Maxim <[email protected]>2018-07-16 05:16:53 +0300
committerDevaev Maxim <[email protected]>2018-07-16 05:16:53 +0300
commit211401b52c1d334b50dede28bab0a3a6e056992e (patch)
treecb2389d5b9a061ae1b2eb4919e0195374e043513 /kvmd
parent52bf4f38e42852818354ca7f182b589a2f09631d (diff)
minor js fixes
Diffstat (limited to 'kvmd')
-rw-r--r--kvmd/web/js/atx.js22
-rw-r--r--kvmd/web/js/mouse.js6
-rw-r--r--kvmd/web/js/session.js11
-rw-r--r--kvmd/web/js/tools.js3
4 files changed, 27 insertions, 15 deletions
diff --git a/kvmd/web/js/atx.js b/kvmd/web/js/atx.js
index 6e753bdf..d0c8f3af 100644
--- a/kvmd/web/js/atx.js
+++ b/kvmd/web/js/atx.js
@@ -5,11 +5,20 @@ var atx = new function() {
};
this.clearLeds = function() {
- atx.setLedsState(false, false);
+ [
+ "atx-power-led",
+ "atx-hdd-led",
+ ].forEach(function(name) {
+ $(name).className = "led-off";
+ });
};
- this.clickButton = function(el_button) {
- switch (el_button.id) {
+ this.clickButton = function(el) {
+ var button = null;
+ var confirm_msg = null;
+ var timeout = null;
+
+ switch (el.id) {
case "atx-power-button":
var button = "power";
var confirm_msg = "Are you sure to click the power button?";
@@ -17,15 +26,12 @@ var atx = new function() {
case "atx-power-button-long":
var button = "power_long";
var confirm_msg = "Are you sure to perform the long press of the power button?";
+ var timeout = 15000;
break;
case "atx-reset-button":
var button = "reset";
var confirm_msg = "Are you sure to reboot the server?";
break;
- default:
- var button = null;
- var confirm_msg = null;
- break;
}
if (button && confirm(confirm_msg)) {
@@ -39,7 +45,7 @@ var atx = new function() {
}
__setButtonsBusy(false);
}
- });
+ }, timeout);
}
};
diff --git a/kvmd/web/js/mouse.js b/kvmd/web/js/mouse.js
index f906e146..468c9449 100644
--- a/kvmd/web/js/mouse.js
+++ b/kvmd/web/js/mouse.js
@@ -35,9 +35,9 @@ var mouse = new function() {
var __buttonHandler = function(ws, event, state) {
// https://www.w3schools.com/jsref/event_button.asp
switch (event.button) {
- case 0: var button = "Left"; break;
- case 2: var button = "Right"; break;
- default: var button = null; break
+ case 0: var button = "left"; break;
+ case 2: var button = "right"; break;
+ default: var button = null; break;
}
if (button) {
tools.debug("Mouse button", (state ? "pressed:" : "released:"), button);
diff --git a/kvmd/web/js/session.js b/kvmd/web/js/session.js
index c46d228e..b4642b62 100644
--- a/kvmd/web/js/session.js
+++ b/kvmd/web/js/session.js
@@ -32,8 +32,11 @@ var session = new function() {
var __wsErrorHandler = function(event) {
tools.error("WebSocket error:", event);
- __ws.close();
- __ws = null;
+ if (__ws) {
+ __ws.onclose = null;
+ __ws.close();
+ __wsCloseHandler(null);
+ }
};
var __wsCloseHandler = function(event) {
@@ -44,6 +47,7 @@ var session = new function() {
}
hid.clearCapture();
atx.clearLeds();
+ __ws = null;
setTimeout(session.startPoller, 1000);
};
@@ -57,8 +61,9 @@ var session = new function() {
} catch (err) {
tools.error("Ping error:", err.message);
if (__ws) {
+ __ws.onclose = null;
__ws.close();
- __ws = null;
+ __wsCloseHandler(null);
}
}
};
diff --git a/kvmd/web/js/tools.js b/kvmd/web/js/tools.js
index c8d492e2..d9fe8357 100644
--- a/kvmd/web/js/tools.js
+++ b/kvmd/web/js/tools.js
@@ -1,8 +1,9 @@
var tools = new function() {
- this.makeRequest = function(method, url, callback) {
+ this.makeRequest = function(method, url, callback, timeout=null) {
var http = new XMLHttpRequest();
http.open(method, url, true)
http.onreadystatechange = callback;
+ http.timeout = timeout ? timeout : 5000;
http.send();
return http;
};