From 98b144f23ce771a22dce73c827be7924993cfca5 Mon Sep 17 00:00:00 2001 From: Humberto Alfonso Díaz Date: Thu, 5 Dec 2019 13:06:24 +0100 Subject: FUNCT Add wifi support --- src/index.js | 3 +++ src/js/app.js | 3 ++- src/js/wifi.js | 51 ++++++++++++++++++++++++++-------------- src/templates/main.template.html | 2 +- src/templates/wifi.template.html | 35 +++++++++++++++++++++++++++ 5 files changed, 74 insertions(+), 20 deletions(-) create mode 100644 src/templates/wifi.template.html (limited to 'src') diff --git a/src/index.js b/src/index.js index 00da226..879e10e 100644 --- a/src/index.js +++ b/src/index.js @@ -18,9 +18,12 @@ import { init } from './js/app'; import { api } from 'agl-js-api'; import * as bluetooth from './js/bluetooth'; +import * as wifi from './js/wifi'; /* CSS */ import './styles/app.scss'; +window.bluetooth = bluetooth; +window.wifi = wifi; api.init(); init(); diff --git a/src/js/app.js b/src/js/app.js index 458a5d4..fb7f77f 100644 --- a/src/js/app.js +++ b/src/js/app.js @@ -1,5 +1,5 @@ import * as bluetooth from './bluetooth'; -import { init as init_wifi } from './wifi'; +import * as wifi from './wifi'; import { load as load_template } from './templates'; import Mustache from 'mustache'; @@ -20,6 +20,7 @@ export function init() { Mustache.parse(template); show(); bluetooth.init(); + wifi.init(); }, function(error) { console.error('ERRROR loading main template', error); }); diff --git a/src/js/wifi.js b/src/js/wifi.js index 35e7235..d9f91d0 100644 --- a/src/js/wifi.js +++ b/src/js/wifi.js @@ -1,34 +1,49 @@ import { network } from 'agl-js-api'; import Mustache from 'mustache'; +import { load as load_template } from './templates'; +import * as app from './app'; var template; +var page = { + devices: [] +} +function render(){ + document.body.innerHTML = Mustache.render(template, page); +} function update_devices(devices) { - console.log('update_devices', devices); - var deviceList = document.getElementById('WifiContainer'); - deviceList.innerHTML = ''; - + page.devices = []; devices.forEach(function(device) { if( device.properties.type === 'wifi' ) { - deviceList.innerHTML += Mustache.render(template, device); + page.devices.push(device); } }); + + console.log(page); + + render(); +} + +function refresh_devices() { + network.services().then(function(result) { + update_devices(result.values); + }); } export function init() { - template = document.getElementById('wifi-device-template').innerHTML; - Mustache.parse(template); - - setInterval(function() { - network.services().then(function(result) { - update_devices(result.values); - }) - }, 10000); - - network.on_global_state(function(result) { - console.log('on_global_state', result); - }).then(function(){ - console.log('SUBSCRIBED', 'on_global_state'); + load_template('wifi.template.html').then(function(result) { + template = result; + Mustache.parse(template); + }, function(error) { + console.error('ERROR Loading bluetooth template', error); }); +} + +export function show() { + refresh_devices(); +} + +export function hide() { + app.show(); } \ No newline at end of file diff --git a/src/templates/main.template.html b/src/templates/main.template.html index 6965b5a..e37c935 100644 --- a/src/templates/main.template.html +++ b/src/templates/main.template.html @@ -33,7 +33,7 @@
-
+
Wifi
diff --git a/src/templates/wifi.template.html b/src/templates/wifi.template.html new file mode 100644 index 0000000..a2203c3 --- /dev/null +++ b/src/templates/wifi.template.html @@ -0,0 +1,35 @@ +
+

+
+
+ +
+
+ Wifi +
+
+ +
+
+

+
+ {{ #devices }} +
+
+ +
+
+
+ {{ properties.name }} +
+
+ {{ properties.ethernet.address}} +
+
+
+ {{ properties.strength }}% +
+
+ {{ /devices }} +
+
\ No newline at end of file -- cgit 1.2.3-korg