{"version":3,"sources":["scripts/app.js"],"names":["angular","module","routerConfig","$stateProvider","state","url","templateUrl","controller","controllerAs","$inject","config","loginController","appConfig","$window","tokenService","accountService","submit","vm","dataLoading","login","user","password","then","response","setTokenInfo","isAdfs","token","data","access_token","location","href","getBaseUrl","this","doubleLoginController","$state","adfs","go","tokenInfo","getTokenInfo","initialController","getCurrentUser","isAdminWithoutStudent","ImpersonationController","$scope","$timeout","$document","studentGridFactory","init","selectStudent","dataItem","selectedCall","callName","selectedName","name","surname1","surname2","selectedId","id","selectedDossier","dossier","impersonateStudent","setImpersionationStudentId","impersonationGridOptions","options","items","getCurrentUserData","$on","resolve","formData","ompService","getForm","formController","ieUserInfo","IeUserInfoController","backgroundImage","personId","logout","goToImpersonation","resetUserForImpersonation","e","args","directive","restrict","bindToController","scope","model","ieStudentInfo","ieStudentInfoController","ieHeader","IeHeaderController","localizationService","languageSelected","getCurrentLanguage","changeLanguage","language","setLocale","ieStudentDocs","ieStudentDocsController","$filter","notificationsService","translate","agreementAccepted","changeStudent","getDocuments","studentId","uploadFile","$files","type","length","showSuccess","showError","deleteFile","deleteDocument","validate","ieFormValidationMsg","ieFormValidationMsgController","isValidForOfficialEnrollment","message","error","title","description","ieFormTitle","ieFormTitleController","subtitle","ieActionBar","ieActionBarController","welcomeController","localStorageService","get","TOKEN_KEY","set","removeTokenInfo","remove","service","studentDataService","$http","getPagedAndSorted","filterParams","result","post","baseUrl","JSON","stringify","headers","Content-Type","Upload","getInitialData","getInitialDataPath","method","getDocumentsPath","params","file","documentType","upload","validatePath","ompServicePath","$mdToast","showInfo","keepMessage","show","buildToast","showWarning","position","delay","toast","simple","textContent","hideDelay","toastClass","theme","action","highlightAction","modalService","$uibModal","modalDefaults","backdrop","keyboard","modalFade","modalOptions","closeButtonText","actionButtonText","headerText","bodyText","showModal","customModalDefaults","customModalOptions","tempModalDefaults","tempModalOptions","extend","$uibModalInstance","ok","close","dismiss","open","$translate","$locale","$rootScope","$location","changeAppTitle","pageTitle","element","querySelector","pageTitleText","html","translationId","text","changeAngularInternalLocalization","lang","use","DATETIME_FORMATS","MONTH","SHORTDAY","DAY","$broadcast","setKendoCultureAndMessages","scriptUrl","getAppBaseUrl","$","getScript","kendo","culture","$$protocol","$$host","$$port","getLocalizedData","exp","getLocale","deregistrationOnTranslateChangeSuccess","initialDataService","forceRefresh","initialData","httpInterceptorService","$q","$injector","responseError","tns","status","errorMessage","modelState","error_description","goToNoAccessPage","reject","request","skipWithCredentials","withCredentials","Authorization","$cookies","deferred","defer","success","setCurrentUser","resetUser","promise","USERINFO_DATA_KEY","userInfo","IMPERSONATION_STUDENTID","username","loginUrl","grant_type","param","logoutUrl","isAdmin","isImpersonated","put","$get","protocol","substring","indexOf","urlWithoutProtocol","substr","indexOfWWW","spaBaseUrl","provider","$urlRouterProvider","abstract","otherwise","mainController","localizeByProperty","stringWithLocalization","filter","dataSource","transport","read","o","schema","total","fields","editable","isNullable","phone","email","academicProgramName","pageSize","serverPaging","serverSorting","serverFiltering","selectable","resizable","filterable","mode","operators","number","eq","ui","FilterCell","fn","neq","string","startswith","contains","sortable","pageable","factory","require","link","ele","attrs","c","$watch","modelStateKey","$setValidity","$error","server","ngModel","oldValue","newValue","translateConfig","$translateProvider","useStaticFilesLoader","prefix","suffix","preferredLanguage","fallbackLanguage","useSanitizeValueStrategy","useLocalStorage","runBlock","showHelpTooltips","toogleHelp","visible","run","constant","$logProvider","$httpProvider","$mdThemingProvider","$mdDateLocaleProvider","debugEnabled","interceptors","push","months","shortMonths","days","shortDays","firstDayOfWeek","formatDate","date","moment","format","$templateCache"],"mappings":"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","file":"scripts/app-14fe58d70f.js","sourcesContent":["(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa', [\r\n 'ngAnimate',\r\n 'ngCookies',\r\n 'ngSanitize',\r\n 'ngMessages',\r\n 'ngAria',\r\n 'ngFileUpload',\r\n 'ngMaterial',\r\n 'ui.router',\r\n 'angular-loading-bar',\r\n 'angular.filter',\r\n 'LocalStorageModule',\r\n 'pascalprecht.translate',\r\n 'kendo.directives'\r\n ]);\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .config(routerConfig);\r\n\r\n /** @ngInject */\r\n function routerConfig($stateProvider) {\r\n $stateProvider\r\n .state('welcome.login', {\r\n url: '/login',\r\n templateUrl: 'app/welcome/login/login.html',\r\n controller: 'LoginController',\r\n controllerAs: 'vm'\r\n });\r\n }\r\n})();\r\n\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .controller('LoginController', loginController);\r\n\r\n function loginController(appConfig, $window, tokenService, accountService) {\r\n var vm = this;\r\n vm.submit = submit;\r\n\r\n function submit() {\r\n vm.dataLoading = true;\r\n accountService.login(vm.user, vm.password).then(function (response) {\r\n tokenService.setTokenInfo({ isAdfs: false, token: response.data.access_token });\r\n $window.location.href = appConfig.getBaseUrl() + '/token';\r\n },function () {\r\n vm.dataLoading = false;\r\n });\r\n }\r\n }\r\n})();\r\n\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .config(routerConfig);\r\n\r\n /** @ngInject */\r\n function routerConfig($stateProvider) {\r\n $stateProvider\r\n .state('welcome.doubleLogin', {\r\n url: '/doubleLogin',\r\n templateUrl: 'app/welcome/doubleLogin/doubleLogin.html',\r\n controller: 'DoubleLoginController',\r\n controllerAs: 'vm'\r\n });\r\n }\r\n})();\r\n\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .controller('DoubleLoginController', doubleLoginController);\r\n\r\n function doubleLoginController(appConfig, $state, $window, tokenService) {\r\n var vm = this;\r\n\r\n var tokenInfo = tokenService.getTokenInfo();\r\n if (tokenInfo) {\r\n $state.go(\"initial\");\r\n }\r\n\r\n vm.adfs = adfs;\r\n vm.token = token;\r\n\r\n function adfs() {\r\n tokenService.setTokenInfo({isAdfs : true});\r\n $window.location.href = appConfig.getBaseUrl() + '/adfs';\r\n }\r\n\r\n function token() {\r\n $state.go(\"welcome.login\");\r\n }\r\n }\r\n})();\r\n\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .config(routerConfig);\r\n\r\n /** @ngInject */\r\n function routerConfig($stateProvider) {\r\n $stateProvider\r\n .state('initial', {\r\n url: '/initial',\r\n templateUrl: 'app/main/initial/initial.html',\r\n controller: 'InitialController',\r\n controllerAs: 'vm'\r\n });\r\n }\r\n})();\r\n\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .controller('InitialController', initialController);\r\n\r\n function initialController($state, accountService) {\r\n accountService.getCurrentUser().then(function () {\r\n if (accountService.isAdminWithoutStudent()) {\r\n $state.go(\"main.impersonation\");\r\n } else {\r\n $state.go('main.form');\r\n }\r\n });\r\n }\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .config(routerConfig);\r\n\r\n /** @ngInject */\r\n function routerConfig($stateProvider) {\r\n $stateProvider\r\n .state('main.impersonation', {\r\n url: '/impersonation/',\r\n templateUrl: 'app/main/impersonation/impersonation.html',\r\n controller: 'ImpersonationController',\r\n controllerAs: 'vm'\r\n });\r\n }\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .controller('ImpersonationController', ImpersonationController);\r\n\r\n function ImpersonationController($scope, $timeout, $document, accountService, studentGridFactory) {\r\n var vm = this;\r\n vm.impersonationGridOptions = studentGridFactory.options(vm.items);\r\n vm.selectStudent = selectStudent;\r\n vm.selectedCall = '';\r\n vm.selectedName = '';\r\n vm.selectedId = -1;\r\n vm.selectedDossier = '';\r\n vm.impersonateStudent = impersonateStudent;\r\n vm.user = accountService.getCurrentUserData();\r\n init();\r\n\r\n function init() { }\r\n\r\n function selectStudent(data, dataItem) {\r\n vm.selectedCall = dataItem.callName;\r\n vm.selectedName = dataItem.name + ' ' + dataItem.surname1 + ' ' + dataItem.surname2;\r\n vm.selectedId = dataItem.id;\r\n vm.selectedDossier = dataItem.dossier;\r\n }\r\n\r\n function impersonateStudent() {\r\n if (vm.selectedId != -1) {\r\n accountService.setImpersionationStudentId(vm.selectedId);\r\n $document[0].location.href = \"/\";\r\n }\r\n }\r\n\r\n $scope.$on('changedLanguage', function () {\r\n // Kendo controls could be localized here (look options and k-rebind) \r\n $timeout(function () {\r\n // Sets language and sets strings again for grid.\r\n vm.impersonationGridOptions = studentGridFactory.options(vm.items);\r\n });\r\n });\r\n }\r\n})();\n(function () {\r\n\t'use strict';\r\n\r\n\tangular\r\n\t\t.module('ieOmpPresentationSpa')\r\n\t\t.config(routerConfig);\r\n\r\n\t/** @ngInject */\r\n\tfunction routerConfig($stateProvider) {\r\n\t\t$stateProvider\r\n\t\t\t.state('main.form', {\r\n\t\t\t\turl: '/form',\r\n\t\t\t\ttemplateUrl: 'app/main/form/form.html',\r\n\t\t\t\tcontroller: 'FormController',\r\n\t\t\t\tcontrollerAs: 'vm',\r\n\t\t\t\tresolve: {\r\n\t\t\t\t\tformData: ['ompService', function (ompService) {\r\n\t\t\t\t\t\treturn ompService.getForm();\r\n\t\t\t\t\t}]\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .controller('FormController', formController);\r\n\r\n function formController(formData) {\r\n var vm = this;\r\n\r\n vm.formData = formData.data;\r\n }\r\n})();\r\n\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .directive('ieUserInfo', ieUserInfo);\r\n\r\n /** @ngInject */\r\n function ieUserInfo() {\r\n var directive = {\r\n restrict: 'E',\r\n templateUrl: 'app/components/ieUserInfo/ieUserInfo.html',\r\n controller: IeUserInfoController,\r\n controllerAs: 'vm',\r\n bindToController: true,\r\n scope: {\r\n model: '=model'\r\n }\r\n };\r\n\r\n return directive;\r\n\r\n /** @ngInject */\r\n function IeUserInfoController($scope, $document, accountService) {\r\n var vm = this;\r\n\r\n vm.user = accountService.getCurrentUserData();\r\n\r\n vm.backgroundImage = vm.user.personId\r\n ? 'url(./fotos/' + vm.user.personId + '.jpg)'\r\n : './assets/images/avatar-preview.png';\r\n\r\n vm.logout = function () {\r\n accountService.logout();\r\n };\r\n\r\n vm.goToImpersonation = function () {\r\n accountService.resetUserForImpersonation();\r\n accountService.getCurrentUser().then(function () {\r\n $document[0].location.href = \"/\";\r\n });\r\n };\r\n\r\n $scope.$on(\"userInfoChanged\", function (e, args) {\r\n vm.user = args;\r\n });\r\n }\r\n }\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular.module('ieOmpPresentationSpa').directive('ieStudentInfo', ieStudentInfo);\r\n\r\n /** @ngInject */\r\n function ieStudentInfo() {\r\n var directive = {\r\n restrict: 'E',\r\n templateUrl: 'app/components/ieStudentInfo/ieStudentInfo.html',\r\n controller: ieStudentInfoController,\r\n controllerAs: 'vm',\r\n bindToController: true,\r\n scope: {\r\n data: '=data'\r\n }\r\n };\r\n\r\n return directive;\r\n\r\n /** @ngInject */\r\n function ieStudentInfoController() {\r\n }\r\n }\r\n})();\n(function() {\r\n 'use strict';\r\n\r\n angular.module('ieOmpPresentationSpa').directive('ieHeader', ieHeader);\r\n\r\n /** @ngInject */\r\n function ieHeader() {\r\n var directive = {\r\n restrict: 'E',\r\n templateUrl: 'app/components/ieHeader/ieHeader.html',\r\n controller: IeHeaderController,\r\n controllerAs: 'vm',\r\n bindToController: true,\r\n scope: {\r\n model: '=model'\r\n }\r\n };\r\n\r\n return directive;\r\n\r\n /** @ngInject */\r\n function IeHeaderController(localizationService) {\r\n var vm = this;\r\n vm.languageSelected = localizationService.getCurrentLanguage();\r\n\r\n vm.changeLanguage = function(language) {\r\n localizationService.setLocale(language);\r\n vm.languageSelected = localizationService.getCurrentLanguage();\r\n };\r\n }\r\n }\r\n})();\r\n\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .directive('ieStudentDocs', ieStudentDocs);\r\n\r\n /** @ngInject */\r\n function ieStudentDocs() {\r\n var directive = {\r\n restrict: 'E',\r\n templateUrl: 'app/components/ieStudentDocs/ieStudentDocs.html',\r\n controller: ieStudentDocsController,\r\n controllerAs: 'vm',\r\n bindToController: true,\r\n scope: {\r\n data: '=data'\r\n }\r\n };\r\n\r\n return directive;\r\n\r\n /** @ngInject */\r\n function ieStudentDocsController($filter, notificationsService, ompService) {\r\n var vm = this,\r\n translate = $filter('translate');\r\n\r\n vm.agreementAccepted = false;\r\n\r\n vm.changeStudent = function () {\r\n ompService.getDocuments(vm.data.studentId).then(function (response) {\r\n vm.data = response.data;\r\n });\r\n };\r\n\r\n vm.uploadFile = function ($files, type) {\r\n if ($files.length > 0) {\r\n ompService.uploadFile($files[0], type, vm.data.studentId).then(\r\n function (response) {\r\n vm.data = response.data;\r\n notificationsService.showSuccess(translate('components.ieStudentDocs.fileUploadedSuccessfully'));\r\n }, function () {\r\n notificationsService.showError(translate('components.ieStudentDocs.errorUploadingFile'));\r\n });\r\n }\r\n };\r\n\r\n vm.deleteFile = function (id) {\r\n ompService.deleteDocument(id).then(\r\n function (response) {\r\n vm.data = response.data;\r\n notificationsService.showSuccess(translate('components.ieStudentDocs.documentDeletedSuccessfully'));\r\n }, function () {\r\n notificationsService.showError(translate('components.ieStudentDocs.errorDeletingDocument'));\r\n });\r\n };\r\n\r\n vm.validate = function () {\r\n ompService.validate(vm.data.studentId).then(\r\n function () {\r\n notificationsService.showSuccess(translate('components.ieStudentDocs.successValidatingMessage'));\r\n }, function () {\r\n notificationsService.showError(translate('components.ieStudentDocs.errorValidatingMessage'));\r\n });\r\n };\r\n }\r\n }\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .directive('ieFormValidationMsg', ieFormValidationMsg);\r\n\r\n /** @ngInject */\r\n function ieFormValidationMsg() {\r\n var directive = {\r\n restrict: 'E',\r\n templateUrl:\r\n 'app/components/ieFormValidationMsg/ieFormValidationMsg.html',\r\n controller: ieFormValidationMsgController,\r\n controllerAs: 'vm',\r\n bindToController: true,\r\n scope: {\r\n data: '=data'\r\n }\r\n };\r\n\r\n return directive;\r\n\r\n /** @ngInject */\r\n function ieFormValidationMsgController($filter) {\r\n var vm = this,\r\n translate = $filter('translate');\r\n\r\n if (vm.data.isValidForOfficialEnrollment == null) {\r\n vm.message = {\r\n error: null,\r\n title: translate('components.ieFormValidationMsg.titleDefaultMsg'),\r\n description: translate('components.ieFormValidationMsg.msgDefault')\r\n };\r\n } else if (vm.data.isValidForOfficialEnrollment) {\r\n vm.message = {\r\n error: false,\r\n title: translate('components.ieFormValidationMsg.titleSuccesstMsg'),\r\n description: translate('components.ieFormValidationMsg.msgSuccess')\r\n };\r\n } else {\r\n vm.message = {\r\n error: true,\r\n title: translate('components.ieFormValidationMsg.titleErrorMsg'),\r\n description: translate('components.ieFormValidationMsg.msgError')\r\n };\r\n }\r\n }\r\n }\r\n})();\n(function () {\r\n 'use strict'\r\n\r\n angular.module('ieOmpPresentationSpa').directive('ieFormTitle', ieFormTitle)\r\n\r\n /** @ngInject */\r\n function ieFormTitle() {\r\n var directive = {\r\n restrict: 'E',\r\n templateUrl: 'app/components/ieFormTitle/ieFormTitle.html',\r\n controller: ieFormTitleController,\r\n controllerAs: 'vm',\r\n bindToController: true,\r\n scope: {\r\n title: '@',\r\n subtitle: '@',\r\n description: '@'\r\n }\r\n }\r\n\r\n return directive\r\n\r\n /** @ngInject */\r\n function ieFormTitleController() {\r\n //var vm = this;\r\n }\r\n }\r\n})();\r\n\n(function () {\r\n 'use strict'\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .directive('ieActionBar', ieActionBar);\r\n\r\n /** @ngInject */\r\n function ieActionBar() {\r\n var directive = {\r\n restrict: 'E',\r\n templateUrl: 'app/components/ieActionBar/ieActionBar.html',\r\n controller: ieActionBarController,\r\n controllerAs: 'vm',\r\n bindToController: true\r\n };\r\n\r\n return directive;\r\n\r\n /** @ngInject */\r\n function ieActionBarController() {\r\n //var vm = this;\r\n }\r\n }\r\n})();\r\n\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .controller('WelcomeController', welcomeController);\r\n\r\n function welcomeController() {\r\n }\r\n})();\r\n\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .service('tokenService', tokenService);\r\n\r\n\r\n function tokenService(localStorageService) {\r\n var service = this,\r\n TOKEN_KEY = 'tokenKey';\r\n \r\n service.setTokenInfo = setTokenInfo;\r\n service.getTokenInfo = getTokenInfo;\r\n service.removeTokenInfo = removeTokenInfo;\r\n\r\n function getTokenInfo() {\r\n return localStorageService.get(TOKEN_KEY);\r\n }\r\n\r\n function setTokenInfo(data) {\r\n if (data) {\r\n localStorageService.set(TOKEN_KEY, data);\r\n }\r\n }\r\n\r\n function removeTokenInfo() {\r\n localStorageService.remove(TOKEN_KEY);\r\n }\r\n }\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .service('studentDataService', studentDataService);\r\n\r\n\r\n function studentDataService(appConfig, $http) {\r\n var service = this,\r\n baseUrl = appConfig.getBaseUrl() + '/api/student/';\r\n\r\n service.getPagedAndSorted = getPagedAndSorted;\r\n\r\n //#region Calls to service\r\n\r\n function getPagedAndSorted(filterParams) {\r\n var result = $http.post(\r\n baseUrl + 'filtered',\r\n JSON.stringify(filterParams), // eslint-disable-line\r\n {\r\n headers: {\r\n 'Content-Type': 'application/json'\r\n }\r\n }\r\n );\r\n\r\n return result;\r\n }\r\n\r\n //#endregion\r\n }\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .service('ompService', ompService);\r\n\r\n\r\n function ompService(appConfig, $http, Upload) {\r\n var service = this,\r\n baseUrl = appConfig.getBaseUrl() + appConfig.ompServicePath;\r\n\r\n service.getInitialData = getInitialData;\r\n service.getForm = getForm;\r\n service.getDocuments = getDocuments;\r\n service.uploadFile = uploadFile;\r\n service.deleteDocument = deleteDocument;\r\n service.validate = validate;\r\n\r\n //#region Calls to service\r\n\r\n function getInitialData() {\r\n var result = $http({\r\n url: baseUrl + appConfig.getInitialDataPath,\r\n method: 'GET'\r\n });\r\n\r\n return result;\r\n }\r\n\r\n function getForm() {\r\n var result = $http({\r\n url: baseUrl,\r\n method: 'GET'\r\n });\r\n\r\n return result;\r\n }\r\n\r\n function getDocuments(studentId) {\r\n var result = $http({\r\n url: baseUrl + appConfig.getDocumentsPath,\r\n method: 'GET',\r\n params: {\r\n studentId: studentId\r\n }\r\n });\r\n\r\n return result;\r\n }\r\n\r\n function uploadFile(file, documentType, studentId) {\r\n file.upload = Upload.upload({\r\n url: baseUrl + 'uploadfile?documentType=' + documentType + '&studentId=' + studentId,\r\n file: file\r\n });\r\n\r\n return file.upload;\r\n }\r\n\r\n function deleteDocument(id) {\r\n var result = $http({\r\n url: baseUrl + '/' + id,\r\n method: 'DELETE'\r\n });\r\n\r\n return result;\r\n }\r\n\r\n function validate(studentId) {\r\n var result = $http({\r\n url: baseUrl + appConfig.validatePath,\r\n method: 'POST',\r\n params: {\r\n studentId: studentId\r\n }\r\n });\r\n\r\n return result;\r\n }\r\n\r\n //#endregion\r\n }\r\n})();\n(function() {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .service('notificationsService', notificationsService);\r\n\r\n /* @ngInject */\r\n function notificationsService($mdToast, $filter) {\r\n var service = this,\r\n translate = $filter('translate'),\r\n position = 'top left',\r\n delay = 3000;\r\n\r\n service.showInfo = showInfo;\r\n service.showError = showError;\r\n service.showWarning = showWarning;\r\n service.showSuccess = showSuccess;\r\n\r\n var buildToast = function(message, keepMessage, type) {\r\n var toast = $mdToast\r\n .simple()\r\n .textContent(message)\r\n .position(position)\r\n .hideDelay(delay)\r\n .toastClass('ie-toast')\r\n .theme(type + '-toast');\r\n\r\n if (keepMessage) {\r\n toast\r\n .hideDelay(0)\r\n .action(translate('ieSpa.common.labelClose'))\r\n .highlightAction(true);\r\n }\r\n\r\n return toast;\r\n };\r\n\r\n function showInfo(message, keepMessage) {\r\n $mdToast.show(buildToast(message, keepMessage, 'info'));\r\n }\r\n\r\n function showError(message, keepMessage) {\r\n $mdToast.show(buildToast(message, keepMessage, 'error'));\r\n }\r\n\r\n function showWarning(message, keepMessage) {\r\n $mdToast.show(buildToast(message, keepMessage, 'warning'));\r\n }\r\n\r\n function showSuccess(message, keepMessage) {\r\n $mdToast.show(buildToast(message, keepMessage, 'success'));\r\n }\r\n }\r\n})();\r\n\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .service('modalService', modalService);\r\n\r\n function modalService($uibModal) {\r\n var service = this;\r\n\r\n var modalDefaults = {\r\n backdrop: true,\r\n keyboard: true,\r\n modalFade: true,\r\n templateUrl: 'app/shared/views/modal.html'\r\n };\r\n\r\n var modalOptions = {\r\n closeButtonText: 'Cancel',\r\n actionButtonText: 'Accept',\r\n headerText: 'Warning',\r\n bodyText: 'Are you sure?'\r\n };\r\n\r\n service.showModal = function (customModalDefaults, customModalOptions) {\r\n if (!customModalDefaults) {\r\n customModalDefaults = {};\r\n }\r\n\r\n //customModalDefaults.backdrop = 'static';\r\n return service.show(customModalDefaults, customModalOptions);\r\n };\r\n\r\n service.show = function (customModalDefaults, customModalOptions) {\r\n //Create temp objects to work with since we're in a singleton service\r\n var tempModalDefaults = {};\r\n var tempModalOptions = {};\r\n\r\n //Map angular-ui modal custom defaults to modal defaults defined in service\r\n angular.extend(tempModalDefaults, modalDefaults, customModalDefaults);\r\n\r\n //Map modal.html $scope custom properties to defaults defined in service\r\n angular.extend(tempModalOptions, modalOptions, customModalOptions);\r\n\r\n if (!tempModalDefaults.controller) {\r\n tempModalDefaults.controller = ['$scope', '$uibModalInstance', function ($scope, $uibModalInstance) {\r\n $scope.modalOptions = tempModalOptions;\r\n $scope.modalOptions.ok = function (result) {\r\n $uibModalInstance.close(result);\r\n };\r\n $scope.modalOptions.close = function () {\r\n $uibModalInstance.dismiss('cancel');\r\n };\r\n }];\r\n }\r\n\r\n return $uibModal.open(tempModalDefaults).result;\r\n };\r\n }\r\n\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .service('localizationService', localizationService);\r\n\r\n /** @ngInject */\r\n function localizationService($translate, $locale, $rootScope, $document, $location) {\r\n var service = this;\r\n\r\n service.getCurrentLanguage = function () {\r\n return $translate.use();\r\n };\r\n\r\n service.getLocalizedData = function (exp) {\r\n var lang = $translate.use();\r\n return exp && exp[lang]\r\n ? exp[lang]\r\n : '[' + exp + ' {' + $translate.use() + '}]';\r\n };\r\n\r\n service.getLocale = function () {\r\n return $translate.use();\r\n }\r\n\r\n service.setLocale = function (lang) {\r\n $translate.use(lang);\r\n };\r\n\r\n var deregistrationOnTranslateChangeSuccess = $rootScope.$on(\r\n '$translateChangeSuccess',\r\n function () {\r\n changeAppTitle();\r\n changeAngularInternalLocalization();\r\n setKendoCultureAndMessages();\r\n }\r\n );\r\n\r\n $rootScope.$on('$destroy', deregistrationOnTranslateChangeSuccess);\r\n\r\n function changeAppTitle() {\r\n var pageTitle = angular.element(\r\n $document[0].querySelector('html head title')\r\n );\r\n $translate('ieSpa.common.appName').then(\r\n function (pageTitleText) {\r\n pageTitle.html(pageTitleText);\r\n },\r\n function (translationId) {\r\n pageTitle.text(translationId);\r\n }\r\n );\r\n }\r\n\r\n function changeAngularInternalLocalization() {\r\n var lang = $translate.use();\r\n\r\n if (lang == 'es') {\r\n $locale.DATETIME_FORMATS.MONTH = [\r\n 'Enero',\r\n 'Febrero',\r\n 'Marzo',\r\n 'Abril',\r\n 'Mayo',\r\n 'Junio',\r\n 'Julio',\r\n 'Agosto',\r\n 'Septiembre',\r\n 'Octubre',\r\n 'Noviembre',\r\n 'Diciembre'\r\n ];\r\n $locale.DATETIME_FORMATS.SHORTDAY = [\r\n 'Dom',\r\n 'Lun',\r\n 'Mar',\r\n 'Mie',\r\n 'Jue',\r\n 'Vie',\r\n 'Sáb'\r\n ];\r\n $locale.DATETIME_FORMATS.DAY = [\r\n 'Dom',\r\n 'Lun',\r\n 'Mar',\r\n 'Mie',\r\n 'Jue',\r\n 'Vie',\r\n 'Sáb'\r\n ];\r\n } else {\r\n $locale.DATETIME_FORMATS.MONTH = [\r\n 'January',\r\n 'February',\r\n 'March',\r\n 'April',\r\n 'May',\r\n 'June',\r\n 'July',\r\n 'August',\r\n 'September',\r\n 'October',\r\n 'November',\r\n 'December'\r\n ];\r\n $locale.DATETIME_FORMATS.SHORTDAY = [\r\n 'Sun',\r\n 'Mon',\r\n 'Tue',\r\n 'Wed',\r\n 'Thu',\r\n 'Fri',\r\n 'Sat'\r\n ];\r\n $locale.DATETIME_FORMATS.DAY = [\r\n 'Sunday',\r\n 'Monday',\r\n 'Tuesday',\r\n 'Wednesday',\r\n 'Thursday',\r\n 'Friday',\r\n 'Saturday'\r\n ];\r\n }\r\n\r\n $rootScope.$broadcast('refreshDatepickers');\r\n }\r\n\r\n function setKendoCultureAndMessages() {\r\n var lang = $translate.use();\r\n var scriptUrl = getAppBaseUrl() + \"/vendor/kendo-ui/js/messages/kendo.messages.\" + lang + \".min.js\";\r\n $.getScript(scriptUrl, function () {\r\n kendo.culture(lang);\r\n });\r\n }\r\n\r\n function getAppBaseUrl() {\r\n return $location.$$protocol + '://' + $location.$$host + ':' + $location.$$port; // eslint-disable-line\r\n }\r\n }\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .service('initialDataService', initialDataService);\r\n\r\n\r\n function initialDataService(ompService) {\r\n var service = this;\r\n\r\n service.initialData = null;\r\n service.getInitialData = getInitialData;\r\n\r\n function getInitialData(forceRefresh) {\r\n if (forceRefresh === true || !service.initialData) {\r\n return ompService.getInitialData().then(function (response) {\r\n service.initialData = response.data;\r\n return service.initialData;\r\n });\r\n } else {\r\n return service.initialData;\r\n }\r\n }\r\n }\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .service('httpInterceptorService', httpInterceptorService);\r\n\r\n function httpInterceptorService($q, $window, $injector, appConfig, tokenService) {\r\n var service = this;\r\n\r\n service.request = function (config) {\r\n\r\n config.headers = config.headers || {};\r\n\r\n if (!config.skipWithCredentials) {\r\n config.withCredentials = true;\r\n }\r\n\r\n var tokenInfo = tokenService.getTokenInfo();\r\n if (tokenInfo && !tokenInfo.isAdfs) {\r\n config.headers.Authorization = 'Bearer ' + tokenInfo.token;\r\n }\r\n\r\n return config;\r\n };\r\n\r\n service.responseError = responseError;\r\n\r\n function responseError(response) {\r\n \r\n var translate = $injector.get('$translate');\r\n var notificationsService = $injector.get('notificationsService');\r\n\r\n translate([\r\n 'omp.httpInterceptorService.errorMessage',\r\n 'omp.httpInterceptorService.errorMessageDataProvided'\r\n ])\r\n .then(function (tns) {\r\n var status = response.status,\r\n errorMessage = tns['omp.httpInterceptorService.errorMessage'];\r\n\r\n if (status === 0) {\r\n notificationsService.showError(errorMessage);\r\n\r\n } if (status === -1) {\r\n notificationsService.showError(errorMessage);\r\n } else if (status >= 100 && status < 200) { //Informational\r\n\r\n } else if (status >= 200 && status < 300) { //Success\r\n\r\n } else if (status >= 300 && status < 400) { //Redirection\r\n\r\n } else if (status >= 400 && status < 500) { //Client error\r\n //utilsService.log(response.data, response.status, response.headers, response.config);\r\n var message = errorMessage;\r\n if (response.data.message) {\r\n message = response.data.message;\r\n }\r\n\r\n //400 Bad request\r\n if (status === 400 && response.data.modelState) {\r\n message = tns['omp.httpInterceptorService.errorMessageDataProvided'];\r\n notificationsService.showWarning(message);\r\n } else if (status === 400 && response.data.error_description) {\r\n notificationsService.showWarning(response.data.error_description);\r\n } else if (status === 401) { //401 Unauthorized\r\n goToNoAccessPage();\r\n } else if (status === 403) {\r\n goToNoAccessPage(); //403 Forbidden\r\n } else {\r\n //404 Not found\r\n notificationsService.showError(message);\r\n }\r\n } else if (status >= 500 && status < 600) { //Server error\r\n //utilsService.log(response.data, response.status, response.headers, response.config);\r\n message = errorMessage;\r\n\r\n //500 Internal Server Error\r\n //501 Not Implemented\r\n //503 Service Unavailable\r\n notificationsService.showError(message);\r\n }\r\n\r\n });\r\n\r\n return $q.reject(response);\r\n }\r\n\r\n function goToNoAccessPage() {\r\n var url = appConfig.getBaseUrl() + '/Home/NoAccess';\r\n $window.location.href = url;\r\n }\r\n }\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .service('accountService', accountService);\r\n\r\n function accountService(appConfig, $rootScope, $http, $q, localStorageService, $window, $cookies, $state, tokenService) {\r\n var service = this,\r\n baseUrl = appConfig.getBaseUrl() + '/api/account/',\r\n USERINFO_DATA_KEY = 'userInfoData',\r\n IMPERSONATION_STUDENTID = \"Impersonation_StudentId\";\r\n\r\n service.getCurrentUser = getCurrentUser;\r\n service.setCurrentUser = setCurrentUser;\r\n service.getCurrentUserData = getCurrentUserData;\r\n service.resetUser = resetUser;\r\n service.resetUserForImpersonation = resetUserForImpersonation;\r\n service.login = login;\r\n service.logout = logout;\r\n service.isAdminWithoutStudent = isAdminWithoutStudent;\r\n service.setImpersionationStudentId = setImpersionationStudentId;\r\n\r\n function getCurrentUser() {\r\n var deferred = $q.defer();\r\n\r\n $http.get(baseUrl + '/userinfo')\r\n .success(function (response) {\r\n setCurrentUser(response);\r\n deferred.resolve(response);\r\n })\r\n .error(function (error) {\r\n resetUser();\r\n deferred.reject(error);\r\n });\r\n\r\n return deferred.promise;\r\n }\r\n\r\n function getCurrentUserData() {\r\n return localStorageService.get(USERINFO_DATA_KEY);\r\n }\r\n\r\n function setCurrentUser(userInfo) {\r\n if (userInfo) {\r\n localStorageService.set(USERINFO_DATA_KEY, userInfo);\r\n }\r\n }\r\n\r\n function resetUser() {\r\n localStorageService.remove(USERINFO_DATA_KEY);\r\n tokenService.removeTokenInfo();\r\n $cookies.remove(IMPERSONATION_STUDENTID);\r\n }\r\n\r\n function resetUserForImpersonation() {\r\n localStorageService.remove(USERINFO_DATA_KEY);\r\n $cookies.remove(IMPERSONATION_STUDENTID);\r\n }\r\n\r\n function login(username, password) {\r\n var loginUrl = appConfig.getBaseUrl() + '/login',\r\n data = {\r\n username: username,\r\n password: password,\r\n grant_type: \"password\"\r\n };\r\n\r\n return $http.post(\r\n loginUrl,\r\n $.param(data),\r\n {\r\n headers: {\r\n 'Content-Type': 'application/x-www-form-urlencoded'\r\n }\r\n }\r\n );\r\n }\r\n\r\n function logout() {\r\n var logoutUrl = appConfig.getBaseUrl() + '/Home/SignOut',\r\n tokenInfo = tokenService.getTokenInfo();\r\n\r\n resetUser();\r\n\r\n if (tokenInfo && tokenInfo.isAdfs) {\r\n $window.location.href = logoutUrl;\r\n }\r\n else {\r\n $state.go(\"welcome.doubleLogin\");\r\n }\r\n }\r\n\r\n function isAdminWithoutStudent() {\r\n var user = getCurrentUserData();\r\n return (user.isAdmin && user.isImpersonated == false);\r\n }\r\n\r\n function setImpersionationStudentId(studentId) {\r\n $cookies.put(IMPERSONATION_STUDENTID, studentId);\r\n getCurrentUser().then(function (result) {\r\n $rootScope.$broadcast(\"userInfoChanged\", result);\r\n });\r\n }\r\n }\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .provider('appConfig', appConfig);\r\n\r\n function appConfig() {\r\n return {\r\n $get: function () {\r\n return {\r\n /* Web api methods */\r\n getInitialDataPath: 'initialdata',\r\n getDocumentsPath: 'documents',\r\n validatePath: 'validate',\r\n /* Web api flexible url context builder */\r\n ompServicePath: '/api/omp/',\r\n getBaseUrl: function () {\r\n var url = location.href;\r\n var protocol = url.substring(0, url.indexOf('://'));\r\n var urlWithoutProtocol = url.substr(url.indexOf('://') + 3, url.length);\r\n var indexOfWWW = urlWithoutProtocol.indexOf('www.');\r\n if (indexOfWWW >= 0) {\r\n urlWithoutProtocol = urlWithoutProtocol.substr(indexOfWWW + 4, urlWithoutProtocol.length);\r\n }\r\n var spaBaseUrl = urlWithoutProtocol.substring(0, urlWithoutProtocol.indexOf('/'));\r\n var result = protocol + '://' + spaBaseUrl;\r\n\r\n return result;\r\n }\r\n };\r\n }\r\n };\r\n }\r\n})();\r\n\n(function () {\r\n 'use strict'\r\n\r\n angular.module('ieOmpPresentationSpa').config(routerConfig)\r\n\r\n /** @ngInject */\r\n function routerConfig($stateProvider, $urlRouterProvider) {\r\n\r\n $stateProvider.state('main', {\r\n abstract: true,\r\n templateUrl: 'app/main/main.html',\r\n controller: 'MainController',\r\n controllerAs: 'vm',\r\n resolve: {\r\n //TODO\r\n }\r\n })\r\n\r\n $urlRouterProvider.otherwise(function ($injector) {\r\n var $state = $injector.get('$state')\r\n $state.go('initial')\r\n })\r\n }\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .controller('MainController', mainController);\r\n\r\n /** @ngInject */\r\n function mainController() {\r\n }\r\n})();\r\n\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .filter('localizeByProperty', localizeByProperty);\r\n\r\n function localizeByProperty(localizationService) {\r\n return function (stringWithLocalization) {\r\n return localizationService.getLocalizedData(stringWithLocalization);\r\n };\r\n }\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .factory('studentGridFactory', studentGridFactory);\r\n\r\n function studentGridFactory(localizationService, studentDataService) {\r\n return {\r\n options: function () {\r\n return {\r\n dataSource: {\r\n transport: {\r\n read: function (o) {\r\n // This approach forces to use $http and common data service with $http interceptors\r\n studentDataService.getPagedAndSorted(o.data).success(function (response) {\r\n o.success(response);\r\n });\r\n }\r\n },\r\n schema: {\r\n data: 'items',\r\n total: 'totalItemCount',\r\n model: {\r\n id: \"id\",\r\n fields: {\r\n id: {\r\n editable: false,\r\n type: \"number\",\r\n isNullable: false\r\n },\r\n name: { isNullable: false },\r\n surname1: { isNullable: false },\r\n surname2: { isNullable: true },\r\n phone: { isNullable: true },\r\n email: { isNullable: true },\r\n dossier: { isNullable: true },\r\n academicProgramName: { isNullable: false }\r\n }\r\n }\r\n },\r\n pageSize: 10,\r\n serverPaging: true,\r\n serverSorting: true,\r\n serverFiltering: true\r\n },\r\n selectable: true,\r\n resizable: true,\r\n filterable: {\r\n mode: \"row\",\r\n operators: {\r\n number: {\r\n eq: kendo.ui.FilterCell.fn.options.operators.number.eq,\r\n neq: kendo.ui.FilterCell.fn.options.operators.number.neq\r\n },\r\n string: {\r\n startswith: kendo.ui.FilterCell.fn.options.operators.string.startswith,\r\n contains: kendo.ui.FilterCell.fn.options.operators.string.contains\r\n }\r\n }\r\n },\r\n sortable: {\r\n mode: \"multiple\"\r\n },\r\n pageable: true,\r\n language: localizationService.getLocale()\r\n };\r\n }\r\n }\r\n }\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular.module('ieOmpPresentationSpa').directive('serverValidate', function () {\r\n return {\r\n require: 'ngModel',\r\n link: function (scope, ele, attrs, c) {\r\n scope.$watch('modelState', function () {\r\n if (scope.modelState === null) {\r\n return;\r\n }\r\n\r\n var modelStateKey;\r\n if (attrs.name) {\r\n modelStateKey = attrs.name;\r\n }\r\n\r\n if (scope.modelState && scope.modelState[modelStateKey]) {\r\n c.$setValidity('server', false);\r\n c.$error.server = scope.modelState[modelStateKey];\r\n } else {\r\n c.$setValidity('server', true);\r\n }\r\n });\r\n\r\n scope.$watch(attrs.ngModel, function (oldValue, newValue) {\r\n if (oldValue !== newValue) {\r\n c.$setValidity('server', true);\r\n c.$error.server = [];\r\n }\r\n });\r\n }\r\n };\r\n });\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .config(translateConfig);\r\n\r\n /** @ngInject */\r\n function translateConfig($translateProvider) {\r\n\r\n // See gulp/translate.js for language file building\r\n $translateProvider.useStaticFilesLoader({\r\n prefix: '/translations/locale.',\r\n suffix: '.json'\r\n });\r\n $translateProvider.preferredLanguage('en').fallbackLanguage('es');\r\n $translateProvider.useSanitizeValueStrategy('escaped');\r\n $translateProvider.useLocalStorage();\r\n }\r\n\r\n})();\r\n\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .run(runBlock);\r\n\r\n /** @ngInject */\r\n function runBlock($rootScope) {\r\n $rootScope.showHelpTooltips = false;\r\n\r\n $rootScope.toogleHelp = function() {\r\n $rootScope.showHelpTooltips = !$rootScope.showHelpTooltips;\r\n $rootScope.$broadcast('help.toggle', { visible: $rootScope.showHelpTooltips });\r\n }\r\n }\r\n\r\n})();\n(function () {\r\n 'use strict'\r\n\r\n angular.module('ieOmpPresentationSpa').config(routerConfig)\r\n\r\n /** @ngInject */\r\n function routerConfig($stateProvider, $urlRouterProvider) {\r\n\r\n $stateProvider.state('welcome', {\r\n abstract: true,\r\n templateUrl: 'app/welcome/welcome.html',\r\n controller: 'WelcomeController',\r\n controllerAs: 'vm'\r\n })\r\n\r\n $urlRouterProvider.otherwise(function ($injector) {\r\n var $state = $injector.get('$state')\r\n $state.go('welcome.doubleLogin')\r\n })\r\n }\r\n})();\r\n\n/* global */\r\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .constant('user', {});\r\n\r\n})();\n(function () {\r\n 'use strict';\r\n\r\n angular\r\n .module('ieOmpPresentationSpa')\r\n .config(config);\r\n\r\n /** @ngInject */\r\n function config($logProvider, $httpProvider, $mdThemingProvider, $mdDateLocaleProvider) {\r\n // Enable log\r\n $logProvider.debugEnabled(true);\r\n\r\n $httpProvider.interceptors.push('httpInterceptorService');\r\n\r\n $mdThemingProvider.theme('info-toast');\r\n $mdThemingProvider.theme('error-toast');\r\n $mdThemingProvider.theme('warning-toast');\r\n $mdThemingProvider.theme('success-toast');\r\n\r\n $mdDateLocaleProvider.months = ['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre'];\r\n $mdDateLocaleProvider.shortMonths = ['Ene.', 'Feb.', 'Mar.', 'Abr.', 'May.', 'Jun.', 'Jul.', 'Ago.', 'Sep.', 'Oct.', 'Nov.', 'Dic.'];\r\n $mdDateLocaleProvider.days = ['Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'];\r\n $mdDateLocaleProvider.shortDays = ['D', 'L', 'M', 'X', 'J', 'V', 'S'];\r\n $mdDateLocaleProvider.firstDayOfWeek = 1;\r\n\r\n $mdDateLocaleProvider.formatDate = function (date) {\r\n return date ? moment(date).format('DD/MM/YYYY') : null;\r\n };\r\n }\r\n\r\n})();\nangular.module(\"ieOmpPresentationSpa\").run([\"$templateCache\", function($templateCache) {$templateCache.put(\"app/index.html\",\"
{{vm.description}}
{{vm.message.description}}
{{\\'omp.view.impersonation.info\\'}}
{{vm.selectedCall}} {{vm.selectedName}} ({{vm.selectedDossier}})
{{\\'omp.view.impersonation.label\\'}}
{{ vm.user.machineName }}
{{modalOptions.bodyText}}