diff options
author | Romain Forlot <romain.forlot@iot.bzh> | 2017-05-02 19:47:36 +0200 |
---|---|---|
committer | Romain Forlot <romain.forlot@iot.bzh> | 2017-05-02 19:47:36 +0200 |
commit | 64ffd7a9f9604805c01f8bb2fd32616c3adf3ec0 (patch) | |
tree | 264e2743e509b8d7993bc5550ce6140dfc4b151f /examples/html5/app/Frontend/pages/SampleHome/SampleHome.js | |
parent | 6d75b83627114cecd7992bb460f6908268a57967 (diff) |
Initial commit
Change-Id: I536251add63ef100b42a67e39a02fef117f2b414
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'examples/html5/app/Frontend/pages/SampleHome/SampleHome.js')
-rw-r--r-- | examples/html5/app/Frontend/pages/SampleHome/SampleHome.js | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/examples/html5/app/Frontend/pages/SampleHome/SampleHome.js b/examples/html5/app/Frontend/pages/SampleHome/SampleHome.js new file mode 100644 index 0000000..1e404b8 --- /dev/null +++ b/examples/html5/app/Frontend/pages/SampleHome/SampleHome.js @@ -0,0 +1,104 @@ +(function() { +'use strict'; + +// WARNING: make sure than app/frontend/services/AppConfig.js match your server + +// list all rependencies within the page + controler if needed +angular.module('SampleHomeModule', ['SubmitButton', 'TokenRefresh','ModalNotification']) + + .controller('SampleHomeController', function (AppCall, Notification) { + var scope = this; // I hate JavaScript + scope.uuid ="none"; + scope.token ="none"; + scope.session="none"; + scope.status ="err-no"; + + console.log ("Home Controller"); + + scope.OnResponse= function(jresp, errcode) { + + // Update UI response global display zone + scope.status = jresp.request.status; + scope.errcode = errcode; + scope.request = jresp.request; + scope.response = jresp.response; + + var action=jresp.request.reqid.toUpperCase(); + + switch (action) { + case 'CONNECT': + if (jresp.request.status !== "success") { + Notification.error ({message: action + ": Logout before reconnecting", delay: 5000}); + scope.class [jresp.request.reqid]="fail"; + return; + } + scope.class={}; // reset CSS buttons classes + break; + + case 'LOGOUT': + if (jresp.request.status !== "success") { + Notification.error ({message: action + ": Do connect first", delay: 5000}); + scope.class [jresp.request.reqid]="fail"; + return; + } + scope.class={}; // reset CSS buttons classes + break; + + case 'REFRESH': + case 'CHECK': + if (jresp.request.status !== "success") { + Notification.error ({message: action + ": Need to be Connected to check/refresh session", delay: 5000}); + scope.class [jresp.request.reqid]="fail"; + return; + } + + break; + + default: + Notification.error ({message: "Invalid RequestID:" + jresp.request.reqid , delay: 5000}); + return; + } + + // update button classes within home.html + scope.class [jresp.request.reqid]="success"; + console.log ("OK: "+ JSON.stringify(jresp)); + }; + + scope.ProcessError= function(response, errcode, config) { + Notification.error ({message: "Invalid API:" + response.request.reqid , delay: 5000}); + scope.status = "err-fx"; + scope.errcode = errcode; + scope.request = response.request; + scope.response = ""; + console.log ("FX: "+ JSON.stringify(response)); + }; + + scope.ConnectClient = function() { + console.log ("ConnectClient"); + AppCall.get ("auth", "connect", {/*query*/}, scope.OnResponse, scope.InvalidApiCall); + }; + + scope.CheckSession = function() { + console.log ("CheckSession"); + AppCall.get ("auth", "check", {/*query*/}, scope.OnResponse, scope.InvalidApiCall); + + }; + + scope.RefreshSession = function() { + console.log ("RefreshSession"); + AppCall.get ("auth", "refresh", {/*query*/}, scope.OnResponse, scope.InvalidApiCall); + }; + + scope.LogoutClient = function() { + console.log ("LogoutClient"); + AppCall.get ("auth", "logout", {/*query*/}, scope.OnResponse, scope.InvalidApiCall); + }; + + scope.Initialised = function () { + scope.class = {connect: "success"}; + }; + + }); + +console.log ("SampleControler Loaded"); +})(); |