'use strict'; /* App Module */ var camotion = angular.module('camotionAdmin', [ 'ui.bootstrap', 'ui.router', 'luticateUtils', 'luticateAuth', 'LocalStorageModule', 'dialogs.main', 'ngSanitize', 'JSONedit' ]); camotion.config(['$stateProvider', '$urlRouterProvider', '$httpProvider', '$locationProvider', function($stateProvider, $urlRouterProvider, $httpProvider, $locationProvider) { $stateProvider.state('login',{ url:'/', templateUrl:'views/login.html', controller:'LoginController' }); $stateProvider.state('home',{ url:'/home', templateUrl:'views/home.html', controller:'HomeController' }); $stateProvider.state('hosts',{ url:'/hosts', templateUrl:'views/hosts.html', controller:'HostsController' }); $stateProvider.state('cameras',{ url:'/cameras', templateUrl:'views/cameras.html', controller:'CamerasController' }); $stateProvider.state('sensors',{ url:'/sensors', templateUrl:'views/sensors.html', controller:'SensorsController' }); $urlRouterProvider.otherwise('/'); $httpProvider.interceptors.push(['luticateAuthCache', '$injector', '$q', function (luticateAuthCache, $injector, $q) { return { 'request': function (config) { var token = luticateAuthCache.getToken(); if (token != null) config.headers['X-Authorization'] = token; return config; }, 'responseError': function(rejection) { return $q.reject(rejection); } }; }]); }]) .run(['$rootScope', '$state', 'luticateAuthUsers', function ($rootScope, $state, luticateAuthUsers) { luticateAuthUsers.loadPermissions(null); $rootScope.$on('$stateChangeError', function (e, curr, prev) { $state.go('login'); }); }]);