diff options
author | Stephane Desneux <stephane.desneux@iot.bzh> | 2016-05-31 18:16:48 +0200 |
---|---|---|
committer | Stephane Desneux <stephane.desneux@iot.bzh> | 2016-05-31 18:16:48 +0200 |
commit | 5b1e6cc132f44262a873fa8296a2a3e1017b0278 (patch) | |
tree | 43b2cd54e2e300b399ff3f2af4458a2c4ed8a144 /afb-client/app/Frontend/etc | |
parent | f7d2f9ac4168ee5064580c666d508667a73cefc0 (diff) | |
parent | 85ace9c1ce9a98e9b8a22f045c7dd752b38d9129 (diff) |
Merge afb-client
Diffstat (limited to 'afb-client/app/Frontend/etc')
-rw-r--r-- | afb-client/app/Frontend/etc/AppConfig.js | 65 | ||||
-rw-r--r-- | afb-client/app/Frontend/etc/routes.js | 1 |
2 files changed, 66 insertions, 0 deletions
diff --git a/afb-client/app/Frontend/etc/AppConfig.js b/afb-client/app/Frontend/etc/AppConfig.js new file mode 100644 index 0000000..382c0a3 --- /dev/null +++ b/afb-client/app/Frontend/etc/AppConfig.js @@ -0,0 +1,65 @@ +(function () { + 'use strict'; + + // _all modules only reference dependencies + angular.module('AppConfig', []) + + // Factory is a singleton and share its context within all instances. + .factory('AppConfig', function (urlquery) { + + var myConfig = { + paths: { // Warning paths should end with / + image : 'images/', + avatar: 'images/avatars/' + }, + + session: { // Those data are updated by session service + initial : urlquery.token || '123456789', // typical dev initial token + timeout : 3600, // timeout is updated client sessin context creation + pingrate: 30, // Ping rate to check if server is still alive + uuid : '', // uuid map with cookie or long term session access key + token : '' // will be returned from authentication + } + }; + + return myConfig; + }) + + // Factory is a singleton and share its context within all instances. + .factory('AppCall', function ($http, AppConfig, $log) { + + var myCalls = { + get : function(plugin, action, query, cbresponse, cberror) { + + var onerror = function(response) { + if (cberror) cberror(response.data, response.status, response.config); + else cbresponse(response.data, response.status, response.config); + }; + + var onsuccess =function(response) { + if (!response.data || !response.data.request) { + onerror (response); + return; + } + + var request=response.data.request; + + // if token was updated keep it within application cache + if (request.token) AppConfig.session.token = request.token; + if (request.uuid) AppConfig.session.uuid = request.uuid; + if (request.timeout) AppConfig.session.timeout = request.timeout; + + cbresponse(response.data, response.status, response.config); + }; + + + if (!query.token) query.token = AppConfig.session.token; // add token to provided query + if (!query.reqid) query.reqid = action; // use action as default requestID + var handle= $http.get('/api/' + plugin + '/' + action , {params: query}).then(onsuccess, onerror); + + } + }; + return myCalls; + }); + +})();
\ No newline at end of file diff --git a/afb-client/app/Frontend/etc/routes.js b/afb-client/app/Frontend/etc/routes.js new file mode 100644 index 0000000..f147789 --- /dev/null +++ b/afb-client/app/Frontend/etc/routes.js @@ -0,0 +1 @@ +var foundationRoutes = [{"name":"PostSample","url":"/sample-post","controller":"SamplePostController as ctrl","animationIn":"slideInRight","path":"pages/SamplePost/SamplePost.html"},{"name":"SampleHome","url":"/sample-home","controller":"SampleHomeController as ctrl","animationIn":"slideInRight","path":"pages/SampleHome/SampleHome.html"}]; |