aboutsummaryrefslogtreecommitdiff
path: root/webAO
diff options
context:
space:
mode:
Diffstat (limited to 'webAO')
-rw-r--r--webAO/client.js13
-rw-r--r--webAO/master.js41
2 files changed, 50 insertions, 4 deletions
diff --git a/webAO/client.js b/webAO/client.js
index 59cdf1d..5c211c3 100644
--- a/webAO/client.js
+++ b/webAO/client.js
@@ -51,9 +51,16 @@ const fp = new Fingerprint({
screen_resolution: true
});
-// An emulated, semi-unique HDID that is generally safe for HDID bans.
-const hdid = fp.get();
-console.info(`Your emulated HDID is ${hdid}`);
+/** An emulated, semi-unique HDID that is generally safe for HDID bans. */
+const cookieid = getCookie("fingerprint");
+let hdid;
+if (cookieid) {
+ hdid = cookieid;
+} else {
+ hdid = fp.get();
+ setCookie("fingerprint",hdid);
+}
+console.log(`Your emulated HDID is ${hdid}`);
let lastICMessageTime = new Date(0);
diff --git a/webAO/master.js b/webAO/master.js
index d12a7ec..863c311 100644
--- a/webAO/master.js
+++ b/webAO/master.js
@@ -9,7 +9,14 @@ const fp = new Fingerprint({
});
/** An emulated, semi-unique HDID that is generally safe for HDID bans. */
-const hdid = fp.get();
+const cookieid = getCookie("fingerprint");
+let hdid;
+if (cookieid) {
+ hdid = cookieid;
+} else {
+ hdid = fp.get();
+ setCookie("fingerprint",hdid);
+}
console.log(`Your emulated HDID is ${hdid}`);
let oldLoading = false;
@@ -28,6 +35,38 @@ const server_description = [];
server_description[-1] = "This is your computer on port 50001";
const online_counter = [];
+/**
+ * read a cookie from storage
+ * got this from w3schools
+ * https://www.w3schools.com/js/js_cookies.asp
+ * @param {String} cname The name of the cookie to return
+ */
+function getCookie(cname) {
+ var name = cname + "=";
+ var decodedCookie = decodeURIComponent(document.cookie);
+ var ca = decodedCookie.split(';');
+ for (var i = 0; i < ca.length; i++) {
+ var c = ca[i];
+ while (c.charAt(0) === ' ') {
+ c = c.substring(1);
+ }
+ if (c.indexOf(name) === 0) {
+ return c.substring(name.length, c.length);
+ }
+ }
+ return "";
+}
+
+/**
+ * set a cookie
+ * the version from w3schools expects these to expire
+ * @param {String} cname The name of the cookie to return
+ * @param {String} value The value of that cookie option
+ */
+function setCookie(cname,value) {
+ document.cookie = cname + "=" + value;
+}
+
export function setServ(ID) {
console.log(server_description[ID]);
if (server_description[ID] !== undefined) {