40 lines
1.3 KiB
JavaScript
40 lines
1.3 KiB
JavaScript
(function () {
|
|
'use strict';
|
|
|
|
angular
|
|
.module('app', ['ngRoute'])
|
|
.config(config)
|
|
.run(run);
|
|
|
|
config.$inject = ['$routeProvider', '$locationProvider'];
|
|
function config($routeProvider, $locationProvider) {
|
|
$routeProvider
|
|
.when('/', {
|
|
controller: 'HomeController',
|
|
templateUrl: 'home/home.view.html',
|
|
controllerAs: 'vm'
|
|
})
|
|
.when('/login', {
|
|
controller: 'LoginController',
|
|
templateUrl: 'login/login.view.html',
|
|
controllerAs: 'vm'
|
|
})
|
|
.otherwise({ redirectTo: '/login' });
|
|
}
|
|
|
|
run.$inject = ['$rootScope', '$location', '$http', '$window'];
|
|
function run($rootScope, $location, $http, $window) {
|
|
var userData = $window.sessionStorage.getItem('userData');
|
|
if (userData) {
|
|
$http.defaults.headers.common['Authorization'] = 'Basic ' + JSON.parse(userData).authData;
|
|
}
|
|
|
|
$rootScope.$on('$locationChangeStart', function (event, next, current) {
|
|
var restrictedPage = $.inArray($location.path(), ['/login']) === -1;
|
|
var loggedIn = $window.sessionStorage.getItem('userData');;
|
|
if (restrictedPage && !loggedIn) {
|
|
$location.path('/login');
|
|
}
|
|
});
|
|
}
|
|
})(); |