diff --git a/web/share/js/bb.js b/web/share/js/bb.js
index 141d18da..f5083df9 100644
--- a/web/share/js/bb.js
+++ b/web/share/js/bb.js
@@ -27,7 +27,7 @@ function checkBrowser() {
|| window.navigator.userAgent.indexOf("Trident/") > 0
|| window.navigator.userAgent.indexOf("Edge/") > 0
) {
- var el_modal = document.createElement("div");
+ let el_modal = document.createElement("div");
el_modal.className = "modal";
el_modal.style.visibility = "visible";
el_modal.innerHTML = `
diff --git a/web/share/js/index/main.js b/web/share/js/index/main.js
index ac4c8a66..beb6fbd9 100644
--- a/web/share/js/index/main.js
+++ b/web/share/js/index/main.js
@@ -45,15 +45,15 @@ function __setAppText() {
}
function __loadKvmdInfo() {
- var http = tools.makeRequest("GET", "/kvmd/info", function() {
+ let http = tools.makeRequest("GET", "/kvmd/info", function() {
if (http.readyState === 4) {
if (http.status === 200) {
- var info = JSON.parse(http.responseText).result;
+ let info = JSON.parse(http.responseText).result;
- var apps = Object.values(info.extras).sort(function(a, b) {
- if (a["place"] < b["place"]) {
+ let apps = Object.values(info.extras).sort(function(a, b) {
+ if (a.place < b.place) {
return -1;
- } else if (a["place"] > b["place"]) {
+ } else if (a.place > b.place) {
return 1;
} else {
return 0;
@@ -64,9 +64,9 @@ function __loadKvmdInfo() {
$("apps").innerHTML += __makeApp(null, "kvm", "share/svg/kvm.svg", "KVM");
- apps.forEach(function(app) {
+ for (let app of apps) {
$("apps").innerHTML += __makeApp(null, app.path, app.icon, app.name);
- });
+ }
$("apps").innerHTML += __makeApp("logout-button", "#", "share/svg/logout.svg", "Logout");
tools.setOnClick($("logout-button"), __logout);
@@ -101,7 +101,7 @@ function __makeApp(id, path, icon, name) {
}
function __logout() {
- var http = tools.makeRequest("POST", "/kvmd/auth/logout", function() {
+ let http = tools.makeRequest("POST", "/kvmd/auth/logout", function() {
if (http.readyState === 4) {
if (http.status === 200 || http.status === 401 || http.status === 403) {
document.location.href = "/login";
diff --git a/web/share/js/keypad.js b/web/share/js/keypad.js
index e8da1533..bbc4ccb2 100644
--- a/web/share/js/keypad.js
+++ b/web/share/js/keypad.js
@@ -30,11 +30,8 @@ function Keypad(keys_parent, key_callback) {
var __modifiers = {};
var __init__ = function() {
- var code;
- var el_key;
-
- for (el_key of $$$(keys_parent + " div.key")) {
- code = el_key.getAttribute("data-code");
+ for (let el_key of $$$(keys_parent + " div.key")) {
+ let code = el_key.getAttribute("data-code");
tools.setDefault(__keys, code, []);
__keys[code].push(el_key);
@@ -42,19 +39,17 @@ function Keypad(keys_parent, key_callback) {
tools.setDefault(__merged, code, []);
__merged[code].push(el_key);
- (function(el_key) {
- tools.setOnDown(el_key, () => __clickHandler(el_key, true));
- tools.setOnUp(el_key, () => __clickHandler(el_key, false));
- el_key.onmouseout = function() {
- if (__isPressed(el_key)) {
- __clickHandler(el_key, false);
- }
- };
- })(el_key);
+ tools.setOnDown(el_key, () => __clickHandler(el_key, true));
+ tools.setOnUp(el_key, () => __clickHandler(el_key, false));
+ el_key.onmouseout = function() {
+ if (__isPressed(el_key)) {
+ __clickHandler(el_key, false);
+ }
+ };
}
- for (el_key of $$$(keys_parent + " div.modifier")) {
- code = el_key.getAttribute("data-code");
+ for (let el_key of $$$(keys_parent + " div.modifier")) {
+ let code = el_key.getAttribute("data-code");
tools.setDefault(__modifiers, code, []);
__modifiers[code].push(el_key);
@@ -62,17 +57,15 @@ function Keypad(keys_parent, key_callback) {
tools.setDefault(__merged, code, []);
__merged[code].push(el_key);
- (function(el_key) {
- tools.setOnDown(el_key, () => __toggleModifierHandler(el_key));
- })(el_key);
+ tools.setOnDown(el_key, () => __toggleModifierHandler(el_key));
}
};
/************************************************************************/
self.releaseAll = function(release_hook=false) {
- for (var dict of [__keys, __modifiers]) {
- for (var code in dict) {
+ for (let dict of [__keys, __modifiers]) {
+ for (let code in dict) {
if (__isActive(dict[code][0])) {
self.emit(code, false, release_hook);
}
@@ -84,7 +77,7 @@ function Keypad(keys_parent, key_callback) {
if (code in __merged) {
__commonHandler(__merged[code][0], state, false);
if (release_hook) {
- for (code in __keys) {
+ for (let code in __keys) {
if (__isActive(__keys[code][0])) {
self.emit(code, false);
}
@@ -115,8 +108,8 @@ function Keypad(keys_parent, key_callback) {
};
var __unholdModifiers = function() {
- for (var code in __modifiers) {
- var el_key = __modifiers[code][0];
+ for (let code in __modifiers) {
+ let el_key = __modifiers[code][0];
if (__isHolded(el_key)) {
__deactivate(el_key);
__process(el_key, false);
@@ -125,49 +118,54 @@ function Keypad(keys_parent, key_callback) {
};
var __isPressed = function(el_key) {
- var is_pressed = false;
- for (el_key of __resolveKeys(el_key)) {
+ let is_pressed = false;
+ let el_keys = __resolveKeys(el_key);
+ for (let el_key of el_keys) {
is_pressed = (is_pressed || el_key.classList.contains("pressed"));
}
return is_pressed;
};
var __isHolded = function(el_key) {
- var is_holded = false;
- for (el_key of __resolveKeys(el_key)) {
+ let is_holded = false;
+ let el_keys = __resolveKeys(el_key);
+ for (let el_key of el_keys) {
is_holded = (is_holded || el_key.classList.contains("holded"));
}
return is_holded;
};
var __isActive = function(el_key) {
- var is_active = false;
- for (el_key of __resolveKeys(el_key)) {
+ let is_active = false;
+ let el_keys = __resolveKeys(el_key);
+ for (let el_key of el_keys) {
is_active = (is_active || el_key.classList.contains("pressed") || el_key.classList.contains("holded"));
}
return is_active;
};
var __activate = function(el_key, cls) {
- for (el_key of __resolveKeys(el_key)) {
+ let el_keys = __resolveKeys(el_key);
+ for (let el_key of el_keys) {
el_key.classList.add(cls);
}
};
var __deactivate = function(el_key) {
- for (el_key of __resolveKeys(el_key)) {
+ let el_keys = __resolveKeys(el_key);
+ for (let el_key of el_keys) {
el_key.classList.remove("pressed");
el_key.classList.remove("holded");
}
};
var __resolveKeys = function(el_key) {
- var code = el_key.getAttribute("data-code");
+ let code = el_key.getAttribute("data-code");
return __merged[code];
};
var __process = function(el_key, state) {
- var code = el_key.getAttribute("data-code");
+ let code = el_key.getAttribute("data-code");
key_callback(code, state);
};
diff --git a/web/share/js/kvm/atx.js b/web/share/js/kvm/atx.js
index c649ae4e..b0da761e 100644
--- a/web/share/js/kvm/atx.js
+++ b/web/share/js/kvm/atx.js
@@ -56,7 +56,7 @@ function Atx() {
var __clickButton = function(button, confirm_msg) {
wm.confirm(confirm_msg).then(function(ok) {
if (ok) {
- var http = tools.makeRequest("POST", "/kvmd/atx/click?button=" + button, function() {
+ let http = tools.makeRequest("POST", "/kvmd/atx/click?button=" + button, function() {
if (http.readyState === 4) {
if (http.status === 409) {
wm.error("Performing another ATX operation for other client.
Please try again later");
diff --git a/web/share/js/kvm/hid.js b/web/share/js/kvm/hid.js
index c731843c..17b21ca9 100644
--- a/web/share/js/kvm/hid.js
+++ b/web/share/js/kvm/hid.js
@@ -34,25 +34,25 @@ function Hid() {
var __mouse = new Mouse();
var __init__ = function() {
- var __hidden_attr = null;
- var __visibility_change_attr = null;
+ let hidden_attr = null;
+ let visibility_change_attr = null;
if (typeof document.hidden !== "undefined") {
- __hidden_attr = "hidden";
- __visibility_change_attr = "visibilitychange";
+ hidden_attr = "hidden";
+ visibility_change_attr = "visibilitychange";
} else if (typeof document.webkitHidden !== "undefined") {
- __hidden_attr = "webkitHidden";
- __visibility_change_attr = "webkitvisibilitychange";
+ hidden_attr = "webkitHidden";
+ visibility_change_attr = "webkitvisibilitychange";
} else if (typeof document.mozHidden !== "undefined") {
- __hidden_attr = "mozHidden";
- __visibility_change_attr = "mozvisibilitychange";
+ hidden_attr = "mozHidden";
+ visibility_change_attr = "mozvisibilitychange";
}
- if (__visibility_change_attr) {
+ if (visibility_change_attr) {
document.addEventListener(
- __visibility_change_attr,
+ visibility_change_attr,
function() {
- if (document[__hidden_attr]) {
+ if (document[hidden_attr]) {
__releaseAll();
}
},
@@ -68,9 +68,9 @@ function Hid() {
tools.setOnClick($("hid-pak-button"), __clickPasteAsKeysButton);
tools.setOnClick($("hid-reset-button"), __clickResetButton);
- tools.forEach($$$("[data-shortcut]"), function(el_shortcut) {
+ for (let el_shortcut of $$$("[data-shortcut]")) {
tools.setOnClick(el_shortcut, () => __emitShortcut(el_shortcut.getAttribute("data-shortcut").split(" ")));
- });
+ }
};
/************************************************************************/
@@ -98,16 +98,16 @@ function Hid() {
return new Promise(function(resolve) {
tools.debug("HID: emitting keys:", codes);
- var raw_events = [];
+ let raw_events = [];
[[codes, true], [codes.slice().reverse(), false]].forEach(function(op) {
- var [op_codes, state] = op;
- op_codes.forEach(function(code) {
+ let [op_codes, state] = op;
+ for (let code of op_codes) {
raw_events.push({code: code, state: state});
- });
+ }
});
- var index = 0;
- var iterate = () => setTimeout(function() {
+ let index = 0;
+ let iterate = () => setTimeout(function() {
__keyboard.emit(raw_events[index].code, raw_events[index].state);
++index;
if (index < raw_events.length) {
@@ -121,7 +121,7 @@ function Hid() {
};
var __buildCharsToCodes = function() {
- var chars_to_codes = {
+ let chars_to_codes = {
"\n": ["Enter"],
"\t": ["Tab"],
" ": ["Space"],
@@ -148,10 +148,10 @@ function Hid() {
"=": ["Equal"], "+": ["ShiftLeft", "Equal"],
};
- for (var ch = "a".charCodeAt(0); ch <= "z".charCodeAt(0); ++ch) {
- var low = String.fromCharCode(ch);
- var up = low.toUpperCase();
- var code = "Key" + up;
+ for (let ch = "a".charCodeAt(0); ch <= "z".charCodeAt(0); ++ch) {
+ let low = String.fromCharCode(ch);
+ let up = low.toUpperCase();
+ let code = "Key" + up;
chars_to_codes[low] = [code];
chars_to_codes[up] = ["ShiftLeft", code];
}
@@ -160,20 +160,20 @@ function Hid() {
};
var __clickPasteAsKeysButton = function() {
- var text = $("hid-pak-text").value.replace(/[^\x00-\x7F]/g, ""); // eslint-disable-line no-control-regex
+ let text = $("hid-pak-text").value.replace(/[^\x00-\x7F]/g, ""); // eslint-disable-line no-control-regex
if (text) {
- var clipboard_codes = [];
- var codes_count = 0;
- [...text].forEach(function(ch) {
- var codes = __chars_to_codes[ch];
+ let clipboard_codes = [];
+ let codes_count = 0;
+ for (let ch of text) {
+ let codes = __chars_to_codes[ch];
if (codes) {
codes_count += codes.length;
clipboard_codes.push(codes);
}
- });
- var time = __codes_delay * codes_count * 2 / 1000;
+ }
+ let time = __codes_delay * codes_count * 2 / 1000;
- var confirm_msg = `
+ let confirm_msg = `
You are going to automatically type ${codes_count} characters from the system clipboard.
It will take ${time} seconds.
@@ -189,8 +189,8 @@ function Hid() {
tools.debug("HID: paste-as-keys:", text);
- var index = 0;
- var iterate = function() {
+ let index = 0;
+ let iterate = function() {
__emitShortcut(clipboard_codes[index]).then(function() {
++index;
if (index < clipboard_codes.length && __ws) {
@@ -215,7 +215,7 @@ function Hid() {
var __clickResetButton = function() {
wm.confirm("Are you sure you want to reset HID (keyboard & mouse)?").then(function(ok) {
if (ok) {
- var http = tools.makeRequest("POST", "/kvmd/hid/reset", function() {
+ let http = tools.makeRequest("POST", "/kvmd/hid/reset", function() {
if (http.readyState === 4) {
if (http.status !== 200) {
wm.error("HID reset error:
", http.responseText);
diff --git a/web/share/js/kvm/keyboard.js b/web/share/js/kvm/keyboard.js
index 23d5665d..1a4563af 100644
--- a/web/share/js/kvm/keyboard.js
+++ b/web/share/js/kvm/keyboard.js
@@ -81,12 +81,12 @@ function Keyboard() {
};
var __updateLeds = function() {
- var is_captured = (
+ let is_captured = (
$("stream-window").classList.contains("window-active")
|| $("keyboard-window").classList.contains("window-active")
);
- var led = "led-gray";
- var title = "Keyboard free";
+ let led = "led-gray";
+ let title = "Keyboard free";
if (__ws) {
if (__online) {
diff --git a/web/share/js/kvm/main.js b/web/share/js/kvm/main.js
index 97e3f62c..308b34c0 100644
--- a/web/share/js/kvm/main.js
+++ b/web/share/js/kvm/main.js
@@ -25,7 +25,7 @@ var wm;
function main() {
if (checkBrowser()) {
window.onbeforeunload = function(event) {
- var text = "Are you sure you want to close Pi-KVM session?";
+ let text = "Are you sure you want to close Pi-KVM session?";
event.returnValue = text;
return text;
};
diff --git a/web/share/js/kvm/mouse.js b/web/share/js/kvm/mouse.js
index e63a639a..c2d961e6 100644
--- a/web/share/js/kvm/mouse.js
+++ b/web/share/js/kvm/mouse.js
@@ -85,9 +85,9 @@ function Mouse() {
};
var __updateLeds = function() {
- var is_captured = (__stream_hovered || tools.browser.is_ios);
- var led = "led-gray";
- var title = "Mouse free";
+ let is_captured = (__stream_hovered || tools.browser.is_ios);
+ let led = "led-gray";
+ let title = "Mouse free";
if (__ws) {
if (__online) {
@@ -120,7 +120,7 @@ function Mouse() {
var __streamTouchMoveHandler = function(event) {
event.preventDefault();
if (event.touches[0].target && event.touches[0].target.getBoundingClientRect) {
- var rect = event.touches[0].target.getBoundingClientRect();
+ let rect = event.touches[0].target.getBoundingClientRect();
__current_pos = {
x: Math.round(event.touches[0].clientX - rect.left),
y: Math.round(event.touches[0].clientY - rect.top),
@@ -130,7 +130,7 @@ function Mouse() {
};
var __streamMoveHandler = function(event) {
- var rect = event.target.getBoundingClientRect();
+ let rect = event.target.getBoundingClientRect();
__current_pos = {
x: Math.round(event.clientX - rect.left),
y: Math.round(event.clientY - rect.top),
@@ -151,10 +151,10 @@ function Mouse() {
};
var __sendMove = function() {
- var pos = __current_pos;
+ let pos = __current_pos;
if (pos.x !== __sent_pos.x || pos.y !== __sent_pos.y) {
- var el_stream_image = $("stream-image");
- var to = {
+ let el_stream_image = $("stream-image");
+ let to = {
x: __translate(pos.x, 0, el_stream_image.clientWidth, -32768, 32767),
y: __translate(pos.y, 0, el_stream_image.clientHeight, -32768, 32767),
};
@@ -180,7 +180,7 @@ function Mouse() {
event.preventDefault();
}
- var delta = {x: 0, y: 0};
+ let delta = {x: 0, y: 0};
__wheel_delta.y += event.deltaY;
if (Math.abs(__wheel_delta.y) >= 100) {
diff --git a/web/share/js/kvm/msd.js b/web/share/js/kvm/msd.js
index d1dfac08..09dfd7bf 100644
--- a/web/share/js/kvm/msd.js
+++ b/web/share/js/kvm/msd.js
@@ -52,7 +52,7 @@ function Msd() {
};
var __clickUploadNewImageButton = function() {
- var form_data = new FormData();
+ let form_data = new FormData();
form_data.append("image_name", __image_file.name);
form_data.append("image_data", __image_file);
@@ -74,7 +74,7 @@ function Msd() {
};
var __clickSwitchButton = function(to) {
- var http = tools.makeRequest("POST", "/kvmd/msd/connect?to=" + to, function() {
+ let http = tools.makeRequest("POST", "/kvmd/msd/connect?to=" + to, function() {
if (http.readyState === 4) {
if (http.status !== 200) {
wm.error("Switch error:
", http.responseText);
@@ -87,8 +87,8 @@ function Msd() {
};
var __selectNewImageFile = function() {
- var el_input = $("msd-select-new-image-file");
- var image_file = (el_input.files.length ? el_input.files[0] : null);
+ let el_input = $("msd-select-new-image-file");
+ let image_file = (el_input.files.length ? el_input.files[0] : null);
if (image_file && image_file.size > __state.info.size) {
wm.error("New image is too big for your Mass Storage Device.
Maximum:", __formatSize(__state.info.size));
el_input.value = "";
@@ -101,7 +101,7 @@ function Msd() {
var __clickResetButton = function() {
wm.confirm("Are you sure you want to reset Mass Storage Device?").then(function(ok) {
if (ok) {
- var http = tools.makeRequest("POST", "/kvmd/msd/reset", function() {
+ let http = tools.makeRequest("POST", "/kvmd/msd/reset", function() {
if (http.readyState === 4) {
if (http.status !== 200) {
wm.error("MSD reset error:
", http.responseText);
@@ -196,7 +196,7 @@ function Msd() {
var __formatSize = function(size) {
if (size > 0) {
- var index = Math.floor( Math.log(size) / Math.log(1024) );
+ let index = Math.floor( Math.log(size) / Math.log(1024) );
return (size / Math.pow(1024, index)).toFixed(2) * 1 + " " + ["B", "kB", "MB", "GB", "TB"][index];
} else {
return 0;
@@ -217,7 +217,7 @@ function Msd() {
var __uploadProgress = function(event) {
if(event.lengthComputable) {
- var percent = Math.round((event.loaded * 100) / event.total);
+ let percent = Math.round((event.loaded * 100) / event.total);
$("msd-progress").setAttribute("data-label", percent + "%");
$("msd-progress-value").style.width = percent + "%";
}
diff --git a/web/share/js/kvm/session.js b/web/share/js/kvm/session.js
index 57946b56..adeb330e 100644
--- a/web/share/js/kvm/session.js
+++ b/web/share/js/kvm/session.js
@@ -43,7 +43,7 @@ function Session() {
var __setKvmdInfo = function(state) {
if (state.meta) {
- var text = JSON.stringify(state.meta, undefined, 4).replace(/ /g, " ").replace(/\n/g, "
");
+ let text = JSON.stringify(state.meta, undefined, 4).replace(/ /g, " ").replace(/\n/g, "
");
$("about-meta").innerHTML = `