diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2016-12-15 00:03:36 +1300 |
---|---|---|
committer | Anton Tananaev <anton.tananaev@gmail.com> | 2016-12-15 00:03:57 +1300 |
commit | ae00f68435077b1824b70081bff59aa5bad58078 (patch) | |
tree | f3fada92a77a82a0f1431a70df624d8f55d9e095 /web | |
parent | 36f645e0d3def24ea6228c0974b83f60503d9ea6 (diff) | |
download | etbsa-traccar-web-ae00f68435077b1824b70081bff59aa5bad58078.tar.gz etbsa-traccar-web-ae00f68435077b1824b70081bff59aa5bad58078.tar.bz2 etbsa-traccar-web-ae00f68435077b1824b70081bff59aa5bad58078.zip |
Begin simple web app implementation
Diffstat (limited to 'web')
-rw-r--r-- | web/simple/app.js | 63 | ||||
-rw-r--r-- | web/simple/index.html | 14 |
2 files changed, 77 insertions, 0 deletions
diff --git a/web/simple/app.js b/web/simple/app.js new file mode 100644 index 0000000..1a5fabf --- /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); + }; + + }); +}); diff --git a/web/simple/index.html b/web/simple/index.html new file mode 100644 index 0000000..08c9b2b --- /dev/null +++ b/web/simple/index.html @@ -0,0 +1,14 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="UTF-8"> +<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> +<title>Traccar</title> +<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/ol3/3.19.1/ol.css" type="text/css"> +</head> +<body style="margin: 0; padding: 0;"> +<div id="map" style="width: 100%; height: 100%; position:fixed;"></div> +<script src="//cdnjs.cloudflare.com/ajax/libs/ol3/3.19.1/ol.js" type="text/javascript"></script> +<script id="loadScript" src="app.js"></script> +</body> +</html> |