summaryrefslogtreecommitdiffstats
path: root/afm-client/app/Frontend/etc
diff options
context:
space:
mode:
Diffstat (limited to 'afm-client/app/Frontend/etc')
-rw-r--r--afm-client/app/Frontend/etc/AppConfig.js35
1 files changed, 29 insertions, 6 deletions
diff --git a/afm-client/app/Frontend/etc/AppConfig.js b/afm-client/app/Frontend/etc/AppConfig.js
index be5a107..d24a626 100644
--- a/afm-client/app/Frontend/etc/AppConfig.js
+++ b/afm-client/app/Frontend/etc/AppConfig.js
@@ -31,17 +31,40 @@
return myConfig;
})
- // Factory is a singleton and share its context within all instances.
+ // Factory is a singleton and share its context within all instances.
.factory('AppCall', function ($http, AppConfig, $log) {
+
var myCalls = {
- get : function(plugin, action, query, callback) {
+ 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
- $http.get('/api/' + plugin + '/' + action , {params: query}).then (callback, callback);
+ 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;
});
-
-
})();