aboutsummaryrefslogtreecommitdiff
path: root/web/simple/app.js
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2016-12-15 00:03:36 +1300
committerAnton Tananaev <anton.tananaev@gmail.com>2016-12-15 00:03:57 +1300
commitae00f68435077b1824b70081bff59aa5bad58078 (patch)
treef3fada92a77a82a0f1431a70df624d8f55d9e095 /web/simple/app.js
parent36f645e0d3def24ea6228c0974b83f60503d9ea6 (diff)
downloadtrackermap-web-ae00f68435077b1824b70081bff59aa5bad58078.tar.gz
trackermap-web-ae00f68435077b1824b70081bff59aa5bad58078.tar.bz2
trackermap-web-ae00f68435077b1824b70081bff59aa5bad58078.zip
Begin simple web app implementation
Diffstat (limited to 'web/simple/app.js')
-rw-r--r--web/simple/app.js63
1 files changed, 63 insertions, 0 deletions
diff --git a/web/simple/app.js b/web/simple/app.js
new file mode 100644
index 00000000..1a5fabf1
--- /dev/null
+++ b/web/simple/app.js
@@ -0,0 +1,63 @@
+/*
+ * Copyright 2016 Anton Tananaev (anton@traccar.org)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+var url = 'http://localhost:8082';
+var token = 'TOKEN';
+
+var map = new ol.Map({
+ layers: [
+ new ol.layer.Tile({
+ source: new ol.source.OSM()
+ })
+ ],
+ target: 'map',
+ view: new ol.View({
+ center: [0, 0],
+ zoom: 2
+ })
+});
+
+var ajax = function (method, url, callback) {
+ var x = new XMLHttpRequest();
+ x.open(method, url, true);
+ x.onreadystatechange = function () {
+ if (x.readyState == 4) {
+ callback(JSON.parse(x.responseText));
+ }
+ };
+ if (method == 'POST') {
+ x.setRequestHeader('Content-type', 'application/json');
+ }
+ x.send()
+};
+
+ajax('GET', url + '/api/session?token=' + token, function(user) {
+ ajax('GET', url + '/api/devices', function(devices) {
+
+ var socket = new WebSocket('ws' + url.substring(4) + '/api/socket');
+
+ socket.onclose = function (event) {
+ console.log('socket closed');
+ };
+
+ socket.onmessage = function (event) {
+ var data = JSON.parse(event.data);
+
+ console.log(data);
+ };
+
+ });
+});