app.js 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. var AppConfig = {url:'rest/'};
  2. var app = angular.module(
  3. 'app',
  4. [
  5. 'ngRoute', 'ngMaterial', 'ngAnimate', 'ngCookies', 'ngSanitize'
  6. ,'ng-mfb',
  7. 'ui.grid','ui.grid.grouping',
  8. ,'disableAll'
  9. ,'services'
  10. ,'utilsSvc'
  11. ,'formChangeLoggerSvc'
  12. ,'userService'
  13. ,'menuService'
  14. ,'incassoSDDSvc',
  15. 'ngFileUpload'
  16. //'userManager',
  17. ]
  18. )
  19. .config(['$locationProvider', function($locationProvider) {
  20. $locationProvider.hashPrefix('');
  21. }])
  22. .config(['$rootScopeProvider', function($rootScopeProvider) {
  23. $rootScopeProvider.digestTtl(100);
  24. }])
  25. .filter('to_trusted', ['$sce', function($sce){
  26. return function(text) {
  27. return $sce.trustAsHtml(text);
  28. };
  29. }])
  30. .run(function($rootScope, $location, userService, UserManager, utilsSvc) {
  31. $rootScope.$on("$routeChangeStart", function(event, next, current) {
  32. // Check for valid client session
  33. if (userService.getCurrentUser() == null) { // no user logged
  34. // in->redirect to login if
  35. // not already
  36. if (next.templateUrl != "partials/login.html")
  37. $location.path("/login");
  38. }
  39. if (next.templateUrl != "partials/login.html" && next.allowed && userService.getCurrentUser()!=null)
  40. if (next.allowed.indexOf(userService.getCurrentUser().userProfile)==-1) {
  41. utilsSvc.showMessage("Utente non autorizzato");
  42. $location.path("/");
  43. }
  44. //check for valid server session
  45. UserManager.ValidSession({},function(data){
  46. if (!data.value) {
  47. userService.logout();
  48. }
  49. });
  50. })
  51. $rootScope.url = '/sicura/';
  52. })
  53. .config(function($httpProvider){
  54. $httpProvider.defaults.headers.common['Cache-Control'] = 'no-cache';
  55. $httpProvider.defaults.cache = false;
  56. if (!$httpProvider.defaults.headers.get) {
  57. $httpProvider.defaults.headers.get = {};
  58. }
  59. $httpProvider.defaults.headers.get['If-Modified-Since'] = '0';
  60. })
  61. .config(['$compileProvider', function ($compileProvider) {
  62. $compileProvider.debugInfoEnabled(false);
  63. }])
  64. .config(function($mdDateLocaleProvider) {
  65. $mdDateLocaleProvider.months = ['gennaio', 'febbraio', 'marzo','aprile','maggio','giugno','luglio','agosto','settembre','ottobre','novembre','dicembre'];
  66. $mdDateLocaleProvider.shortMonths = ['gen', 'feb', 'mar','apr','mag','giu','lug','ago','set','ott','nov','dic'];
  67. $mdDateLocaleProvider.days = ['domenica', 'lunedì', 'martedì','mercoledì','giovedì','venerdì','sabato'];
  68. $mdDateLocaleProvider.shortDays = ['dom','lun','mar','mer','gio','ven','sab'];
  69. $mdDateLocaleProvider.formatDate = function(date) {
  70. if (date==null)
  71. return '';
  72. else
  73. return date.asDateString();
  74. };
  75. $mdDateLocaleProvider.parseDate = function(str){
  76. var parts = str.split("/");
  77. var dt = new Date(parseInt(parts[2], 10),
  78. parseInt(parts[1], 10) - 1,
  79. parseInt(parts[0], 10));
  80. return dt;
  81. }
  82. })
  83. .config(function($mdThemingProvider) {
  84. $mdThemingProvider.definePalette('app-palette', $mdThemingProvider.extendPalette('green', {
  85. 'contrastDefaultColor': 'light',
  86. 'contrastDarkColors': '50 100 200 A100',
  87. 'contrastStrongLightColors': '300 400 A200 A400'
  88. }));
  89. $mdThemingProvider.definePalette('app-accent', $mdThemingProvider.extendPalette('brown', {
  90. 'A100': '#DE3641'
  91. }));
  92. $mdThemingProvider.theme('app-dark', 'default')
  93. .primaryPalette('yellow')
  94. .dark();
  95. $mdThemingProvider.theme('default')
  96. .primaryPalette('app-palette')
  97. .accentPalette('app-accent');
  98. $mdThemingProvider
  99. .enableBrowserColor();
  100. })
  101. .directive('capitalize', function() {
  102. return {
  103. require: 'ngModel',
  104. link: function(scope, element, attrs, modelCtrl) {
  105. var capitalize = function(inputValue) {
  106. if (inputValue == undefined) inputValue = '';
  107. var capitalized = inputValue.toUpperCase();
  108. if (capitalized !== inputValue) {
  109. // see where the cursor is before the update so that we can set it back
  110. var selection = element[0].selectionStart;
  111. modelCtrl.$setViewValue(capitalized);
  112. modelCtrl.$render();
  113. // set back the cursor after rendering
  114. element[0].selectionStart = selection;
  115. element[0].selectionEnd = selection;
  116. }
  117. return capitalized;
  118. }
  119. modelCtrl.$parsers.push(capitalize);
  120. capitalize(scope[attrs.ngModel]); // capitalize initial value
  121. }
  122. };
  123. });
  124. ;