You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

app.js 2.2KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. 'use strict';
  2. /* App Module */
  3. var luticate = angular.module('luticate', [
  4. 'ui.bootstrap',
  5. 'ui.router',
  6. 'luticateUtils',
  7. 'luticateAuth',
  8. 'LocalStorageModule',
  9. 'dialogs.main',
  10. 'ngSanitize'
  11. ]);
  12. luticate.config(['$stateProvider', '$urlRouterProvider', '$httpProvider',
  13. function($stateProvider, $urlRouterProvider, $httpProvider) {
  14. $stateProvider.state('login',{
  15. url:'/',
  16. templateUrl:'views/login.html',
  17. controller:'LoginController'
  18. });
  19. $stateProvider.state('home',{
  20. url:'/home',
  21. templateUrl:'views/home.html',
  22. controller:'HomeController'
  23. });
  24. $stateProvider.state('users',{
  25. url:'/users',
  26. templateUrl:'views/users.html',
  27. controller:'UsersController'
  28. });
  29. $stateProvider.state('groups',{
  30. url:'/groups',
  31. templateUrl:'views/groups.html',
  32. controller:'GroupsController'
  33. });
  34. $stateProvider.state('permissions',{
  35. url:'/permissions',
  36. templateUrl:'views/permissions.html',
  37. controller:'PermissionsController'
  38. });
  39. $urlRouterProvider.otherwise('/');
  40. $httpProvider.interceptors.push(['luticateAuthCache', '$injector', '$q',
  41. function (luticateAuthCache, $injector, $q) {
  42. return {
  43. 'request': function (config) {
  44. var token = luticateAuthCache.getToken();
  45. if (token != null)
  46. config.headers['X-Authorization'] = token;
  47. return config;
  48. },
  49. 'responseError': function(rejection) {
  50. if (rejection.status == 401) {
  51. luticateAuthCache.removeUser();
  52. $injector.get('$state').transitionTo('login');
  53. }
  54. return $q.reject(rejection);
  55. }
  56. };
  57. }]);
  58. }])
  59. .run(['$rootScope', '$state',function ($rootScope, $state) {
  60. $rootScope.$on('$stateChangeError', function (e, curr, prev) {
  61. $state.go('login');
  62. });
  63. }]);