Plato on Github
Report Home
services/token_service.js
Maintainability
63.88
Lines of code
64
Difficulty
15.57
Estimated Errors
0.43
Function weight
By Complexity
By SLOC
'use strict'; /** * @ngdoc service * @name SnsApp.sessionService * @description * # sessionService * Factory in the SnsApp. */ angular.module('SnsApp') .service('TokenService', function($rootScope, $http, $window, $q, $cookies) { //jshint unused:false var promise; var promiseSettings; var deferred = $q.defer(); if ($cookies.get("auth") === null || $cookies.get("auth") === undefined) { promise = $http({ method: 'GET', url: '/api/v1/oauth/token', headers: { 'Content-Type': 'application/x-www-form-urlencoded' } }) .success(function(data) { if (angular.isDefined(data.access_token)) { $cookies.put("token", data.access_token, { path: '/' }); } }); } else { promise = true; } if (angular.isUndefined($rootScope.settings)) { $rootScope.settings = {}; promiseSettings = $http({ method: 'GET', url: '/api/v1/settings?type=all', headers: { 'Content-Type': 'application/x-www-form-urlencoded' } }) .success(function(response) { if (angular.isDefined(response.data)) { var settings = {}; angular.forEach(response.data, function(value, key) { //jshint unused:false $rootScope.settings[value.name] = value.value; settings[value.name] = value.value; }); if ($cookies.get("SETTINGS") === null || $cookies.get("SETTINGS") === undefined) { $cookies.put("SETTINGS", JSON.stringify(settings), { path: '/' }); } } }); } else { promiseSettings = true; } return { promise: promise, promiseSettings: promiseSettings }; });