| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- (function() {
- 'use strict';
-
- angular
- .module('cloudbudget')
- .factory('AuthenticationService', AuthenticationService);
-
- AuthenticationService.$inject = ['$http', '$cookieStore', '$rootScope', 'apiRoutes'];
-
- function AuthenticationService($http, $cookieStore, $rootScope, apiRoutes) {
- var service = {};
- service.login = login;
- service.setCredentials = setCredentials;
- service.clearCredentials = clearCredentials;
- return service;
-
- function login(username, password ) {
- return $http.post( apiRoutes.login, {username: username, password: password})
- .then(function(response, status) {
- if( status === 200 ) {
- return {
- success: true,
- user: response
- };
- } else {
- return {
- success: false,
- message: response.message
- };
- }
- }, function(response) {
- return {
- success: false,
- message: 'An error occurs'
- };
- });
- }
-
- function setCredentials(user) {
- $rootScope.globals = {
- user: user,
- token: user.token
- }
-
- $http.defaults.headers.common['Authorization'] = 'JWT ' + user.token;
- $cookieStore.put('globals', $rootScope.globals);
- console.log( $cookieStore.get('globals'));
- }
-
- function clearCredentials() {
- $rootScope.globals = {};
- $http.defaults.headers.common.Authorization = 'JWT ';
- $cookieStore.remove('globals');
- }
- }
- })();
|