2018-07-16 23:06:37 +02:00
|
|
|
/* global $, ws */ "use strict";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const log = console.log; // eslint-disable-line
|
2018-07-12 23:07:16 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ws.onmessage = socket => {
|
|
|
|
const data = JSON.parse(socket.data);
|
|
|
|
|
|
|
|
switch (true) {
|
|
|
|
case data.message === "updated html":
|
|
|
|
$(data.selector).html(data.html);
|
|
|
|
break;
|
|
|
|
|
|
|
|
default:
|
2018-07-16 23:06:37 +02:00
|
|
|
log(data);
|
2018-07-12 23:07:16 +02:00
|
|
|
break;
|
|
|
|
}
|
|
|
|
};
|
2018-07-16 23:06:37 +02:00
|
|
|
|
|
|
|
function send(msg) { // eslint-disable-line
|
|
|
|
socketReady(ws, () => ws.send(msg));
|
|
|
|
}
|
|
|
|
|
|
|
|
function socketReady(socket, callback) {
|
|
|
|
setTimeout(() => {
|
|
|
|
if (socket.readyState === 1) {
|
|
|
|
if (callback !== undefined) callback();
|
|
|
|
return;
|
|
|
|
} else {
|
|
|
|
log("Waiting for websocket connection to come online");
|
|
|
|
socketReady(socket, callback);
|
|
|
|
}
|
|
|
|
}, 5);
|
|
|
|
}
|