Add AppStore.login()/logout()

This commit is contained in:
Johannes Zellner
2016-07-26 13:55:33 +02:00
parent 9f377cb8fe
commit 99af676344

View File

@@ -2,7 +2,7 @@
/* global angular:false */
angular.module('Application').service('AppStore', ['$http', 'Client', function ($http, Client) {
angular.module('Application').service('AppStore', ['$http', '$base64', 'Client', function ($http, $base64, Client) {
function AppStoreError(statusCode, message) {
Error.call(this);
@@ -114,5 +114,31 @@ angular.module('Application').service('AppStore', ['$http', 'Client', function (
});
};
AppStore.prototype.login = function (email, password, callback) {
if (Client.getConfig().apiServerOrigin === null) return callback(new AppStoreError(420, 'Enhance Your Calm'));
var headers = {
authorization: 'Basic ' + $base64.encode(email + ':' + password)
};
$http.get(Client.getConfig().apiServerOrigin + '/api/v1/login', { headers: headers }).success(function (data, status) {
if (status !== 200) return callback(new AppStoreError(status, data));
return callback(null, data.accessToken);
}).error(function (data, status) {
return callback(new AppStoreError(status, data));
});
};
AppStore.prototype.logout = function (email, password, callback) {
if (Client.getConfig().apiServerOrigin === null) return callback(new AppStoreError(420, 'Enhance Your Calm'));
$http.get(Client.getConfig().apiServerOrigin + '/api/v1/logout').success(function (data, status) {
if (status !== 200) return callback(new AppStoreError(status, data));
return callback(null);
}).error(function (data, status) {
return callback(new AppStoreError(status, data));
});
};
return new AppStore();
}]);