minor js fixes

This commit is contained in:
Devaev Maxim 2018-07-16 05:16:53 +03:00
parent 52bf4f38e4
commit 211401b52c
4 changed files with 27 additions and 15 deletions

View File

@ -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);
}
};

View File

@ -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);

View File

@ -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);
}
}
};

View File

@ -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;
};