{"version":3,"file":"../js/qmc.home.min.js","sources":["qmc.home.min.js"],"sourcesContent":["var __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};\nvar __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})();\n(function () {\n angular.module('QMC.Home', ['QMC.Aufgaben', 'QMC.Fachleistung', 'ui.router']);\n})();\nvar QMC;\n(function (QMC) {\n var Home;\n (function (Home) {\n var HomeController = /** @class */ (function () {\n /**\n * QMC.Home.HomeController\n * @constructor\n * @param $timeout\n * @param $qui\n * @param fachleistungService\n * @param $scope\n * @param terminService\n * @param lng\n */\n function HomeController($location, $timeout, $qui, fachleistungService, $scope, terminService, userService, lng, permissionService, $state) {\n var _this = this;\n this.$location = $location;\n this.$timeout = $timeout;\n this.$qui = $qui;\n this.fachleistungService = fachleistungService;\n this.$scope = $scope;\n this.terminService = terminService;\n this.userService = userService;\n this.lng = lng;\n this.permissionService = permissionService;\n this.$state = $state;\n this.canModifyReportText = false;\n this.showPlaned = false;\n this.showRaw = false;\n this.birthdayWidget = false;\n this.awayWidget = false;\n this.appointmentWidget = true;\n $qui.init($qui.getSectionColor($location.path()), function () {\n $qui.anonAvatar();\n $qui.bindEvents();\n _this.events();\n $(\".help-block\").parent(\"div\").attr(\"style\", \"\");\n });\n userService.getUserSettings([\"LANDINGPAGE\", \"GLOBAL.LANDINGPAGE\", \"FLS.CASE.DAYSTOHIGHLIGHT\", \"FLS.CONTINGENT.DONTSHOWINDRECT\", \"LANDINGPAGE.LOGO\", \"BIRTHDAY.WIDGET.ACTIVE\", \"AWAY.WIDGET.ACTIVE\", \"APPOINTMENT.WIDGET.ACTIVE\", \"FLS.PLANEDRAWDAYS\", \"FLS.PLANEDDAYSFUTURE\"], true).then(function (data) {\n _this.$qui.waitForEl('#navLogo', function () {\n var landingpage = '';\n if (data[1].value !== (undefined || null) && data[1].value !== \"\") {\n landingpage = data[1].value;\n }\n if (data[0].value !== (undefined || null) && data[0].value !== \"\") {\n landingpage = data[0].value;\n }\n if (landingpage.length > 0 && landingpage !== 'dashboard') {\n if (data[4].value.toLowerCase() === 'true') {\n $('#navLogo').attr('href', '#' + landingpage);\n localStorage.setItem('logo', '#' + landingpage);\n }\n else {\n localStorage.removeItem('logo');\n $('#navLogo').attr('href', '#');\n }\n if (window.sessionStorage.getItem(\"RecentlyLoggedIn\") !== \"true\") {\n var path = window.location.href.substring(0, window.location.href.indexOf('#'));\n window.location.href = path + '#' + landingpage;\n window.sessionStorage.setItem(\"RecentlyLoggedIn\", \"true\");\n }\n }\n else {\n localStorage.removeItem('logo');\n $('#navLogo').attr('href', '#');\n }\n _this.birthdayWidget = data[5].value.toLowerCase() === 'true';\n _this.awayWidget = data[6].value.toLowerCase() === 'true';\n _this.appointmentWidget = data[7].value.toLowerCase() === 'true' || data[7].value.length === 0;\n _this.userService.getGlobalSettings(['FLS.DONTSHOWRAWIFEMPTYDOCUSALLOWED', 'FLS.ALLOWEMPTYREPORTS']).then(function (globalData) {\n var days = parseInt(data[8].value);\n if (isNaN(days) || days === null || days === undefined)\n days = QMC.Common.UserSettingConstantsAndDefaults.PLANEDRAWDAYS;\n var daysFuture = parseInt(data[9].value);\n if (isNaN(daysFuture) || daysFuture === null || daysFuture === undefined)\n daysFuture = QMC.Common.UserSettingConstantsAndDefaults.PLANEDDAYSFUTURE;\n if (globalData[0].value.toLocaleLowerCase() === 'true')\n _this.showRaw = daysFuture >= 0 && globalData[1].value.toLocaleLowerCase() === 'true';\n _this.showPlaned = days >= 0;\n _this.showRaw = daysFuture >= 0;\n if (_this.showPlaned || _this.showRaw)\n _this.GetPlanedAndRawDocumentations(days, daysFuture);\n });\n });\n window.sessionStorage.setItem(\"RecentlyLoggedIn\", \"true\");\n //Get the permission to modify reporttext\n _this.permissionService.getPermissionsByObjectTypes([230020]).then(function (data) {\n _this.canModifyReportText = data[0].modify; //is user allowed to change reporttext (in german: Berichtstexte )\n });\n });\n }\n /////////////// DISPLAY LOGIC ///////////////\n HomeController.prototype.GetMiniWidgetClasses = function () {\n // count active widgets\n var count = 0;\n if (this.canModifyReportText && this.showRaw) // raw docu\n count++;\n if (this.showPlaned) // planed docu\n count++;\n if (this.birthdayWidget) // birthdays\n count++;\n if (this.awayWidget) // away\n count++;\n var even = Math.floor(12 / count);\n return \"col-md-\" + even + \" col-sm-\" + this.getSmMiniWidgetColSpan(even);\n };\n HomeController.prototype.getSmMiniWidgetColSpan = function (span) {\n span = span * 2;\n if (span < 12 && span > 6)\n span = 6;\n return span;\n };\n /**\n * Sidebar Event\n * @description Toggle between table and card view\n */\n HomeController.prototype.events = function () {\n if (window.innerWidth > 1299) {\n this.affixAgent();\n }\n };\n /**\n * checkForDatetime\n * @description Check for the current daytime, like morning ...\n */\n HomeController.prototype.checkForDatetime = function () {\n var date = new Date();\n var h = date.getHours();\n if ((h >= 0) && (h <= 10))\n return this.lng.translate(20000040, 'Morgen
');\n if ((h > 10) && (h <= 17))\n return this.lng.translate(20000041, 'Tag');\n else\n return this.lng.translate(20000042, 'Abend');\n };\n /**\n * sayHello\n * @description Send a notification to the view\n */\n HomeController.prototype.sayHello = function () {\n var dayTime = this.checkForDatetime();\n var greet = this.lng.translate(20000043, \"Guten\") + \" \" + dayTime;\n var note = {\n title: $('#session').data().fullName,\n message: greet,\n icon: 'qm-icon-bell',\n status: 'default',\n timer: 3000,\n delay: 1500\n };\n if (!$('body').hasClass('greeted')) {\n $('body').addClass('greeted');\n this.$qui.notify(note);\n }\n };\n /**\n * affixAgent\n * @description\n * @param null\n */\n HomeController.prototype.affixAgent = function () {\n var width = $(\"#rightbar\").width() - 1;\n $(\"#rightbar\").css(\"right\", 0);\n $(\"#rightbar\").width(width);\n $('#rightbar').affix({\n offset: {\n top: 166\n }\n });\n $('#rightbar')\n .on('affix-top.bs.affix', function () {\n $(\"#rightbar\").css(\"right\", 0);\n $(\"#rightbar\").width(width);\n }).on('affix.bs.affix', function () {\n if ($(\"#rightbar .scroller\").height() > (window.innerHeight - 166))\n $(\"#rightbar .scroller\").css(\"overflow-y\", \"auto\").css(\"max-height\", (window.innerHeight - 166));\n });\n };\n /**\n * currentFilter\n * @description Check if the current filter is enabled\n * @param entry\n */\n HomeController.prototype.currentfilter = function (entry) {\n console.log(entry);\n var filterActive = $('#filterActive').val();\n if (filterActive === 'true')\n return entry.isCurrent;\n else\n return true;\n };\n /////////////// SERVICE FUNCTIONS ///////////////\n /**\n * GetPlanedDocumentations\n * @description Gets all planed but not docuemented documentations in the past x days.\n */\n HomeController.prototype.GetPlanedAndRawDocumentations = function (days, daysFuture) {\n var _this = this;\n if (this.showPlaned)\n this.fachleistungService.getPlannedDocumentations(days, daysFuture).then(function (data) {\n _this.planedDocumentations = data;\n });\n if (this.showRaw)\n this.fachleistungService.getRawDocumentations(days).then(function (data) {\n _this.rawDocumentations = data;\n });\n };\n HomeController.prototype.setStandardNavTemp = function () {\n this.userService.getNavigation(QMC.Common.Constants.DEFAULT_NAV_ID).then(function (data) {\n window.createNav(data);\n //window.localStorage.setItem(\"NAVIGATION\", Common.Constants.DEFAULT_NAV_ID);\n setTimeout(function () {\n $(\"#side-menu\").metisMenu('dispose');\n $('#side-menu').metisMenu();\n }, 250);\n });\n };\n HomeController = __decorate([\n QMC.Controller('QMC.Home', 'HomeController'),\n QMC.Inject('$location', '$timeout', '$qui', 'FachleistungService', '$scope', 'TerminService', 'UserService', 'QmcLanguageService', 'QmcPermissionService', '$state')\n ], HomeController);\n return HomeController;\n }());\n Home.HomeController = HomeController;\n })(Home = QMC.Home || (QMC.Home = {}));\n})(QMC || (QMC = {}));\nvar QMC;\n(function (QMC) {\n var Home;\n (function (Home) {\n var NavConfigurationController = /** @class */ (function () {\n /////////////////////////// Constructor //////////////////////////\n function NavConfigurationController($qui, $scope, $state, userService, lng, $timeout) {\n var _this = this;\n this.$qui = $qui;\n this.$scope = $scope;\n this.$state = $state;\n this.userService = userService;\n this.lng = lng;\n this.$timeout = $timeout;\n this.isSavingNav = false;\n this.newContainerName = \"\";\n this.qmIcons = [];\n this.selectedIcon = \"\";\n this.notSupported = false;\n this.selectedFileNames = [];\n this.uploads = [];\n this.importName = \"\";\n $qui.init(\"einstellungen\", function () {\n $qui.anonAvatar();\n $qui.bindEvents();\n _this.events();\n });\n if (this.checkIe()) {\n this.notSupported = true;\n return;\n }\n var styleSheets = document.styleSheets;\n for (var i = 0; i < styleSheets.length; i++)\n for (var j = 0; j < styleSheets[i].cssRules.length; j++)\n if (styleSheets[i].cssRules[j].selectorText != (null || undefined) && styleSheets[i].cssRules[j].selectorText.startsWith(\".qm-icon-\")) {\n var iconName = styleSheets[i].cssRules[j].selectorText;\n this.qmIcons.push(iconName.substr(1, iconName.indexOf(\":\") - 1));\n }\n this.init();\n this.loading = true;\n this.getAvailableNavs();\n }\n ////////////////////////// DISPLAYLOGIC //////////////////////////\n NavConfigurationController.prototype.init = function () {\n var _this = this;\n this.userService.getUserSettings([\"NAVIGATION.WEB\"]).then(function (data) {\n _this.selectedNavId = _this.getSettingValue(\"NAVIGATION.WEB\", QMC.Common.Constants.DEFAULT_NAV_ID, data).toLowerCase();\n _this.loadNav();\n _this.loading = false;\n });\n this.navColors = window.bodyColorClasses.split(' ');\n //remove login\n this.navColors.shift();\n };\n NavConfigurationController.prototype.events = function () {\n var _this = this;\n this.$scope.$watch('vm.selectedNavId', function () { _this.loadNav(); });\n this.$scope.$watch('vm.selectedFileNames', function () { _this.stripSuffix(); }, true);\n };\n NavConfigurationController.prototype.favToggle = function (id) {\n if (this.checkIfFav(id))\n this.currentNav.subNav = this.removeFromNavigationRecursive(id, this.currentNav.subNav).list;\n else\n this.currentNav.subNav.push(this.convertNavigationPageItemToNavigationItem(this.getNavItemById(id), this.getNavColorByTargetIdRecursive(id, this.currentNav.mainNav)));\n this.createPreview();\n };\n NavConfigurationController.prototype.checkIfFav = function (id) {\n for (var i = 0; i < this.currentNav.subNav.length; i++)\n if (this.currentNav.subNav[i].navigationItemId === id)\n return true;\n return false;\n };\n NavConfigurationController.prototype.toggleIcon = function (icon) {\n this.selectedIcon = icon;\n };\n NavConfigurationController.prototype.createNewContainer = function () {\n $('#createContainerModal').modal('hide');\n var isSecondLevel = false;\n //Check if we got a secound level container\n if (this.newContainerParentId !== \"configPreview\") {\n var found = false;\n for (var i = 0; i < this.currentNav.mainNav.length; i++) {\n if (this.currentNav.mainNav[i].navigationItemId === this.newContainerParentId) {\n found = true;\n break;\n }\n }\n isSecondLevel = !found;\n }\n //createContainer Object\n var container = {\n color: this.newContainerColor,\n icon: this.selectedIcon,\n link: \"\",\n navigationItemId: QMC.Common.Constants.GUID_EMPTY,\n subItems: [{\n color: this.newContainerColor,\n icon: \"\",\n link: \"placeholder\",\n navigationItemId: this.generateGuid(),\n subItems: [],\n title: \"\",\n type: 0\n }],\n title: this.newContainerName,\n type: isSecondLevel ? 2 : 1\n };\n this.addItemToNav(this.newContainerParentId, container);\n this.createPreview();\n this.$qui.scopeApply(this.$scope);\n };\n ////////////////////////////// DnD ///////////////////////////////\n NavConfigurationController.prototype.initDnd = function () {\n if (this.currentNav.isFix)\n return;\n var dndDropTargets = document.querySelectorAll('.drop-target');\n var dndDraggables = document.querySelectorAll('[draggable=true]');\n for (var i = 0; i < dndDropTargets.length; i++) {\n if (!dndDropTargets[i].classList.contains(\"setupDT\")) {\n dndDropTargets[i].classList.add(\"setupDT\");\n dndDropTargets[i].addEventListener('dragenter', this.handleNavElementDragEnter, false);\n dndDropTargets[i].addEventListener('dragleave', this.handleNavElementDragLeave, false);\n dndDropTargets[i].addEventListener('dragover', this.handleNavElementDragOver, false);\n dndDropTargets[i].addEventListener('drop', this.handleNavElementDrop.bind(this, this), false);\n }\n }\n for (var i = 0; i < dndDraggables.length; i++) {\n if (!dndDraggables[i].classList.contains(\"setupDR\")) {\n dndDraggables[i].classList.add(\"setupDR\");\n dndDraggables[i].addEventListener('dragstart', this.handleDragStart, false);\n dndDraggables[i].addEventListener('dragend', this.handleNavElementDragEnd, false);\n }\n }\n };\n NavConfigurationController.prototype.handleDragStart = function (e) {\n console.log(\"drag start\", e);\n e.target.style.opacity = '0.4'; // e.target is the source node.\n e.dataTransfer.setData('id', e.target.id);\n e.dataTransfer.setData('type', e.target.type);\n e.dataTransfer.effectAllowed = 'move';\n if (e.target.classList.contains(\"nav-element\")) {\n e.dataTransfer.setData(\"source\", \"candidate\");\n e.dataTransfer.setData(\"candidate\", \"\");\n }\n if (e.target.classList.contains(\"nav-container-container\")) {\n e.dataTransfer.setData(\"source\", \"container\");\n e.dataTransfer.setData(\"container\", \"\");\n }\n if (e.target.classList.contains(\"nav-config-item\")) {\n e.dataTransfer.setData(\"source\", \"navigation\");\n e.dataTransfer.setData(\"navigation\", \"\");\n }\n };\n NavConfigurationController.prototype.handleNavElementDragOver = function (e) {\n //console.log(\"drag over\", e);\n if (e.preventDefault)\n e.preventDefault(); // Necessary. Allows us to drop.\n return false;\n };\n NavConfigurationController.prototype.handleNavElementDragEnter = function (e) {\n //console.log(\"drag enter\", e);\n // if the target has no id its properly not our real target but a child of it. so we iterate its parents till we find one with an id\n var target = e.target;\n while (target.id == (null || undefined || \"\")) {\n target = target.parentNode;\n }\n var isValidTarget = false;\n console.log(\"checking if target is valid for drop\", target, e.dataTransfer.types);\n //if (e.dataTransfer.types.includes(\"navigation\"))\n isValidTarget =\n (e.dataTransfer.types.includes(\"navigation\") && (target.id === \"configPreview\" || target.id === \"navElementContainer\" || target.id === \"navContainerContainer\" || target.classList.contains(\"nav-container-container\") || target.classList.contains(\"nav-config-item\") || target.classList.contains(\"nav-element\"))) ||\n (e.dataTransfer.types.includes(\"candidate\") && (target.id === \"configPreview\" || target.id === \"navElementContainer\" || target.classList.contains(\"nav-config-item\") || target.classList.contains(\"nav-element\"))) ||\n (e.dataTransfer.types.includes(\"container\") && (target.id === \"configPreview\" || target.classList.contains(\"nav-config-item\")));\n e.preventDefault();\n if (target.classList.contains(\"drop-target\") && isValidTarget) {\n target.style.borderBottom = \"thick solid orange\";\n e.dataTransfer.dropEffect = \"move\";\n }\n else {\n e.dataTransfer.dropEffect = \"none\";\n }\n };\n NavConfigurationController.prototype.handleNavElementDragLeave = function (e) {\n //console.log(\"drag leave\", e);\n e.preventDefault();\n e.target.style.borderBottom = \"unset\";\n };\n NavConfigurationController.prototype.handleNavElementDragEnd = function (e) {\n //console.log(\"drag end\", e);\n e.preventDefault();\n var dndDropTargets = document.querySelectorAll('.drop-target');\n for (var i = 0; i < dndDropTargets.length; i++) {\n dndDropTargets[i].style.borderBottom = \"unset\";\n e.target.style.opacity = \"unset\";\n }\n };\n NavConfigurationController.prototype.handleNavElementDrop = function (_scope, e) {\n e.preventDefault();\n e.stopPropagation();\n var dropId = e.dataTransfer.getData('id');\n var dropType = e.dataTransfer.getData('type');\n var dropSource = e.dataTransfer.getData('source');\n // if the target has no id its properly not our real target but a child of it. so we iterate its parents till we find one with an id\n var target = e.target;\n while (target.id == (null || undefined || \"\")) {\n target = target.parentNode;\n }\n console.log(\"drop data ID:\", dropId, \"TYPE:\", dropType, \"SOURCE:\", dropSource, \"DROP TARGET:\", e.target, \"PROPOSED TARGET\", target);\n //move from navigation to candidate list\n if (dropType == 0 && dropSource == \"navigation\" && (target.id === \"navElementContainer\" || target.parentNode.id === \"navElementContainer\")) {\n console.log(\"dropped nav item into candidate list\");\n // remove item form navigation and add it to candidate list\n this.removeFromNavigation(dropId);\n //than push element to candidate array\n this.addItemToCandidates(dropId);\n }\n //move from navigation to container list\n if ((dropType == 1 || dropType == 2) && dropSource == \"navigation\" && (target.classList.contains(\"nav-container-container\") || target.id == \"navContainerContainer\")) {\n console.log(\"dropped container from nav to container list\");\n //readd items to candidate list\n this.addSubItemsToCandidates(this.getItemFromNavRecursive(dropId, this.currentNav.mainNav).subItems);\n // remove container and its childs form navigation\n this.removeFromNavigation(dropId);\n }\n //move from candidate list to nav\n if (dropType == 0 && dropSource == \"candidate\" && (target.id === \"configPreview\" || target.classList.contains(\"nav-config-item\"))) {\n console.log(\"dropped item from candidate to nav\", target.tagName.toLowerCase());\n //if we're dropping to the container put the item first, else place it after the target\n this.addItemToNav(target.id, this.convertNavigationPageItemToNavigationItem(this.getNavItemById(dropId), \"login\"));\n //remove item from candidate list\n this.removeItemFromCandidate(dropId);\n }\n //move item or container inside the nav\n if (dropSource == \"navigation\" && target.classList.contains(\"nav-config-item\") && (dropId != target.id) && !this.checkIfIdChildInNav(dropId, target.id)) {\n console.log(\"dropped item from nav to the nav (hopefully in another place, otherwise this would be completely pointless)\");\n this.addItemToNav(target.id, this.removeFromNavigation(dropId));\n // if something was a subcontainer before, it now becomes type 1\n this.fixContainerTypes(this.currentNav.mainNav, false);\n }\n //add new container\n if (dropSource == \"container\" && (target.id === \"configPreview\" || target.classList.contains(\"nav-config-item\"))) {\n this.newContainerParentId = target.id;\n this.newContainerColor = dropId;\n this.newContainerName = \"\";\n this.selectedIcon = \"\";\n $('#createContainerModal').modal('show');\n }\n // fix favs\n var itemsToToggle = [];\n for (var i = 0; i < this.currentNav.subNav.length; i++) {\n //let favItem = this.currentNav.subNav[i];\n var navItem = this.getItemFromNavRecursive(this.currentNav.subNav[i].navigationItemId, this.currentNav.mainNav);\n this.currentNav.subNav[i].type = 3;\n if (navItem == (null || undefined))\n itemsToToggle.push(this.currentNav.subNav[i].navigationItemId);\n //this.favToggle(favItem.navigationItemId);\n else\n this.currentNav.subNav[i].color = navItem.color;\n }\n for (var i = 0; i < itemsToToggle.length; i++)\n this.favToggle(itemsToToggle[i]);\n this.createPreview();\n this.$qui.scopeApply(this.$scope);\n };\n ///////////////////////// DnD Helpers ////////////////////////////\n NavConfigurationController.prototype.addItemToNav = function (targetId, itemToAdd) {\n if (targetId === \"configPreview\")\n this.currentNav.mainNav.unshift(itemToAdd);\n else\n this.currentNav.mainNav = this.addItemToNavRecursive(targetId, this.currentNav.mainNav, itemToAdd);\n };\n NavConfigurationController.prototype.addItemToNavRecursive = function (targetId, navArray, itemToAdd) {\n //find target in current nav\n for (var i = 0; i < navArray.length; i++) {\n if (navArray[i].navigationItemId === targetId) {\n var index = i;\n if (navArray.length > i)\n index++;\n if (navArray[i].link === \"placeholder\")\n navArray.splice(index - 1, 1, itemToAdd);\n else\n navArray.splice(index, 0, itemToAdd);\n return navArray;\n }\n else if (navArray[i].subItems != (null || undefined)) {\n var copiedItemToAdd = angular.copy(itemToAdd);\n copiedItemToAdd.color = navArray[i].color;\n navArray[i].subItems = this.addItemToNavRecursive(targetId, navArray[i].subItems, copiedItemToAdd);\n }\n }\n return navArray;\n };\n NavConfigurationController.prototype.getNavItemById = function (id) {\n for (var i = 0; i < this.navigationItems.length; i++)\n if (this.navigationItems[i].id === id)\n return this.navigationItems[i];\n return null;\n };\n NavConfigurationController.prototype.convertNavigationPageItemToNavigationItem = function (item, color) {\n return {\n color: color,\n icon: item.icon,\n link: item.link,\n navigationItemId: item.id,\n subItems: [],\n title: this.lng.translate(item.languageTag, item.title),\n type: 0\n };\n };\n NavConfigurationController.prototype.getNavColorByTargetIdRecursive = function (id, array) {\n var result = null;\n for (var i = 0; i < array.length; i++) {\n if (array[i].navigationItemId === id)\n return array[i].color;\n if (array[i].subItems != (null || undefined))\n result = this.getNavColorByTargetIdRecursive(id, array[i].subItems);\n if (result)\n return result;\n }\n return result;\n };\n NavConfigurationController.prototype.addSubItemsToCandidates = function (array) {\n for (var i = 0; i < array.length; i++)\n if (array[i].subItems == (null || undefined) || array[i].subItems.length === 0)\n this.addItemToCandidates(array[i].navigationItemId);\n else\n this.addSubItemsToCandidates(array[i].subItems);\n };\n NavConfigurationController.prototype.addItemToCandidates = function (id) {\n var item;\n for (var i = 0; i < this.navigationItems.length; i++)\n if (this.navigationItems[i].id == id) {\n item = this.navigationItems[i];\n break;\n }\n if (item !== (null || undefined))\n this.navigationCandidates.push(item);\n this.navigationCandidates.sort(function (a, b) {\n var textA = a.title.toUpperCase();\n var textB = b.title.toUpperCase();\n return (textA < textB) ? -1 : (textA > textB) ? 1 : 0;\n });\n this.$qui.scopeApply(this.$scope);\n };\n NavConfigurationController.prototype.removeFromNavigation = function (id) {\n var result = this.removeFromNavigationRecursive(id, this.currentNav.mainNav);\n this.currentNav.mainNav = result.list;\n return result.item;\n };\n NavConfigurationController.prototype.removeFromNavigationRecursive = function (id, itemList) {\n var item;\n // try to find item by id\n for (var i = 0; i < itemList.length; i++) {\n if (itemList[i].navigationItemId === id) {\n item = itemList[i];\n var list = itemList.filter(function (obj) {\n return obj.navigationItemId !== id;\n });\n return { list: list, item: item };\n }\n else if (itemList[i].subItems != (null || undefined)) {\n var recursiveResult = this.removeFromNavigationRecursive(id, itemList[i].subItems);\n itemList[i].subItems = recursiveResult.list;\n if (recursiveResult.item != (null || undefined))\n return { list: itemList, item: recursiveResult.item };\n }\n }\n return { list: itemList, item: item };\n };\n NavConfigurationController.prototype.removeItemFromCandidate = function (id) {\n for (var i = 0; i < this.navigationCandidates.length; i++) {\n if (this.navigationCandidates[i].id === id) {\n var spliceReturn = this.navigationCandidates.splice(i, 1);\n }\n }\n };\n //////////////////////// CREATE ELEMENTS /////////////////////////\n NavConfigurationController.prototype.createPreview = function () {\n var _this = this;\n var previewUl = document.getElementById('configPreview');\n var favArea = document.getElementById('favoriteConfig');\n // wait till preview is ready\n if (previewUl !== null && previewUl !== undefined) {\n // remove current preview\n while (previewUl.firstChild) {\n previewUl.removeChild(previewUl.firstChild);\n }\n while (favArea.firstChild) {\n favArea.removeChild(favArea.firstChild);\n }\n this.createPreviewForSubItems(previewUl, this.currentNav.mainNav);\n this.createSubNav(favArea, this.currentNav.subNav);\n //add this to make sure the background box is big enough (dirty little cheat)\n var placeholder = document.createElement(\"div\");\n placeholder.setAttribute(\"style\", \"display: table; width: 100%;\");\n favArea.appendChild(placeholder);\n this.initDnd();\n return;\n }\n setTimeout(function () { _this.createPreview(); }, 100);\n };\n NavConfigurationController.prototype.createPreviewForSubItems = function (parentUl, items, is2ndLvl) {\n if (is2ndLvl === void 0) { is2ndLvl = false; }\n for (var i = 0; i < items.length; i++) {\n switch (items[i].type) {\n case 1:\n // first level container\n this.create1stLvlNavContainer(parentUl, items[i]);\n break;\n case 2:\n // second level container\n this.create2ndLvlNavContainer(parentUl, items[i]);\n break;\n case 0:\n default:\n // link\n this.createNavItem(parentUl, items[i], is2ndLvl);\n break;\n }\n }\n };\n NavConfigurationController.prototype.createNavItem = function (parentUl, item, is2ndLvl) {\n if (is2ndLvl === void 0) { is2ndLvl = false; }\n var li = document.createElement(\"li\");\n var spanFav = document.createElement(\"span\");\n var imageFav = document.createElement(\"i\");\n if (item.link !== \"placeholder\")\n if (this.checkIfFav(item.navigationItemId))\n imageFav.setAttribute(\"class\", \"fa fa-star qm-nav-config-fav-button\");\n else\n imageFav.setAttribute(\"class\", \"fa fa-star-o qm-nav-config-fav-button\");\n if (!this.currentNav.isFix)\n imageFav.onclick = function () { this.favToggle(item.navigationItemId); }.bind(this, this);\n spanFav.appendChild(imageFav);\n li.appendChild(spanFav);\n if (!is2ndLvl) {\n var span = document.createElement(\"span\");\n var spanImage = document.createElement(\"span\");\n var image = document.createElement(\"i\");\n image.setAttribute(\"class\", item.icon);\n spanImage.appendChild(image);\n li.appendChild(spanImage);\n li.appendChild(span);\n span.appendChild(document.createTextNode(item.title));\n }\n else {\n li.appendChild(document.createTextNode(item.title));\n }\n li.setAttribute(\"draggable\", \"true\");\n li.setAttribute(\"class\", \"nav-config-item drop-target\");\n li.setAttribute(\"id\", item.navigationItemId);\n li.setAttribute(\"type\", \"0\");\n parentUl.appendChild(li);\n // remove item from element list\n this.navigationCandidates = this.navigationCandidates.filter(function (obj) {\n return obj.id !== item.navigationItemId;\n });\n };\n NavConfigurationController.prototype.create1stLvlNavContainer = function (parent, item) {\n var li = document.createElement(\"li\");\n li.setAttribute(\"class\", \"nav-config-item drop-target qm-nav-config-colored-\" + item.color);\n var containerId = this.generateGuid();\n li.setAttribute(\"id\", containerId);\n item.navigationItemId = containerId;\n var imageSpan = document.createElement(\"span\");\n var image = document.createElement(\"i\");\n image.setAttribute(\"class\", item.icon);\n var span = document.createElement(\"span\");\n span.appendChild(document.createTextNode(item.title));\n imageSpan.appendChild(image);\n li.appendChild(imageSpan);\n li.appendChild(span);\n var ul = document.createElement(\"ul\");\n ul.setAttribute(\"class\", \"nav-config-item qm-nav-config-colored-ul-\" + item.color);\n li.setAttribute(\"type\", \"1\");\n li.appendChild(ul);\n parent.appendChild(li);\n li.setAttribute(\"draggable\", \"true\");\n this.createPreviewForSubItems(ul, item.subItems);\n };\n NavConfigurationController.prototype.create2ndLvlNavContainer = function (parent, item) {\n var li = document.createElement(\"li\");\n var containerId = this.generateGuid();\n li.setAttribute(\"id\", containerId);\n item.navigationItemId = containerId;\n var spanImage = document.createElement(\"span\");\n spanImage.setAttribute(\"style\", \"margin-left: 36px;\");\n var image = document.createElement(\"i\");\n image.setAttribute(\"class\", item.icon);\n var span = document.createElement(\"span\");\n span.appendChild(document.createTextNode(item.title));\n var arrow = document.createElement(\"span\");\n arrow.setAttribute(\"class\", \"fa arrow pull-right\");\n spanImage.appendChild(image);\n li.appendChild(spanImage);\n li.appendChild(span);\n li.appendChild(arrow);\n var ul = document.createElement(\"ul\");\n li.setAttribute(\"type\", \"2\");\n li.appendChild(ul);\n parent.appendChild(li);\n li.setAttribute(\"draggable\", \"true\");\n li.setAttribute(\"class\", \"nav-config-item drop-target\");\n ul.setAttribute(\"draggable\", \"true\");\n ul.setAttribute(\"class\", \"nav-config-item drop-target\");\n this.createPreviewForSubItems(ul, item.subItems, true);\n };\n NavConfigurationController.prototype.createSubNav = function (parent, items) {\n for (var i = 0; i < items.length; i++) {\n var item = items[i];\n var itemContainer = document.createElement(\"div\");\n itemContainer.setAttribute(\"class\", \"nav-item-\" + i);\n itemContainer.setAttribute(\"id\", \"nav-item-\" + i);\n var div = document.createElement(\"div\");\n div.setAttribute(\"class\", \"desktop qm-nav-config-fav nav-fav-\" + item.color);\n var iconSpan = document.createElement(\"span\");\n iconSpan.setAttribute(\"class\", \"qm-tab \" + item.icon);\n div.appendChild(iconSpan);\n var textSpan = document.createElement(\"span\");\n textSpan.appendChild(document.createTextNode(item.title));\n div.appendChild(textSpan);\n itemContainer.appendChild(div);\n parent.appendChild(itemContainer);\n }\n };\n NavConfigurationController.prototype.checkIfIdChildInNav = function (parentId, childId) {\n var parent = this.getItemFromNavRecursive(parentId, this.currentNav.mainNav);\n if (parent.subItems == (null || undefined))\n return false;\n var child = this.getItemFromNavRecursive(childId, parent.subItems);\n return child != (null || undefined);\n };\n //////////////////////// SERVICEFUNCTION /////////////////////////\n NavConfigurationController.prototype.getSettingValue = function (key, defaultValue, settings) {\n return $.grep(settings, function (e) { return e.key === key; })[0].value === \"\" ? defaultValue : $.grep(settings, function (e) { return e.key === key; })[0].value;\n };\n NavConfigurationController.prototype.swap = function (inputArray, index_A, index_B) {\n var temp = inputArray[index_A];\n inputArray[index_A] = inputArray[index_B];\n inputArray[index_B] = temp;\n return inputArray;\n };\n NavConfigurationController.prototype.generateGuid = function () {\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\n var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);\n return v.toString(16);\n });\n };\n NavConfigurationController.prototype.getItemFromNavRecursive = function (id, list) {\n var result;\n for (var i = 0; i < list.length; i++) {\n if (list[i].navigationItemId == id) {\n result = list[i];\n break;\n }\n else if (list[i].subItems != (null || undefined) && result == (null || undefined))\n result = this.getItemFromNavRecursive(id, list[i].subItems);\n }\n return result;\n };\n NavConfigurationController.prototype.fixContainerTypes = function (list, isSub, color) {\n if (color === void 0) { color = \"login\"; }\n for (var i = 0; i < list.length; i++) {\n if (list[i].type == 1 && isSub)\n list[i].type = 2;\n if (list[i].type == 2 && !isSub)\n list[i].type = 1;\n if (list[i].type == 0)\n list[i].color = color;\n if (list[i].subItems != (null || undefined))\n this.fixContainerTypes(list[i].subItems, true, list[i].color);\n }\n };\n ///////////////////////// Immport/Exprt //////////////////////////\n NavConfigurationController.prototype.exportNav = function () {\n // get navi name\n var name = \"navigation\";\n for (var i = 0; i < this.navs.length; i++) {\n if (this.navs[i].id === this.selectedNavId) {\n name = this.navs[i].caption;\n break;\n }\n }\n var element = document.createElement('a');\n element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(JSON.stringify({\n mainNav: this.currentNav.mainNav,\n subNav: this.currentNav.subNav\n })));\n element.setAttribute('download', name + \".webnav\");\n element.style.display = 'none';\n document.body.appendChild(element);\n element.click();\n document.body.removeChild(element);\n };\n NavConfigurationController.prototype.openImportModal = function () {\n $('#importNavModal').modal('show');\n this.openFileSelector();\n };\n NavConfigurationController.prototype.openFileSelector = function () {\n this.selectedFileNames = [];\n this.uploads = [];\n var fileSelector = angular.element('#fileselect');\n fileSelector.click();\n if (this.checkIe())\n for (var file in fileSelector[0].files)\n this.selectedFileNames.push(fileSelector[0].files[file].name);\n };\n NavConfigurationController.prototype.stripSuffix = function () {\n if (this.selectedFileNames.length === 0 || this.selectedFileNames[0].indexOf(\".webnav\") < 1)\n return;\n this.importName = this.selectedFileNames[0].substring(0, this.selectedFileNames[0].indexOf(\".webnav\"));\n };\n NavConfigurationController.prototype.checkIe = function () {\n var ua = window.navigator.userAgent;\n var msie = ua.indexOf('MSIE ');\n if (msie > 0) {\n // IE 10 or older => return version number\n return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\n }\n var trident = ua.indexOf('Trident/');\n if (trident > 0) {\n // IE 11 => return version number\n var rv = ua.indexOf('rv:');\n return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\n }\n var edge = ua.indexOf('Edge/');\n if (edge > 0) {\n // Edge (IE 12+) => return version number\n return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);\n }\n // other browser\n return false;\n };\n NavConfigurationController.prototype.setFile = function () {\n var _this = this;\n if (this.uploads.length === 0)\n return;\n this.loading = true;\n $('#importNavModal').modal('hide');\n // file input creates automatically a base64 including mimetype, we only need the base64 part\n // we don't use basic atob for it has problems with utf\n var base64 = this.b64DecodeUnicode(this.uploads[0].substring(this.uploads[0].indexOf(\"base64\") + 7, this.uploads[0].length));\n var imported = JSON.parse(base64);\n this.userService.postNewNavigation({ caption: this.importName, mainNav: imported.mainNav, subNav: imported.subNav }).then(function (data) {\n _this.getAvailableNavs();\n _this.selectedNavId = data.createdObjectId;\n _this.loadNav();\n }).finally(function () {\n _this.loading = false;\n });\n };\n NavConfigurationController.prototype.b64DecodeUnicode = function (str) {\n // Going backwards: from bytestream, to percent-encoding, to original string.\n return decodeURIComponent(atob(str).split('').map(function (c) {\n return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);\n }).join(''));\n };\n ////////////////////////// SERVICECALLS //////////////////////////\n NavConfigurationController.prototype.loadNav = function () {\n var _this = this;\n this.loadingNav = true;\n if (this.currentNav != undefined)\n this.currentNav.isFix = false;\n this.userService.getNavigationItems().then(function (data) {\n for (var i = 0; i < data.length; i++)\n data[i].title = _this.lng.translate(data[i].languageTag, data[i].title);\n _this.navigationItems = data;\n _this.navigationCandidates = angular.copy(data);\n _this.userService.getNavigation(_this.selectedNavId).then(function (data) {\n if (data.mainNav == (null || undefined))\n data.mainNav = [];\n if (data.subNav == (null || undefined))\n data.subNav = [];\n _this.currentNav = data;\n _this.loadingNav = false;\n _this.createPreview();\n });\n });\n };\n NavConfigurationController.prototype.getAvailableNavs = function () {\n var _this = this;\n this.userService.getAvailableNavigations().then(function (data) {\n _this.navs = data;\n for (var i = 0; i < _this.navs.length; i++)\n if (_this.navs[i].isFix)\n _this.navs[i].groupName = _this.lng.translate(20000226, \"Fix\");\n else\n _this.navs[i].groupName = _this.lng.translate(20000227, \"Editierbar\");\n _this.navsMap = _this.navs.map(function (x) { return ({ text: x.caption, value: x.id, group: x.groupName }); });\n });\n };\n NavConfigurationController.prototype.createNewNav = function () {\n var _this = this;\n this.loading = true;\n this.userService.postNewNavigation({ caption: this.newNavName, mainNav: [], subNav: [] }).then(function (data) {\n $('#createNewNavModal').modal('hide');\n _this.getAvailableNavs();\n _this.selectedNavId = data.createdObjectId;\n _this.loadNav();\n }).finally(function () {\n _this.loading = false;\n });\n };\n NavConfigurationController.prototype.copyNav = function () {\n var _this = this;\n this.loading = true;\n this.userService.postNewNavigation({ caption: this.newNavName, mainNav: this.currentNav.mainNav, subNav: this.currentNav.subNav }).then(function (data) {\n $('#copyNavModal').modal('hide');\n _this.getAvailableNavs();\n _this.selectedNavId = data.createdObjectId;\n _this.loadNav();\n }).finally(function () {\n _this.loading = false;\n });\n };\n NavConfigurationController.prototype.saveNav = function () {\n var _this = this;\n if (this.currentNav.isFix) {\n return;\n }\n //fix first level color\n for (var i = 0; i < this.currentNav.mainNav.length; i++)\n if (this.currentNav.mainNav[i].type === 0)\n this.currentNav.mainNav[i].color = \"login\";\n console.log(\"saving\", this.selectedNavId, this.currentNav);\n this.isSavingNav = true;\n this.userService.putNavigation(this.selectedNavId, { mainNav: this.currentNav.mainNav, subNav: this.currentNav.subNav }).then(function (data) {\n console.log(\"updated\", data);\n _this.$qui.notify(_this.$qui.successNote);\n _this.isSavingNav = false;\n });\n };\n NavConfigurationController.prototype.deleteNav = function () {\n var _this = this;\n this.loading = true;\n this.userService.deleteNavigation(this.selectedNavId).then(function (data) {\n console.log(\"deleted\", data);\n _this.getAvailableNavs();\n _this.userService.getUserSettings([\"NAVIGATION.WEB\"]).then(function (data) {\n _this.selectedNavId = _this.getSettingValue(\"NAVIGATION.WEB\", QMC.Common.Constants.DEFAULT_NAV_ID, data);\n _this.loadNav();\n _this.loading = false;\n }).finally(function () {\n _this.loading = false;\n });\n });\n };\n NavConfigurationController.prototype.setNav = function () {\n var _this = this;\n var settings = {\n settings: [{ key: \"NAVIGATION.WEB\", value: this.selectedNavId }]\n };\n if (!this.currentNav.isFix) {\n this.saveNav();\n }\n this.loadingNav = true;\n this.userService.setUserSettings(settings).then(function (data) {\n _this.reloadNav();\n });\n };\n NavConfigurationController.prototype.reloadNav = function () {\n var _this = this;\n if (this.isSavingNav)\n setTimeout(function () { _this.reloadNav(); }, 250);\n else {\n this.userService.getNavigation(this.selectedNavId).then(function (data) {\n _this.loadingNav = false;\n window.createNav(data);\n window.localStorage.setItem(\"NAVIGATION\", JSON.stringify(data));\n setTimeout(function () {\n $(\"#side-menu\").metisMenu('dispose');\n $('#side-menu').metisMenu();\n }, 250);\n });\n }\n };\n NavConfigurationController = __decorate([\n QMC.Controller('QMC.Home', 'NavConfigurationController'),\n QMC.Inject('$qui', '$scope', '$state', 'UserService', 'QmcLanguageService', '$timeout')\n ], NavConfigurationController);\n return NavConfigurationController;\n }());\n Home.NavConfigurationController = NavConfigurationController;\n })(Home = QMC.Home || (QMC.Home = {}));\n})(QMC || (QMC = {}));\nvar QMC;\n(function (QMC) {\n var Home;\n (function (Home) {\n var UserService = /** @class */ (function (_super) {\n __extends(UserService, _super);\n function UserService($http, $q) {\n var _this = _super.call(this, $http, $q) || this;\n _this.$http = $http;\n _this.$q = $q;\n return _this;\n }\n UserService.prototype.putNewPassword = function (currentPassword, newPassword) {\n var data = {\n id: null,\n objectId: null,\n NewPassword: newPassword,\n CurrentPassword: currentPassword\n };\n return _super.prototype.put.call(this, '/User/Password', data).then(function (data) {\n return data;\n });\n };\n UserService.prototype.getCheckPasswordRules = function (newPassword) {\n return _super.prototype.post.call(this, '/User/CheckPasswordRules/', { Password: newPassword }).then(function (data) {\n return data;\n });\n };\n UserService.prototype.getVersionInfo = function () {\n return _super.prototype.get.call(this, '/Info/build/version').then(function (info) { return info; });\n };\n UserService.prototype.deleteSession = function () {\n return _super.prototype.delete.call(this, '/session').then(function (info) { return info; });\n };\n UserService.prototype.updateSession = function () {\n return _super.prototype.put.call(this, '/session/qmc', null).then(function (data) {\n return data;\n });\n };\n UserService.prototype.getUserUpdates = function () {\n return _super.prototype.get.call(this, '/session/UserUpdates').then(function (data) {\n return data;\n });\n };\n UserService.prototype.getUserSettings = function (keys, webvalue) {\n if (webvalue === void 0) { webvalue = true; }\n return this.get('/Settings', { keys: keys, webvalue: webvalue, global: false }, function (data) {\n return data;\n });\n };\n UserService.prototype.getGlobalSettings = function (keys, webvalue) {\n if (webvalue === void 0) { webvalue = true; }\n return this.get('/Settings', { keys: keys, webvalue: webvalue, global: true }, function (data) {\n return data;\n });\n };\n UserService.prototype.setUserSettings = function (data, webValue) {\n if (webValue === void 0) { webValue = true; }\n return this.putParameter('/Settings', { webValue: webValue, global: false }, data).then(function (data) {\n return data;\n });\n };\n UserService.prototype.setGlobalSettings = function (data, webValue) {\n if (webValue === void 0) { webValue = true; }\n return this.putParameter('/Settings', { webValue: webValue, global: true }, data).then(function (data) {\n return data;\n });\n };\n UserService.prototype.getStates = function () {\n return _super.prototype.get.call(this, '/States', {}).then(function (data) {\n return data;\n });\n };\n UserService.prototype.getFederalStates = function (stateId) {\n return _super.prototype.get.call(this, '/FederalStates/' + stateId, {}).then(function (data) {\n return data;\n });\n };\n UserService.prototype.getFederalStateAssignments = function (isHoliday) {\n return _super.prototype.get.call(this, '/FederalStateAssignment', { isHoliday: isHoliday }).then(function (data) {\n return data;\n });\n };\n UserService.prototype.putFederalStateAssignments = function (list) {\n return _super.prototype.put.call(this, '/FederalStateAssignment', list).then(function (data) {\n return data;\n });\n };\n UserService.prototype.getSettingWvModel = function () {\n return _super.prototype.getItem.call(this, '/Settings/WvModel', {}, function (data) {\n return data;\n });\n };\n // NAVIGATION\n UserService.prototype.getAvailableNavigations = function () {\n return _super.prototype.get.call(this, '/Navigation/List', {}, function (data) {\n return data;\n });\n };\n UserService.prototype.getNavigation = function (id) {\n if (id === void 0) { id = null; }\n return _super.prototype.getItem.call(this, '/Navigation', { navId: id }, function (data) {\n return data;\n });\n };\n UserService.prototype.getNavigationItems = function () {\n return _super.prototype.get.call(this, '/Navigation/Item', {}, function (data) {\n return data;\n });\n };\n UserService.prototype.postNewNavigation = function (data) {\n return _super.prototype.post.call(this, '/Navigation', data).then(function (data) {\n return data;\n });\n };\n UserService.prototype.putNavigation = function (id, data) {\n return _super.prototype.put.call(this, '/Navigation/' + id, data).then(function (data) {\n return data;\n });\n };\n UserService.prototype.deleteNavigation = function (id) {\n return _super.prototype.delete.call(this, '/Navigation/' + id).then(function (data) {\n return data;\n });\n };\n //SETTINGS\n UserService.prototype.getCoverReportTemplates = function (objectType) {\n return _super.prototype.get.call(this, '/Reporting/Template/CoverReports/' + objectType, {}, function (data) {\n return data;\n });\n };\n UserService.prototype.getElaborativeWarningWv = function () {\n return _super.prototype.getItem.call(this, '/elaborativeWarning', null, function (data) { return data; });\n };\n //ActionLog\n UserService.prototype.getActionLogEntries = function () {\n return _super.prototype.get.call(this, '/ActionLog', { dbConnectionString: angular.element('#session').data('db-connection') }, function (data) {\n return data;\n });\n };\n UserService.prototype.postActionLogEntry = function (data) {\n return _super.prototype.post.call(this, '/ActionLog?dbConnectionString=' + angular.element('#session').data('db-connection'), data).then(function (data) {\n return data;\n });\n };\n //Survey\n UserService.prototype.getSurvey = function () {\n return _super.prototype.getItem.call(this, '/User/Survey').then(function (data) { return data; });\n };\n UserService.prototype.dismissSurvey = function (id, performed) {\n return _super.prototype.put.call(this, '/User/Survey/Dismiss/' + id, { performed: performed }).then(function (data) { return data; });\n };\n UserService.$inject = ['$http', '$q'];\n UserService = __decorate([\n QMC.Inject('$http', '$q'),\n QMC.Service('QMC.Home', 'UserService')\n ], UserService);\n return UserService;\n }(QMC.Common.BaseService));\n Home.UserService = UserService;\n })(Home = QMC.Home || (QMC.Home = {}));\n})(QMC || (QMC = {}));\n(function () {\n angular\n .module('QMC.Home')\n .service('UserService', QMC.Home.UserService);\n})();\nvar QMC;\n(function (QMC) {\n var Home;\n (function (Home) {\n var ChangePasswordController = /** @class */ (function () {\n function ChangePasswordController($qui, userService, lng) {\n this.$qui = $qui;\n this.userService = userService;\n this.lng = lng;\n this.loading = false;\n this.mustChangePassword = this.getParameterByName(\"mustChangePassword\") === \"true\";\n this.changePasswordErrorMessage = this.getParameterByName(\"errorMessage\");\n if (this.mustChangePassword) {\n $(\"#qmw-top-nav\").hide();\n $(\"#qmc-side-nav\").hide();\n $(\"#nav-toggle\").hide();\n }\n $qui.init('einstellungen', function () {\n $qui.anonAvatar();\n $qui.bindEvents();\n });\n }\n ChangePasswordController.prototype.getParameterByName = function (name) {\n var url = window.location.href;\n name = name.replace(/[\\[\\]]/g, \"\\\\$&\");\n var regex = new RegExp(\"[?&]\" + name + \"(=([^&#]*)|&|#|$)\"), results = regex.exec(url);\n if (!results)\n return null;\n if (!results[2])\n return '';\n return decodeURIComponent(results[2].replace(/\\+/g, \" \"));\n };\n ChangePasswordController.prototype.changePassword = function () {\n var _this = this;\n this.msg = \"\";\n if (this.newPassword !== this.checkPassword) {\n this.error = true;\n this.success = false;\n this.msg = this.lng.translate(21003039, 'Die Kennwörter stimmen nicht überein.');\n return;\n }\n this.userService.getCheckPasswordRules(this.newPassword).then(function (data) {\n if (data.error) {\n _this.error = true;\n _this.success = false;\n data.errorList.map(function (errorListItem) {\n if (_this.msg.length > 0) {\n _this.msg += '\\r\\n';\n }\n _this.msg += errorListItem;\n });\n return;\n }\n else {\n _this.loading = true;\n _this.userService.putNewPassword(_this.password, _this.newPassword).then(function (data) {\n _this.error = false;\n _this.success = true;\n _this.msg = _this.lng.translate(20013002, 'Das Kennwort wurde erfolgreich geändert.');\n _this.password = \"\";\n _this.newPassword = \"\";\n _this.checkPassword = \"\";\n if (_this.mustChangePassword) {\n document.getElementById('backButton').click();\n }\n _this.loading = false;\n }).catch(function (data) {\n if (data.hasOwnProperty('data'))\n data = data.data;\n console.log(data);\n _this.msg = \"\";\n if (data.hasOwnProperty('fieldErrors')) {\n _this.error = true;\n _this.success = false;\n if (data.fieldErrors.hasOwnProperty('currentPassword')) {\n data.fieldErrors.currentPassword.map(function (fieldError) { return _this.msg += fieldError + \" \"; });\n }\n if (data.fieldErrors.hasOwnProperty('newPassword')) {\n data.fieldErrors.newPassword.map(function (fieldError) { return _this.msg += fieldError + \" \"; });\n }\n }\n else {\n _this.msg = _this.lng.translate(20002047, \"Ein unerwarteter Fehler ist aufgetreten\");\n }\n _this.loading = false;\n });\n }\n });\n };\n ChangePasswordController = __decorate([\n QMC.Controller('QMC.Home', 'ChangePasswordController'),\n QMC.Inject('$qui', 'UserService', 'QmcLanguageService')\n ], ChangePasswordController);\n return ChangePasswordController;\n }());\n Home.ChangePasswordController = ChangePasswordController;\n })(Home = QMC.Home || (QMC.Home = {}));\n})(QMC || (QMC = {}));\nvar QMC;\n(function (QMC) {\n var Home;\n (function (Home) {\n var UserSettingsController = /** @class */ (function () {\n /////////////////////////// Constructor //////////////////////////\n function UserSettingsController($qui, $scope, $state, userService, lng, permissionService, terminService) {\n var _this = this;\n this.$qui = $qui;\n this.$scope = $scope;\n this.$state = $state;\n this.userService = userService;\n this.lng = lng;\n this.permissionService = permissionService;\n this.terminService = terminService;\n //////////////////////////// Variables ///////////////////////////\n /************************* GUI Variables ************************/\n this.loading = false;\n this.globalPermission = false;\n this.planedRawDays = QMC.Common.UserSettingConstantsAndDefaults.PLANEDRAWDAYS;\n this.planedDaysFuture = QMC.Common.UserSettingConstantsAndDefaults.PLANEDDAYSFUTURE;\n this.showDateToFLS = QMC.Common.UserSettingConstantsAndDefaults.SHOWDATETOFLS;\n this.showDateToAZN = QMC.Common.UserSettingConstantsAndDefaults.SHOWDATETOAZN;\n this.showMonthFilterFls = QMC.Common.UserSettingConstantsAndDefaults.SHOWMONTHFILTERFLS;\n this.signatureHideReports = QMC.Common.UserSettingConstantsAndDefaults.SIGNATUREHIDEREPORTS;\n this.flsWeekplanningShowHoliday = QMC.Common.UserSettingConstantsAndDefaults.FLSWEEKPLANNERSHOWHOLIDAY;\n this.flsWeekplanningShowVacation = true;\n this.flsWeekplanningShowPublicHoliday = true;\n this.weekPlannerEventLength = 60;\n this.weekplannerShowUnplannableCases = false;\n this.tasksFinishedPast = QMC.Common.UserSettingConstantsAndDefaults.FINISHEDTASKSDAYS;\n this.landingPage = QMC.Common.UserSettingConstantsAndDefaults.LANDINGPAGE;\n this.flsSummaryFormatted = true;\n this.shouldLoadTableData = QMC.Common.UserSettingConstantsAndDefaults.SHOULDLOADTABLEDATA;\n this.showTimeInTable = QMC.Common.UserSettingConstantsAndDefaults.SHOWTIMEINSTEADOFDECIMAL;\n this.askDroppedService = QMC.Common.UserSettingConstantsAndDefaults.ASKDROPPEDSERVICE;\n this.dontShowIndirectHours = false;\n this.flsDocuSummaryEntrys = 0;\n //private accountingBookGenerateNumber = false;\n //private accountingBookGenerateNumberOrga = false;\n this.clientCoverTemplate = QMC.Common.Constants.GUID_EMPTY;\n this.getReweNumber = false;\n this.flsCaseFilterWithDirectCarerAllocation = true;\n this.AppointmentAddCalendarOnlyUsersEmployee = false;\n this.AppointmentAddCalendarOnlyUsersClient = false;\n this.AppointmentAddCalendarOnlyUsersAuthority = false;\n this.appointmentWidget = {\n active: true,\n orga: false,\n subOrga: true,\n endOfWeek: true,\n daysToFuture: -1,\n daysToPast: 0,\n };\n this.showNewsFeed = true;\n this.logoReroute = false;\n this.birthday = {\n active: false,\n daysToFuture: 7,\n daysToPast: 0,\n clients: true,\n employees: true,\n orga: QMC.Common.Constants.GUID_EMPTY,\n subOrga: false\n };\n this.away = {\n active: false,\n daysToFuture: 7,\n daysToPast: 0,\n subOrga: true,\n holiday: true,\n disease: true\n };\n this.flsDocuSummaryPageSize = 30;\n this.daysInPast = QMC.Common.UserSettingConstantsAndDefaults.DAYSINPAST;\n this.showOnlyUnfetched = QMC.Common.UserSettingConstantsAndDefaults.SHOWONLYUNFETCHED;\n this.calendarSlotSize = 30;\n this.activateHumanize = true;\n this.humanizeHours = 24;\n this.appStates = [];\n this.institutes = [];\n this.filterText = '';\n this.federalStateList = [];\n this.federalStateAssignmentList = [];\n this.federalStateAssignmentListChanges = [];\n this.clientCoverReportTemplates = [];\n //get values from api\n this.getValues();\n this.loadingPermission = true;\n permissionService.getPermissionsByObjectTypes([870001]).then(function (data) {\n _this.globalPermission = data[0].moduleAccess;\n _this.loadingPermission = false;\n });\n $qui.init(\"einstellungen\", function () {\n $qui.anonAvatar();\n $qui.bindEvents();\n _this.events();\n });\n this.getLandingPages();\n this.getStates();\n this.getWv();\n this.getClientCoverReportTemplates();\n this.getInstitutes();\n }\n UserSettingsController.prototype.isAllowed = function (permissions, type) {\n for (var _i = 0, permissions_1 = permissions; _i < permissions_1.length; _i++) {\n var perm = permissions_1[_i];\n if (perm.objectType === type && perm.moduleAccess)\n return true;\n }\n return false;\n };\n ////////////////////////// DISPLAYLOGIC //////////////////////////\n UserSettingsController.prototype.events = function () {\n var _this = this;\n this.$scope.$watch('vm.planedRawDays', function () {\n if (_this.planedRawDays < -1)\n _this.planedRawDays = -1;\n if (_this.planedRawDays > 365)\n _this.planedRawDays = 365;\n });\n this.$scope.$watch('vm.planedDaysFuture', function () {\n if (_this.planedDaysFuture < -1)\n _this.planedDaysFuture = -1;\n if (_this.planedDaysFuture > 365)\n _this.planedDaysFuture = 365;\n });\n this.$scope.$watch('vm.tasksFinishedPast', function () {\n if (_this.tasksFinishedPast < 0)\n _this.tasksFinishedPast = 0;\n if (_this.tasksFinishedPast > 365)\n _this.tasksFinishedPast = 365;\n });\n };\n //////////////////////// SERVICEFUNCTION /////////////////////////\n UserSettingsController.prototype.getValue = function (key) {\n return $.grep(this.settings, function (e) { return e.key === key; })[0].value;\n };\n UserSettingsController.prototype.getValueWin = function (key) {\n return $.grep(this.settingsWin, function (e) { return e.key === key; })[0].value;\n };\n UserSettingsController.prototype.setValue = function (key, value) {\n $.grep(this.settings, function (e) { return e.key === key; })[0].value = value;\n };\n UserSettingsController.prototype.setValueWin = function (key, value) {\n $.grep(this.settingsWin, function (e) { return e.key === key; })[0].value = value;\n };\n UserSettingsController.prototype.convertToBool = function (input) {\n input = input.toLowerCase();\n return input === \"true\";\n };\n UserSettingsController.prototype.convertToInt = function (input, dval) {\n var val = parseInt(input);\n return !val || isNaN(val) ? dval : val;\n };\n ////////////////////////// SERVICECALLS //////////////////////////\n UserSettingsController.prototype.getValues = function () {\n var _this = this;\n this.loading = true;\n var keys = [];\n keys.push(\"AZN.SHOWDATETO\");\n keys.push(\"FLS.PLANEDRAWDAYS\");\n keys.push(\"FLS.PLANEDDAYSFUTURE\");\n keys.push(\"FLS.SIGNATURE.HIDEREPORTS\");\n keys.push(\"FLS.SHOWDATETO\");\n keys.push(\"FLS.SHOWMONTHFILTER\");\n keys.push(\"FLS.WEEKPLANNER.SHOWHOLIDAY\");\n keys.push(\"FLS.WEEKPLANNER.SHOWVACATION\");\n keys.push(\"FLS.WEEKPLANNER.SHOWPUBLICHOLIDAY\");\n keys.push(\"FLS.WEEKPLANNER.DEFAULTEVENTLENGTH\");\n keys.push(\"WEEKPLANNER.SHOWUNPLANNABLECASES\");\n keys.push(\"TASK.FINISHEDTASKSDAYS\");\n keys.push(\"LANDINGPAGE\");\n keys.push(\"FLS.SUMMARY.FORMATTED\");\n keys.push(\"GLOBAL.SHOULDLOADTABLEDATA\");\n keys.push(\"SHOWTIMEINSTEADOFDECIMAL\");\n keys.push(\"ROSTER.ASKDROPPEDSERVICE\");\n keys.push(\"FLS.CONTINGENT.DONTSHOWINDRECT\");\n keys.push(\"FLS.DOCUSUMMARYITEMS\");\n keys.push(\"FLS.SUMMARY.PAGESIZE\");\n keys.push(\"FLS.CASE.FILTERWITHDIRECTALLOCATION\");\n keys.push(\"NEWSFEED.IGNORE\");\n keys.push(\"FLS.WEEKPLANNER_ONLY_CURRENT_CASES\");\n keys.push(\"LANDINGPAGE.LOGO\");\n keys.push(\"APPOINTMENT.WIDGET.ACTIVE\");\n keys.push(\"APPOINTMENT.WIDGET.ORGA\");\n keys.push(\"APPOINTMENT.WIDGET.SUBORGA\");\n keys.push(\"APPOINTMENT.WIDGET.DAYSTOFUTURE\");\n keys.push(\"APPOINTMENT.WIDGET.DAYSTOPAST\");\n keys.push(\"BIRTHDAY.WIDGET.ACTIVE\");\n keys.push(\"BIRTHDAY.WIDGET.DAYSTOFUTURE\");\n keys.push(\"BIRTHDAY.WIDGET.DAYSTOPAST\");\n keys.push(\"BIRTHDAY.WIDGET.CLIENTS\");\n keys.push(\"BIRTHDAY.WIDGET.EMPLOYEES\");\n keys.push(\"BIRTHDAY.WIDGET.ORGA\");\n keys.push(\"BIRTHDAY.WIDGET.SUBORGA\");\n keys.push(\"AWAY.WIDGET.ACTIVE\");\n keys.push(\"AWAY.WIDGET.DAYSTOFUTURE\");\n keys.push(\"AWAY.WIDGET.DAYSTOPAST\");\n keys.push(\"AWAY.WIDGET.SUBORGA\");\n keys.push(\"AWAY.WIDGET.HOLIDAY\");\n keys.push(\"AWAY.WIDGET.DISEASE\");\n keys.push(\"CALENDAR.SLOTDURATION\");\n keys.push(\"HUMANIZETIME\");\n var keysWin = [];\n keysWin.push(\"FLS.DEFAULTCARETYPE\");\n keysWin.push(\"FLS.DEFAULTCONTACTTYPE\");\n keysWin.push(\"FLS.DEFAULTACTIVITYTYPE\");\n //keysWin.push(\"KASSENBUCH.BELEGNUMMERGENERIEREN.KLIENT\");\n //keysWin.push(\"KASSENBUCH.BELEGNUMMERGENERIEREN.ORGA\");\n keysWin.push(\"DLGREPORTINGSERVERJOBS.SHOWONLYUNFETCHED\");\n keysWin.push(\"DLGREPORTINGSERVERJOBS.DAYSINPAST\");\n keysWin.push(\"FRADECKBLATT.140000.REPORTID\");\n keysWin.push(\"KASSENBUCH.ShowFiBuDataInSearchDialog\");\n keysWin.push(\"TERMINPLAN.ONLYUSERS.120000\");\n keysWin.push(\"TERMINPLAN.ONLYUSERS.140000\");\n keysWin.push(\"TERMINPLAN.ONLYUSERS.180000\");\n this.userService.getUserSettings(keys).then(function (data) {\n _this.settings = data;\n _this.showDateToAZN = _this.getValue(\"AZN.SHOWDATETO\") === \"\" ? _this.showDateToAZN : _this.convertToBool(_this.getValue(\"AZN.SHOWDATETO\"));\n _this.planedRawDays = _this.getValue(\"FLS.PLANEDRAWDAYS\") === \"\" ? _this.planedRawDays : parseFloat(_this.getValue(\"FLS.PLANEDRAWDAYS\"));\n _this.planedDaysFuture = _this.getValue(\"FLS.PLANEDDAYSFUTURE\") === \"\" ? _this.planedDaysFuture : parseFloat(_this.getValue(\"FLS.PLANEDDAYSFUTURE\"));\n _this.signatureHideReports = _this.getValue(\"FLS.SIGNATURE.HIDEREPORTS\") === \"\" ? _this.signatureHideReports : _this.convertToBool(_this.getValue(\"FLS.SIGNATURE.HIDEREPORTS\"));\n _this.showDateToFLS = _this.getValue(\"FLS.SHOWDATETO\") === \"\" ? _this.showDateToFLS : _this.convertToBool(_this.getValue(\"FLS.SHOWDATETO\"));\n _this.showMonthFilterFls = _this.getValue(\"FLS.SHOWMONTHFILTER\") === \"\" ? _this.showMonthFilterFls : _this.convertToBool(_this.getValue(\"FLS.SHOWMONTHFILTER\"));\n _this.flsWeekplanningShowHoliday = _this.getValue(\"FLS.WEEKPLANNER.SHOWHOLIDAY\") === \"\" ? _this.flsWeekplanningShowHoliday : _this.convertToBool(_this.getValue(\"FLS.WEEKPLANNER.SHOWHOLIDAY\"));\n _this.flsWeekplanningShowVacation = _this.getValue(\"FLS.WEEKPLANNER.SHOWVACATION\") === \"\" ? _this.flsWeekplanningShowVacation : _this.convertToBool(_this.getValue(\"FLS.WEEKPLANNER.SHOWVACATION\"));\n _this.flsWeekplanningShowPublicHoliday = _this.getValue(\"FLS.WEEKPLANNER.SHOWPUBLICHOLIDAY\") === \"\" ? _this.flsWeekplanningShowPublicHoliday : _this.convertToBool(_this.getValue(\"FLS.WEEKPLANNER.SHOWPUBLICHOLIDAY\"));\n _this.weekPlannerEventLength = _this.getValue(\"FLS.WEEKPLANNER.DEFAULTEVENTLENGTH\") === \"\" ? _this.weekPlannerEventLength : parseInt(_this.getValue(\"FLS.WEEKPLANNER.DEFAULTEVENTLENGTH\"));\n _this.weekplannerShowUnplannableCases = _this.getValue(\"WEEKPLANNER.SHOWUNPLANNABLECASES\") === \"\" ? _this.weekplannerShowUnplannableCases : _this.convertToBool(_this.getValue(\"WEEKPLANNER.SHOWUNPLANNABLECASES\"));\n _this.tasksFinishedPast = _this.getValue(\"TASK.FINISHEDTASKSDAYS\") === \"\" ? _this.tasksFinishedPast : parseFloat(_this.getValue(\"TASK.FINISHEDTASKSDAYS\"));\n _this.landingPage = _this.getValue(\"LANDINGPAGE\");\n _this.flsSummaryFormatted = _this.getValue(\"FLS.SUMMARY.FORMATTED\") === \"\" ? _this.flsSummaryFormatted : _this.convertToBool(_this.getValue(\"FLS.SUMMARY.FORMATTED\"));\n _this.shouldLoadTableData = _this.getValue(\"GLOBAL.SHOULDLOADTABLEDATA\") === \"\" ? _this.shouldLoadTableData : _this.convertToBool(_this.getValue(\"GLOBAL.SHOULDLOADTABLEDATA\"));\n _this.showTimeInTable = _this.getValue(\"SHOWTIMEINSTEADOFDECIMAL\") === \"\" ? _this.showTimeInTable : _this.convertToBool(_this.getValue(\"SHOWTIMEINSTEADOFDECIMAL\"));\n _this.askDroppedService = _this.getValue(\"ROSTER.ASKDROPPEDSERVICE\") === \"\" ? _this.askDroppedService : _this.convertToBool(_this.getValue(\"ROSTER.ASKDROPPEDSERVICE\"));\n _this.dontShowIndirectHours = _this.getValue(\"FLS.CONTINGENT.DONTSHOWINDRECT\") === \"\" ? _this.dontShowIndirectHours : _this.convertToBool(_this.getValue(\"FLS.CONTINGENT.DONTSHOWINDRECT\"));\n _this.flsDocuSummaryEntrys = _this.getValue(\"FLS.DOCUSUMMARYITEMS\") === \"\" ? _this.flsDocuSummaryEntrys : parseInt(_this.getValue(\"FLS.DOCUSUMMARYITEMS\"));\n _this.flsDocuSummaryPageSize = _this.getValue(\"FLS.SUMMARY.PAGESIZE\") === \"\" ? _this.flsDocuSummaryPageSize : parseInt(_this.getValue(\"FLS.SUMMARY.PAGESIZE\"));\n _this.flsCaseFilterWithDirectCarerAllocation = _this.getValue(\"FLS.CASE.FILTERWITHDIRECTALLOCATION\") === \"\" ? _this.flsCaseFilterWithDirectCarerAllocation : _this.convertToBool(_this.getValue(\"FLS.CASE.FILTERWITHDIRECTALLOCATION\"));\n _this.showNewsFeed = _this.getValue(\"NEWSFEED.IGNORE\") === \"\" ? _this.showNewsFeed : !_this.convertToBool(_this.getValue(\"NEWSFEED.IGNORE\"));\n _this.logoReroute = _this.getValue(\"LANDINGPAGE.LOGO\") === \"\" ? _this.logoReroute : _this.convertToBool(_this.getValue(\"LANDINGPAGE.LOGO\"));\n _this.appointmentWidget.active = _this.getValue(\"APPOINTMENT.WIDGET.ACTIVE\") === \"\" ? _this.appointmentWidget.active : _this.convertToBool(_this.getValue(\"APPOINTMENT.WIDGET.ACTIVE\"));\n _this.appointmentWidget.orga = _this.getValue(\"APPOINTMENT.WIDGET.ORGA\") === \"\" ? _this.appointmentWidget.orga : _this.convertToBool(_this.getValue(\"APPOINTMENT.WIDGET.ORGA\"));\n _this.appointmentWidget.subOrga = _this.getValue(\"APPOINTMENT.WIDGET.SUBORGA\") === \"\" ? _this.appointmentWidget.subOrga : _this.convertToBool(_this.getValue(\"APPOINTMENT.WIDGET.SUBORGA\"));\n _this.appointmentWidget.daysToFuture = _this.convertToInt(_this.getValue(\"APPOINTMENT.WIDGET.DAYSTOFUTURE\"), _this.appointmentWidget.daysToFuture);\n _this.appointmentWidget.daysToPast = _this.convertToInt(_this.getValue(\"APPOINTMENT.WIDGET.DAYSTOPAST\"), _this.appointmentWidget.daysToPast);\n _this.appointmentWidget.endOfWeek = _this.appointmentWidget.daysToFuture < 0;\n if (_this.appointmentWidget.endOfWeek)\n _this.appointmentWidget.daysToFuture = 7;\n _this.birthday.active = _this.getValue(\"BIRTHDAY.WIDGET.ACTIVE\") === \"\" ? _this.birthday.active : _this.convertToBool(_this.getValue(\"BIRTHDAY.WIDGET.ACTIVE\"));\n _this.birthday.daysToFuture = _this.getValue(\"BIRTHDAY.WIDGET.DAYSTOFUTURE\") === \"\" ? _this.birthday.daysToFuture : parseInt(_this.getValue(\"BIRTHDAY.WIDGET.DAYSTOFUTURE\"));\n _this.birthday.daysToPast = _this.getValue(\"BIRTHDAY.WIDGET.DAYSTOPAST\") === \"\" ? _this.birthday.daysToPast : parseInt(_this.getValue(\"BIRTHDAY.WIDGET.DAYSTOPAST\"));\n _this.birthday.clients = _this.getValue(\"BIRTHDAY.WIDGET.CLIENTS\") === \"\" ? _this.birthday.clients : _this.convertToBool(_this.getValue(\"BIRTHDAY.WIDGET.CLIENTS\"));\n _this.birthday.employees = _this.getValue(\"BIRTHDAY.WIDGET.EMPLOYEES\") === \"\" ? _this.birthday.employees : _this.convertToBool(_this.getValue(\"BIRTHDAY.WIDGET.EMPLOYEES\"));\n _this.birthday.orga = _this.getValue(\"BIRTHDAY.WIDGET.ORGA\") === \"\" ? _this.birthday.orga : _this.getValue(\"BIRTHDAY.WIDGET.ORGA\");\n _this.birthday.subOrga = _this.getValue(\"BIRTHDAY.WIDGET.SUBORGA\") === \"\" ? _this.birthday.subOrga : _this.convertToBool(_this.getValue(\"BIRTHDAY.WIDGET.SUBORGA\"));\n _this.away.active = _this.getValue(\"AWAY.WIDGET.ACTIVE\") === \"\" ? _this.away.active : _this.convertToBool(_this.getValue(\"AWAY.WIDGET.ACTIVE\"));\n _this.away.daysToFuture = _this.getValue(\"AWAY.WIDGET.DAYSTOFUTURE\") === \"\" ? _this.away.daysToFuture : parseInt(_this.getValue(\"AWAY.WIDGET.DAYSTOFUTURE\"));\n _this.away.daysToPast = _this.getValue(\"AWAY.WIDGET.DAYSTOPAST\") === \"\" ? _this.away.daysToPast : parseInt(_this.getValue(\"AWAY.WIDGET.DAYSTOPAST\"));\n _this.away.subOrga = _this.getValue(\"AWAY.WIDGET.SUBORGA\") === \"\" ? _this.away.subOrga : _this.convertToBool(_this.getValue(\"AWAY.WIDGET.SUBORGA\"));\n _this.away.holiday = _this.getValue(\"AWAY.WIDGET.HOLIDAY\") === \"\" ? _this.away.holiday : _this.convertToBool(_this.getValue(\"AWAY.WIDGET.HOLIDAY\"));\n _this.away.disease = _this.getValue(\"AWAY.WIDGET.DISEASE\") === \"\" ? _this.away.disease : _this.convertToBool(_this.getValue(\"AWAY.WIDGET.DISEASE\"));\n _this.calendarSlotSize = _this.getValue(\"CALENDAR.SLOTDURATION\") === \"\" ? _this.calendarSlotSize : parseInt(_this.getValue(\"CALENDAR.SLOTDURATION\"));\n _this.humanizeHours = _this.getValue(\"HUMANIZETIME\") === \"\" ? _this.humanizeHours : parseInt(_this.getValue(\"HUMANIZETIME\"));\n _this.activateHumanize = _this.humanizeHours >= 0;\n if (_this.humanizeHours < 0)\n _this.humanizeHours = 24;\n _this.userService.getUserSettings(keysWin, false).then(function (dataW) {\n _this.settingsWin = dataW;\n _this.flsDefaultCareType = _this.getValueWin(\"FLS.DEFAULTCARETYPE\");\n _this.flsDefaultContactType = _this.getValueWin(\"FLS.DEFAULTCONTACTTYPE\");\n _this.flsDefaultActivityType = _this.getValueWin(\"FLS.DEFAULTACTIVITYTYPE\");\n //this.accountingBookGenerateNumber = this.getValueWin(\"KASSENBUCH.BELEGNUMMERGENERIEREN.KLIENT\") === \"\" ? this.accountingBookGenerateNumber : this.convertToBool(this.getValueWin(\"KASSENBUCH.BELEGNUMMERGENERIEREN.KLIENT\"));\n //this.accountingBookGenerateNumberOrga = this.getValueWin(\"KASSENBUCH.BELEGNUMMERGENERIEREN.ORGA\") === \"\" ? this.accountingBookGenerateNumberOrga : this.convertToBool(this.getValueWin(\"KASSENBUCH.BELEGNUMMERGENERIEREN.ORGA\"));\n _this.daysInPast = _this.getValueWin(\"DLGREPORTINGSERVERJOBS.DAYSINPAST\") === \"\" ? _this.daysInPast : parseInt(_this.getValueWin(\"DLGREPORTINGSERVERJOBS.DAYSINPAST\"));\n _this.showOnlyUnfetched = _this.getValueWin(\"DLGREPORTINGSERVERJOBS.SHOWONLYUNFETCHED\") === \"\" ? _this.showOnlyUnfetched : _this.convertToBool(_this.getValueWin(\"DLGREPORTINGSERVERJOBS.SHOWONLYUNFETCHED\"));\n _this.clientCoverTemplate = _this.getValueWin('FRADECKBLATT.140000.REPORTID') === '' ? _this.clientCoverTemplate : _this.getValueWin('FRADECKBLATT.140000.REPORTID');\n _this.getReweNumber = _this.getValueWin(\"KASSENBUCH.ShowFiBuDataInSearchDialog\") === \"\" ? _this.getReweNumber : _this.convertToBool(_this.getValueWin(\"KASSENBUCH.ShowFiBuDataInSearchDialog\"));\n _this.AppointmentAddCalendarOnlyUsersEmployee = _this.getValueWin(\"TERMINPLAN.ONLYUSERS.120000\") === \"\" ? _this.AppointmentAddCalendarOnlyUsersEmployee : _this.convertToBool(_this.getValueWin(\"TERMINPLAN.ONLYUSERS.120000\"));\n _this.AppointmentAddCalendarOnlyUsersClient = _this.getValueWin(\"TERMINPLAN.ONLYUSERS.140000\") === \"\" ? _this.AppointmentAddCalendarOnlyUsersClient : _this.convertToBool(_this.getValueWin(\"TERMINPLAN.ONLYUSERS.140000\"));\n _this.AppointmentAddCalendarOnlyUsersAuthority = _this.getValueWin(\"TERMINPLAN.ONLYUSERS.180000\") === \"\" ? _this.AppointmentAddCalendarOnlyUsersAuthority : _this.convertToBool(_this.getValueWin(\"TERMINPLAN.ONLYUSERS.180000\"));\n _this.loading = false;\n });\n });\n };\n UserSettingsController.prototype.saveSettings = function () {\n var _this = this;\n var _a, _b, _c;\n sessionStorage.removeItem('Setting.AutoLoadTables');\n // Format values if needed\n this.planedRawDays = Math.round(this.planedRawDays);\n this.loading = true;\n this.setValue(\"AZN.SHOWDATETO\", String(this.showDateToAZN));\n this.setValue(\"FLS.PLANEDRAWDAYS\", String(this.planedRawDays));\n this.setValue(\"FLS.PLANEDDAYSFUTURE\", String(this.planedDaysFuture));\n this.setValue(\"FLS.SHOWDATETO\", String(this.showDateToFLS));\n this.setValue(\"FLS.SHOWMONTHFILTER\", String(this.showMonthFilterFls));\n this.setValue(\"FLS.SIGNATURE.HIDEREPORTS\", String(this.signatureHideReports));\n this.setValue(\"FLS.WEEKPLANNER.SHOWHOLIDAY\", String(this.flsWeekplanningShowHoliday));\n this.setValue(\"FLS.WEEKPLANNER.SHOWVACATION\", String(this.flsWeekplanningShowVacation));\n this.setValue(\"FLS.WEEKPLANNER.SHOWPUBLICHOLIDAY\", String(this.flsWeekplanningShowPublicHoliday));\n this.setValue(\"FLS.WEEKPLANNER.DEFAULTEVENTLENGTH\", String(this.weekPlannerEventLength));\n this.setValue(\"WEEKPLANNER.SHOWUNPLANNABLECASES\", String(this.weekplannerShowUnplannableCases));\n this.setValue(\"TASK.FINISHEDTASKSDAYS\", String(this.tasksFinishedPast));\n this.setValue(\"LANDINGPAGE\", this.landingPage);\n this.setValue(\"FLS.SUMMARY.FORMATTED\", String(this.flsSummaryFormatted));\n this.setValue(\"GLOBAL.SHOULDLOADTABLEDATA\", String(this.shouldLoadTableData));\n this.setValue(\"SHOWTIMEINSTEADOFDECIMAL\", String(this.showTimeInTable));\n this.setValue(\"ROSTER.ASKDROPPEDSERVICE\", String(this.askDroppedService));\n this.setValue(\"FLS.CONTINGENT.DONTSHOWINDRECT\", String(this.dontShowIndirectHours));\n this.setValue(\"FLS.DOCUSUMMARYITEMS\", String(this.flsDocuSummaryEntrys));\n this.setValue(\"FLS.SUMMARY.PAGESIZE\", String(this.flsDocuSummaryPageSize));\n this.setValue(\"FLS.CASE.FILTERWITHDIRECTALLOCATION\", String(this.flsCaseFilterWithDirectCarerAllocation));\n this.setValue(\"NEWSFEED.IGNORE\", String(!this.showNewsFeed));\n this.setValue(\"LANDINGPAGE.LOGO\", String(this.logoReroute));\n this.setValue(\"CALENDAR.SLOTDURATION\", String(this.calendarSlotSize));\n this.setValue(\"HUMANIZETIME\", this.activateHumanize ? String(this.humanizeHours) : String(-1));\n this.setValue(\"APPOINTMENT.WIDGET.ACTIVE\", String(this.appointmentWidget.active));\n this.setValue(\"APPOINTMENT.WIDGET.ORGA\", String(this.appointmentWidget.orga));\n this.setValue(\"APPOINTMENT.WIDGET.SUBORGA\", String(this.appointmentWidget.subOrga));\n this.setValue(\"APPOINTMENT.WIDGET.DAYSTOPAST\", String(this.appointmentWidget.daysToPast));\n this.setValue(\"APPOINTMENT.WIDGET.DAYSTOFUTURE\", String(this.appointmentWidget.endOfWeek ? -1 : this.appointmentWidget.daysToFuture));\n this.setValue(\"BIRTHDAY.WIDGET.ACTIVE\", String(this.birthday.active));\n this.setValue(\"BIRTHDAY.WIDGET.DAYSTOFUTURE\", String(this.birthday.daysToFuture));\n this.setValue(\"BIRTHDAY.WIDGET.DAYSTOPAST\", String(this.birthday.daysToPast));\n this.setValue(\"BIRTHDAY.WIDGET.CLIENTS\", String(this.birthday.clients));\n this.setValue(\"BIRTHDAY.WIDGET.EMPLOYEES\", String(this.birthday.employees));\n this.setValue(\"BIRTHDAY.WIDGET.ORGA\", String(this.birthday.orga));\n this.setValue(\"BIRTHDAY.WIDGET.SUBORGA\", String(this.birthday.subOrga));\n this.setValue(\"AWAY.WIDGET.ACTIVE\", String(this.away.active));\n this.setValue(\"AWAY.WIDGET.DAYSTOFUTURE\", String(this.away.daysToFuture));\n this.setValue(\"AWAY.WIDGET.DAYSTOPAST\", String(this.away.daysToPast));\n this.setValue(\"AWAY.WIDGET.SUBORGA\", String(this.away.subOrga));\n this.setValue(\"AWAY.WIDGET.HOLIDAY\", String(this.away.holiday));\n this.setValue(\"AWAY.WIDGET.DISEASE\", String(this.away.disease));\n this.setValueWin(\"FLS.DEFAULTCARETYPE\", (_a = this.flsDefaultCareType) !== null && _a !== void 0 ? _a : QMC.Common.Constants.GUID_EMPTY);\n this.setValueWin(\"FLS.DEFAULTCONTACTTYPE\", (_b = this.flsDefaultContactType) !== null && _b !== void 0 ? _b : QMC.Common.Constants.GUID_EMPTY);\n this.setValueWin(\"FLS.DEFAULTACTIVITYTYPE\", (_c = this.flsDefaultActivityType) !== null && _c !== void 0 ? _c : QMC.Common.Constants.GUID_EMPTY);\n //this.setValueWin(\"KASSENBUCH.BELEGNUMMERGENERIEREN.KLIENT\", String(this.accountingBookGenerateNumber));\n //this.setValueWin(\"KASSENBUCH.BELEGNUMMERGENERIEREN.ORGA\", String(this.accountingBookGenerateNumberOrga));\n this.setValueWin(\"DLGREPORTINGSERVERJOBS.SHOWONLYUNFETCHED\", String(this.showOnlyUnfetched));\n this.setValueWin(\"DLGREPORTINGSERVERJOBS.DAYSINPAST\", String(this.daysInPast));\n this.setValueWin(\"FRADECKBLATT.140000.REPORTID\", this.clientCoverTemplate);\n this.setValueWin(\"KASSENBUCH.ShowFiBuDataInSearchDialog\", String(this.getReweNumber));\n this.setValueWin(\"TERMINPLAN.ONLYUSERS.120000\", String(this.AppointmentAddCalendarOnlyUsersEmployee));\n this.setValueWin(\"TERMINPLAN.ONLYUSERS.140000\", String(this.AppointmentAddCalendarOnlyUsersClient));\n this.setValueWin(\"TERMINPLAN.ONLYUSERS.180000\", String(this.AppointmentAddCalendarOnlyUsersAuthority));\n this.userService.setUserSettings({ settings: this.settings }).then(function (data) {\n _this.userService.setUserSettings({ settings: _this.settingsWin }, false).then(function (data) {\n sessionStorage.setItem(\"HUMANIZETIME\", String(_this.activateHumanize ? _this.humanizeHours : -1));\n _this.$qui.notify(_this.$qui.successNote);\n _this.getValues();\n });\n });\n };\n UserSettingsController.prototype.getLandingPages = function () {\n var _this = this;\n this.appStates = [];\n this.userService.getNavigationItems().then(function (data) {\n var objectTypes = [];\n for (var i = 0; i < data.length; i++) {\n objectTypes.push(data[i].objectType);\n }\n _this.permissionService.getPermissionsByObjectTypes(objectTypes).then(function (pData) {\n for (var i = 0; i < data.length; i++)\n if (data[i].objectType === 0 || _this.isAllowed(pData, data[i].objectType)) {\n _this.appStates.push({\n text: _this.lng.translate(data[i].languageTag, data[i].caption),\n value: data[i].link\n });\n }\n _this.appStates = _this.appStates.sort(function (a, b) {\n var textA = a.text.toUpperCase();\n var textB = b.text.toUpperCase();\n return (textA < textB) ? -1 : (textA > textB) ? 1 : 0;\n });\n _this.appStates.unshift({ text: \"\", value: \"\" });\n });\n });\n };\n UserSettingsController.prototype.getStates = function () {\n var _this = this;\n this.userService.getStates().then(function (data) {\n _this.stateList = _this.$qui.selectAutoMap(data, 'id', 'denotation');\n _this.selectedState = 'e8dfa43c-c3d4-408d-87d8-7bf9ccdb0ab7';\n _this.getFederalStates(_this.selectedState);\n _this.$scope.$watch('vm.selectedState', function (newVal, oldVal) {\n if (newVal === oldVal)\n return;\n _this.getFederalStates(_this.selectedState);\n });\n });\n };\n UserSettingsController.prototype.getInstitutes = function () {\n var _this = this;\n this.userService.getInstituteList().then(function (data) {\n _this.institutes = data.map(function (x) { return { text: x.caption, value: x.objectId }; }).sort(function (a, b) { return (a.text > b.text) ? 1 : ((b.text > a.text) ? -1 : 0); });\n _this.institutes.unshift({ text: _this.lng.translate(20000319, '- Eigene Organization -'), value: '00000000-0000-0000-0000-000000000000' });\n });\n };\n UserSettingsController.prototype.getClientCoverReportTemplates = function (objectType) {\n var _this = this;\n if (objectType === void 0) { objectType = 140000; }\n this.userService.getCoverReportTemplates(objectType).then(function (data) {\n for (var _i = 0, data_1 = data; _i < data_1.length; _i++) {\n var item = data_1[_i];\n switch (item.reportType) {\n case 7000:\n item.reportType = _this.lng.translate(20015036, 'Vorlage');\n break;\n case 3000:\n item.reportType = _this.lng.translate(20015038, 'Tabellenkalkulation');\n break;\n default:\n item.reportType = '';\n break;\n }\n }\n _this.clientCoverReportTemplates = data.map(function (x) { return ({ text: x.name, value: x.objectId, group: x.reportType }); });\n if (_this.clientCoverTemplate === QMC.Common.Constants.GUID_EMPTY)\n _this.clientCoverTemplate = data[0].objectId;\n });\n };\n UserSettingsController.prototype.getFederalStates = function (selectedState) {\n var _this = this;\n this.userService.getFederalStates(selectedState).then(function (data) {\n _this.federalStateList = data;\n _this.getFederalStateAssignments(_this.isHoliday);\n });\n };\n UserSettingsController.prototype.openModal = function (isHoliday) {\n if (isHoliday !== this.isHoliday) {\n this.isHoliday = isHoliday;\n }\n this.getFederalStateAssignments(this.isHoliday);\n };\n UserSettingsController.prototype.getFederalStateAssignments = function (isHoliday) {\n var _this = this;\n this.userService.getFederalStateAssignments(isHoliday).then(function (assignments) {\n _this.federalStateAssignmentList = _this.federalStateList.map(function (federalState) {\n var assignment = assignments.find(function (item) { return item.federalStateId === federalState.id; });\n return { federalStateId: federalState.id, assignmentId: (assignment !== undefined) ? assignment.id : null, denotation: federalState.denotation, show: (assignment !== undefined), isHoliday: isHoliday };\n });\n });\n };\n UserSettingsController.prototype.federalStateAssignmentListItemChanged = function (changedItem) {\n this.federalStateAssignmentListChanges.push(changedItem);\n };\n UserSettingsController.prototype.putFederalStateAssignmentList = function () {\n var _this = this;\n $('#selectFederalStateModal').modal('hide');\n this.userService.putFederalStateAssignments(this.federalStateAssignmentListChanges).then(function () {\n _this.federalStateAssignmentListChanges = [];\n });\n this.federalStateAssignmentListChanges = [];\n };\n UserSettingsController.prototype.getWv = function () {\n var _this = this;\n this.userService.getSettingWvModel().then(function (data) {\n _this.flsContactTypes = data.flsContactTypeWvModel.map(function (x) { return ({ value: x.objectId, text: x.name }); });\n _this.flsCareTypes = data.flsCareTypeWvModel.map(function (x) { return ({ value: x.objectId, text: x.name }); });\n _this.flsActivityTypes = data.flsActivityTypeWvModel.map(function (x) { return ({ value: x.objectId, text: x.name }); });\n });\n };\n UserSettingsController.prototype.resetBrowserCache = function () {\n var temp = localStorage.getItem(QMC.Common.LocalStorageConstants.USER_MODULE_PERMISSIONS);\n localStorage.clear();\n localStorage.setItem(QMC.Common.LocalStorageConstants.USER_MODULE_PERMISSIONS, temp);\n window.location.reload(true);\n };\n UserSettingsController = __decorate([\n QMC.Controller('QMC.Home', 'UserSettingsController'),\n QMC.Inject('$qui', '$scope', '$state', 'UserService', 'QmcLanguageService', 'QmcPermissionService', 'TerminService')\n ], UserSettingsController);\n return UserSettingsController;\n }());\n Home.UserSettingsController = UserSettingsController;\n })(Home = QMC.Home || (QMC.Home = {}));\n})(QMC || (QMC = {}));\nvar QMC;\n(function (QMC) {\n var Home;\n (function (Home) {\n var UserGlobalSettingsController = /** @class */ (function () {\n /////////////////////////// Constructor //////////////////////////\n function UserGlobalSettingsController($qui, $scope, userService, lng, permissionService, flsService) {\n var _this = this;\n this.$qui = $qui;\n this.$scope = $scope;\n this.userService = userService;\n this.lng = lng;\n this.permissionService = permissionService;\n this.flsService = flsService;\n //////////////////////////// Variables ///////////////////////////\n /************************* GUI Variables ************************/\n this.loading = false;\n this.globalPermission = false;\n this.boolean = true;\n this.signingPersonIsClient = false;\n this.inactivityTime = QMC.Common.UserSettingConstantsAndDefaults.INACTIVITYTIMEOUT;\n this.flsMinutesToSign = QMC.Common.UserSettingConstantsAndDefaults.FLSMINUTESTOSIGN;\n this.landingPage = QMC.Common.UserSettingConstantsAndDefaults.LANDINGPAGE;\n this.shouldLoadTableData = QMC.Common.UserSettingConstantsAndDefaults.SHOULDLOADTABLEDATA;\n this.defaultNavId = QMC.Common.UserSettingConstantsAndDefaults.NAVIGATION_DEFAULT_ID;\n this.defaultSigningPersonId = QMC.Common.UserSettingConstantsAndDefaults.DEFAULTSIGNINGPERSON;\n this.defaultSigningReasonId = QMC.Common.UserSettingConstantsAndDefaults.DEFAULTSIGNINGREASON;\n this.defaultSigningReasonText = \"\";\n this.flsSignatureReasonNotMandatory = false;\n this.blockSignatureModal = false;\n this.daysToHighlightCases = 0;\n this.dontShowIndirectHours = false;\n this.createAdditionalFls = false;\n this.createAdditionalFlsText = \"\";\n this.flsDocuSummaryEntrys = 0;\n this.flsDistributeHours = QMC.Common.UserSettingConstantsAndDefaults.FLS_NEUMEHREREBETREUTE_ZEITAUFFAELLEVERTEILEN;\n this.flsDistributeHoursFix = QMC.Common.UserSettingConstantsAndDefaults.FLS_NEUMEHREREBETREUTE_ZEITAUFFAELLEVERTEILEN_FIX;\n this.flsResetTimeForManualDuration = QMC.Common.UserSettingConstantsAndDefaults.GC_FLS_NEUMEHREREBETREUTE_ZEITRESETBEIVERTEILUNG;\n this.serverJobPollingTimer = QMC.Common.UserSettingConstantsAndDefaults.SERVERJOBTIMERINTERVALLINSEC;\n this.weekplannerShowUnplannableCases = false;\n this.flsWeekplannerIncludeFutureCases = QMC.Common.UserSettingConstantsAndDefaults.FLS_WEEKPLANNER_INCLUDE_FUTURE_CASES;\n this.flsWeekplannerIncludePastCases = false;\n this.dontShowRawDocusIfEmptyIsAllowed = false;\n this.flsCaseFilterWithDirectCarerAllocation = true;\n this.AppointmentAddCalendarOnlyUsersEmployee = false;\n this.AppointmentAddCalendarOnlyUsersClient = false;\n this.AppointmentAddCalendarOnlyUsersAuthority = false;\n this.flsHideQuickDrivingCost = false;\n this.flsAllowEmptyDrivingCost = false;\n this.flsPredfinedTitleMode = '0';\n this.flsPredfinedTitle = '';\n this.logoReroute = false;\n this.rosterShowInactive = false;\n this.inquireStampinOnLogin = QMC.Common.UserSettingConstantsAndDefaults.INQUIRE_STAMPIN_ON_LOGIN;\n this.inquireStampOutOnLogout = QMC.Common.UserSettingConstantsAndDefaults.INQUIRE_STAMPOUT_ON_LOGOUT;\n this.saVaccination = 'impfung; impfen';\n this.saDocVisit = 'arzt; doktor';\n this.saDisease = 'krank; krankheit; grippe; fieber';\n this.saAppointment = 'termin; verabredung; meeting';\n this.saAbsenteeism = 'abwesend; abwesenheit';\n this.saMessage = 'nachricht; mail; meldung';\n this.saTask = 'aufgabe; task';\n this.saDocument = 'dokument';\n this.saAccountingBook = 'kassenbuch';\n this.saContactperson = 'kontakt; kontaktperson';\n this.flsShowManuelTime = true;\n this.richTextImages = {\n disabled: false,\n size: 4,\n height: 1080,\n width: 1920\n };\n this.appStates = [];\n this.flsTitleSetting = [\n { text: this.lng.translate(20013150, 'Systemvorgabe'), value: '0' },\n { text: this.lng.translate(20013151, 'Leer'), value: '1' },\n { text: this.lng.translate(20013152, 'Eigene Vorgabe'), value: '2' }\n ];\n //get values from api\n this.getValues();\n this.loadingPermission = true;\n permissionService.getPermissionsByObjectType(870000).then(function (data) {\n _this.globalPermission = data[0].moduleAccess;\n _this.loadingPermission = false;\n });\n this.userService.getAvailableNavigations().then((function (data) {\n _this.navigations = data.map(function (obj) { return ({ value: obj.id, text: obj.caption }); });\n }));\n this.flsService.getSignatureWv().then((function (data) {\n _this.flsSigningPersons = data.signingPersons.map(function (obj) { return ({ value: obj.objectId, text: obj.name }); });\n _this.flsSigningReasons = data.reasons.map(function (obj) { return ({ value: obj.objectId, text: obj.name }); });\n }));\n $qui.init(\"einstellungen\", function () {\n $qui.anonAvatar();\n $qui.bindEvents();\n _this.events();\n });\n this.getLandingPages();\n this.$scope.$watchCollection('vm.defaultSigningPersonId', function (newValue, oldValue) {\n if (newValue === oldValue)\n return;\n _this.setSigningPersonSettingVisibility();\n });\n this.setSigningPersonSettingVisibility();\n }\n UserGlobalSettingsController.prototype.setSigningPersonSettingVisibility = function () {\n if (this.defaultSigningPersonId == QMC.Common.Constants.SIGNATURE_SIGNING_PERSON_CLIENT) {\n this.defaultSigningReasonId = QMC.Common.Constants.GUID_EMPTY;\n this.defaultSigningReasonText = '';\n this.signingPersonIsClient = true;\n }\n else\n this.signingPersonIsClient = false;\n };\n UserGlobalSettingsController.prototype.isAllowed = function (permissions, type) {\n for (var i = 0; i < permissions.length; i++) {\n if (permissions[i].objectType === type && permissions[i].moduleAccess)\n return true;\n }\n return false;\n };\n ////////////////////////// DISPLAYLOGIC //////////////////////////\n UserGlobalSettingsController.prototype.events = function () {\n };\n //////////////////////// SERVICEFUNCTION /////////////////////////\n UserGlobalSettingsController.prototype.getValueGlobal = function (key) {\n return $.grep(this.globalSettings, function (e) { return e.key === key; })[0].value;\n };\n UserGlobalSettingsController.prototype.setValueGlobal = function (key, value) {\n $.grep(this.globalSettings, function (e) { return e.key === key; })[0].value = value;\n };\n UserGlobalSettingsController.prototype.getValueGlobalWin = function (key) {\n return $.grep(this.globalSettingsWin, function (e) { return e.key === key; })[0].value;\n };\n UserGlobalSettingsController.prototype.setValueGlobalWin = function (key, value) {\n $.grep(this.globalSettingsWin, function (e) { return e.key === key; })[0].value = value;\n };\n UserGlobalSettingsController.prototype.convertToBool = function (input) {\n input = input.toLowerCase();\n return input === \"true\";\n };\n ////////////////////////// SERVICECALLS //////////////////////////\n UserGlobalSettingsController.prototype.getValues = function () {\n var _this = this;\n this.loading = true;\n var keys = [\n \"FLS.MINUTESTOSIGN\",\n \"SECURITY.INACTIVITYTIMEOUT\",\n \"GLOBAL.LANDINGPAGE\",\n \"GLOBAL.SHOULDLOADTABLEDATA\",\n \"GLOBAL.NAVIGATION.WEB\",\n \"FLS.SIGNATURE.BLOCK\",\n \"FLS.CASE.DAYSTOHIGHLIGHT\",\n \"FLS.CONTINGENT.DONTSHOWINDRECT\",\n \"FLS.ADDITIONAL_TIMELESS_ENTRY\",\n \"FLS.ADDITIONAL_TIMELESS_ENTRY_TEXT\",\n \"FLS.CASE.FILTERWITHDIRECTALLOCATION\",\n \"FLS.DOCUSUMMARYITEMS\",\n \"FLS.DONTSHOWRAWIFEMPTYDOCUSALLOWED\",\n \"FLS.WEEKPLANNER_INCLUDE_FUTURE_CASES\",\n \"FLS.WEEKPLANNER_INCLUDE_PAST_CASES\",\n \"WEEKPLANNER.SHOWUNPLANNABLECASES\",\n \"FLS.HIDE_QUICK_DRIVINGCOST\",\n \"TIMECLOCK.INQUIRE_STAMPIN_ON_LOGIN\",\n \"TIMECLOCK.INQUIRE_STAMPOUT_ON_LOGOUT\",\n \"SMARTACTIONS.VACCINATION\",\n \"SMARTACTIONS.DOCVISIT\",\n \"SMARTACTIONS.DISEASE\",\n \"SMARTACTIONS.APPOINTMENT\",\n \"SMARTACTIONS.ABSENTEEISM\",\n \"SMARTACTIONS.INTERNALMESSAGE\",\n \"SMARTACTIONS.TASK\",\n \"SMARTACTIONS.DOCUMENT\",\n \"SMARTACTIONS.ACCOUNTINGBOOK\",\n \"SMARTACTIONS.CONTACTPERSON\",\n \"LANDINGPAGE.LOGO\",\n \"RICHTEXTIMAGES\"\n ];\n var keysWin = [\n \"FLS.FAHRT.ERLAUBE_LEERE_DATENSAETZE\",\n \"FLS.SIGNATURE.DEFAULTSIGNINGPERSON\",\n \"FLS.SIGNATURE.DEFAULTSIGNINGREASON\",\n \"FLS.SIGNATURE.DEFAULTSIGNINGREASONTEXT\",\n \"FLS.SIGNATURE.REASONNOTMANDATORY\",\n \"FLS_NEUMEHREREBETREUTE_ZEITAUFFAELLEVERTEILEN\",\n \"FLS_NEUMEHREREBETREUTE_ZEITAUFFAELLEVERTEILEN_FIX\",\n \"GC_FLS_NEUMEHREREBETREUTE_ZEITRESETBEIVERTEILUNG\",\n \"SERVERJOBTIMERINTERVALLINSEC\",\n \"TERMINPLAN.ONLYUSERS.GLOBAL.120000\",\n \"TERMINPLAN.ONLYUSERS.GLOBAL.140000\",\n \"TERMINPLAN.ONLYUSERS.GLOBAL.180000\",\n \"FLS.DOKU.BERICHTTITELVORGABE\",\n \"FLS.DOKU.BERICHTTITEL\",\n \"DIENSTPLAN.SHOWINACTIVEPERSONS\",\n \"FLS.ZEITPLANUNG.SHOW_MANUELLE_DAUER\"\n ];\n this.userService.getGlobalSettings(keys).then(function (data) {\n _this.globalSettings = data;\n _this.flsMinutesToSign = _this.getValueGlobal(\"FLS.MINUTESTOSIGN\") === \"\" ? _this.flsMinutesToSign : parseFloat(_this.getValueGlobal(\"FLS.MINUTESTOSIGN\"));\n _this.inactivityTime = _this.getValueGlobal(\"SECURITY.INACTIVITYTIMEOUT\") === \"\" ? _this.inactivityTime : parseFloat(_this.getValueGlobal(\"SECURITY.INACTIVITYTIMEOUT\"));\n _this.landingPage = _this.getValueGlobal(\"GLOBAL.LANDINGPAGE\");\n _this.shouldLoadTableData = _this.getValueGlobal(\"GLOBAL.SHOULDLOADTABLEDATA\") === \"\" ? _this.shouldLoadTableData : _this.convertToBool(_this.getValueGlobal(\"GLOBAL.SHOULDLOADTABLEDATA\"));\n _this.defaultNavId = _this.getValueGlobal(\"GLOBAL.NAVIGATION.WEB\") === \"\" ? _this.defaultNavId : _this.getValueGlobal(\"GLOBAL.NAVIGATION.WEB\");\n _this.blockSignatureModal = _this.getValueGlobal(\"FLS.SIGNATURE.BLOCK\") === \"\" ? _this.blockSignatureModal : _this.convertToBool(_this.getValueGlobal(\"FLS.SIGNATURE.BLOCK\"));\n _this.daysToHighlightCases = _this.getValueGlobal(\"FLS.CASE.DAYSTOHIGHLIGHT\") === \"\" ? _this.daysToHighlightCases : parseInt(_this.getValueGlobal(\"FLS.CASE.DAYSTOHIGHLIGHT\"));\n _this.dontShowIndirectHours = _this.getValueGlobal(\"FLS.CONTINGENT.DONTSHOWINDRECT\") === \"\" ? _this.dontShowIndirectHours : _this.convertToBool(_this.getValueGlobal(\"FLS.CONTINGENT.DONTSHOWINDRECT\"));\n _this.createAdditionalFls = _this.getValueGlobal(\"FLS.ADDITIONAL_TIMELESS_ENTRY\") === \"\" ? _this.dontShowIndirectHours : _this.convertToBool(_this.getValueGlobal(\"FLS.ADDITIONAL_TIMELESS_ENTRY\"));\n _this.createAdditionalFlsText = _this.createAdditionalFls ? _this.getValueGlobal(\"FLS.ADDITIONAL_TIMELESS_ENTRY_TEXT\") : \"\";\n _this.flsDocuSummaryEntrys = _this.getValueGlobal(\"FLS.DOCUSUMMARYITEMS\") === \"\" ? _this.flsDocuSummaryEntrys : parseInt(_this.getValueGlobal(\"FLS.DOCUSUMMARYITEMS\"));\n _this.flsWeekplannerIncludeFutureCases = _this.getValueGlobal(\"FLS.WEEKPLANNER_INCLUDE_FUTURE_CASES\") === \"\" ? _this.flsWeekplannerIncludeFutureCases : _this.convertToBool(_this.getValueGlobal(\"FLS.WEEKPLANNER_INCLUDE_FUTURE_CASES\"));\n _this.flsWeekplannerIncludePastCases = _this.getValueGlobal(\"FLS.WEEKPLANNER_INCLUDE_PAST_CASES\") === \"\" ? _this.flsWeekplannerIncludePastCases : _this.convertToBool(_this.getValueGlobal(\"FLS.WEEKPLANNER_INCLUDE_PAST_CASES\"));\n _this.weekplannerShowUnplannableCases = _this.getValueGlobal(\"WEEKPLANNER.SHOWUNPLANNABLECASES\") === \"\" ? _this.weekplannerShowUnplannableCases : _this.convertToBool(_this.getValueGlobal(\"WEEKPLANNER.SHOWUNPLANNABLECASES\"));\n _this.dontShowRawDocusIfEmptyIsAllowed = _this.getValueGlobal(\"FLS.DONTSHOWRAWIFEMPTYDOCUSALLOWED\") === \"\" ? _this.dontShowRawDocusIfEmptyIsAllowed : _this.convertToBool(_this.getValueGlobal(\"FLS.DONTSHOWRAWIFEMPTYDOCUSALLOWED\"));\n _this.inquireStampinOnLogin = _this.getValueGlobal(\"TIMECLOCK.INQUIRE_STAMPIN_ON_LOGIN\") === \"\" ? _this.inquireStampinOnLogin : _this.convertToBool(_this.getValueGlobal(\"TIMECLOCK.INQUIRE_STAMPIN_ON_LOGIN\"));\n _this.inquireStampOutOnLogout = _this.getValueGlobal(\"TIMECLOCK.INQUIRE_STAMPOUT_ON_LOGOUT\") === \"\" ? _this.inquireStampOutOnLogout : _this.convertToBool(_this.getValueGlobal(\"TIMECLOCK.INQUIRE_STAMPOUT_ON_LOGOUT\"));\n _this.flsCaseFilterWithDirectCarerAllocation = _this.getValueGlobal(\"FLS.CASE.FILTERWITHDIRECTALLOCATION\") === \"\" ? _this.flsCaseFilterWithDirectCarerAllocation : _this.convertToBool(_this.getValueGlobal(\"FLS.CASE.FILTERWITHDIRECTALLOCATION\"));\n _this.saVaccination = _this.getValueGlobal(\"SMARTACTIONS.VACCINATION\");\n _this.saDocVisit = _this.getValueGlobal(\"SMARTACTIONS.DOCVISIT\");\n _this.saDisease = _this.getValueGlobal(\"SMARTACTIONS.DISEASE\");\n _this.saAppointment = _this.getValueGlobal(\"SMARTACTIONS.APPOINTMENT\");\n _this.saTask = _this.getValueGlobal(\"SMARTACTIONS.TASK\");\n _this.saAbsenteeism = _this.getValueGlobal(\"SMARTACTIONS.ABSENTEEISM\");\n _this.saMessage = _this.getValueGlobal(\"SMARTACTIONS.INTERNALMESSAGE\");\n _this.saDocument = _this.getValueGlobal(\"SMARTACTIONS.DOCUMENT\");\n _this.saAccountingBook = _this.getValueGlobal(\"SMARTACTIONS.ACCOUNTINGBOOK\");\n _this.saContactperson = _this.getValueGlobal(\"SMARTACTIONS.CONTACTPERSON\");\n _this.flsHideQuickDrivingCost = _this.getValueGlobal(\"FLS.HIDE_QUICK_DRIVINGCOST\") === \"\" ? _this.flsHideQuickDrivingCost : _this.convertToBool(_this.getValueGlobal(\"FLS.HIDE_QUICK_DRIVINGCOST\"));\n _this.logoReroute = _this.getValueGlobal(\"LANDINGPAGE.LOGO\") === \"\" ? _this.logoReroute : _this.convertToBool(_this.getValueGlobal(\"LANDINGPAGE.LOGO\"));\n _this.richTextImages = _this.getValueGlobal(\"RICHTEXTIMAGES\") === \"\" ? _this.richTextImages : JSON.parse(_this.getValueGlobal(\"RICHTEXTIMAGES\"));\n _this.userService.getGlobalSettings(keysWin, false).then(function (data2) {\n _this.globalSettingsWin = data2;\n _this.flsAllowEmptyDrivingCost = _this.getValueGlobalWin(\"FLS.FAHRT.ERLAUBE_LEERE_DATENSAETZE\") === \"\" ? _this.flsAllowEmptyDrivingCost : _this.convertToBool(_this.getValueGlobalWin(\"FLS.FAHRT.ERLAUBE_LEERE_DATENSAETZE\"));\n _this.defaultSigningPersonId = _this.getValueGlobalWin(\"FLS.SIGNATURE.DEFAULTSIGNINGPERSON\") === \"\" ? _this.defaultSigningPersonId : _this.getValueGlobalWin(\"FLS.SIGNATURE.DEFAULTSIGNINGPERSON\");\n _this.defaultSigningReasonId = _this.getValueGlobalWin(\"FLS.SIGNATURE.DEFAULTSIGNINGREASON\") === \"\" ? _this.defaultSigningReasonId : _this.getValueGlobalWin(\"FLS.SIGNATURE.DEFAULTSIGNINGREASON\");\n _this.defaultSigningReasonText = _this.getValueGlobalWin(\"FLS.SIGNATURE.DEFAULTSIGNINGREASONTEXT\");\n _this.flsSignatureReasonNotMandatory = _this.convertToBool(_this.getValueGlobalWin(\"FLS.SIGNATURE.REASONNOTMANDATORY\"));\n _this.flsDistributeHours = _this.getValueGlobalWin(\"FLS_NEUMEHREREBETREUTE_ZEITAUFFAELLEVERTEILEN\") === \"\" ? _this.flsDistributeHours : _this.convertToBool(_this.getValueGlobalWin(\"FLS_NEUMEHREREBETREUTE_ZEITAUFFAELLEVERTEILEN\"));\n _this.flsDistributeHoursFix = _this.getValueGlobalWin(\"FLS_NEUMEHREREBETREUTE_ZEITAUFFAELLEVERTEILEN_FIX\") === \"\" ? _this.flsDistributeHoursFix : _this.convertToBool(_this.getValueGlobalWin(\"FLS_NEUMEHREREBETREUTE_ZEITAUFFAELLEVERTEILEN_FIX\"));\n _this.flsResetTimeForManualDuration = _this.getValueGlobalWin(\"GC_FLS_NEUMEHREREBETREUTE_ZEITRESETBEIVERTEILUNG\") === \"\" ? _this.flsResetTimeForManualDuration : _this.convertToBool(_this.getValueGlobalWin(\"GC_FLS_NEUMEHREREBETREUTE_ZEITRESETBEIVERTEILUNG\"));\n _this.serverJobPollingTimer = _this.getValueGlobalWin(\"SERVERJOBTIMERINTERVALLINSEC\") === \"\" ? _this.serverJobPollingTimer : parseInt(_this.getValueGlobalWin(\"SERVERJOBTIMERINTERVALLINSEC\"));\n _this.AppointmentAddCalendarOnlyUsersEmployee = _this.getValueGlobalWin(\"TERMINPLAN.ONLYUSERS.GLOBAL.120000\") === \"\" ? _this.AppointmentAddCalendarOnlyUsersEmployee : _this.convertToBool(_this.getValueGlobalWin(\"TERMINPLAN.ONLYUSERS.GLOBAL.120000\"));\n _this.AppointmentAddCalendarOnlyUsersClient = _this.getValueGlobalWin(\"TERMINPLAN.ONLYUSERS.GLOBAL.140000\") === \"\" ? _this.AppointmentAddCalendarOnlyUsersClient : _this.convertToBool(_this.getValueGlobalWin(\"TERMINPLAN.ONLYUSERS.GLOBAL.140000\"));\n _this.AppointmentAddCalendarOnlyUsersAuthority = _this.getValueGlobalWin(\"TERMINPLAN.ONLYUSERS.GLOBAL.180000\") === \"\" ? _this.AppointmentAddCalendarOnlyUsersAuthority : _this.convertToBool(_this.getValueGlobalWin(\"TERMINPLAN.ONLYUSERS.GLOBAL.180000\"));\n _this.flsPredfinedTitleMode = _this.getValueGlobalWin(\"FLS.DOKU.BERICHTTITELVORGABE\") === \"\" ? _this.flsPredfinedTitleMode : _this.getValueGlobalWin(\"FLS.DOKU.BERICHTTITELVORGABE\");\n _this.flsPredfinedTitle = _this.getValueGlobalWin(\"FLS.DOKU.BERICHTTITEL\") === \"\" ? _this.flsPredfinedTitle : _this.getValueGlobalWin(\"FLS.DOKU.BERICHTTITEL\");\n _this.rosterShowInactive = _this.getValueGlobalWin(\"DIENSTPLAN.SHOWINACTIVEPERSONS\") === \"\" ? _this.rosterShowInactive : _this.convertToBool(_this.getValueGlobalWin(\"DIENSTPLAN.SHOWINACTIVEPERSONS\"));\n _this.flsShowManuelTime = _this.getValueGlobalWin(\"FLS.ZEITPLANUNG.SHOW_MANUELLE_DAUER\") === \"\" ? _this.flsShowManuelTime : _this.convertToBool(_this.getValueGlobalWin(\"FLS.ZEITPLANUNG.SHOW_MANUELLE_DAUER\"));\n _this.loading = false;\n });\n });\n };\n UserGlobalSettingsController.prototype.saveSettings = function () {\n var _this = this;\n // Format values if needed\n this.loading = true;\n this.setValueGlobal(\"FLS.MINUTESTOSIGN\", String(this.flsMinutesToSign));\n this.setValueGlobal(\"SECURITY.INACTIVITYTIMEOUT\", String(this.inactivityTime));\n this.setValueGlobal(\"GLOBAL.LANDINGPAGE\", this.landingPage);\n this.setValueGlobal(\"GLOBAL.SHOULDLOADTABLEDATA\", String(this.shouldLoadTableData));\n this.setValueGlobal(\"GLOBAL.NAVIGATION.WEB\", this.defaultNavId);\n this.setValueGlobal(\"FLS.SIGNATURE.BLOCK\", String(this.blockSignatureModal));\n this.setValueGlobal(\"FLS.CASE.DAYSTOHIGHLIGHT\", String(this.daysToHighlightCases));\n this.setValueGlobal(\"FLS.CONTINGENT.DONTSHOWINDRECT\", String(this.dontShowIndirectHours));\n this.setValueGlobal(\"FLS.ADDITIONAL_TIMELESS_ENTRY\", String(this.createAdditionalFls));\n this.setValueGlobal(\"FLS.ADDITIONAL_TIMELESS_ENTRY_TEXT\", this.createAdditionalFls ? this.createAdditionalFlsText : \"\");\n this.setValueGlobal(\"FLS.DOCUSUMMARYITEMS\", String(this.flsDocuSummaryEntrys));\n this.setValueGlobal(\"FLS.WEEKPLANNER_INCLUDE_FUTURE_CASES\", String(this.flsWeekplannerIncludeFutureCases));\n this.setValueGlobal(\"FLS.WEEKPLANNER_INCLUDE_PAST_CASES\", String(this.flsWeekplannerIncludePastCases));\n this.setValueGlobal(\"WEEKPLANNER.SHOWUNPLANNABLECASES\", String(this.weekplannerShowUnplannableCases));\n this.setValueGlobal(\"FLS.DONTSHOWRAWIFEMPTYDOCUSALLOWED\", String(this.dontShowRawDocusIfEmptyIsAllowed));\n this.setValueGlobal(\"TIMECLOCK.INQUIRE_STAMPIN_ON_LOGIN\", String(this.inquireStampinOnLogin));\n this.setValueGlobal(\"TIMECLOCK.INQUIRE_STAMPOUT_ON_LOGOUT\", String(this.inquireStampinOnLogin));\n this.setValueGlobal(\"FLS.CASE.FILTERWITHDIRECTALLOCATION\", String(this.flsCaseFilterWithDirectCarerAllocation));\n this.setValueGlobal(\"SMARTACTIONS.VACCINATION\", this.saVaccination);\n this.setValueGlobal(\"SMARTACTIONS.DOCVISIT\", this.saDocVisit);\n this.setValueGlobal(\"SMARTACTIONS.DISEASE\", this.saDisease);\n this.setValueGlobal(\"SMARTACTIONS.APPOINTMENT\", this.saAppointment);\n this.setValueGlobal(\"SMARTACTIONS.TASK\", this.saTask);\n this.setValueGlobal(\"SMARTACTIONS.ABSENTEEISM\", this.saAbsenteeism);\n this.setValueGlobal(\"SMARTACTIONS.INTERNALMESSAGE\", this.saMessage);\n this.setValueGlobal(\"SMARTACTIONS.DOCUMENT\", this.saDocument);\n this.setValueGlobal(\"SMARTACTIONS.ACCOUNTINGBOOK\", this.saAccountingBook);\n this.setValueGlobal(\"SMARTACTIONS.CONTACTPERSON\", this.saContactperson);\n this.setValueGlobal(\"FLS.HIDE_QUICK_DRIVINGCOST\", String(this.flsHideQuickDrivingCost));\n this.setValueGlobal(\"LANDINGPAGE.LOGO\", String(this.logoReroute));\n this.setValueGlobal(\"RICHTEXTIMAGES\", JSON.stringify(this.richTextImages));\n this.setValueGlobalWin(\"FLS.FAHRT.ERLAUBE_LEERE_DATENSAETZE\", String(this.flsAllowEmptyDrivingCost));\n this.setValueGlobalWin(\"FLS.SIGNATURE.DEFAULTSIGNINGPERSON\", String(this.defaultSigningPersonId));\n this.setValueGlobalWin(\"FLS.SIGNATURE.DEFAULTSIGNINGREASON\", String(this.defaultSigningReasonId));\n this.setValueGlobalWin(\"FLS.SIGNATURE.DEFAULTSIGNINGREASONTEXT\", this.flsSignatureReasonNotMandatory ? '' : this.defaultSigningReasonText);\n this.setValueGlobalWin(\"FLS.SIGNATURE.REASONNOTMANDATORY\", String(this.flsSignatureReasonNotMandatory));\n this.setValueGlobalWin(\"FLS_NEUMEHREREBETREUTE_ZEITAUFFAELLEVERTEILEN\", String(this.flsDistributeHours));\n this.setValueGlobalWin(\"FLS_NEUMEHREREBETREUTE_ZEITAUFFAELLEVERTEILEN_FIX\", String(this.flsDistributeHoursFix));\n this.setValueGlobalWin(\"GC_FLS_NEUMEHREREBETREUTE_ZEITRESETBEIVERTEILUNG\", String(this.flsResetTimeForManualDuration));\n this.setValueGlobalWin(\"SERVERJOBTIMERINTERVALLINSEC\", String(this.serverJobPollingTimer));\n this.setValueGlobalWin(\"TERMINPLAN.ONLYUSERS.GLOBAL.120000\", String(this.AppointmentAddCalendarOnlyUsersEmployee));\n this.setValueGlobalWin(\"TERMINPLAN.ONLYUSERS.GLOBAL.140000\", String(this.AppointmentAddCalendarOnlyUsersClient));\n this.setValueGlobalWin(\"TERMINPLAN.ONLYUSERS.GLOBAL.180000\", String(this.AppointmentAddCalendarOnlyUsersAuthority));\n this.setValueGlobalWin(\"FLS.DOKU.BERICHTTITELVORGABE\", this.flsPredfinedTitleMode);\n this.setValueGlobalWin(\"FLS.DOKU.BERICHTTITEL\", this.flsPredfinedTitleMode === '2' ? this.flsPredfinedTitle : '');\n this.setValueGlobalWin(\"DIENSTPLAN.SHOWINACTIVEPERSONS\", String(this.rosterShowInactive));\n this.setValueGlobalWin(\"FLS.ZEITPLANUNG.SHOW_MANUELLE_DAUER\", String(this.flsShowManuelTime));\n this.userService.setGlobalSettings({ settings: this.globalSettings }).then(function (data) {\n _this.userService.setGlobalSettings({ settings: _this.globalSettingsWin }, false).then(function (data) {\n _this.$qui.notify(_this.$qui.successNote);\n _this.loading = false;\n sessionStorage.removeItem('Setting.AutoLoadTables');\n sessionStorage.removeItem(QMC.Common.Constants.SMARTACTIONCACHE);\n });\n });\n window['snResizeSettings'] = this.richTextImages;\n };\n UserGlobalSettingsController.prototype.getLandingPages = function () {\n var _this = this;\n this.appStates = [];\n this.userService.getNavigationItems().then(function (data) {\n var objectTypes = [];\n for (var i = 0; i < data.length; i++) {\n console.log(data[i], data[i].objectType);\n objectTypes.push(data[i].objectType);\n }\n _this.permissionService.getPermissionsByObjectTypes(objectTypes).then(function (pData) {\n for (var i = 0; i < data.length; i++)\n if (data[i].objectType === 0 || _this.isAllowed(pData, data[i].objectType)) {\n _this.appStates.push({\n text: _this.lng.translate(data[i].languageTag, data[i].caption),\n value: data[i].link\n });\n }\n _this.appStates = _this.appStates.sort(function (a, b) {\n var textA = a.text.toUpperCase();\n var textB = b.text.toUpperCase();\n return (textA < textB) ? -1 : (textA > textB) ? 1 : 0;\n });\n _this.appStates.unshift({ text: \"\", value: \"\" });\n });\n });\n };\n UserGlobalSettingsController = __decorate([\n QMC.Controller('QMC.Home', 'UserGlobalSettingsController'),\n QMC.Inject('$qui', '$scope', 'UserService', 'QmcLanguageService', 'QmcPermissionService', 'FachleistungService')\n ], UserGlobalSettingsController);\n return UserGlobalSettingsController;\n }());\n Home.UserGlobalSettingsController = UserGlobalSettingsController;\n })(Home = QMC.Home || (QMC.Home = {}));\n})(QMC || (QMC = {}));\nvar QMC;\n(function (QMC) {\n var Home;\n (function (Home) {\n var NewsFeedDirective = /** @class */ (function () {\n function NewsFeedDirective($http, $sce, userService) {\n var _this = this;\n this.$http = $http;\n this.$sce = $sce;\n this.userService = userService;\n this.restrict = 'E';\n this.templateUrl = './NewsFeed';\n this.replace = true;\n this.scope = {};\n this.ignoreNewsFeed = false;\n this.loading = {\n feed: false,\n setting: false\n };\n this.link = function (scope) {\n scope.ignore = false;\n scope.loadLink = false;\n _this.loading.feed = true;\n scope.feed = [];\n _this.loading.setting = true;\n _this.userService.getUserSettings(['NEWSFEED.LAST', 'NEWSFEED.IGNORE', 'NEWSFEED.URL']).then(function (dataSettings) {\n if (dataSettings[0] !== '')\n _this.lastMessageId = dataSettings[0].value;\n _this.ignoreNewsFeed = dataSettings[1].value.toLowerCase().trim() === 'true';\n _this.loading.setting = false;\n scope.ignore = dataSettings[1].value.toLowerCase() === 'true';\n var url = dataSettings[2].value !== '' ? dataSettings[2].value : 'https://update.qmcenter.de/technews-de.xml';\n _this.$http({\n url: url,\n method: 'GET',\n cache: false,\n headers: { 'Content-Type': 'application/xml' },\n transformResponse: function (data) { return $.parseXML(data); }\n }).then(function (res) {\n var items = res.data.getElementsByTagName('item');\n for (var i = 0; i < items.length; i++) {\n var item = items[i];\n if (!item)\n continue;\n scope.feed.push({\n title: _this.$sce.trustAsHtml(item.getElementsByTagName('title')[0] ? item.getElementsByTagName('title')[0].innerHTML : ''),\n text: _this.$sce.trustAsHtml(item.getElementsByTagName('description')[0] ? item.getElementsByTagName('description')[0].innerHTML.replace(']]>', '') : ''),\n link: item.getElementsByTagName('link')[0] ? item.getElementsByTagName('link')[0].textContent : '',\n date: _this.uniqueDate(scope.feed, item.getElementsByTagName('pubDate')[0] ? item.getElementsByTagName('pubDate')[0].textContent : '')\n });\n }\n _this.loading.feed = false;\n if (scope.feed.length > 0) {\n scope.current = scope.feed[0];\n _this.showNewsFeed(scope);\n scope.selectedItem = scope.current.date;\n }\n });\n });\n scope.dismiss = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var settings = {\n settings: [\n { key: 'NEWSFEED.LAST', value: scope.feed[0].date },\n { key: 'NEWSFEED.IGNORE', value: args[1].toString() }\n ]\n };\n this.userService.setUserSettings(settings).then(function () { });\n $('#newsFeedModal').modal('hide');\n }.bind(_this, _this);\n scope.$watch('selectedItem', function (newValue, oldValue) {\n if (newValue === oldValue)\n return;\n for (var _i = 0, _a = scope.feed; _i < _a.length; _i++) {\n var news = _a[_i];\n if (news.date === newValue) {\n scope.current = news;\n if (document.getElementById('newsFeedExternalContent') && $('#newsFeedModal').hasClass('in'))\n document.getElementById('newsFeedExternalContent').setAttribute('src', news.link);\n break;\n }\n }\n });\n scope.openModal = function () {\n $('#newsFeedModal').modal('show');\n document.getElementById('newsFeedExternalContent').setAttribute('src', scope.current.link);\n };\n };\n }\n NewsFeedDirective.prototype.showNewsFeed = function (scope) {\n var _a;\n if (this.loading.feed || this.loading.setting || this.ignoreNewsFeed || this.lastMessageId === scope.current.date)\n return;\n $('#newsFeedModal').modal('show');\n document.getElementById('newsFeedExternalContent').setAttribute('src', (_a = scope.current) === null || _a === void 0 ? void 0 : _a.link);\n };\n NewsFeedDirective.prototype.uniqueDate = function (feed, date) {\n if (date.length === 0)\n date = new Date().toString();\n for (var _i = 0, feed_1 = feed; _i < feed_1.length; _i++) {\n var item = feed_1[_i];\n if (item.date === date) {\n date = date + \"_\";\n }\n }\n return date;\n };\n NewsFeedDirective = __decorate([\n QMC.Directive('QMC.Home', 'qmNewsFeed', ['$http', '$sce', 'UserService'])\n ], NewsFeedDirective);\n return NewsFeedDirective;\n }());\n Home.NewsFeedDirective = NewsFeedDirective;\n ;\n })(Home = QMC.Home || (QMC.Home = {}));\n})(QMC || (QMC = {}));\nvar QMC;\n(function (QMC) {\n var Home;\n (function (Home) {\n var VersionDirective = /** @class */ (function () {\n function VersionDirective($location, userService) {\n var _this = this;\n this.$location = $location;\n this.userService = userService;\n this.restrict = 'E';\n this.templateUrl = './version';\n this.replace = true;\n this.scope = {\n versionInfo: '@',\n };\n this.link = function (scope) {\n _this.getVersions(scope);\n };\n }\n VersionDirective.prototype.getVersions = function (scope) {\n this.userService.getVersionInfo().then(function (data) {\n scope.versionInfo = data;\n if (data.webClientVersion.substring(0, 3) != data.qmcServerVersion.substring(0, 3))\n $('#versionErrorModal').modal('show');\n }).catch(function (data) {\n if (JSON.stringify(data).toLocaleLowerCase().indexOf(\"txtext\") > 0 || data == 500) {\n setTimeout(function () {\n $('#serverErrorModal').modal('show');\n }, 5000);\n }\n });\n };\n VersionDirective = __decorate([\n QMC.Directive('QMC.Home', 'qmVersion', ['$location', 'UserService'])\n ], VersionDirective);\n return VersionDirective;\n }());\n Home.VersionDirective = VersionDirective;\n })(Home = QMC.Home || (QMC.Home = {}));\n})(QMC || (QMC = {}));\nvar QMC;\n(function (QMC) {\n var Home;\n (function (Home) {\n var ChangelogController = /** @class */ (function () {\n /**\n * QMC.Home.Changelog\n * @constructor\n * @param $location\n * @param $timeout\n * @param $qui\n */\n function ChangelogController($http, $location, $timeout, $qui, userService) {\n var _this = this;\n this.$http = $http;\n this.$location = $location;\n this.$timeout = $timeout;\n this.$qui = $qui;\n this.userService = userService;\n this.versions = [];\n $qui.init($qui.getSectionColor($location.path()), function () {\n $qui.anonAvatar();\n $qui.bindEvents();\n });\n this.userService.getVersionInfo().then(function (data) {\n var splitted = data.webClientVersion.split('.');\n console.log(data, splitted);\n for (var base = splitted[0]; base >= 6; base--) {\n for (var sub = splitted[1]; sub >= 0; sub--) {\n _this.versions.push({\n base: base,\n sub: sub,\n url: 'https://service.daarwin.de/changelogs/changelog-myneva-daarwin-web-'\n + base + '-' + sub + '/',\n newest: base === splitted[0] && sub === splitted[1],\n loaded: false\n });\n }\n }\n for (var i = 3; i >= 0; i--) {\n _this.versions.push({\n base: 5,\n sub: i,\n url: 'https://service.daarwin.de/changelogs/changelog-myneva-daarwin-web-'\n + 5 + '-' + i + '/',\n newest: false,\n loaded: false\n });\n }\n for (var i = 5; i >= 0; i--) {\n _this.versions.push({\n base: 4,\n sub: i,\n url: 'https://service.daarwin.de/changelogs/changelog-myneva-daarwin-web-'\n + 4 + '-' + i + '/',\n newest: false,\n loaded: false\n });\n }\n for (var i = 14; i >= 2; i--) {\n _this.versions.push({\n base: 3,\n sub: i,\n url: (i > 8\n ? 'https://service.daarwin.de/changelogs/changelog-myneva-daarwin-web-'\n : 'https://service.daarwin.de/changelogs/changelog-daarwin-web-')\n + 3 + '-' + i + '/',\n newest: false,\n loaded: false\n });\n }\n console.log(_this.versions);\n });\n }\n ChangelogController = __decorate([\n QMC.Controller('QMC.Home', 'ChangelogController'),\n QMC.Inject('$http', '$location', '$timeout', '$qui', 'UserService')\n ], ChangelogController);\n return ChangelogController;\n }());\n Home.ChangelogController = ChangelogController;\n })(Home = QMC.Home || (QMC.Home = {}));\n})(QMC || (QMC = {}));\n\n//# sourceMappingURL=../maps/qmc.home.js.map\n"],"names":["QMC","__decorate","this","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__extends","extendStatics","b","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__","constructor","prototype","create","angular","module","Home","HomeController","$location","$timeout","$qui","fachleistungService","$scope","terminService","userService","lng","permissionService","$state","_this","canModifyReportText","showPlaned","showRaw","birthdayWidget","awayWidget","appointmentWidget","init","getSectionColor","path","anonAvatar","bindEvents","events","$","parent","attr","getUserSettings","then","data","waitForEl","landingpage","value","toLowerCase","localStorage","setItem","removeItem","window","sessionStorage","getItem","location","href","substring","indexOf","getGlobalSettings","globalData","days","parseInt","daysFuture","isNaN","Common","UserSettingConstantsAndDefaults","PLANEDRAWDAYS","PLANEDDAYSFUTURE","toLocaleLowerCase","GetPlanedAndRawDocumentations","getPermissionsByObjectTypes","modify","GetMiniWidgetClasses","count","even","Math","floor","getSmMiniWidgetColSpan","span","innerWidth","affixAgent","checkForDatetime","h","Date","getHours","translate","sayHello","dayTime","greet","note","title","fullName","message","icon","status","timer","delay","hasClass","addClass","notify","width","css","affix","offset","top","on","height","innerHeight","currentfilter","entry","console","log","val","isCurrent","getPlannedDocumentations","planedDocumentations","getRawDocumentations","rawDocumentations","setStandardNavTemp","getNavigation","Constants","DEFAULT_NAV_ID","createNav","setTimeout","metisMenu","Controller","Inject","NavConfigurationController","isSavingNav","newContainerName","qmIcons","selectedIcon","notSupported","selectedFileNames","uploads","importName","checkIe","iconName","styleSheets","document","j","cssRules","undefined","selectorText","startsWith","push","substr","loading","getAvailableNavs","selectedNavId","getSettingValue","loadNav","navColors","bodyColorClasses","split","shift","$watch","stripSuffix","favToggle","id","checkIfFav","currentNav","subNav","removeFromNavigationRecursive","list","convertNavigationPageItemToNavigationItem","getNavItemById","getNavColorByTargetIdRecursive","mainNav","createPreview","navigationItemId","toggleIcon","createNewContainer","modal","isSecondLevel","newContainerParentId","found","container","color","newContainerColor","link","GUID_EMPTY","subItems","generateGuid","type","addItemToNav","scopeApply","initDnd","isFix","dndDropTargets","querySelectorAll","dndDraggables","classList","contains","add","addEventListener","handleNavElementDragEnter","handleNavElementDragLeave","handleNavElementDragOver","handleNavElementDrop","bind","handleDragStart","handleNavElementDragEnd","e","style","opacity","dataTransfer","setData","effectAllowed","preventDefault","parentNode","isValidTarget","types","includes","borderBottom","dropEffect","_scope","stopPropagation","dropId","getData","dropType","dropSource","removeFromNavigation","addItemToCandidates","addSubItemsToCandidates","getItemFromNavRecursive","tagName","removeItemFromCandidate","checkIfIdChildInNav","fixContainerTypes","itemsToToggle","navItem","targetId","itemToAdd","unshift","addItemToNavRecursive","navArray","copiedItemToAdd","index","splice","copy","navigationItems","item","languageTag","array","result","navigationCandidates","sort","a","textA","toUpperCase","textB","itemList","filter","obj","recursiveResult","previewUl","getElementById","favArea","firstChild","removeChild","createPreviewForSubItems","createSubNav","placeholder","createElement","setAttribute","appendChild","parentUl","items","is2ndLvl","create1stLvlNavContainer","create2ndLvlNavContainer","createNavItem","li","spanFav","imageFav","onclick","spanImage","image","createTextNode","containerId","imageSpan","ul","arrow","itemContainer","div","iconSpan","textSpan","parentId","childId","defaultValue","settings","grep","swap","inputArray","index_A","index_B","temp","replace","random","toString","isSub","exportNav","name","navs","caption","element","encodeURIComponent","JSON","stringify","display","body","click","openImportModal","openFileSelector","fileSelector","file","files","ua","navigator","userAgent","msie","rv","edge","setFile","imported","base64","b64DecodeUnicode","parse","postNewNavigation","createdObjectId","finally","str","decodeURIComponent","atob","map","charCodeAt","slice","join","loadingNav","getNavigationItems","getAvailableNavigations","groupName","navsMap","x","text","group","createNewNav","newNavName","copyNav","saveNav","putNavigation","successNote","deleteNav","deleteNavigation","setNav","setUserSettings","reloadNav","_super","UserService","$http","$q","call","BaseService","putNewPassword","currentPassword","newPassword","put","objectId","NewPassword","CurrentPassword","getCheckPasswordRules","post","Password","getVersionInfo","get","info","deleteSession","delete","updateSession","getUserUpdates","keys","webvalue","global","webValue","putParameter","setGlobalSettings","getStates","getFederalStates","stateId","getFederalStateAssignments","isHoliday","putFederalStateAssignments","getSettingWvModel","navId","getCoverReportTemplates","objectType","getElaborativeWarningWv","getActionLogEntries","dbConnectionString","postActionLogEntry","getSurvey","dismissSurvey","performed","$inject","Service","service","ChangePasswordController","mustChangePassword","getParameterByName","changePasswordErrorMessage","hide","url","results","RegExp","exec","changePassword","msg","checkPassword","error","success","errorList","errorListItem","password","catch","fieldErrors","fieldError","UserSettingsController","globalPermission","planedRawDays","planedDaysFuture","showDateToFLS","SHOWDATETOFLS","showDateToAZN","SHOWDATETOAZN","showMonthFilterFls","SHOWMONTHFILTERFLS","signatureHideReports","SIGNATUREHIDEREPORTS","flsWeekplanningShowHoliday","FLSWEEKPLANNERSHOWHOLIDAY","flsWeekplanningShowVacation","flsWeekplanningShowPublicHoliday","weekPlannerEventLength","weekplannerShowUnplannableCases","tasksFinishedPast","FINISHEDTASKSDAYS","landingPage","LANDINGPAGE","flsSummaryFormatted","shouldLoadTableData","SHOULDLOADTABLEDATA","showTimeInTable","SHOWTIMEINSTEADOFDECIMAL","askDroppedService","ASKDROPPEDSERVICE","dontShowIndirectHours","flsDocuSummaryEntrys","clientCoverTemplate","getReweNumber","flsCaseFilterWithDirectCarerAllocation","AppointmentAddCalendarOnlyUsersEmployee","AppointmentAddCalendarOnlyUsersClient","AppointmentAddCalendarOnlyUsersAuthority","active","orga","subOrga","endOfWeek","daysToFuture","daysToPast","showNewsFeed","logoReroute","birthday","clients","employees","away","holiday","disease","flsDocuSummaryPageSize","daysInPast","DAYSINPAST","showOnlyUnfetched","SHOWONLYUNFETCHED","calendarSlotSize","activateHumanize","humanizeHours","appStates","institutes","filterText","federalStateList","federalStateAssignmentList","federalStateAssignmentListChanges","clientCoverReportTemplates","getValues","loadingPermission","moduleAccess","getLandingPages","getWv","getClientCoverReportTemplates","getInstitutes","isAllowed","permissions","_i","permissions_1","perm","getValue","getValueWin","settingsWin","setValue","setValueWin","convertToBool","input","convertToInt","dval","keysWin","parseFloat","dataW","flsDefaultCareType","flsDefaultContactType","flsDefaultActivityType","saveSettings","_c","round","String","_a","_b","objectTypes","pData","stateList","selectAutoMap","selectedState","newVal","oldVal","getInstituteList","data_1","reportType","openModal","assignments","federalState","assignment","find","federalStateId","assignmentId","denotation","show","federalStateAssignmentListItemChanged","changedItem","putFederalStateAssignmentList","flsContactTypes","flsContactTypeWvModel","flsCareTypes","flsCareTypeWvModel","flsActivityTypes","flsActivityTypeWvModel","resetBrowserCache","LocalStorageConstants","USER_MODULE_PERMISSIONS","clear","reload","UserGlobalSettingsController","flsService","boolean","signingPersonIsClient","inactivityTime","INACTIVITYTIMEOUT","flsMinutesToSign","FLSMINUTESTOSIGN","defaultNavId","NAVIGATION_DEFAULT_ID","defaultSigningPersonId","DEFAULTSIGNINGPERSON","defaultSigningReasonId","DEFAULTSIGNINGREASON","defaultSigningReasonText","flsSignatureReasonNotMandatory","blockSignatureModal","daysToHighlightCases","createAdditionalFls","createAdditionalFlsText","flsDistributeHours","FLS_NEUMEHREREBETREUTE_ZEITAUFFAELLEVERTEILEN","flsDistributeHoursFix","FLS_NEUMEHREREBETREUTE_ZEITAUFFAELLEVERTEILEN_FIX","flsResetTimeForManualDuration","GC_FLS_NEUMEHREREBETREUTE_ZEITRESETBEIVERTEILUNG","serverJobPollingTimer","SERVERJOBTIMERINTERVALLINSEC","flsWeekplannerIncludeFutureCases","FLS_WEEKPLANNER_INCLUDE_FUTURE_CASES","flsWeekplannerIncludePastCases","dontShowRawDocusIfEmptyIsAllowed","flsHideQuickDrivingCost","flsAllowEmptyDrivingCost","flsPredfinedTitleMode","flsPredfinedTitle","rosterShowInactive","inquireStampinOnLogin","INQUIRE_STAMPIN_ON_LOGIN","inquireStampOutOnLogout","INQUIRE_STAMPOUT_ON_LOGOUT","saVaccination","saDocVisit","saDisease","saAppointment","saAbsenteeism","saMessage","saTask","saDocument","saAccountingBook","saContactperson","flsShowManuelTime","richTextImages","disabled","size","flsTitleSetting","getPermissionsByObjectType","navigations","getSignatureWv","flsSigningPersons","signingPersons","flsSigningReasons","reasons","$watchCollection","newValue","oldValue","setSigningPersonSettingVisibility","SIGNATURE_SIGNING_PERSON_CLIENT","getValueGlobal","globalSettings","setValueGlobal","getValueGlobalWin","globalSettingsWin","setValueGlobalWin","data2","SMARTACTIONCACHE","NewsFeedDirective","$sce","restrict","templateUrl","scope","ignoreNewsFeed","feed","setting","ignore","loadLink","dataSettings","lastMessageId","trim","method","cache","headers","Content-Type","transformResponse","parseXML","res","getElementsByTagName","trustAsHtml","innerHTML","textContent","date","uniqueDate","current","selectedItem","dismiss","args","news","feed_1","Directive","VersionDirective","versionInfo","getVersions","webClientVersion","qmcServerVersion","ChangelogController","versions","splitted","base","sub","newest","loaded"],"mappings":"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"}