{"version":3,"file":"../../js/Holiday/qmc.holiday.min.js","sources":["qmc.holiday.min.js"],"sourcesContent":["var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\n(function () {\n angular.module('QMC.Holiday', []).config(routes);\n routes.$inject = ['$locationProvider', '$stateProvider', '$urlRouterProvider', 'qmcBase'];\n function routes($locationProvider, $stateProvider, $urlRouterProvider, qmcBase) {\n $locationProvider.html5Mode({\n enabled: false,\n requireBase: false\n });\n $stateProvider\n .state('holiday', {\n url: '/holiday',\n templateUrl: qmcBase + '/Holiday',\n controller: 'HolidayListController',\n controllerAs: 'vm',\n resolve: {\n data: [function () {\n console.log('Current State: Holiday List');\n }]\n }\n })\n .state('holidayDetail', {\n url: '/holiday/:id',\n templateUrl: qmcBase + '/Holiday',\n controller: 'HolidayListController',\n controllerAs: 'vm',\n resolve: {\n data: [function () {\n console.log('Current State: Holiday Detail');\n }]\n }\n });\n }\n})();\nvar QMC;\n(function (QMC) {\n var Holiday;\n (function (Holiday) {\n var HttpProvider = /** @class */ (function () {\n function HttpProvider() {\n }\n HttpProvider.configureHttpProvider = function ($httpProvider) {\n // initialize get if not there\n if (!$httpProvider.defaults.headers.get) {\n $httpProvider.defaults.headers.get = {};\n }\n // disable IE ajax request caching\n $httpProvider.defaults.headers.get['If-Modified-Since'] = 'Mon, 26 Jul 1997 05:00:00 GMT';\n // extra\n $httpProvider.defaults.headers.get['Cache-Control'] = 'no-cache';\n $httpProvider.defaults.headers.get['Pragma'] = 'no-cache';\n };\n return HttpProvider;\n }());\n Holiday.HttpProvider = HttpProvider;\n })(Holiday = QMC.Holiday || (QMC.Holiday = {}));\n})(QMC || (QMC = {}));\n(function () {\n angular.module('QMC.Holiday')\n .config(['$httpProvider', QMC.Holiday.HttpProvider.configureHttpProvider]);\n})();\nvar QMC;\n(function (QMC) {\n var Holiday;\n (function (Holiday) {\n var HolidayService = /** @class */ (function (_super) {\n __extends(HolidayService, _super);\n function HolidayService($http, $q) {\n var _this = _super.call(this, $http, $q) || this;\n _this.$http = $http;\n _this.$q = $q;\n _this.modulePath = '/Holiday';\n return _this;\n }\n HolidayService.prototype.getHolidayWv = function () {\n return _super.prototype.getItem.call(this, this.modulePath + '/WvModel', {}, function (data) {\n return data;\n });\n };\n HolidayService.prototype.getHoliday = function (id) {\n return _super.prototype.getItem.call(this, this.modulePath + \"/\" + id, {}, function (data) {\n return data;\n });\n };\n HolidayService.prototype.getHolidayInfo = function (date) {\n if (date)\n date = moment(date).startOf('day').toDate();\n return _super.prototype.getItem.call(this, this.modulePath + \"/info\", { date: date }, function (data) {\n return data;\n });\n };\n HolidayService.prototype.getHolidayLock = function () {\n return _super.prototype.getItem.call(this, this.modulePath + \"/Lock\", {}, function (data) {\n return data;\n });\n };\n HolidayService.prototype.getHolidayList = function (dateFrom, dateTo) {\n return _super.prototype.get.call(this, this.modulePath, { dateFrom: dateFrom, dateTo: dateTo }, function (data) {\n return data;\n });\n };\n HolidayService.prototype.postHoliday = function (data) {\n return _super.prototype.post.call(this, this.modulePath, data).then(function (data) {\n return data;\n });\n };\n HolidayService.prototype.putHoliday = function (id, data) {\n return _super.prototype.put.call(this, this.modulePath + \"/\" + id, data).then(function (data) {\n return data;\n });\n };\n HolidayService.prototype.deleteHoliday = function (id) {\n return _super.prototype.delete.call(this, this.modulePath + \"/\" + id).then(function (data) {\n return data;\n });\n };\n HolidayService.prototype.calculateDayValues = function (dateFrom, dateTo, referenceId) {\n return _super.prototype.post.call(this, \"/Roster/Service/CalculateDayValues\", { dateFrom: dateFrom, dateTo: dateTo, referenceId: referenceId }).then(function (data) {\n return data;\n });\n };\n HolidayService.prototype.checkForWarningsAndErrors = function (data) {\n return _super.prototype.post.call(this, this.modulePath + \"/WarningsAndErrors\", data).then(function (data) {\n return data;\n });\n };\n HolidayService = __decorate([\n QMC.Service('QMC.Holiday', 'HolidayService'),\n QMC.Inject('$http', '$q')\n ], HolidayService);\n return HolidayService;\n }(QMC.Common.BaseService));\n Holiday.HolidayService = HolidayService;\n })(Holiday = QMC.Holiday || (QMC.Holiday = {}));\n})(QMC || (QMC = {}));\nvar QMC;\n(function (QMC) {\n var Holiday;\n (function (Holiday) {\n /**\n * Holiday UserInterface class\n *\n * @export\n * @class UserInterface\n * @extends {Common.UserInterface}\n */\n var UserInterface = /** @class */ (function (_super) {\n __extends(UserInterface, _super);\n function UserInterface() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.showMonthFilter = true;\n /**\n * Holiday list table\n * @memberOf UserInterface\n */\n _this.listTable = {\n \"config\": {\n \"defaultSort\": \"dateFrom\",\n \"sortReverse\": \"true\",\n },\n \"filter\": {\n model: null\n },\n \"table\": {\n \"Farbe\": {\n \"label\": \"color\",\n \"dType\": \"Color\"\n },\n \"Bezeichnung\": {\n \"label\": \"caption\",\n \"dType\": \"string\",\n \"lngTag\": \"20000053\"\n },\n \"Genehmigungsstatus\": {\n \"label\": \"approved\",\n \"dType\": \"string\",\n \"lngTag\": \"20020007\"\n },\n \"Länge\": {\n \"label\": \"holidayDuration\",\n \"dType\": \"string\",\n \"lngTag\": \"20020032\"\n },\n \"Datum von\": {\n \"label\": \"dateFrom\",\n \"dType\": \"Date\",\n \"lngTag\": \"20000047\"\n },\n \"Datum bis\": {\n \"label\": \"dateTo\",\n \"dType\": \"Date\",\n \"lngTag\": \"20000054\"\n },\n \"Art\": {\n \"label\": \"serviceType\",\n \"dType\": \"string\",\n \"lngTag\": \"20020008\"\n },\n \"Aktionen\": [\n {\n \"icon\": \"qm-icon-eye blue\",\n \"click\": \"editHoliday\",\n \"openModal\": \"true\",\n \"dType\": \"Button\",\n \"tooltip\": \"Ansehen\",\n \"lngTag\": \"20000141\",\n \"events\": {\n \"hide\": \"allowEdit\"\n },\n },\n {\n \"icon\": \"qm-icon-pencil blue\",\n \"click\": \"editHoliday\",\n \"dType\": \"Button\",\n \"openModal\": \"true\",\n \"tooltip\": \"Bearbeiten\",\n \"lngTag\": \"20000044\",\n \"events\": {\n \"hide\": \"!allowEdit\"\n },\n \"permission\": \"modify\"\n }, {\n \"icon\": \"qm-icon-garbage_can red\",\n \"click\": \"deleteHoliday\",\n \"label\": \"data\",\n \"dType\": \"Button\",\n \"tooltip\": \"Löschen\",\n \"lngTag\": \"20000002\",\n \"events\": {\n \"hide\": \"!allowDelete\"\n },\n \"permission\": \"delete\"\n }, {\n \"icon\": \"qm-icon-note_text darkslategray\",\n \"click\": \"toggleCommentModal\",\n \"label\": \"Comment\",\n \"dType\": \"Button\",\n \"events\": {\n \"hide\": \"!viewComment\",\n },\n \"tooltip\": \"Bemerkung\",\n \"lngTag\": \"20000049\",\n }\n ]\n }, \"card\": {\n \"avatar\": {\n \"icon\": \"qm-icon-palm_tree\"\n },\n \"text\": {\n \"label\": \"caption\",\n \"dType\": \"string\"\n },\n \"subtext\": [\n {\n \"label\": \"serviceType\",\n \"dType\": \"string\"\n },\n {\n \"label\": \"holidayDuration\",\n \"dType\": \"string\"\n },\n {\n \"label\": \"dateFrom\",\n \"dType\": \"Date\"\n },\n {\n \"label\": \"dateTo\",\n \"dType\": \"Date\"\n },\n {\n \"prefix\": \"Genehmigung: \",\n \"label\": \"approved\",\n \"dType\": \"string\"\n }\n ],\n \"buttons\": [\n {\n \"icon\": \"qm-icon-pencil blue\",\n \"click\": \"editHoliday\",\n \"openModal\": \"true\",\n \"targetModal\": \"#edit-form\",\n \"dType\": \"Button\",\n \"tooltip\": \"Bearbeiten\",\n \"lngTag\": \"20000044\",\n \"permission\": \"modify\",\n \"events\": {\n \"hide\": \"!allowEdit\"\n },\n },\n {\n \"icon\": \"qm-icon-eye blue\",\n \"click\": \"editHoliday\",\n \"openModal\": \"true\",\n \"targetModal\": \"#edit-form\",\n \"dType\": \"Button\",\n \"tooltip\": \"Ansehen\",\n \"lngTag\": \"20000141\",\n \"events\": {\n \"hide\": \"allowEdit\"\n },\n },\n {\n \"icon\": \"qm-icon-garbage_can red\",\n \"click\": \"deleteHoliday\",\n \"label\": \"data\",\n \"dType\": \"Button\",\n \"tooltip\": \"Löschen\",\n \"lngTag\": \"20000002\",\n \"permission\": \"delete\",\n \"events\": {\n \"hide\": \"!allowDelete\"\n },\n },\n {\n \"icon\": \"qm-icon-note_text darkslategray\",\n \"click\": \"toggleCommentModal\",\n \"label\": \"Comment\",\n \"dType\": \"Button\",\n \"events\": {\n \"hide\": \"!viewComment\",\n },\n \"tooltip\": \"Bemerkung\",\n \"lngTag\": \"20000049\",\n }\n ]\n },\n \"data\": null,\n };\n _this.holidayForm = {\n form: [\n {\n placeholder: \"Urlaubsart auswählen\",\n label: \"Urlaubsart\",\n type: \"Select2\",\n required: true,\n model: \"isSpecialHoliday\",\n lngTag: 20020008,\n dataSource: \"getHolidayCategoryList\",\n style: {\n class: \"col-md-6 col-xs-12\"\n },\n events: {\n updateDataSource: \"holidayTypeId\",\n },\n validate: {\n message: \"Bitte die Urlaubsart auswählen.\",\n messageTag: 21003019\n },\n },\n {\n placeholder: \"Urlaubsunterart auswählen\",\n label: \"Urlaubsart\",\n type: \"Select2\",\n required: false,\n model: \"holidayTypeId\",\n lngTag: 20020020,\n dataSource: \"getHolidayTypeList\",\n style: {\n class: \"col-md-6 col-xs-12\"\n },\n validate: {\n message: \"Bitte die Urlaubsunterart auswählen.\",\n messageTag: 21003021\n },\n events: {\n hideExpression: \"qmForm.isSpecialHoliday\"\n },\n id: \"holidayTypeId\",\n wvId: '827662a9-b386-4546-9f8e-cc52e896c336',\n wvListData: 'wvList.holidayTypeWvList',\n wvValueType: 'color'\n },\n {\n placeholder: \"Urlaubsunterart auswählen\",\n label: \"Urlaubsart\",\n type: \"Select2\",\n required: false,\n model: \"holidayTypeId\",\n lngTag: 20020020,\n dataSource: \"getSpecialHolidayTypeList\",\n style: {\n class: \"col-md-6 col-xs-12\"\n },\n validate: {\n message: \"Bitte die Urlaubsunterart auswählen.\",\n messageTag: 21003021\n },\n events: {\n hideExpression: \"!qmForm.isSpecialHoliday\"\n },\n wvId: '4dd3f89a-2cdd-49fb-8d11-0be9f8ea3431',\n wvListData: 'wvList.specialHolidayTypeWvList',\n wvValueType: 'color'\n },\n {\n label: \"Genehmigungsstatus\",\n type: \"Select\",\n dataSource: \"getApprovementWvList\",\n model: \"approvedId\",\n lngTag: 20020007,\n events: {\n hideExpression: \"!qmForm.permissionApproved\"\n },\n style: {\n class: \"col-md-6 col-xs-12\",\n icon: \"qm-icon-information\"\n }\n },\n {\n label: \"Genehmigungsstatus\",\n type: \"Select\",\n dataSource: \"getApprovementWvList\",\n model: \"approvedId\",\n lngTag: 20020007,\n disabled: true,\n events: {\n hideExpression: \"qmForm.permissionApproved\"\n },\n style: {\n class: \"col-md-6 col-xs-12\",\n icon: \"qm-icon-information\"\n }\n },\n {\n type: \"hr\"\n },\n {\n label: {\n dateFrom: \"Datum von\",\n dateTo: \"Datum bis\",\n },\n placeholder: {\n dateFrom: \"Datum von\",\n dateTo: \"Datum bis\"\n },\n type: \"DateRange\",\n lngTag: {\n dateFrom: 20000047,\n dateTo: 20000054\n },\n model: {\n dateFrom: \"dateFrom\",\n dateTo: \"dateTo\"\n },\n style: {\n class: \"col-xs-12\"\n },\n config: {\n displayDateTo: true,\n dateToRequired: true\n }\n },\n {\n label: \"Anzahl Tage\",\n type: \"CheckboxInline\",\n lngTag: 20020026,\n model: \"isManualDays\",\n id: \"isManualDays\",\n style: {\n class: \"col-md-2 col-sm-3 col-xs-6\"\n }\n },\n {\n model: \"amountOfDays\",\n type: \"Number\",\n disabled: true,\n id: \"amountOfDaysDis\",\n style: {\n class: \"col-md-2 col-sm-3 col-xs-6\",\n },\n events: {\n hideExpression: \"qmForm.isManualDays\"\n }\n },\n {\n model: \"amountOfDays\",\n type: \"Number\",\n disabled: false,\n id: \"amountOfDays\",\n style: {\n class: \"col-md-2 col-sm-3 col-xs-6\",\n },\n events: {\n hideExpression: \"!qmForm.isManualDays\"\n }\n },\n {\n label: \"Anzahl Stunden\",\n type: \"CheckboxInline\",\n lngTag: 20020027,\n model: \"isManualHours\",\n id: \"isManualHours\",\n style: {\n class: \"col-md-2 col-sm-3 col-xs-6\"\n }\n },\n {\n model: \"amountOfHours\",\n type: \"Number\",\n disabled: true,\n id: \"amountOfHoursDis\",\n style: {\n class: \"col-md-2 col-sm-3 col-xs-6\"\n },\n events: {\n hideExpression: \"qmForm.isManualHours\"\n }\n },\n {\n model: \"amountOfHours\",\n type: \"Number\",\n disabled: false,\n id: \"amountOfHours\",\n style: {\n class: \"col-md-2 col-sm-3 col-xs-6\"\n },\n events: {\n hideExpression: \"!qmForm.isManualHours\"\n }\n },\n {\n label: \"Dienste anrechnen\",\n type: \"CheckboxInline\",\n lngTag: 20020024,\n model: \"creditWorkAsHoliday\",\n id: \"creditWorkAsHoliday\",\n style: {\n class: \"col-md-4 col-xs-12\"\n }\n },\n {\n type: \"hr\"\n },\n {\n label: \"Anzeigefarbe\",\n type: \"Color\",\n lngTag: 20020034,\n model: \"color\",\n style: {\n class: \"col-md-12 col-xs-12\",\n icon: \"qm-icon-painters_palette\"\n },\n disabled: true\n },\n {\n placeholder: \"Bemerkung eintragen...\",\n label: \"Bemerkung\",\n type: \"Textarea\",\n maxLength: -1,\n lngTag: 20000049,\n model: \"comment\",\n style: {\n class: \"col-md-12 col-xs-12\",\n },\n },\n ],\n actions: {\n put: \"putHoliday\",\n post: \"addHoliday\",\n delete: \"deleteHoliday\"\n }\n };\n return _this;\n }\n return UserInterface;\n }(QMC.Common.UserInterface));\n Holiday.UserInterface = UserInterface;\n })(Holiday = QMC.Holiday || (QMC.Holiday = {}));\n})(QMC || (QMC = {}));\nvar QMC;\n(function (QMC) {\n var Holiday;\n (function (Holiday) {\n var HolidayListController = /** @class */ (function () {\n /**\n * Creates an instance of HolidayListController.\n * @param {HolidayService} holidayService\n * @param {any} $qui\n * @param {ng.IScope} $scope\n * @param {any} $stateParams\n * @param {any} $state\n * @param {Common.QmcLanguageService} lng\n * @param {*} userService\n * @param {Common.QmcPermissionService} permissionService\n *\n * @memberof HolidayListController\n */\n function HolidayListController(holidayService, $qui, $scope, $sce, $stateParams, $state, lng, userService, permissionService, $location) {\n var _this = this;\n this.holidayService = holidayService;\n this.$qui = $qui;\n this.$scope = $scope;\n this.$sce = $sce;\n this.$stateParams = $stateParams;\n this.$state = $state;\n this.lng = lng;\n this.userService = userService;\n this.permissionService = permissionService;\n this.$location = $location;\n this.ui = new Holiday.UserInterface();\n this.allowTableExport = false;\n this.storageName = 'Holiday_' + $('#session').data().userId;\n this.initModal = 'init';\n this.validation = {\n isLoading: false,\n errors: [],\n warnings: [],\n hours: Number,\n days: Number\n };\n this.permissions = { standard: undefined, special: undefined, approved: undefined, document: undefined, documentSpecial: undefined };\n this.formDisabled = true;\n this.callbacks = { onNew: function () { return _this.getData(); }, onEdit: function () { return _this.getData(); }, onDelete: function () { return _this.getData(); } };\n this.approvementMap = [];\n this.data = [];\n $qui.init($qui.getSectionColor($location.path()), function () {\n $qui.anonAvatar();\n $qui.bindEvents();\n $qui.navToggle();\n });\n this.contingentDate = new Date();\n this.filter = {\n dateFrom: moment().startOf('year').toDate(),\n dateTo: moment().endOf('year').toDate(),\n approvement: []\n };\n if (document.getElementById(\"permissions\").getAttribute(\"holiday\").toLocaleLowerCase() !== \"true\") {\n this.forbidden = true;\n return;\n }\n this.userService.getUserSettings([\"FLS.SHOWMONTHFILTER\"]).then(function (data) {\n _this.showMonthFilter = data[0].value.toLowerCase() === \"true\";\n if (_this.showMonthFilter)\n _this.showMonthFilter = \"year\";\n });\n this.promptOptions = {\n title: \"Urlaubsantrag\",\n yesNo: true,\n icon: \"qm-icon-history2\",\n text: this.lng.translate(20000290, 'Wollen Sie den Eintrag wirklich löschen?')\n };\n this.getWv();\n this.permissionService.getPermissionsByObjectTypes([411003, 411005, 120024, 411016, 411017]).then(function (data) {\n _this.permissions.standard = data[0];\n _this.allowTableExport = data[0].print;\n _this.permissions.special = data[1];\n _this.new = _this.permissions.special.new || _this.permissions.standard.new;\n _this.modify = _this.permissions.special.modify || _this.permissions.standard.modify || _this.new;\n _this.delete = _this.permissions.special.delete || _this.permissions.standard.delete || _this.new;\n _this.permissions.approved = data[2];\n _this.permissions.document = data[3];\n _this.permissions.documentSpecial = data[4];\n _this.$qui.getTableAutoload(_this.userService).then(function (ltd) {\n _this.shouldLoadTableData = ltd;\n if (_this.shouldLoadTableData) {\n _this.getData();\n }\n else {\n _this.getHolidayInfo();\n }\n });\n _this.init();\n if (_this.$stateParams.id) {\n _this.editHoliday({ objectId: _this.$stateParams.id });\n }\n });\n this.ui.listTable.filter.model = this.tableFilter;\n }\n ////////////////////////// DISPLAYLOGIC //////////////////////////\n /**\n * Init the filter an the form, with default values\n *\n * @private\n *\n * @memberof HolidayListController\n */\n HolidayListController.prototype.init = function () {\n var _this = this;\n this.$scope.$watch('vm.filter.dateFrom', function (newValue, oldValue) {\n if (newValue === oldValue)\n return;\n _this.getData();\n });\n this.$scope.$watch('vm.filter.dateTo', function (newValue, oldValue) {\n if (newValue === oldValue || _this.showMonthFilter)\n return;\n _this.getData();\n });\n this.$scope.$watch('vm.filter', function (newValue, oldValue) {\n if (newValue === oldValue)\n return;\n localStorage.setItem(_this.storageName, JSON.stringify(_this.filter));\n _this.ui.listTable.data = _this.getFilteredData(_this.data);\n _this.$qui.functionWaiter(\"ui.createTable\", _this);\n }, true);\n this.$scope.$watch('vm.contingentDate', function (newValue, oldValue) {\n if (!newValue || !oldValue || newValue === oldValue)\n return;\n _this.getHolidayInfo();\n });\n };\n /**\n * edit an existing holiday\n *\n * @private\n * @param {IHolidayListItem} form\n *\n * @memberof HolidayListController\n */\n HolidayListController.prototype.editHoliday = function (form) {\n this.calls.edit(form.objectId);\n };\n HolidayListController.prototype.getData = function () {\n this.getHolidayList();\n this.getHolidayInfo();\n };\n HolidayListController.prototype.allowDataSetEdit = function (data) {\n return (data.approvedId === QMC.Common.Constants.APPROVAL_PENDING_ID || this.permissions.approved.openFile) && data.permissions.modify;\n };\n HolidayListController.prototype.getFilteredData = function (data) {\n var _this = this;\n var temp = data;\n if (this.filter.approvement.length)\n temp = temp.filter(function (x) { return _this.filter.approvement.some(function (y) { return y === x.approvedId; }); });\n return temp;\n };\n ////////////////////////// SERVICECALLS //////////////////////////\n /**\n * get the holiday info\n *\n * @private\n *\n * @memberof HolidayListController\n */\n HolidayListController.prototype.getHolidayInfo = function () {\n var _this = this;\n this.infoLoad = true;\n var date = moment(this.contingentDate).endOf('day').toDate();\n //if (date.getFullYear() !== this.filter.dateFrom.getFullYear())\n // date = moment(date).year(this.filter.dateFrom.getFullYear()).endOf('year').toDate();\n this.holidayService.getHolidayInfo(date).then(function (data) {\n _this.infoLoad = false;\n if (!data) {\n _this.holidayInfo = undefined;\n return;\n }\n data.contingentString = '';\n if (data.calculatedFrom && data.calculatedUntil)\n data.contingentString = moment(data.calculatedFrom).format('DD.MM.yyyy') + \" - \" + moment(data.calculatedUntil).format('DD.MM.yyyy');\n if (!data.calculatedFrom && data.calculatedUntil)\n data.contingentString = _this.lng.translate(20000048, 'bis') + \" \" + moment(data.calculatedUntil).format('DD.MM.yyyy');\n if (data.calculatedFrom && !data.calculatedUntil)\n data.contingentString = _this.lng.translate(20000067, 'von') + \" \" + moment(data.calculatedFrom).format('DD.MM.yyyy');\n _this.holidayInfo = data;\n });\n };\n /**\n * get a list of all holidays, by date range\n *\n * @private\n *\n * @memberof HolidayListController\n */\n HolidayListController.prototype.getHolidayList = function () {\n var _this = this;\n this.listLoad = true;\n var dateFrom = moment(this.filter.dateFrom).add(3, 'hours').toDate();\n var dateTo = moment(this.filter.dateTo).add(-3, 'hours').toDate();\n this.holidayService.getHolidayList(dateFrom, dateTo).then(function (data) {\n data = data.map(function (obj) {\n obj.allowEdit = _this.allowDataSetEdit(obj);\n obj.allowDelete = (obj.approvedId === QMC.Common.Constants.APPROVAL_PENDING_ID || _this.permissions.approved.openFile) && obj.permissions.delete;\n obj.viewComment = obj.approvedComment && obj.approvedComment !== \"\";\n return obj;\n });\n _this.data = data;\n _this.ui.listTable.data = _this.getFilteredData(data);\n _this.listLoad = false;\n _this.$qui.functionWaiter(\"ui.createTable\", _this);\n });\n };\n /**\n * show a modal dialog displaying the comment for a holiday entry\n *\n * @private\n * @param {IHoliday} data\n *\n * @memberof HolidayListController\n */\n HolidayListController.prototype.toggleCommentModal = function (data) {\n var _this = this;\n this.holidayService.getHoliday(data.objectId).then(function (data) {\n _this.currentHoliday = data;\n _this.currentHoliday.dateFrom = _this.$qui.createDateFromString(data.dateFrom);\n if (_this.currentHoliday.dateFrom !== (null || undefined))\n _this.currentHoliday.dateTo = _this.$qui.createDateFromString(data.dateTo);\n });\n $('#holidayComment').modal('toggle');\n };\n HolidayListController.prototype.deleteHoliday = function (item) {\n this.calls.delete(item);\n };\n HolidayListController.prototype.getWv = function () {\n var _this = this;\n this.holidayService.getHolidayWv().then(function (data) {\n // Create Filter selection\n _this.approvementMap = data.approvementWvList.map(function (x) { return ({ text: x.name, value: x.objectId }); });\n if (localStorage.getItem(_this.storageName))\n _this.filter.approvement = JSON.parse(localStorage.getItem(_this.storageName)).approvement;\n });\n };\n HolidayListController = __decorate([\n QMC.Controller('QMC.Holiday', 'HolidayListController'),\n QMC.Inject('HolidayService', '$qui', '$scope', '$sce', '$stateParams', '$state', 'QmcLanguageService', 'UserService', 'QmcPermissionService', '$location')\n ], HolidayListController);\n return HolidayListController;\n }());\n })(Holiday = QMC.Holiday || (QMC.Holiday = {}));\n})(QMC || (QMC = {}));\nvar QMC;\n(function (QMC) {\n var Holiday;\n (function (Holiday) {\n var HolidayFormDirective = /** @class */ (function () {\n function HolidayFormDirective(scope, holidayService, $qui, lng, rosterService) {\n var _this = this;\n this.scope = scope;\n this.holidayService = holidayService;\n this.$qui = $qui;\n this.lng = lng;\n this.rosterService = rosterService;\n this.ui = new Holiday.UserInterface();\n this.calcedValues = { days: 0, hours: 0 };\n this.validation = {\n isLoading: false,\n errors: [],\n warnings: []\n };\n this.pauseWatchers = false;\n this.id = '_' + Math.random().toString(36).substr(2, 9);\n this.promptOptions = {\n title: \"Urlaubsantrag\",\n yesNo: true,\n icon: \"qm-icon-history2\",\n text: this.lng.translate(20000290, 'Wollen Sie den Eintrag wirklich löschen?'),\n itemText: ''\n };\n this.$postLink = function () {\n _this.calls = {\n new: function (form) {\n _this.initForm();\n _this.formState = 'new';\n _this.lastValidation = undefined;\n _this.validation.errors = [];\n _this.validation.warnings = [];\n if (form !== 'init') {\n _this.form = form !== null && form !== void 0 ? form : _this.form;\n if (_this.wvList && _this.wvList.holidayTypeWvList.length === 2)\n _this.form.holidayTypeId = _this.wvList.holidayTypeWvList[1].objectId;\n _this.calls.open();\n _this.ui.createForm();\n }\n _this.disabledIntern = !_this.permissions.standard.new;\n },\n edit: function (form, start, end) {\n var _a, _b;\n _this.formState = 'edit';\n _this.lastValidation = undefined;\n _this.validation.errors = [];\n _this.validation.warnings = [];\n if (typeof form === 'string') {\n _this.loadHoliday(form, start, end);\n }\n else {\n _this.form = form !== null && form !== void 0 ? form : _this.form;\n _this.pauseWatchers = true;\n _this.formatForm();\n setTimeout(function () { _this.pauseWatchers = false; _this.validate(); }, 50);\n _this.disabledIntern = !((((_a = _this.form) === null || _a === void 0 ? void 0 : _a.approvedId) === QMC.Common.Constants.APPROVAL_PENDING_ID || _this.permissions.approved.openFile) && ((_b = _this.form) === null || _b === void 0 ? void 0 : _b.permissions.modify));\n if (start)\n _this.form.dateFrom = start;\n if (end)\n _this.form.dateTo = end;\n _this.ui.createForm();\n }\n _this.calls.open();\n },\n delete: function (form) { _this.deleteHoliday(form !== null && form !== void 0 ? form : _this.form); },\n open: function () {\n $('#' + _this.id).modal('show');\n _this.$qui.waitForEl('#standardTabButton', function () {\n $('#standardTabButton').click();\n });\n },\n close: function () { $('#' + _this.id).modal('hide'); }\n };\n };\n this.$onDestroy = function () {\n $('#' + _this.id).remove();\n };\n this.init();\n this.events();\n }\n HolidayFormDirective.prototype.getModalCaption = function () {\n var _a;\n var result = this.lng.translate(20020011, 'Urlaubsantrag');\n if ((_a = this.reference) === null || _a === void 0 ? void 0 : _a.name)\n result = result + \" (\" + this.reference.name + \")\";\n return result;\n };\n HolidayFormDirective.prototype.formatForm = function () {\n if (this.form) {\n this.form.approved = this.getApprovementWvItem(this.form.approvedId);\n this.form.isManualDays = this.form.accountingTypeFlag === 0;\n this.form.isManualHours = this.form.accountingTypeFlag === 1;\n this.form.creditWorkAsHoliday = this.form.accountingTypeFlag === 2;\n this.form.permissionApproved = this.permissions.approved.openFile;\n }\n };\n HolidayFormDirective.prototype.events = function () {\n var _this = this;\n this.scope.$watch('vm.form.holidayTypeId', function (newValue, oldValue) {\n var _a;\n if (_this.pauseWatchers || newValue === oldValue || !((_a = _this.form) === null || _a === void 0 ? void 0 : _a.holidayTypeId) || _this.form.holidayTypeId === QMC.Common.Constants.GUID_EMPTY)\n return;\n if (!_this.wvList || !_this.wvList.holidayTypeWvList)\n return;\n var wvs = _this.wvList.holidayTypeWvList;\n if (_this.form.isSpecialHoliday && _this.wvList.specialHolidayTypeWvList)\n wvs = _this.wvList.specialHolidayTypeWvList;\n //get integervalue\n for (var _i = 0, wvs_1 = wvs; _i < wvs_1.length; _i++) {\n var item = wvs_1[_i];\n if (_this.form.holidayTypeId === item.objectId) {\n // convert argb color in wv to html color\n _this.form.color = '#' + ('000000' + (item.value & 0xFFFFFF).toString(16)).slice(-6);\n }\n }\n });\n this.scope.$watch('vm.form.isManualDays', function (newValue) {\n if (_this.pauseWatchers || !newValue || !_this.form)\n return;\n _this.form.isManualHours = false;\n _this.form.creditWorkAsHoliday = false;\n _this.form.accountingTypeFlag = 0;\n });\n this.scope.$watch('vm.form.isManualHours', function (newValue) {\n if (_this.pauseWatchers || !newValue || !_this.form)\n return;\n _this.form.isManualDays = false;\n _this.form.creditWorkAsHoliday = false;\n _this.form.accountingTypeFlag = 1;\n });\n this.scope.$watch('vm.form.creditWorkAsHoliday', function (newValue) {\n if (_this.pauseWatchers || !newValue || !_this.form)\n return;\n _this.form.isManualDays = false;\n _this.form.isManualHours = false;\n _this.form.accountingTypeFlag = 2;\n });\n this.scope.$watch('vm.form.dateFrom', function (newValue, oldValue) {\n if (!newValue)\n return;\n if (moment(newValue).format(\"L\") === moment(oldValue).format(\"L\"))\n return;\n _this.getCalcDayValues();\n });\n this.scope.$watch('vm.form.dateTo', function (newValue, oldValue) {\n if (!newValue)\n return;\n if (moment(newValue).format(\"L\") === moment(oldValue).format(\"L\"))\n return;\n _this.getCalcDayValues();\n });\n this.scope.$watch('vm.form', function (newValue, oldValue) {\n if (!newValue || JSON.stringify(newValue) === JSON.stringify(oldValue))\n return;\n if (!_this.pauseWatchers) {\n // make sure accountingType checkboxes work as Radio Boxes and set the flag\n if (!newValue.isManualDays && !newValue.isManualHours && !newValue.creditWorkAsHoliday) { // there must always be one\n if (oldValue) {\n _this.form.isManualDays = oldValue.isManualDays;\n _this.form.isManualHours = oldValue.isManualHours;\n _this.form.creditWorkAsHoliday = oldValue.creditWorkAsHoliday;\n }\n else\n _this.form.isManualDays = true;\n }\n if (_this.form.isManualDays) {\n _this.form.accountingTypeFlag = 0;\n _this.form.amountOfHours = 0;\n if (!(oldValue === null || oldValue === void 0 ? void 0 : oldValue.isManualDays))\n _this.form.amountOfDays = _this.calcedValues.days;\n }\n if (_this.form.isManualHours) {\n _this.form.accountingTypeFlag = 1;\n _this.form.amountOfDays = 0;\n if (!(oldValue === null || oldValue === void 0 ? void 0 : oldValue.isManualHours))\n _this.form.amountOfHours = _this.calcedValues.hours;\n }\n if (_this.form.creditWorkAsHoliday) {\n _this.form.amountOfDays = 0;\n _this.form.amountOfHours = 0;\n _this.form.accountingTypeFlag = 2;\n }\n // validate\n _this.validate();\n }\n // set approved string\n _this.form.approved = _this.getApprovementWvItem(_this.form.approvedId);\n }, true);\n };\n ;\n HolidayFormDirective.prototype.init = function () {\n var _this = this;\n this.holidayService.getHolidayLock().then(function (lockDate) {\n _this.lockDate = _this.$qui.createDateFromString(lockDate);\n });\n this.holidayService.getHolidayWv().then(function (data) {\n _this.wvList = data;\n _this.approvementList = _this.ui.select(data.approvementWvList, { value: 'objectId', text: 'name' });\n });\n };\n HolidayFormDirective.prototype.initForm = function () {\n var _a, _b, _c, _d;\n this.form = {\n comment: \"\",\n dateFrom: moment().startOf('day').toDate(),\n dateTo: moment().endOf('day').toDate(),\n holidayTypeId: null,\n isSpecialHoliday: false,\n color: '#0000FF',\n amountOfDays: 1,\n amountOfHours: 0,\n accountingTypeFlag: 0,\n isManualDays: true,\n isManualHours: false,\n creditWorkAsHoliday: false,\n permissionApproved: (_b = (_a = this.permissions) === null || _a === void 0 ? void 0 : _a.approved) === null || _b === void 0 ? void 0 : _b.openFile,\n approvedId: ((_d = (_c = this.permissions) === null || _c === void 0 ? void 0 : _c.approved) === null || _d === void 0 ? void 0 : _d.openFile) ? QMC.Common.Constants.APPROVAL_APRROVED_ID : QMC.Common.Constants.APPROVAL_PENDING_ID\n };\n };\n HolidayFormDirective.prototype.getHolidayCategoryList = function () {\n var _a, _b, _c, _d, _e, _f, _g, _h;\n var result = [];\n if (((_b = (_a = this.permissions) === null || _a === void 0 ? void 0 : _a.standard) === null || _b === void 0 ? void 0 : _b.new) || ((_d = (_c = this.permissions) === null || _c === void 0 ? void 0 : _c.standard) === null || _d === void 0 ? void 0 : _d.modify))\n result.push({ value: false, text: this.lng.translate(20020000, \"Urlaub\") });\n if (((_f = (_e = this.permissions) === null || _e === void 0 ? void 0 : _e.special) === null || _f === void 0 ? void 0 : _f.new) || ((_h = (_g = this.permissions) === null || _g === void 0 ? void 0 : _g.special) === null || _h === void 0 ? void 0 : _h.modify))\n result.push({ value: true, text: this.lng.translate(20020019, \"Sonderurlaub\") });\n return result;\n };\n HolidayFormDirective.prototype.getHolidayTypeList = function () {\n return this.wvList.holidayTypeWvList.map(function (obj) { return ({ value: obj.objectId, text: obj.name }); });\n };\n HolidayFormDirective.prototype.getSpecialHolidayTypeList = function () {\n return this.wvList.specialHolidayTypeWvList.map(function (obj) { return ({ value: obj.objectId, text: obj.name }); });\n };\n HolidayFormDirective.prototype.getApprovementWvList = function () {\n return this.wvList.approvementWvList.map(function (obj) { return ({ value: obj.objectId, text: obj.name }); });\n };\n HolidayFormDirective.prototype.getApprovementWvItem = function (approvedId) {\n var _a, _b, _c, _d;\n var result = (_b = (_a = this.wvList) === null || _a === void 0 ? void 0 : _a.approvementWvList) === null || _b === void 0 ? void 0 : _b.filter(function (item) { return item.objectId === approvedId; });\n return result ? (_d = (_c = result[0]) === null || _c === void 0 ? void 0 : _c.name) !== null && _d !== void 0 ? _d : '' : '';\n };\n HolidayFormDirective.prototype.getCheckboxStatus = function () {\n if (this.form.isManualDays)\n return 0;\n if (this.form.isManualHours)\n return 1;\n if (this.form.creditWorkAsHoliday)\n return 2;\n };\n HolidayFormDirective.prototype.getCalcDayValues = function () {\n var _this = this;\n var _a, _b;\n this.holidayService.calculateDayValues(this.form.dateFrom, this.form.dateTo, (_b = (_a = this.reference) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : $('#session').data().personId).then(function (data) {\n _this.calcedValues.days = data.calcDays;\n _this.calcedValues.hours = 0;\n if (_this.form.isManualDays)\n _this.form.amountOfDays = _this.calcedValues.days;\n if (_this.form.isManualHours)\n _this.form.amountOfDays = _this.calcedValues.hours;\n });\n };\n HolidayFormDirective.prototype.validate = function () {\n var _this = this;\n var _a, _b;\n if (!this.form)\n return;\n var validationForm = {\n dateFrom: this.form.dateFrom,\n dateTo: this.form.dateTo,\n holidayId: this.form.objectId ? this.form.objectId : QMC.Common.Constants.GUID_EMPTY,\n approvementTypeId: this.form.approvedId ? this.form.approvedId : QMC.Common.Constants.GUID_EMPTY,\n isSpecialHoliday: this.form.isSpecialHoliday,\n holidayTypeId: this.form.holidayTypeId,\n calculationType: this.getCheckboxStatus(),\n randomId: Math.random().toString(36).substr(2, 9),\n dayCount: this.form.isManualDays ? this.form.amountOfDays : 0,\n hourCount: this.form.isManualHours ? this.form.amountOfHours : 0,\n referenceId: (_b = (_a = this.reference) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : $('#session').data().personId\n };\n if (this.lastValidation) {\n var last = angular.copy(this.lastValidation);\n var current = angular.copy(validationForm);\n delete last.randomId;\n delete current.randomId;\n if (JSON.stringify(last) === JSON.stringify(current))\n return;\n }\n this.lastValidation = validationForm;\n this.validation = {\n warnings: [],\n errors: [],\n isLoading: true\n };\n var loading = 0;\n var finallyAction = function () {\n loading++;\n _this.validation.isLoading = loading < 1;\n };\n var catchAction = function () {\n _this.validation.errors = [_this.lng.translate(0, 'Es konnte nicht komplett validiert werden')];\n };\n var getAction = function (data) {\n if (_this.lastValidation.randomId === validationForm.randomId) {\n if (data.warnings.length > 0)\n _this.validation.warnings = _this.validation.warnings.concat(data.warnings);\n if (data.errors.length > 0)\n _this.validation.errors = _this.validation.errors.concat(data.errors);\n }\n };\n this.holidayService.checkForWarningsAndErrors(validationForm).then(function (data) {\n getAction(data);\n if (_this.lastValidation.randomId === validationForm.randomId && _this.lockDate && validationForm.dateFrom > _this.lockDate) {\n _this.validation.warnings.push(_this.lng.translate(20020012, \"Sie können keinen Urlaubsantrag erstellen, der nach dem Sperrdatum liegt.\"));\n }\n }).catch(catchAction).finally(finallyAction);\n //this.rosterService.validateNonService({\n // entryId: this.form.objectId,\n // referenceId: this.reference?.id ?? $('#session').data().personId,\n // reference: this.reference?.name ?? '',\n // dateFrom: this.form.dateFrom,\n // dateTo: this.form.dateTo,\n // serviceTypeId: '8bdf6a27-a881-4b4b-8abf-3bedb5156df2',\n // serviceSubTypeId: this.form.serviceSubTypeId,\n // randomId: Math.random().toString(36).substring(2, 11)\n //}).then((data) => getAction(data)).catch(catchAction).finally(finallyAction);\n };\n HolidayFormDirective.prototype.loadHoliday = function (id, start, end) {\n var _this = this;\n this.loading = true;\n this.holidayService.getHoliday(id).then(function (data) {\n _this.pauseWatchers = true;\n data.dateFrom = _this.$qui.createDateFromString(data.dateFrom);\n if (data.dateTo)\n data.dateTo = _this.$qui.createDateFromString(data.dateTo);\n _this.form = data;\n _this.formatForm();\n _this.disabledIntern = !((data.approvedId === QMC.Common.Constants.APPROVAL_PENDING_ID || _this.permissions.approved.openFile) && data.permissions.modify);\n if (start)\n _this.form.dateFrom = start;\n if (end)\n _this.form.dateTo = end;\n setTimeout(function () {\n _this.pauseWatchers = false;\n _this.loading = false;\n _this.validate();\n }, 50);\n _this.ui.createForm();\n });\n };\n HolidayFormDirective.prototype.putHoliday = function (form) {\n var _this = this;\n if (this.validation.errors.length === 0 && !this.validation.isLoading) {\n this.holidayService.putHoliday(form.id, form).then(function () {\n var _a;\n _this.ui.notify(_this.ui.successNote);\n if ((_a = _this.callbacks()) === null || _a === void 0 ? void 0 : _a.onEdit)\n _this.callbacks().onEdit(true);\n _this.calls.close();\n }).catch(function () {\n var _a;\n if ((_a = _this.callbacks()) === null || _a === void 0 ? void 0 : _a.onEdit)\n _this.callbacks().onEdit(false);\n });\n }\n };\n HolidayFormDirective.prototype.deleteHoliday = function (item) {\n var _this = this;\n this.promptOptions.itemText = item.caption + \" (\" + moment(item.dateFrom).format(\"DD.MM.YYYY\") + \" - \" + moment(item.dateTo).format(\"DD.MM.YYYY\") + \")\";\n QMC.Common.Utilities.confirm(this.promptOptions, function (data) {\n if (data) {\n _this.holidayService.deleteHoliday(item.id).then(function () {\n var _a;\n _this.ui.notify(_this.ui.deleteNote);\n _this.calls.close();\n if ((_a = _this.callbacks()) === null || _a === void 0 ? void 0 : _a.onDelete)\n _this.callbacks().onDelete(true);\n }).catch(function () {\n var _a;\n if ((_a = _this.callbacks()) === null || _a === void 0 ? void 0 : _a.onDelete)\n _this.callbacks().onDelete(false);\n });\n }\n }, \"#\" + this.id + \"-prompt\");\n };\n HolidayFormDirective.prototype.addHoliday = function (form) {\n var _this = this;\n var _a, _b;\n if (this.validation.errors.length === 0 && !this.validation.isLoading) {\n this.form.referenceId = (_b = (_a = this.reference) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : $('#session').data().personId;\n this.holidayService.postHoliday(form).then(function () {\n var _a;\n _this.ui.notify(_this.ui.successNote);\n if ((_a = _this.callbacks()) === null || _a === void 0 ? void 0 : _a.onNew)\n _this.callbacks().onNew(true);\n _this.calls.close();\n }).catch(function () {\n var _a;\n if ((_a = _this.callbacks()) === null || _a === void 0 ? void 0 : _a.onNew)\n _this.callbacks().onNew(false);\n });\n }\n };\n return HolidayFormDirective;\n }());\n angular.module('QMC.Holiday').component('qmHolidayForm', {\n templateUrl: './Holiday/FormDirective',\n controller: ['$scope', 'HolidayService', '$qui', 'QmcLanguageService', 'RosterService', HolidayFormDirective],\n controllerAs: 'vm',\n bindings: {\n form: '=?',\n permissions: '=',\n calls: '=',\n callbacks: '&',\n reference: '=',\n }\n });\n })(Holiday = QMC.Holiday || (QMC.Holiday = {}));\n})(QMC || (QMC = {}));\n\n//# sourceMappingURL=../../maps/Holiday/qmc.holiday.js.map\n"],"names":["QMC","__extends","this","extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__","constructor","prototype","create","__decorate","decorators","target","key","desc","c","arguments","length","r","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","routes","$locationProvider","$stateProvider","$urlRouterProvider","qmcBase","html5Mode","enabled","requireBase","state","url","templateUrl","controller","controllerAs","resolve","data","console","log","angular","module","config","$inject","HttpProvider","Holiday","configureHttpProvider","$httpProvider","defaults","headers","get","_super","HolidayService","$http","$q","_this","call","modulePath","Common","BaseService","getHolidayWv","getItem","getHoliday","id","getHolidayInfo","date","moment","startOf","toDate","getHolidayLock","getHolidayList","dateFrom","dateTo","postHoliday","post","then","putHoliday","put","deleteHoliday","delete","calculateDayValues","referenceId","checkForWarningsAndErrors","Service","Inject","UserInterface","apply","showMonthFilter","listTable","defaultSort","sortReverse","filter","model","table","Farbe","label","dType","Bezeichnung","lngTag","Genehmigungsstatus","Länge","Datum von","Datum bis","Art","Aktionen","icon","click","openModal","tooltip","events","hide","permission","card","avatar","text","subtext","prefix","buttons","targetModal","holidayForm","form","placeholder","type","required","dataSource","style","class","updateDataSource","validate","message","messageTag","hideExpression","wvId","wvListData","wvValueType","disabled","displayDateTo","dateToRequired","maxLength","actions","HolidayListController","holidayService","$qui","$scope","$sce","$stateParams","$state","lng","userService","permissionService","$location","ui","allowTableExport","storageName","$","userId","initModal","validation","isLoading","errors","warnings","hours","Number","days","permissions","standard","undefined","special","approved","document","documentSpecial","formDisabled","callbacks","onNew","getData","onEdit","onDelete","approvementMap","init","getSectionColor","path","anonAvatar","bindEvents","navToggle","contingentDate","Date","endOf","approvement","getElementById","getAttribute","toLocaleLowerCase","forbidden","getUserSettings","value","toLowerCase","promptOptions","title","yesNo","translate","getWv","getPermissionsByObjectTypes","print","new","modify","getTableAutoload","ltd","shouldLoadTableData","editHoliday","objectId","tableFilter","$watch","newValue","oldValue","localStorage","setItem","JSON","stringify","getFilteredData","functionWaiter","calls","edit","allowDataSetEdit","approvedId","Constants","APPROVAL_PENDING_ID","openFile","temp","x","some","y","infoLoad","contingentString","calculatedFrom","calculatedUntil","format","holidayInfo","listLoad","add","map","obj","allowEdit","allowDelete","viewComment","approvedComment","toggleCommentModal","currentHoliday","createDateFromString","modal","item","approvementWvList","name","parse","Controller","HolidayFormDirective","scope","rosterService","calcedValues","pauseWatchers","Math","random","toString","substr","itemText","$postLink","initForm","formState","lastValidation","wvList","holidayTypeWvList","holidayTypeId","open","createForm","disabledIntern","start","end","loadHoliday","formatForm","setTimeout","_a","_b","waitForEl","close","$onDestroy","remove","getModalCaption","result","reference","getApprovementWvItem","isManualDays","accountingTypeFlag","isManualHours","creditWorkAsHoliday","permissionApproved","GUID_EMPTY","wvs","_i","wvs_1","isSpecialHoliday","specialHolidayTypeWvList","color","slice","getCalcDayValues","amountOfHours","amountOfDays","lockDate","approvementList","select","_d","comment","_c","APPROVAL_APRROVED_ID","getHolidayCategoryList","_h","push","_f","_e","_g","getHolidayTypeList","getSpecialHolidayTypeList","getApprovementWvList","getCheckboxStatus","personId","calcDays","validationForm","holidayId","approvementTypeId","calculationType","randomId","dayCount","hourCount","last","copy","current","loading","concat","catch","finally","notify","successNote","caption","Utilities","confirm","deleteNote","addHoliday","component","bindings"],"mappings":"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"}