summaryrefslogtreecommitdiffstats
path: root/afb-client/app/Frontend/etc
diff options
context:
space:
mode:
authorStephane Desneux <stephane.desneux@iot.bzh>2016-05-31 18:16:48 +0200
committerStephane Desneux <stephane.desneux@iot.bzh>2016-05-31 18:16:48 +0200
commit5b1e6cc132f44262a873fa8296a2a3e1017b0278 (patch)
tree43b2cd54e2e300b399ff3f2af4458a2c4ed8a144 /afb-client/app/Frontend/etc
parentf7d2f9ac4168ee5064580c666d508667a73cefc0 (diff)
parent85ace9c1ce9a98e9b8a22f045c7dd752b38d9129 (diff)
Merge afb-client
Diffstat (limited to 'afb-client/app/Frontend/etc')
-rw-r--r--afb-client/app/Frontend/etc/AppConfig.js65
-rw-r--r--afb-client/app/Frontend/etc/routes.js1
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"}];