summaryrefslogtreecommitdiff
path: root/proto.js
diff options
context:
space:
mode:
authorBent Bisballe Nyeng <deva@aasimon.org>2020-06-07 10:05:32 +0200
committerBent Bisballe Nyeng <deva@aasimon.org>2020-06-07 10:05:32 +0200
commitdd19910ec18ec60633bf5b4fcda5bab220d0565f (patch)
treec42c60a7daa15d99d772d670d53c29caf45d821b /proto.js
parent5f95718e7ebe4dec017055500793b928d8946d8e (diff)
Relocate all webservice files to src/ws and make sure they can be found by the service after install.
Diffstat (limited to 'proto.js')
-rw-r--r--proto.js211
1 files changed, 0 insertions, 211 deletions
diff --git a/proto.js b/proto.js
deleted file mode 100644
index 5a71157..0000000
--- a/proto.js
+++ /dev/null
@@ -1,211 +0,0 @@
-/* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-/* vim: set et sw=2 ts=2: */
-
-function get_appropriate_ws_url()
-{
- // From: https://gist.github.com/2428561
- var parser = document.createElement('a');
- parser.href = document.URL;
-
- // We open the websocket encrypted if this page came on an
- // https:// url itself, otherwise unencrypted
- if(parser.protocol == "http:") parser.protocol = "ws:";
- if(parser.protocol == "https:") parser.protocol = "wss:";
-
- return parser.href;
-}
-
-var socket_node = new WebSocket(get_appropriate_ws_url(), "lws-node-protocol");
-
-try {
- socket_node.onopen = function() {
- var connectEvent = new CustomEvent("connectEvent", {
- detail: {
- time: new Date(),
- },
- bubbles: true,
- cancelable: true
- });
- document.dispatchEvent(connectEvent);
- }
-
- socket_node.onmessage = function got_packet(msg) {
- var messageEvent = new CustomEvent("messageEvent", {
- detail: {
- message: "recv [" + msg.data + "]",
- time: new Date(),
- },
- bubbles: true,
- cancelable: true
- });
- document.dispatchEvent(messageEvent);
-
- var msgs = new Array();
- var idx = 0;
- msgs[idx] = '';
- var c = 0;
- var instring = false;
- for(c = 0; c < msg.data.length; c++) {
- if(msg.data[c] == '"' && c > 0 && msg.data[c - 1] != '\\') instring = !instring;
- if(msg.data[c] == ';' && instring == false) {
- idx++;
- msgs[idx] = '';
- }
- if(msg.data[c] != ';' || instring == true) msgs[idx] += msg.data[c];
- }
-
- f = 0;
- while (f < msgs.length - 1) {
- var msg = new Array();
- instring = false;
- idx = 0;
-
- // Strip padding and trailing whitespace.
- var msgstr = msgs[f].replace(/^\s+||\s+$/g,'');
-
- if(msgstr == ';') {
- f++;
- continue;
- }
-
- msg[idx] = '';
- for(c = 0; c < msgstr.length; c++) {
- if(msgstr[c] == '"' && c > 0 && msgstr[c - 1] != '\\') {
- instring = !instring;
- continue;
- }
- if(msgstr[c] == ' ' && instring == false) {
- msg[idx] = msg[idx].replace("\\\\","\\").replace("\\\"","\"");
- idx++;
- msg[idx] = '';
- }
- if(msgstr[c] != ' ' || instring == true) msg[idx] += msgstr[c];
- }
-
- var subscribeid = msg[0];
- var cmd = msg[1];
- var id = msg[2];
-
- if(cmd == "remove") {
- var removeEvent = new CustomEvent("removeEvent", {
- detail: {
- subscribeid: subscribeid,
- id: id,
- },
- bubbles: true,
- cancelable: true
- });
- document.dispatchEvent(removeEvent);
- }
- else if(cmd == "move") {
- var moveEvent = new CustomEvent("moveEvent", {
- detail: {
- subscribeid: subscribeid,
- id: id,
- parentid: msg[3],
- },
- bubbles: true,
- cancelable: true
- });
- document.dispatchEvent(moveEvent);
- }
- else if(cmd == "create") {
- var createEvent = new CustomEvent("createEvent", {
- detail: {
- subscribeid: subscribeid,
- id: id,
- parentid: msg[3],
- },
- bubbles: true,
- cancelable: true
- });
- document.dispatchEvent(createEvent);
- }
- else if(cmd == "update") {
- var updateEvent = new CustomEvent("updateEvent", {
- detail: {
- subscribeid: subscribeid,
- id: id,
- name: msg[3],
- value: msg[4],
- },
- bubbles: true,
- cancelable: true
- });
- document.dispatchEvent(updateEvent);
- }
- f++;
- }
- }
-
- socket_node.onclose = function(){
- var disconnectEvent = new CustomEvent("disconnectEvent", {
- detail: {
- time: new Date(),
- },
- bubbles: true,
- cancelable: true
- });
- document.dispatchEvent(disconnectEvent);
- }
-} catch(exception) {
- alert('<p>Error' + exception + '</p>');
-}
-
-function transmit(msg)
-{
- //LogEvent(msg);
- var messageEvent = new CustomEvent("messageEvent", {
- detail: {
- message: "send [" + msg + "]",
- time: new Date(),
- },
- bubbles: true,
- cancelable: true
- });
- document.dispatchEvent(messageEvent);
-
- socket_node.send(msg);
-}
-
-function login(user, password)
-{
- transmit("login "+user+" "+password);
-}
-
-function logout()
-{
- transmit("logout");
-}
-
-function subscribe(id)
-{
- transmit("subscribe "+id);
-}
-
-function unsubscribe(id)
-{
- transmit("unsubscribe "+id);
-}
-
-function create(id, parent)
-{
- transmit("create "+id+" "+parent);
-}
-
-function remove(id)
-{
- transmit("remove "+id);
-}
-
-function update(id, name, value)
-{
- transmit("update "+id+" "+name+" "+value);
-}
-
-function move(id, parent)
-{
- transmit("move "+id+" "+parent);
-}
-
-