From 6ccf7d59c5b7accf5ac6040860c087b3c90207f4 Mon Sep 17 00:00:00 2001 From: Humberto Alfonso Díaz Date: Fri, 21 Jun 2019 11:00:42 +0200 Subject: FUNCT Basic support to launch apps --- src/index.html | 4 ++-- src/index.js | 6 +++++- src/js/app.js | 31 ++++++++++++++++++++++++++----- src/styles/main.scss | 3 +++ 4 files changed, 36 insertions(+), 8 deletions(-) diff --git a/src/index.html b/src/index.html index f280ebe..2821653 100644 --- a/src/index.html +++ b/src/index.html @@ -8,12 +8,12 @@
diff --git a/src/index.js b/src/index.js index 7ffa614..007f72f 100644 --- a/src/index.js +++ b/src/index.js @@ -1,7 +1,11 @@ /* JS */ import '@iconfu/svg-inject'; import './js/AFB.js'; -import './js/app.js'; +import { init, launch } from './js/app.js'; /* CSS */ import './styles/app.scss'; + +window.launch = launch; + +document.addEventListener('DOMContentLoaded', init); \ No newline at end of file diff --git a/src/js/app.js b/src/js/app.js index fccf04e..9c65e4f 100644 --- a/src/js/app.js +++ b/src/js/app.js @@ -46,14 +46,35 @@ function load_application_list() { }); } -function init() { +export function launch(app) { + var appId = app.getAttribute('app-id'); + var ws = new afb.ws(function() { + var api_verb = "afm-main/start"; + var request = {id: appId}; + ws.call(api_verb, request).then( + function(obj) { + log("success: " + obj.response); + }, + function(obj) { + //TODO Manage errors + log("failure"); + } + ); + }, + function() { + //TODO Manage errors + log("ws aborted"); + }); +} + +export function init() { template = document.getElementById('item-template').innerHTML; Mustache.parse(template); + + // host: "raspberrypi3.local:31022", afb = new AFB({ - host: "raspberrypi3.local:31022", + host: host+":"+port, token: token }); load_application_list(); -} - -document.addEventListener('DOMContentLoaded', init); \ No newline at end of file +} \ No newline at end of file diff --git a/src/styles/main.scss b/src/styles/main.scss index 1c6220e..a72b94b 100644 --- a/src/styles/main.scss +++ b/src/styles/main.scss @@ -23,6 +23,9 @@ body { height: 100%; .item { + color: map-get($colors, font); + text-decoration: none; + .icon { width: 100%; height: 100%; -- cgit 1.2.3-korg