{"version":3,"file":"main.5597014afe2cc7e2.js","mappings":"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","sources":["./src/app/share/components/add-institution/add-institution.component.ts","./src/app/share/components/add-institution/add-institution.component.html","./src/app/share/components/autocompletebox-osm/autocompletebox-osm.component.ts","./src/app/share/components/autocompletebox-osm/autocompletebox-osm.component.html","./src/app/share/components/calculator/calculator.component.ts","./src/app/share/components/calculator/calculator.component.html","./src/app/share/components/card/card.component.ts","./src/app/share/components/card/card.component.html","./src/app/share/components/change-password/change-password.component.ts","./src/app/share/components/change-password/change-password.component.html","./src/app/share/components/contact/contact.component.ts","./src/app/share/components/contact/contact.component.html","./src/app/share/components/einrichtung-details/einrichtung-details.component.ts","./src/app/share/components/einrichtung-details/einrichtung-details.component.html","./src/app/share/components/imprint/imprint.component.ts","./src/app/share/components/imprint/imprint.component.html","./src/app/share/components/map-osm/map-osm.component.ts","./src/app/share/components/map-osm/map-osm.component.html","./src/app/share/components/page-container/page-container.component.ts","./src/app/share/components/page-container/page-container.component.html","./src/app/share/components/privacy/privacy.component.ts","./src/app/share/components/privacy/privacy.component.html","./src/app/share/components/remove-account/remove-account.component.ts","./src/app/share/components/remove-account/remove-account.component.html","./src/app/share/helper/route-keys.helper.ts","./src/app/share/components/table-container/table-container.component.ts","./src/app/share/components/table-container/table-container.component.html","./src/app/share/injection/injector.module.ts","./src/app/share/pipes/language.pipe.ts","./src/app/share/services/api.service.ts","./src/app/share/services/auth.service.ts","./src/app/share/services/config.service.ts","./src/app/share/services/language.service.ts","./src/app/share/services/mobile.service.ts","./src/app/share/services/popup.service.ts","./src/app/share/services/storage.service.ts","./src/app/share/services/url.service.ts","./src/app/share/guards/auth.guard.ts","./src/app/app-routing.module.ts","./src/app/share/components/error-handler-popup/error-handler-popup.component.ts","./src/app/share/components/error-handler-popup/error-handler-popup.component.html","./src/app/app.component.ts","./src/app/app.component.html","./src/app/share/interceptors/auth.interceptor.ts","./src/app/share/guards/rollen.guard.ts","./src/app/share/interceptors/error.interceptor.ts","./src/app/share/helper/error.handler.ts","./src/app/app.module.ts","./src/environments/environment.prod.ts","./src/main.ts"],"sourcesContent":["import { Component, ViewChild, OnDestroy } from '@angular/core';\r\nimport { DxPopupComponent } from 'devextreme-angular/ui/popup';\r\nimport { Subscription } from 'rxjs';\r\nimport { PopupService } from '../../services/popup.service';\r\nimport { ApiService } from 'src/app/share/services/api.service';\r\nimport { UrlService } from 'src/app/share/services/url.service';\r\nimport { RouteKeys } from 'src/app/share/helper/route-keys.helper';\r\nimport { LanguageService } from '../../services/language.service';\r\nimport { DxFormComponent } from 'devextreme-angular';\r\n\r\n@Component({\r\n selector: 'app-add-institution',\r\n templateUrl: './add-institution.component.html',\r\n styleUrls: ['./add-institution.component.scss'],\r\n})\r\nexport class AddInstitutionComponent implements OnDestroy {\r\n @ViewChild('addInstitutionPopup', { static: false }) addInstitutionPopup: DxPopupComponent;\r\n @ViewChild('form', { static: false }) form: DxFormComponent;\r\n\r\n subscription_get_PopupAsObservable: Subscription;\r\n subscription_get_externSelectedIdsQueryParams: Subscription;\r\n institutionList: any[] = [];\r\n selectedIds: number[] = [];\r\n formData: any = {\r\n id: null,\r\n };\r\n selectedLanguageObservable: Subscription;\r\n\r\n constructor(\r\n private popupService: PopupService,\r\n private apiService: ApiService,\r\n private urlService: UrlService,\r\n private languageService: LanguageService\r\n ) {\r\n this.onCloseClick = this.onCloseClick.bind(this);\r\n this.onSelectClick = this.onSelectClick.bind(this);\r\n\r\n this.subscription_get_externSelectedIdsQueryParams = this.urlService.get_externSelectedIdsQueryParams.subscribe((ids) => {\r\n if (ids !== null && ids !== undefined && ids.length > 0) {\r\n this.selectedIds = ids;\r\n } else {\r\n this.selectedIds = [];\r\n }\r\n });\r\n\r\n this.selectedLanguageObservable = languageService.get_selectedLanguageObservable.subscribe((lang) => {\r\n if (this.form !== undefined) {\r\n this.form.instance.repaint();\r\n }\r\n });\r\n\r\n this.subscription_get_PopupAsObservable = this.popupService.get_addInstitutionPopupAsObservable.subscribe((context) => {\r\n if (context !== null && context !== undefined && context.open === true && this.addInstitutionPopup !== undefined) {\r\n this.addInstitutionPopup.instance.show();\r\n\r\n this.apiService.post(RouteKeys.Extern.get_search, this.formData).subscribe(\r\n (response) => {\r\n this.institutionList = response.filter((x) => x.isSelectable === true);\r\n for (let index = 0; index < this.selectedIds.length; index++) {\r\n const id = this.selectedIds[index];\r\n const res = this.institutionList.find((x) => x.id === id);\r\n res.visible = false;\r\n }\r\n\r\n for (let i = 0; i < this.institutionList.length; i++) {\r\n this.institutionList[i].adresse =\r\n this.institutionList[i].einrichtungsName +\r\n ' - ' +\r\n this.institutionList[i].strasse +\r\n ' ' +\r\n this.institutionList[i].hnr +\r\n (this.institutionList[i].hnrZusatz !== null && this.institutionList[i].hnrZusatz.length > 0\r\n ? this.institutionList[i].hnrZusatz\r\n : '') +\r\n ', ' +\r\n this.institutionList[i].plz +\r\n ' ' +\r\n this.institutionList[i].ort;\r\n }\r\n },\r\n (err) => {\r\n throw err;\r\n }\r\n );\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.subscription_get_externSelectedIdsQueryParams) {\r\n this.subscription_get_externSelectedIdsQueryParams.unsubscribe();\r\n }\r\n if (this.subscription_get_PopupAsObservable) {\r\n this.subscription_get_PopupAsObservable.unsubscribe();\r\n }\r\n if (this.selectedLanguageObservable) {\r\n this.selectedLanguageObservable.unsubscribe();\r\n }\r\n }\r\n\r\n onSelectClick() {\r\n if (this.formData !== null && this.formData !== undefined && this.formData.id !== null && this.formData.id !== undefined) {\r\n this.selectedIds.push(this.formData.id);\r\n\r\n this.urlService\r\n .refreshQueryParams({\r\n i: this.selectedIds.join(','),\r\n })\r\n .then(() => {\r\n this.addInstitutionPopup.instance.hide();\r\n });\r\n }\r\n }\r\n\r\n onCloseClick() {\r\n this.addInstitutionPopup.instance.hide();\r\n }\r\n\r\n onHidden(e) {\r\n this.formData.id = null;\r\n }\r\n}\r\n","\r\n \r\n
\r\n
{{ 'selectInstitution' | translate }}
\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n","import DataSource from 'devextreme/data/data_source';\r\nimport { Component, Input, Output, EventEmitter, ViewChild } from '@angular/core';\r\nimport { ApiService } from '../../services/api.service';\r\nimport { DxAutocompleteComponent } from 'devextreme-angular/ui/autocomplete';\r\n\r\n@Component({\r\n selector: 'app-autocompletebox-osm',\r\n templateUrl: './autocompletebox-osm.component.html',\r\n styleUrls: ['./autocompletebox-osm.component.scss'],\r\n})\r\nexport class AutocompleteboxOsmComponent {\r\n @ViewChild('ac', { static: false }) ac: DxAutocompleteComponent;\r\n\r\n @Input() valueType: string = 'address';\r\n @Input() placeholder: string;\r\n @Input() searchTimeout: number = 500;\r\n @Input() minSearchLength: number = 3;\r\n @Input() centerLat: number;\r\n @Input() centerLng: number;\r\n @Input() whiteListType: string = 'all_address';\r\n @Input() value: any;\r\n @Input() isRequired: boolean = false;\r\n\r\n @Output() onSelected: EventEmitter = new EventEmitter();\r\n @Output() onChanged: EventEmitter = new EventEmitter();\r\n\r\n autoCompleteDataSource: DataSource;\r\n\r\n private whiteLists: any = {\r\n private_address: {\r\n whiteList_countrycode: ['de'],\r\n whiteList_key: ['highway', 'place', 'building'],\r\n whiteList_value: ['residential', 'house', 'unclassified', 'apartments', 'detached', 'yes', 'secondary', 'track', 'living_street'],\r\n whiteList_type: ['house', 'street'],\r\n },\r\n insttution_address: {\r\n whiteList_countrycode: ['de'],\r\n whiteList_key: ['highway', 'amenity', 'building'],\r\n whiteList_value: ['kindergarten', 'residential', 'house', 'unclassified', 'apartments', 'detached', 'yes', 'secondary', 'track'],\r\n whiteList_type: ['house', 'street'],\r\n },\r\n all_address: {\r\n whiteList_countrycode: ['de'],\r\n whiteList_key: ['highway', 'place', 'amenity', 'building'],\r\n whiteList_value: [\r\n 'kindergarten',\r\n 'residential',\r\n 'house',\r\n 'unclassified',\r\n 'apartments',\r\n 'detached',\r\n 'yes',\r\n 'secondary',\r\n 'track',\r\n 'office',\r\n 'service',\r\n 'path',\r\n 'footway',\r\n 'tertiary',\r\n 'living_street',\r\n ],\r\n whiteList_type: ['house', 'street'],\r\n },\r\n };\r\n\r\n constructor(private apiService: ApiService) {\r\n this.getLatLonFromAddress = this.getLatLonFromAddress.bind(this);\r\n\r\n this.autoCompleteDataSource = new DataSource({\r\n key: 'place_id',\r\n load: (loadOptions) => {\r\n if (!loadOptions.searchValue) {\r\n return null;\r\n }\r\n\r\n const url = 'https://photon.komoot.io/api?q=' + loadOptions.searchValue + '&lang=de&lat=' + this.centerLat + '&lon=' + this.centerLng;\r\n\r\n return this.apiService\r\n .get(url)\r\n .toPromise()\r\n .then((response) => {\r\n const results: any[] = [];\r\n\r\n response.features.forEach((element) => {\r\n const newResult = this.mapSearchResults(element);\r\n\r\n if (newResult !== undefined && newResult !== null) {\r\n const exist = results.find((x) => x.display_name === newResult.display_name);\r\n if (exist === undefined || exist === null) {\r\n results.push(newResult);\r\n }\r\n }\r\n });\r\n return results;\r\n });\r\n },\r\n });\r\n }\r\n\r\n getLatLonFromAddress(addr: string, cb: (addr: any) => void) {\r\n const url = 'https://photon.komoot.io/api?q=' + addr;\r\n\r\n this.apiService.get(url).subscribe((response) => {\r\n if (response && response.features && response.features.length > 0) {\r\n const result = this.mapSearchResults(response.features[0]);\r\n if (result !== undefined && result !== null && cb !== undefined && cb !== null) {\r\n cb(result);\r\n }\r\n }\r\n });\r\n }\r\n\r\n mapSearchResults(item) {\r\n if (item == undefined || item == null) {\r\n return null;\r\n }\r\n if (\r\n item.properties.countrycode &&\r\n !this.whiteLists[this.whiteListType].whiteList_countrycode.includes(item.properties.countrycode.toLowerCase())\r\n ) {\r\n return null;\r\n }\r\n\r\n if (item.properties.type && !this.whiteLists[this.whiteListType].whiteList_type.includes(item.properties.type)) {\r\n return null;\r\n }\r\n\r\n if (item.properties.osm_key && !this.whiteLists[this.whiteListType].whiteList_key.includes(item.properties.osm_key)) {\r\n return null;\r\n }\r\n\r\n if (item.properties.osm_value && !this.whiteLists[this.whiteListType].whiteList_value.includes(item.properties.osm_value)) {\r\n return null;\r\n }\r\n\r\n let result: any = {\r\n place_id: item.properties.osm_id,\r\n display_name: '',\r\n lon: item.geometry.coordinates[0],\r\n lat: item.geometry.coordinates[1],\r\n org: item.properties,\r\n district:\r\n item.properties.district !== undefined &&\r\n item.properties.district !== null &&\r\n item.properties.district.length > 0 &&\r\n item.properties.district !== item.properties.city\r\n ? item.properties.district\r\n : '',\r\n locality:\r\n item.properties.locality !== undefined &&\r\n item.properties.locality !== null &&\r\n item.properties.locality.length > 0 &&\r\n item.properties.locality !== item.properties.district\r\n ? item.properties.locality\r\n : '',\r\n };\r\n\r\n const street = item.properties.street !== undefined ? item.properties.street : null;\r\n const housenumberString = item.properties.housenumber !== undefined ? item.properties.housenumber : null;\r\n const postcode = item.properties.postcode !== undefined ? item.properties.postcode : null;\r\n const city = item.properties.city !== undefined ? item.properties.city : null;\r\n const state = item.properties.state !== undefined ? item.properties.state : null;\r\n const name = item.properties.name !== undefined ? item.properties.name : null;\r\n const district = result.district !== undefined && result.district.length > 0 ? result.district : null;\r\n\r\n switch (item.properties.type) {\r\n case 'street':\r\n result.display_name = name;\r\n result.street = name;\r\n\r\n if (housenumberString !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ' ';\r\n }\r\n\r\n let housenumber = housenumberString.match(/\\d+/g);\r\n if (housenumber !== undefined && housenumber !== null && housenumber.length > 0) {\r\n housenumber = housenumber[0];\r\n } else {\r\n housenumber = null;\r\n }\r\n\r\n let housenumberSupplement = housenumberString.match(/[a-zA-Z]+/g);\r\n if (housenumberSupplement !== undefined && housenumberSupplement !== null && housenumberSupplement.length > 0) {\r\n housenumberSupplement = housenumberSupplement[0];\r\n } else {\r\n housenumberSupplement = null;\r\n }\r\n\r\n result.display_name += housenumberString;\r\n result.housenumber = housenumber;\r\n result.supplement = housenumberSupplement;\r\n } else {\r\n result.housenumber = null;\r\n }\r\n\r\n if (postcode !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ', ';\r\n }\r\n result.display_name += postcode;\r\n result.postcode = postcode;\r\n } else {\r\n result.postcode = null;\r\n }\r\n\r\n if (city !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ' ';\r\n }\r\n result.display_name += city;\r\n result.city = city;\r\n if (district !== null) {\r\n result.display_name += ' - ' + result.district;\r\n }\r\n } else if (state !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ' ';\r\n }\r\n\r\n if (district !== null) {\r\n result.city = result.district;\r\n result.display_name += result.district;\r\n if (result.locality !== undefined && result.locality !== null && result.locality.length > 0) {\r\n result.display_name += ' - ' + result.locality;\r\n result.district = result.locality;\r\n } else {\r\n result.district = '';\r\n }\r\n } else {\r\n result.display_name += state;\r\n result.city = state;\r\n }\r\n } else {\r\n result.city = null;\r\n }\r\n\r\n break;\r\n case 'house':\r\n if (street !== null) {\r\n result.display_name = street;\r\n result.street = street;\r\n } else {\r\n result.street = null;\r\n }\r\n\r\n if (housenumberString !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ' ';\r\n }\r\n\r\n let housenumber = housenumberString.match(/\\d+/g);\r\n if (housenumber !== undefined && housenumber !== null && housenumber.length > 0) {\r\n housenumber = housenumber[0];\r\n } else {\r\n housenumber = null;\r\n }\r\n\r\n let housenumberSupplement = housenumberString.match(/[a-zA-Z]+/g);\r\n if (housenumberSupplement !== undefined && housenumberSupplement !== null && housenumberSupplement.length > 0) {\r\n housenumberSupplement = housenumberSupplement[0];\r\n } else {\r\n housenumberSupplement = null;\r\n }\r\n\r\n result.display_name += housenumberString;\r\n result.housenumber = housenumber;\r\n result.supplement = housenumberSupplement;\r\n } else {\r\n result.housenumber = null;\r\n }\r\n\r\n if (postcode !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ', ';\r\n }\r\n result.display_name += postcode;\r\n result.postcode = postcode;\r\n } else {\r\n result.postcode = null;\r\n }\r\n\r\n if (city !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ' ';\r\n }\r\n result.display_name += city;\r\n result.city = city;\r\n\r\n if (district !== null) {\r\n result.display_name += ' - ' + result.district;\r\n }\r\n } else if (state !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ' ';\r\n }\r\n\r\n if (district !== null) {\r\n result.city = result.district;\r\n result.display_name += result.district;\r\n if (result.locality !== undefined && result.locality !== null && result.locality.length > 0) {\r\n result.display_name += ' - ' + result.locality;\r\n result.district = result.locality;\r\n } else {\r\n result.district = '';\r\n }\r\n } else {\r\n result.display_name += state;\r\n result.city = state;\r\n }\r\n } else {\r\n result.city = null;\r\n }\r\n break;\r\n default:\r\n console.warn('Unbekannter Type: ' + item.properties.type, item);\r\n result = null;\r\n break;\r\n }\r\n\r\n return result;\r\n }\r\n\r\n onSelectionChanged(e) {\r\n if (e && e.selectedItem !== undefined && e.selectedItem !== null) {\r\n if (this.valueType === 'street') {\r\n setTimeout(() => {\r\n this.value = e.selectedItem.street;\r\n this.ac.instance.option('value', e.selectedItem.street);\r\n }, 10);\r\n }\r\n\r\n this.onSelected.next(e.selectedItem);\r\n }\r\n }\r\n\r\n onChange(e) {\r\n this.onChanged.next(e);\r\n }\r\n\r\n onValueChanged(e) {\r\n let isAcValid = false;\r\n if (this.ac !== undefined && this.ac !== null) {\r\n this.value = e.value;\r\n if (e.value === undefined || e.value === null || e.value.trim() === '') {\r\n this.onChanged.next(null);\r\n }\r\n isAcValid = this.validate();\r\n }\r\n }\r\n\r\n validate(): boolean {\r\n if (!this.isRequired) {\r\n return true;\r\n }\r\n if (this.value !== undefined && this.value !== null && this.value.length > 0) {\r\n this.ac.isValid = true;\r\n return true;\r\n } else {\r\n this.ac.isValid = false;\r\n return false;\r\n }\r\n }\r\n}\r\n","\r\n","import { Component, OnDestroy, OnInit, ViewChild } from '@angular/core';\r\nimport { DxFormComponent } from 'devextreme-angular/ui/form';\r\nimport { RouteKeys } from '../../helper/route-keys.helper';\r\nimport { ApiService } from '../../services/api.service';\r\nimport { ConfigService } from '../../services/config.service';\r\nimport { LanguageService } from '../../services/language.service';\r\nimport { Router } from '@angular/router';\r\nimport { Subscription } from 'rxjs/internal/Subscription';\r\n\r\n@Component({\r\n selector: 'app-calculator',\r\n templateUrl: './calculator.component.html',\r\n styleUrls: ['./calculator.component.scss'],\r\n})\r\nexport class CalculatorComponent implements OnInit, OnDestroy {\r\n @ViewChild('calcForm', { static: false }) calcForm: DxFormComponent;\r\n\r\n formData: any = {};\r\n hinweisText: string;\r\n inProcess: boolean = false;\r\n betrag: number = 0;\r\n msg: string;\r\n istBerechnet: boolean = false;\r\n istEKAbhaengig: boolean = true;\r\n istZaehl_KZ: boolean = false;\r\n istErmaessigungsTypRelevant: boolean = true;\r\n einkommensArt: number = 0;\r\n einkommenText: string = '';\r\n kind_format: string = \"#'.' \" + this.languageService.translate('positionOfKid_2');\r\n betreuungsUmfangDataSource: any;\r\n selectedLanguageObservable: Subscription;\r\n betreuungsArtDataSource: any[] = this.configService.getKatalogMitKeineAntragstellung('BetreuungsArtKatalog');\r\n\r\n constructor(public configService: ConfigService, private languageService: LanguageService, private apiService: ApiService, public router: Router) {\r\n this.onCalcClick = this.onCalcClick.bind(this);\r\n this.onClickReset = this.onClickReset.bind(this);\r\n this.onMaxEkValueChanged = this.onMaxEkValueChanged.bind(this);\r\n this.onBetreuungsArtValueChanged = this.onBetreuungsArtValueChanged.bind(this);\r\n\r\n this.selectedLanguageObservable = languageService.get_selectedLanguageObservable.subscribe((lang) => {\r\n this.setEinkommensText();\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.hinweisText = this.configService.getGlobalSetting('brBemerkung' + this.languageService.getLanguage().toUpperCase());\r\n this.istEKAbhaengig = this.configService.getGlobalSetting('brEK_Abhaengig') === '1' ? true : false;\r\n this.istZaehl_KZ = this.configService.getGlobalSetting('brErmaessigungsTyp') === '1' ? true : false;\r\n this.einkommensArt = parseInt(this.configService.getGlobalSetting('brEinkommensArt'));\r\n this.setEinkommensText();\r\n const _berArt = parseInt(this.configService.getGlobalSetting('brWerteTyp'));\r\n if (_berArt === 2) {\r\n this.istErmaessigungsTypRelevant = false;\r\n }\r\n\r\n this.formData.istMaxEinkommen = false;\r\n this.formData.alleinerziehend = false;\r\n this.formData.einkommen = undefined;\r\n this.formData.anzahlKinder = 1;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.selectedLanguageObservable) {\r\n this.selectedLanguageObservable.unsubscribe();\r\n }\r\n }\r\n\r\n onCalcClick(e) {\r\n const validate = this.calcForm.instance.validate();\r\n if (validate.isValid) {\r\n this.inProcess = true;\r\n\r\n this.apiService.post(RouteKeys.Calculator.get_beitrag, this.formData).subscribe({\r\n next: (response) => {\r\n const result: any = response;\r\n if (result !== null && result !== undefined && result.beitrag !== null && result.beitrag !== undefined) {\r\n this.betrag = result.beitrag;\r\n this.istBerechnet = true;\r\n }\r\n this.inProcess = false;\r\n },\r\n error: (err) => {\r\n let _err;\r\n\r\n if (err.error || err.Error) {\r\n const ___err = err.error || err.Error;\r\n if (___err.message || ___err.Message) {\r\n _err = ___err.message || ___err.Message;\r\n } else {\r\n _err = ___err;\r\n }\r\n } else if (err.message || err.Message) {\r\n _err = err.message || err.Message;\r\n } else {\r\n _err = err;\r\n }\r\n this.inProcess = false;\r\n throw _err || this.languageService.translate('serverError');\r\n },\r\n });\r\n } else {\r\n this.istBerechnet = false;\r\n }\r\n }\r\n\r\n onClickReset() {\r\n this.calcForm.instance.resetValues();\r\n this.formData.istMaxEinkommen = false;\r\n this.formData.alleinerziehend = false;\r\n this.istBerechnet = false;\r\n this.betrag = 0;\r\n this.formData.einkommen = 0.0;\r\n this.calcForm.instance.repaint();\r\n }\r\n\r\n onMaxEkValueChanged(e) {\r\n const ek = this.calcForm.instance.getEditor('einkommen');\r\n if (e.value === true) {\r\n ek.reset();\r\n } else {\r\n this.formData.einkommen = 0.0;\r\n ek.repaint();\r\n }\r\n }\r\n\r\n setEinkommensText() {\r\n switch (this.einkommensArt) {\r\n case 0: {\r\n this.einkommenText = this.languageService.translate('annualGrossIncome');\r\n break;\r\n }\r\n case 1: {\r\n this.einkommenText = this.languageService.translate('annualNetIncome');\r\n break;\r\n }\r\n case 2: {\r\n this.einkommenText = this.languageService.translate('mtlGrossIncome');\r\n break;\r\n }\r\n case 3: {\r\n this.einkommenText = this.languageService.translate('mtlNetIncome');\r\n break;\r\n }\r\n default: {\r\n this.einkommenText = this.languageService.translate('annualGrossIncome');\r\n }\r\n }\r\n }\r\n\r\n onBetreuungsArtValueChanged(e) {\r\n this.betreuungsUmfangDataSource = this.configService.getKatalog('BetreuungsUmfangKatalog').filter((x) => x.beziehungen.includes(e.value));\r\n if (!this.betreuungsUmfangDataSource.find((x) => x.id === this.formData.betreuungsUmfang)) {\r\n this.formData.betreuungsUmfang = undefined;\r\n }\r\n }\r\n}\r\n","\r\n\r\n
\r\n
\r\n {{'calculator' | translate}}\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n\r\n
= 0\" class=\"result-container result-ok\">\r\n {{'calcOkMessage' | translate }} {{betrag | currency:'EUR': true}}.\r\n
\r\n\r\n
\r\n {{'calcAddMessage' | translate }}\r\n
\r\n \r\n
\r\n {{'calcFailMessage_1' | translate }} {{'calcFailMessage_2' | translate}} {{'calcFailMessage_3' | translate }}\r\n
\r\n\r\n {{msg}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
","import { Component, EventEmitter, Input, OnDestroy, Output } from '@angular/core';\r\nimport { Subscription } from 'rxjs/internal/Subscription';\r\nimport { UrlService } from '../../services/url.service';\r\n\r\n@Component({\r\n selector: 'app-card',\r\n templateUrl: './card.component.html',\r\n styleUrls: ['./card.component.scss'],\r\n})\r\nexport class CardComponent implements OnDestroy {\r\n\r\n @Input () public bodyText: string = '';\r\n @Input () public headerText: string = '';\r\n @Input () public buttonText: string = '';\r\n @Input () public buttonIcon: string = '';\r\n @Input () public buttonAlignmentRight: boolean = false;\r\n @Input () public canBeDisabled: boolean = false;\r\n\r\n @Output () onBtnClick = new EventEmitter();\r\n \r\n selectedIds: number[] = [];\r\n isSelected: boolean = false;\r\n subscription_get_externSelectedIdsQueryParams: Subscription;\r\n\r\n constructor(private urlService: UrlService) { \r\n this.subscription_get_externSelectedIdsQueryParams = this.urlService.get_externSelectedIdsQueryParams.subscribe(ids=>{\r\n this.selectedIds = ids;\r\n this.isSelected = this.selectedIds.length > 0;\r\n });\r\n }\r\n\r\n onClick() {\r\n this.onBtnClick.emit();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.subscription_get_externSelectedIdsQueryParams) {\r\n this.subscription_get_externSelectedIdsQueryParams.unsubscribe();\r\n }\r\n } \r\n}\r\n","
\r\n \r\n

\r\n

\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n","import { Component, OnDestroy, OnInit, ViewChild } from '@angular/core';\r\nimport { DxFormComponent } from 'devextreme-angular/ui/form';\r\nimport { DxPopupComponent } from 'devextreme-angular/ui/popup';\r\nimport { Subscription } from 'rxjs';\r\nimport { RouteKeys } from '../../helper/route-keys.helper';\r\nimport { ApiService } from '../../services/api.service';\r\nimport { ConfigService } from '../../services/config.service';\r\nimport { LanguageService } from '../../services/language.service';\r\nimport { PopupService } from '../../services/popup.service';\r\n\r\n@Component({\r\n selector: 'app-change-password',\r\n templateUrl: './change-password.component.html',\r\n styleUrls: ['./change-password.component.scss'],\r\n})\r\nexport class ChangePasswordComponent implements OnInit, OnDestroy {\r\n @ViewChild('changePasswordPopup', { static: false }) changePasswordPopup: DxPopupComponent;\r\n @ViewChild('passwordForm', { static: false }) passwordForm: DxFormComponent;\r\n\r\n passwordFormData: any = {\r\n altPasswort: '',\r\n passwort: '',\r\n passwortConfirm: '',\r\n };\r\n\r\n msg: string = '';\r\n messageTimeout: number;\r\n inProcess: boolean = false;\r\n\r\n subscription_get_PopupAsObservable: Subscription;\r\n constructor(\r\n private languageService: LanguageService,\r\n private apiService: ApiService,\r\n private popupService: PopupService,\r\n public configService: ConfigService\r\n ) {\r\n this.onClickClose = this.onClickClose.bind(this);\r\n this.onClickSavePassword = this.onClickSavePassword.bind(this);\r\n\r\n this.subscription_get_PopupAsObservable = this.popupService.get_changePasswordPopupAsObservable.subscribe((context) => {\r\n if (context !== null && context !== undefined && context.open === true) {\r\n this.changePasswordPopup.instance.show();\r\n }\r\n });\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n ngOnDestroy(): void {\r\n if (this.subscription_get_PopupAsObservable) {\r\n this.subscription_get_PopupAsObservable.unsubscribe();\r\n }\r\n }\r\n\r\n repaintPopup() {\r\n if (this.changePasswordPopup !== undefined) {\r\n this.changePasswordPopup.instance.repaint();\r\n }\r\n }\r\n\r\n onClickSavePassword() {\r\n this.msg = '';\r\n var validationResult = this.passwordForm.instance.validate();\r\n if (validationResult.isValid) {\r\n this.inProcess = true;\r\n this.apiService.post(RouteKeys.Intern.Buerger.update_password, this.passwordFormData).subscribe(\r\n (response) => {\r\n this.inProcess = false;\r\n document.getElementById('psw_msg').className = 'msg-text color-success';\r\n this.setMessageText(this.languageService.translate('changedPassword'));\r\n setTimeout(() => {\r\n this.onClickClose();\r\n }, 3000);\r\n },\r\n (err) => {\r\n this.inProcess = false;\r\n document.getElementById('psw_msg').className = 'msg-text color-error';\r\n if (err.status === 403) {\r\n this.setMessageText(err?.error?.message || err?.error?.Message || this.languageService.translate('incorrectPassword'));\r\n } else {\r\n this.setMessageText(err?.error?.message || err?.error?.Message || this.languageService.translate('laterError'));\r\n }\r\n throw err?.error?.message || err?.error?.Message || this.languageService.translate('serverError');\r\n }\r\n );\r\n }\r\n }\r\n\r\n setMessageText(msg: string) {\r\n this.msg = msg;\r\n if (this.messageTimeout > 0) {\r\n clearTimeout(this.messageTimeout);\r\n }\r\n setTimeout(() => {\r\n this.msg = '';\r\n }, 8000);\r\n }\r\n\r\n onClickClose() {\r\n this.passwordForm.instance.resetValues();\r\n this.changePasswordPopup.instance.hide();\r\n }\r\n\r\n onPasswordChanged() {\r\n if (this.passwordFormData.passwortConfirm) {\r\n this.passwordForm.instance.validate();\r\n }\r\n }\r\n\r\n passwordComparison = () => this.passwordFormData.passwort;\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n {{ msg }}\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { DxFormComponent } from 'devextreme-angular/ui/form';\r\nimport DataSource from 'devextreme/data/data_source';\r\nimport { Subscription } from 'rxjs';\r\nimport { ApiService } from 'src/app/share/services/api.service';\r\nimport { LanguageService } from 'src/app/share/services/language.service';\r\nimport { RouteKeys } from '../../helper/route-keys.helper';\r\nimport { ConfigService } from '../../services/config.service';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-contact',\r\n templateUrl: './contact.component.html',\r\n styleUrls: ['./contact.component.scss'],\r\n})\r\nexport class ContactComponent {\r\n @ViewChild('contactForm', { static: false }) contactForm: DxFormComponent;\r\n dataSource: DataSource;\r\n loading: boolean = false;\r\n msg: string = '';\r\n timeStamp = Date.now();\r\n isFaqOn: number = 0;\r\n linkToDownload: string = '';\r\n success: boolean = false;\r\n\r\n selectedLanguageObservable: Subscription;\r\n\r\n contactFormData: any = {\r\n name: '',\r\n email: '',\r\n betreff: '',\r\n betreff1: '',\r\n nachricht: '',\r\n };\r\n\r\n confirm: boolean = false;\r\n\r\n scrollbarMode: string = 'always';\r\n\r\n constructor(private apiService: ApiService, private languageService: LanguageService, public configService: ConfigService, private router: Router) {\r\n this.selectedLanguageObservable = languageService.get_selectedLanguageObservable.subscribe((lang) => {\r\n this.dataSource = new DataSource({\r\n key: 'id',\r\n load: (loadOptions) => {\r\n loadOptions.take = 100;\r\n return this.apiService\r\n .post(RouteKeys.Faq.get_question, loadOptions)\r\n .toPromise()\r\n .then((response) => {\r\n return {\r\n data: response.data.filter((x) => !x.intern && x.sprache === lang.toUpperCase()),\r\n totalCount: response.totalCount,\r\n summary: response.summary,\r\n groupCount: response.groupCount,\r\n };\r\n })\r\n .catch((err) => {\r\n throw err.error ? err.error.message : err.message;\r\n });\r\n },\r\n });\r\n });\r\n this.isFaqOn = configService.getGlobalSettingAsNumber('isFaqOn');\r\n this.linkToDownload = configService.getGlobalSetting('linkZumDownloadbereich');\r\n }\r\n\r\n onClickReset = () => {\r\n this.onReset();\r\n this.msg = '';\r\n };\r\n\r\n onClickSend = () => {\r\n this.timeStamp = Date.now() - this.timeStamp;\r\n this.contactFormData.confirm = btoa('' + this.timeStamp);\r\n\r\n const validationFromResult = this.contactForm.instance.validate();\r\n if (validationFromResult.isValid) {\r\n this.loading = true;\r\n this.apiService.post(RouteKeys.Contact.send_message, this.contactFormData).subscribe(\r\n (response) => {\r\n this.loading = false;\r\n if (response === true) {\r\n this.success = true;\r\n this.msg = this.languageService.translate('sentMessage');\r\n this.onReset();\r\n } else {\r\n this.success = false;\r\n this.msg = this.languageService.translate('laterError');\r\n }\r\n },\r\n (err) => {\r\n this.loading = false;\r\n this.success = false;\r\n this.msg = this.languageService.translate('mailDomainError');\r\n }\r\n );\r\n }\r\n };\r\n\r\n onReset() {\r\n this.contactForm.instance.resetValues();\r\n this.timeStamp = Date.now();\r\n }\r\n}\r\n","\r\n
0\" class=\"faq-container\">\r\n
\r\n {{'faq' | translate}}\r\n
\r\n \r\n \r\n
\r\n {{question.frage}}\r\n
\r\n
\r\n
\r\n

\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{'contact' | translate}}\r\n
\r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n {{'privacyAccept_1' | translate}} {{'privacyAccept_2' | translate}}{{'privacyAccept_3' | translate}} *\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n {{msg}}\r\n {{msg}}\r\n
\r\n
\r\n\r\n
0\">\r\n {{'linkToDownload' | translate}}\r\n \r\n
\r\n\r\n \r\n \r\n
","import { Component, ElementRef, OnDestroy, ViewChild } from '@angular/core';\r\nimport { DxPopupComponent } from 'devextreme-angular/ui/popup';\r\nimport { Subscription } from 'rxjs';\r\nimport { UrlService } from '../../services/url.service';\r\nimport { PopupService } from '../../services/popup.service';\r\nimport { ConfigService } from '../../services/config.service';\r\nimport { DxGalleryComponent } from 'devextreme-angular/ui/gallery';\r\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\r\nimport { LanguageService } from '../../services/language.service';\r\n\r\n@Component({\r\n selector: 'app-einrichtung-details',\r\n templateUrl: './einrichtung-details.component.html',\r\n styleUrls: ['./einrichtung-details.component.scss'],\r\n})\r\nexport class EinrichtungDetailsComponent implements OnDestroy {\r\n @ViewChild('detailPopup', { static: false }) detailPopup: DxPopupComponent;\r\n @ViewChild('gallery', { static: false }) gallery: DxGalleryComponent;\r\n\r\n withoutBtns: boolean = false;\r\n showGallery: boolean = true;\r\n isShowMap: boolean = false;\r\n isPreview: boolean = false;\r\n\r\n itemToShowDetails: any;\r\n wochentage: any = null;\r\n selectedIds: number[] = [];\r\n beschreibung: SafeHtml;\r\n pictures: any;\r\n\r\n subscription_get_externSelectedIdsQueryParams: Subscription;\r\n subscription_get_PopupAsObservable: Subscription;\r\n\r\n get isSelected(): boolean {\r\n if (this.itemToShowDetails === null || this.itemToShowDetails === undefined) {\r\n return false;\r\n }\r\n const exist = this.selectedIds.find((x) => x === this.itemToShowDetails.id);\r\n return exist !== null && exist !== undefined;\r\n }\r\n\r\n constructor(\r\n private urlService: UrlService,\r\n private popupService: PopupService,\r\n private configService: ConfigService,\r\n public sanitizer: DomSanitizer,\r\n public languageServise: LanguageService\r\n ) {\r\n this.onAbbruchClick = this.onAbbruchClick.bind(this);\r\n this.onSelectClick = this.onSelectClick.bind(this);\r\n this.onShown = this.onShown.bind(this);\r\n this.onHidden = this.onHidden.bind(this);\r\n\r\n this.wochentage = this.configService.wochentage;\r\n\r\n this.subscription_get_PopupAsObservable = this.popupService.get_detailPopupAsObservable.subscribe((context) => {\r\n if (context !== null && context !== undefined && context.open === true) {\r\n this.itemToShowDetails = context.item;\r\n this.isPreview = context.preview;\r\n if (languageServise.getLanguage() === 'en') {\r\n this.beschreibung = sanitizer.bypassSecurityTrustHtml(this.itemToShowDetails.beschreibungEN);\r\n } else {\r\n this.beschreibung = sanitizer.bypassSecurityTrustHtml(this.itemToShowDetails.beschreibung);\r\n }\r\n\r\n if (this.itemToShowDetails.galerie.length > 0) {\r\n this.showGallery = true;\r\n } else {\r\n this.showGallery = false;\r\n }\r\n this.detailPopup.instance.show();\r\n }\r\n });\r\n\r\n this.subscription_get_externSelectedIdsQueryParams = this.urlService.get_externSelectedIdsQueryParams.subscribe((ids) => {\r\n this.selectedIds = ids;\r\n });\r\n }\r\n\r\n onShown(e) {\r\n this.pictures = this.itemToShowDetails.galerie;\r\n if (this.gallery) {\r\n this.gallery.visible = true;\r\n }\r\n\r\n this.isShowMap = true;\r\n }\r\n\r\n onHidden(e) {\r\n this.pictures = null;\r\n if (this.gallery) {\r\n this.gallery.instance.resetOption('selectedIndex');\r\n this.gallery.visible = false;\r\n }\r\n this.isShowMap = false;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.subscription_get_externSelectedIdsQueryParams) {\r\n this.subscription_get_externSelectedIdsQueryParams.unsubscribe();\r\n }\r\n if (this.subscription_get_PopupAsObservable) {\r\n this.subscription_get_PopupAsObservable.unsubscribe();\r\n }\r\n }\r\n\r\n onSelectClick() {\r\n if (!this.isSelected) {\r\n this.selectedIds.push(this.itemToShowDetails.id);\r\n } else {\r\n this.selectedIds.forEach((_item, _index) => {\r\n if (_item === this.itemToShowDetails.id) {\r\n this.selectedIds.splice(_index, 1);\r\n }\r\n });\r\n }\r\n\r\n this.urlService.refreshQueryParams({\r\n i: this.selectedIds.join(','),\r\n });\r\n }\r\n\r\n onAbbruchClick() {\r\n this.detailPopup.instance.hide();\r\n }\r\n}\r\n","\r\n\r\n \r\n
\r\n
\r\n {{itemToShowDetails.einrichtungsName}}
\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n
\r\n \r\n :\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnDestroy } from '@angular/core';\r\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\r\nimport { Subscription } from 'rxjs';\r\nimport { RouteKeys } from '../../helper/route-keys.helper';\r\nimport { ApiService } from '../../services/api.service';\r\nimport { LanguageService } from '../../services/language.service';\r\n\r\n@Component({\r\n selector: 'app-imprint',\r\n templateUrl: './imprint.component.html',\r\n styleUrls: ['./imprint.component.scss']\r\n})\r\nexport class ImprintComponent implements OnDestroy {\r\n\r\n imprintText: SafeHtml;\r\n selectedLanguageObservable: Subscription;\r\n\r\n constructor(private apiService: ApiService, private languageService: LanguageService, private sanitizer: DomSanitizer) {\r\n this.selectedLanguageObservable = languageService.get_selectedLanguageObservable.subscribe((lang) => {\r\n lang = lang || 'de';\r\n var langToSend = lang === 'de' ? 'impressumDE' : lang === 'en' ? 'impressumEN' : 'impressumDE';\r\n\r\n this.apiService.post(RouteKeys.Imprint.get_imprint, { key: langToSend }).subscribe((response: any) => {\r\n this.imprintText = this.sanitizer.bypassSecurityTrustHtml(response.wert);\r\n }, err => {\r\n throw err?.error?.message || err?.error?.Message || this.languageService.translate('serverError');\r\n });\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.selectedLanguageObservable) {\r\n this.selectedLanguageObservable.unsubscribe();\r\n }\r\n }\r\n}\r\n","\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { AfterViewInit, Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport L, { control, Icon, icon, latLng, map, marker, tileLayer } from 'leaflet';\r\nimport { ApiService } from '../../services/api.service';\r\nimport { LanguageService } from '../../services/language.service';\r\n\r\nexport interface IMarkerOptions {\r\n lat: number;\r\n lon: number;\r\n title: string;\r\n draggable: boolean;\r\n iconUrl: string;\r\n popupDetails: string;\r\n onClick: (e) => void;\r\n onDragend: (e) => void;\r\n zIndexOffset: number;\r\n closeButton: false;\r\n}\r\n\r\ninterface IMarkerCOntainer {\r\n id: number;\r\n marker: L.Marker;\r\n}\r\n\r\n@Component({\r\n selector: 'app-map-osm',\r\n templateUrl: './map-osm.component.html',\r\n styleUrls: ['./map-osm.component.scss'],\r\n})\r\nexport class MapOsmComponent implements AfterViewInit {\r\n @Input() centerImage: string;\r\n @Input() centerTitle: string;\r\n @Input() centerPopupDetails: string;\r\n @Input() centerLat: number;\r\n @Input() centerLng: number;\r\n @Input() zoom: number = 12;\r\n @Input() isDraggable: boolean = true;\r\n @Output() dragEnd: EventEmitter = new EventEmitter();\r\n\r\n private _map: L.Map;\r\n private _center_marker: L.Marker;\r\n private _idIndex: number = 0;\r\n private _markerArray: IMarkerCOntainer[] = [];\r\n\r\n mapContainerName: string;\r\n\r\n constructor(private languageService: LanguageService, private apiService: ApiService) {\r\n this.mapContainerName = this.crateGuiid();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n setTimeout(() => {\r\n this._initMap();\r\n }, 50);\r\n }\r\n\r\n addMarker(options: IMarkerOptions): number {\r\n const newId = this._getNewId();\r\n const marker = this._createMarker(options);\r\n\r\n setTimeout(() => {\r\n marker.addTo(this._map);\r\n\r\n this._markerArray.push({\r\n id: newId,\r\n marker: marker,\r\n });\r\n }, 60);\r\n\r\n return newId;\r\n }\r\n\r\n getAddressFromLatLon(lat: number, lon: number, cb: (addr: any) => void) {\r\n const url = `https://photon.komoot.io/reverse?lon=${lon}&lat=${lat}&lang=de`;\r\n this.apiService.get(url).subscribe(\r\n (response) => {\r\n if (\r\n response !== undefined &&\r\n response !== null &&\r\n response.features !== undefined &&\r\n response.features !== null &&\r\n response.features.length > 0\r\n ) {\r\n const address = this._mapOsmToaddress(response.features[0]);\r\n if (cb) {\r\n cb(address);\r\n }\r\n } else {\r\n if (cb) {\r\n cb(null);\r\n }\r\n }\r\n },\r\n (err) => {\r\n throw err;\r\n }\r\n );\r\n }\r\n\r\n flyTo(lat: number, lon: number) {\r\n this._center_marker.setLatLng([lat, lon]);\r\n this._map.flyTo([lat, lon]);\r\n }\r\n\r\n setZoom(zoom: number) {\r\n this.zoom = zoom;\r\n\r\n setTimeout(() => {\r\n if (this._map !== undefined && this._map !== null) {\r\n this._map.setZoom(zoom);\r\n }\r\n }, 100);\r\n }\r\n\r\n removeMarker(id: number) {\r\n const exist = this._markerArray.find((x) => x.id === id);\r\n if (exist !== undefined && exist !== null) {\r\n exist.marker.remove();\r\n }\r\n }\r\n\r\n removeAllMarker() {\r\n this._markerArray.forEach((marker) => {\r\n marker.marker.remove();\r\n });\r\n }\r\n\r\n setMarkerIcon(id: number, iconUrl: string) {\r\n const exist = this._markerArray.find((x) => x.id === id);\r\n if (exist !== undefined && exist !== null) {\r\n if (exist.marker.getIcon().options.iconUrl !== iconUrl) {\r\n const icon: L.Icon = new Icon({ iconUrl: iconUrl });\r\n exist.marker.setIcon(icon);\r\n }\r\n }\r\n }\r\n\r\n refresh() {\r\n setTimeout(() => {\r\n if (this._map !== undefined && this._map !== null) {\r\n this._map.setZoom(this.zoom);\r\n }\r\n }, 100);\r\n }\r\n\r\n private _initMap(): void {\r\n this._map = map(this.mapContainerName, {\r\n layers: [\r\n tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {\r\n maxZoom: 18,\r\n attribution: '© OpenStreetMap contributors',\r\n }),\r\n ],\r\n center: [this.centerLat, this.centerLng],\r\n zoom: this.zoom,\r\n });\r\n control.scale().addTo(this._map);\r\n\r\n this._createCenterMarker();\r\n }\r\n\r\n private _createCenterMarker() {\r\n let markerOptions: IMarkerOptions = {\r\n lat: this.centerLat,\r\n lon: this.centerLng,\r\n title: this.centerTitle,\r\n draggable: this.isDraggable,\r\n iconUrl: this.centerImage,\r\n popupDetails: this.centerPopupDetails,\r\n zIndexOffset: 1,\r\n closeButton: false,\r\n\r\n onClick: () => {},\r\n\r\n onDragend: (e) => {\r\n this.centerLng = e.target.getLatLng().lng;\r\n this.centerLat = e.target.getLatLng().lat;\r\n if (this._map !== undefined && this._map !== null) {\r\n this._map.flyTo([this.centerLat, this.centerLng]);\r\n }\r\n this.getAddressFromLatLon(this.centerLat, this.centerLng, (address) => {\r\n if (address === undefined || address === null) {\r\n let address = {\r\n lat: this.centerLat,\r\n lon: this.centerLng,\r\n };\r\n this.dragEnd.next(address);\r\n } else {\r\n this.dragEnd.next(address);\r\n }\r\n });\r\n },\r\n };\r\n\r\n this._center_marker = this._createMarker(markerOptions);\r\n this._center_marker.addTo(this._map);\r\n }\r\n\r\n private _createMarker(options: IMarkerOptions): L.Marker {\r\n var popup = L.popup().setContent(options.popupDetails);\r\n popup.options.closeButton = options.closeButton;\r\n\r\n return marker([options.lat, options.lon], {\r\n icon: icon({\r\n iconSize: [25, 41],\r\n iconAnchor: [13, 41],\r\n iconUrl: options.iconUrl || 'leaflet/marker-icon.png',\r\n shadowUrl: 'leaflet/marker-shadow.png',\r\n }),\r\n title: options.title,\r\n riseOnHover: true,\r\n zIndexOffset: options.zIndexOffset,\r\n draggable: options.draggable || false,\r\n })\r\n .on('click', options.onClick)\r\n .on('dragend', options.onDragend)\r\n .bindPopup(popup)\r\n .openPopup();\r\n }\r\n\r\n _mapOsmToaddress(item) {\r\n if (item == undefined || item == null) {\r\n return null;\r\n }\r\n\r\n let result: any = {\r\n place_id: item.properties.osm_id,\r\n display_name: '',\r\n lon: item.geometry.coordinates[0],\r\n lat: item.geometry.coordinates[1],\r\n org: item.properties,\r\n district:\r\n item.properties.district !== undefined &&\r\n item.properties.district !== null &&\r\n item.properties.district.length > 0 &&\r\n item.properties.district !== item.properties.city\r\n ? item.properties.district\r\n : '',\r\n };\r\n\r\n const street = item.properties.street !== undefined ? item.properties.street : null;\r\n const housenumberString = item.properties.housenumber !== undefined ? item.properties.housenumber : null;\r\n const postcode = item.properties.postcode !== undefined ? item.properties.postcode : null;\r\n const city = item.properties.city !== undefined ? item.properties.city : null;\r\n const state = item.properties.state !== undefined ? item.properties.state : null;\r\n const name = item.properties.name !== undefined ? item.properties.name : null;\r\n\r\n switch (item.properties.type) {\r\n case 'street':\r\n result.display_name = name;\r\n result.street = name;\r\n\r\n if (housenumberString !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ' ';\r\n }\r\n\r\n let housenumber = housenumberString.match(/\\d+/g);\r\n if (housenumber !== undefined && housenumber !== null && housenumber.length > 0) {\r\n housenumber = housenumber[0];\r\n } else {\r\n housenumber = null;\r\n }\r\n\r\n let housenumberSupplement = housenumberString.match(/[a-zA-Z]+/g);\r\n if (housenumberSupplement !== undefined && housenumberSupplement !== null && housenumberSupplement.length > 0) {\r\n housenumberSupplement = housenumberSupplement[0];\r\n } else {\r\n housenumberSupplement = null;\r\n }\r\n\r\n result.display_name += housenumberString;\r\n result.housenumber = housenumber;\r\n result.supplement = housenumberSupplement;\r\n } else {\r\n result.housenumber = null;\r\n }\r\n\r\n if (postcode !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ', ';\r\n }\r\n result.display_name += postcode;\r\n result.postcode = postcode;\r\n } else {\r\n result.postcode = null;\r\n }\r\n\r\n if (city !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ' ';\r\n }\r\n result.display_name += city;\r\n result.city = city;\r\n\r\n if (result.district !== undefined && result.district !== null && result.district.length > 0) {\r\n result.display_name += ' - ' + result.district;\r\n }\r\n } else if (state !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ' ';\r\n }\r\n if (result.district !== undefined && result.district !== null && result.district.length > 0) {\r\n result.city = result.district;\r\n result.display_name += result.district;\r\n if (result.locality !== undefined && result.locality !== null && result.locality.length > 0) {\r\n result.display_name += ' - ' + result.locality;\r\n result.district = result.locality;\r\n } else {\r\n result.district = '';\r\n }\r\n } else {\r\n result.display_name += state;\r\n result.city = state;\r\n }\r\n } else {\r\n result.city = null;\r\n }\r\n\r\n break;\r\n case 'house':\r\n if (street !== null) {\r\n result.display_name = street;\r\n result.street = street;\r\n } else {\r\n result.street = null;\r\n }\r\n\r\n if (housenumberString !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ' ';\r\n }\r\n\r\n let housenumber = housenumberString.match(/\\d+/g);\r\n if (housenumber !== undefined && housenumber !== null && housenumber.length > 0) {\r\n housenumber = housenumber[0];\r\n } else {\r\n housenumber = null;\r\n }\r\n\r\n let housenumberSupplement = housenumberString.match(/[a-zA-Z]+/g);\r\n if (housenumberSupplement !== undefined && housenumberSupplement !== null && housenumberSupplement.length > 0) {\r\n housenumberSupplement = housenumberSupplement[0];\r\n } else {\r\n housenumberSupplement = null;\r\n }\r\n\r\n result.display_name += housenumberString;\r\n result.housenumber = housenumber;\r\n result.supplement = housenumberSupplement;\r\n } else {\r\n result.housenumber = null;\r\n }\r\n\r\n if (postcode !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ', ';\r\n }\r\n result.display_name += postcode;\r\n result.postcode = postcode;\r\n } else {\r\n result.postcode = null;\r\n }\r\n\r\n if (city !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ' ';\r\n }\r\n result.display_name += city;\r\n result.city = city;\r\n\r\n if (result.district !== undefined && result.district !== null && result.district.length > 0) {\r\n result.display_name += ' - ' + result.district;\r\n }\r\n } else if (state !== null) {\r\n if (result.display_name.length > 0) {\r\n result.display_name += ' ';\r\n }\r\n if (result.district !== undefined && result.district !== null && result.district.length > 0) {\r\n result.city = result.district;\r\n result.display_name += result.district;\r\n if (result.locality !== undefined && result.locality !== null && result.locality.length > 0) {\r\n result.display_name += ' - ' + result.locality;\r\n result.district = result.locality;\r\n } else {\r\n result.district = '';\r\n }\r\n } else {\r\n result.display_name += state;\r\n result.city = state;\r\n }\r\n } else {\r\n result.city = null;\r\n }\r\n break;\r\n default:\r\n console.warn('Unbekannter Type: ' + item.properties.type, item);\r\n result = null;\r\n break;\r\n }\r\n\r\n return result;\r\n }\r\n\r\n private _getNewId() {\r\n this._idIndex++;\r\n return this._idIndex;\r\n }\r\n\r\n private crateGuiid() {\r\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {\r\n var r = (Math.random() * 16) | 0,\r\n v = c == 'x' ? r : (r & 0x3) | 0x8;\r\n return v.toString(16);\r\n });\r\n }\r\n}\r\n","
\r\n
","import { Component, OnInit, Input, ViewChild } from '@angular/core';\r\nimport { DxBoxComponent } from 'devextreme-angular/ui/box';\r\n\r\n@Component({\r\n selector: 'app-page-container',\r\n templateUrl: './page-container.component.html',\r\n styleUrls: ['./page-container.component.scss']\r\n})\r\nexport class PageContainerComponent implements OnInit {\r\n\r\n @Input () public initSize: number = 1700;\r\n\r\n @ViewChild('pageContainer', { static: false }) pageContainer: DxBoxComponent;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n","import { Component, OnDestroy} from '@angular/core';\r\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\r\nimport { Subscription } from 'rxjs';\r\nimport { RouteKeys } from '../../helper/route-keys.helper';\r\nimport { ApiService } from '../../services/api.service';\r\nimport { LanguageService } from '../../services/language.service';\r\n\r\n@Component({\r\n selector: 'app-privacy',\r\n templateUrl: './privacy.component.html',\r\n styleUrls: ['./privacy.component.scss']\r\n})\r\nexport class PrivacyComponent implements OnDestroy {\r\n\r\n privacyText: SafeHtml;\r\n selectedLanguageObservable: Subscription;\r\n \r\n constructor(private apiService: ApiService, private languageService: LanguageService, private sanitizer: DomSanitizer) {\r\n\r\n this.selectedLanguageObservable = languageService.get_selectedLanguageObservable.subscribe((lang) => {\r\n lang = lang || 'de';\r\n var langToSend = lang === 'de' ? 'privacyDE' : lang === 'en' ? 'privacyEN' : 'privacyDE';\r\n\r\n this.apiService.post(RouteKeys.Privacy.get_privacy, { key: langToSend }).subscribe((response: any) => {\r\n this.privacyText = this.sanitizer.bypassSecurityTrustHtml(response.wert);\r\n }, err => {\r\n throw err?.error?.message || err?.error?.Message || this.languageService.translate('serverError');\r\n });\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.selectedLanguageObservable) {\r\n this.selectedLanguageObservable.unsubscribe();\r\n }\r\n }\r\n}\r\n","\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnDestroy, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { DxFormComponent } from 'devextreme-angular/ui/form';\r\nimport { DxPopupComponent } from 'devextreme-angular/ui/popup'\r\nimport { Subscription } from 'rxjs';\r\nimport { RouteKeys } from '../../helper/route-keys.helper';\r\nimport { ApiService } from '../../services/api.service';\r\nimport { LanguageService } from '../../services/language.service';\r\nimport { PopupService } from '../../services/popup.service';\r\nimport { StorageService } from '../../services/storage.service';\r\nimport { confirm } from 'devextreme/ui/dialog';\r\n\r\n@Component({\r\n selector: 'app-remove-account',\r\n templateUrl: './remove-account.component.html',\r\n styleUrls: ['./remove-account.component.scss']\r\n})\r\nexport class RemoveAccountComponent implements OnInit, OnDestroy {\r\n\r\n @ViewChild('removeAccountPopup', { static: false }) removeAccountPopup: DxPopupComponent;\r\n @ViewChild('deleteForm', { static: false }) deleteForm: DxFormComponent;\r\n\r\n msg: string = '';\r\n messageTimeout: number;\r\n isRemoved: boolean = false;\r\n showDeletePopup: boolean;\r\n deleteFormData: any = {\r\n password: \"\",\r\n };\r\n privacy_delete: string;\r\n\r\n subscription_get_PopupAsObservable: Subscription;\r\n selectedLanguageObservable: Subscription;\r\n \r\n constructor(private apiService: ApiService, private storageService: StorageService, private router: Router, private popupService: PopupService, private languageService: LanguageService) {\r\n this.onClickDelete = this.onClickDelete.bind(this);\r\n this.onDeleteAccountClick = this.onDeleteAccountClick.bind(this); \r\n this.onClickClose = this.onClickClose.bind(this);\r\n\r\n this.subscription_get_PopupAsObservable = this.popupService.get_removeAccountPopupAsObservable.subscribe(context => {\r\n if(context !== null && context !== undefined && context.open === true){\r\n this.removeAccountPopup.instance.show();\r\n }\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.selectedLanguageObservable = this.languageService.get_selectedLanguageObservable.subscribe((lang) => {\r\n\r\n this.apiService.post(RouteKeys.Extern.get_global_settings, { key: \"privacy_account_delete\" + lang.trim() }).subscribe((response) => {\r\n if (response.wert != null && response.wert != undefined && response.wert.trim() != \"\") {\r\n this.privacy_delete = response.wert\r\n }\r\n }, err => {\r\n this.privacy_delete = this.languageService.translate('privacy_delete');\r\n });\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.subscription_get_PopupAsObservable) {\r\n this.subscription_get_PopupAsObservable.unsubscribe();\r\n }\r\n\r\n if (this.selectedLanguageObservable) {\r\n this.selectedLanguageObservable.unsubscribe();\r\n }\r\n }\r\n\r\n onDeleteAccountClick() {\r\n this.showDeletePopup = true;\r\n }\r\n\r\n onClickDelete() {\r\n var validationResult = this.deleteForm.instance.validate();\r\n if (validationResult.isValid) {\r\n\r\n let result = confirm(this.languageService.translate('confirmRegulations'), this.languageService.translate('confirmation'));\r\n result.then((dialogResult) => {\r\n if (dialogResult) {\r\n this.apiService.post(RouteKeys.Intern.Buerger.remove_account, this.deleteFormData).subscribe(response => {\r\n this.storageService.clearFromSession('token');\r\n this.storageService.clearFromSession('rolle');\r\n this.storageService.clearFromSession('benutzername');\r\n this.isRemoved = true;\r\n this.msg = this.languageService.translate('deleteUserAccount');\r\n setTimeout(() => {\r\n this.router.navigate(['extern']);\r\n this.onClickClose();\r\n }, 4000)\r\n }, (err) => {\r\n if (err !== null && err.status !== null && err.status === 400) {\r\n this.setMessageText(this.languageService.translate('incorrectPassword'));\r\n } else {\r\n this.setMessageText(err?.error?.message || err?.error?.Message || this.languageService.translate('laterError'));\r\n }\r\n throw err?.error?.message || err?.error?.Message || this.languageService.translate('serverError');\r\n });\r\n }\r\n }); \r\n\r\n }\r\n }\r\n\r\n onClickClose() {\r\n this.deleteForm.instance.resetValues();\r\n this.removeAccountPopup.instance.hide();\r\n }\r\n\r\n setMessageText(msg: string) {\r\n this.msg = msg;\r\n if (this.messageTimeout > 0) {\r\n clearTimeout(this.messageTimeout);\r\n }\r\n setTimeout(() => {\r\n this.msg = \"\";\r\n }, 5000)\r\n }\r\n}\r\n","\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n {{msg}}\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n
\r\n","export namespace RouteKeys {\r\n export namespace Auth {\r\n export const get_token: string = 'Auth/GetToken';\r\n }\r\n\r\n export namespace Config {\r\n export const get_config: string = 'Config/GetConfig';\r\n export const get_version: string = 'Config/GetVersion';\r\n }\r\n\r\n export namespace Extern {\r\n export const get_search: string = 'ExternSearch/Search';\r\n export const get_selected: string = 'ExternSelected/GetSelected';\r\n export const get_global_settings: string = 'ExternGlobalSettings/GetValue';\r\n \r\n export namespace Register {\r\n export const register_account: string = 'ExternBenutzer/RegisterAccount';\r\n export const send_password_link: string = 'ExternBenutzer/SendPasswordLink';\r\n export const verify_email: string = 'ExternBenutzer/VerifyEmail';\r\n export const send_verify_email: string = 'ExternBenutzer/SendVerifyEmail';\r\n export const reset_password: string = \"ExternBenutzer/ResetPassword\"\r\n }\r\n }\r\n\r\n export namespace Faq {\r\n export const get_question: string = 'Faq/Search';\r\n }\r\n\r\n export namespace Contact {\r\n export const send_message: string = 'Mail/SendContactMail';\r\n }\r\n\r\n export namespace Intern {\r\n export namespace Buerger {\r\n export const set_inquire: string = 'InternBuergerInquire/Create';\r\n export const get_all_inquire: string = 'InternBuergerInquire/GetAll';\r\n export const get_inquire: string = 'InternBuergerInquire/Get';\r\n export const delete_inquire: string = 'InternBuergerInquire/RemoveInquire';\r\n export const update_profile: string = 'BenutzerBuerger/UpdateProfile';\r\n export const update_password: string = 'BenutzerBuerger/UpdatePassword';\r\n export const remove_account: string = 'BenutzerBuerger/Remove';\r\n export const get_profile: string = 'BenutzerBuerger/GetProfile';\r\n export const create_pdf: string = 'InternBuergerInquire/CreateAntragPdf';\r\n export const check_duplicate: string = 'InternBuergerInquire/CheckDuplicate';\r\n export const save_document: string = 'Dokumente/Save';\r\n export const get_doctext: string = 'Dokumente/GetDoctext';\r\n export const send_inquireEmail: string = 'InternBuergerInquire/SendInquireMail';\r\n export const update_inquire: string = 'InternBuergerInquire/Update';\r\n export const accept_suggestion: string = 'InternBuergerInquire/AcceptSuggestion';\r\n export const decline_suggestion: string = 'InternBuergerInquire/DeclineSuggestion';\r\n export const get_all_documents: string = 'Dokumente/GetAll';\r\n export const delecte_document: string = 'Dokumente/Remove';\r\n export const check_status: string = 'InternBuergerInquire/CheckStatus';\r\n }\r\n\r\n export namespace Department {\r\n export const get_search: string = 'InternDepartmentInquirelist/Search';\r\n }\r\n }\r\n\r\n export namespace Imprint {\r\n export const get_imprint: string = 'ExternImprint/Get';\r\n }\r\n \r\n export namespace Privacy {\r\n export const get_privacy: string = 'ExternPrivacy/Get';\r\n }\r\n\r\n export namespace Vorlage {\r\n export const create: string = 'Vorlagen/Create';\r\n }\r\n\r\n export namespace Calculator {\r\n export const get_beitrag: string = 'Beitrag/GetBeitrag';\r\n }\r\n\r\n export namespace Exception {\r\n export const log_error: string ='Exception/LogError';\r\n export const send_mail: string = 'Exception/SendMail';\r\n }\r\n}","import { Component, OnInit, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\n\r\n\r\n@Component({\r\n selector: 'app-table-container',\r\n templateUrl: './table-container.component.html',\r\n styleUrls: ['./table-container.component.scss']\r\n})\r\nexport class TableContainerComponent implements OnInit {\r\n @ViewChild('tableContainer', { static: false }) tableContainer: TableContainerComponent;\r\n\r\n @Input () public headerText: string = '';\r\n @Input () public btnExportVisible: boolean = true;\r\n @Input () public btnPrintVisible: boolean = true;\r\n \r\n @Output () onBtnExportClick = new EventEmitter();\r\n @Output () onBtnPrintClick = new EventEmitter();\r\n\r\n \r\n constructor() { }\r\n\r\n onExportClick() {\r\n this.onBtnExportClick.emit();\r\n }\r\n\r\n onPrintClick() {\r\n this.onBtnPrintClick.emit();\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
{{headerText}}
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
","import { NgModule, ModuleWithProviders, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\n\r\nimport { DxMenuModule } from 'devextreme-angular/ui/menu';\r\nimport { DxDrawerModule } from 'devextreme-angular/ui/drawer';\r\nimport { DxFormModule } from 'devextreme-angular/ui/form';\r\nimport { DxButtonModule } from 'devextreme-angular/ui/button';\r\nimport { DxToolbarModule } from 'devextreme-angular/ui/toolbar';\r\nimport { DxDataGridModule } from 'devextreme-angular/ui/data-grid';\r\nimport { DxTemplateModule } from 'devextreme-angular/core';\r\nimport { DxNumberBoxModule } from 'devextreme-angular/ui/number-box';\r\nimport { DxLoadIndicatorModule } from 'devextreme-angular/ui/load-indicator';\r\nimport { DxListModule } from 'devextreme-angular/ui/list';\r\nimport { DxTextBoxModule } from 'devextreme-angular/ui/text-box';\r\nimport { DxSelectBoxModule } from 'devextreme-angular/ui/select-box';\r\nimport { LanguagePipe } from '../pipes/language.pipe';\r\nimport { DxTextAreaModule } from 'devextreme-angular/ui/text-area';\r\nimport { DxTabPanelModule } from 'devextreme-angular/ui/tab-panel';\r\nimport { DxPopupModule } from 'devextreme-angular/ui/popup';\r\nimport { DxScrollViewModule } from 'devextreme-angular/ui/scroll-view';\r\nimport { DxFileUploaderModule } from 'devextreme-angular/ui/file-uploader';\r\nimport { DxCheckBoxModule } from 'devextreme-angular/ui/check-box';\r\nimport { DxAccordionModule } from 'devextreme-angular/ui/accordion';\r\nimport { TableContainerComponent } from '../components/table-container/table-container.component';\r\nimport { DxResponsiveBoxModule } from 'devextreme-angular/ui/responsive-box';\r\nimport { DxBoxModule } from 'devextreme-angular/ui/box';\r\nimport { DxTagBoxModule } from 'devextreme-angular/ui/tag-box';\r\n\r\nimport { ImprintComponent } from '../components/imprint/imprint.component';\r\nimport { PrivacyComponent } from '../components/privacy/privacy.component';\r\nimport { ContactComponent } from '../components/contact/contact.component';\r\nimport { CardComponent } from '../components/card/card.component';\r\nimport { EinrichtungDetailsComponent } from '../components/einrichtung-details/einrichtung-details.component';\r\nimport { PageContainerComponent } from '../components/page-container/page-container.component';\r\nimport { RemoveAccountComponent } from '../components/remove-account/remove-account.component';\r\nimport { ChangePasswordComponent } from '../components/change-password/change-password.component';\r\nimport { CalculatorComponent } from '../components/calculator/calculator.component';\r\nimport { DxGalleryModule } from 'devextreme-angular/ui/gallery';\r\nimport { DxAutocompleteModule } from 'devextreme-angular/ui/autocomplete';\r\nimport { DxSortableModule } from 'devextreme-angular/ui/sortable';\r\nimport { DxSliderModule } from 'devextreme-angular/ui/slider';\r\nimport { DxFilterBuilderModule } from 'devextreme-angular/ui/filter-builder';\r\nimport { DxRadioGroupModule } from 'devextreme-angular/ui/radio-group';\r\nimport { DxLoadPanelModule } from 'devextreme-angular/ui/load-panel';\r\n\r\nimport { AutocompleteboxOsmComponent } from '../components/autocompletebox-osm/autocompletebox-osm.component';\r\nimport { MapOsmComponent } from '../components/map-osm/map-osm.component';\r\nimport { DxSpeedDialActionModule } from 'devextreme-angular/ui/speed-dial-action';\r\nimport { DxPopoverModule } from 'devextreme-angular/ui/popover';\r\nimport { AddInstitutionComponent } from '../components/add-institution/add-institution.component';\r\n\r\n// import { DxChartModule } from 'devextreme-angular/ui/chart';\r\n// import { DxPieChartModule } from 'devextreme-angular/ui/pie-chart';\r\n// import { DxRangeSelectorModule } from 'devextreme-angular/ui/range-selector';\r\n// import { DxPopoverModule } from 'devextreme-angular/ui/popover'\r\n// import { DxDateBoxModule } from 'devextreme-angular/ui/date-box';\r\n// import { DxMenuModule } from 'devextreme-angular/ui/menu';\r\n\r\n@NgModule({\r\n declarations: [\r\n LanguagePipe,\r\n EinrichtungDetailsComponent,\r\n ImprintComponent,\r\n PrivacyComponent,\r\n ContactComponent,\r\n CardComponent,\r\n TableContainerComponent,\r\n PageContainerComponent,\r\n RemoveAccountComponent,\r\n ChangePasswordComponent,\r\n CalculatorComponent,\r\n AutocompleteboxOsmComponent,\r\n MapOsmComponent,\r\n AddInstitutionComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n DxMenuModule,\r\n DxDrawerModule,\r\n DxListModule,\r\n DxFormModule,\r\n DxButtonModule,\r\n DxToolbarModule,\r\n DxDataGridModule,\r\n DxTemplateModule,\r\n DxNumberBoxModule,\r\n DxLoadIndicatorModule,\r\n DxTextBoxModule,\r\n DxSelectBoxModule,\r\n DxTextAreaModule,\r\n DxTabPanelModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxFileUploaderModule,\r\n DxDataGridModule,\r\n DxCheckBoxModule,\r\n DxAccordionModule,\r\n DxResponsiveBoxModule,\r\n DxBoxModule,\r\n DxTagBoxModule,\r\n DxGalleryModule,\r\n DxSliderModule,\r\n DxAutocompleteModule,\r\n DxFilterBuilderModule,\r\n DxSortableModule,\r\n DxRadioGroupModule,\r\n DxSpeedDialActionModule,\r\n DxPopoverModule,\r\n DxLoadPanelModule,\r\n\r\n // DxLoadIndicatorModule,\r\n // DxScrollViewModule,\r\n // DxChartModule,\r\n // DxPieChartModule,\r\n // DxRangeSelectorModule,\r\n // DxPopoverModule,\r\n // DxAccordionModule,\r\n // DxDateBoxModule,\r\n // DxMenuModule,\r\n ],\r\n exports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n LanguagePipe,\r\n EinrichtungDetailsComponent,\r\n ImprintComponent,\r\n PrivacyComponent,\r\n ContactComponent,\r\n CardComponent,\r\n TableContainerComponent,\r\n PageContainerComponent,\r\n RemoveAccountComponent,\r\n ChangePasswordComponent,\r\n AutocompleteboxOsmComponent,\r\n AddInstitutionComponent,\r\n MapOsmComponent,\r\n DxMenuModule,\r\n DxDrawerModule,\r\n DxListModule,\r\n DxFormModule,\r\n DxButtonModule,\r\n DxToolbarModule,\r\n DxDataGridModule,\r\n DxTemplateModule,\r\n DxNumberBoxModule,\r\n DxLoadIndicatorModule,\r\n DxTextBoxModule,\r\n DxSelectBoxModule,\r\n DxTextBoxModule,\r\n DxTextAreaModule,\r\n DxTabPanelModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxFileUploaderModule,\r\n DxDataGridModule,\r\n DxCheckBoxModule,\r\n DxAccordionModule,\r\n DxResponsiveBoxModule,\r\n DxBoxModule,\r\n DxTagBoxModule,\r\n DxGalleryModule,\r\n DxSliderModule,\r\n DxAutocompleteModule,\r\n DxFilterBuilderModule,\r\n DxSortableModule,\r\n DxRadioGroupModule,\r\n DxSpeedDialActionModule,\r\n DxPopoverModule,\r\n DxLoadPanelModule,\r\n\r\n // DxLoadIndicatorModule,\r\n // DxScrollViewModule,\r\n // DxChartModule,\r\n // DxPieChartModule,\r\n // DxRangeSelectorModule,\r\n // DxAccordionModule,\r\n // DxDateBoxModule,\r\n // DxMenuModule,\r\n ],\r\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\r\n})\r\nexport class InjectorModule {\r\n static forRoot(): ModuleWithProviders {\r\n return {\r\n ngModule: InjectorModule,\r\n providers: [],\r\n };\r\n }\r\n}\r\n","import { Pipe, PipeTransform, SecurityContext } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { LanguageService } from '../services/language.service';\r\n\r\n@Pipe({\r\n name: 'translate',\r\n pure: false\r\n})\r\nexport class LanguagePipe implements PipeTransform {\r\n\r\n constructor(private languageService: LanguageService, protected sanitizer: DomSanitizer) { }\r\n\r\n transform(text: string, params: string[] = []): string {\r\n return this.sanitizer.sanitize(SecurityContext.NONE, this.languageService.translate(text, params));\r\n }\r\n}\r\n\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient, HttpEventType, HttpHeaders, HttpRequest } from '@angular/common/http';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { StorageService } from './storage.service';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Injectable()\r\nexport class ApiService {\r\n\r\n constructor(@Inject(DOCUMENT) private document: Document, private http: HttpClient, private storageService: StorageService) { \r\n }\r\n\r\n post(endPoint: string, data: any = null): Observable {\r\n return this.http.post(endPoint, data);\r\n }\r\n\r\n get(endPoint: string, data: any = null): Observable {\r\n return this.http.get(endPoint);\r\n }\r\n\r\n public getRequestHeaders(responseType: any = null): { headers: HttpHeaders; responseType: any } | { headers: HttpHeaders } {\r\n var headers;\r\n\r\n const token = this.storageService.getFromSession('token');\r\n headers = new HttpHeaders(\r\n {\r\n 'Authorization': 'Bearer ' + token,\r\n 'Cache-Control': 'no-cache',\r\n 'Pragma': 'no-cache',\r\n 'Expires': 'Sat, 01 Jan 2000 00:00:00 GMT'\r\n }\r\n );\r\n\r\n if (responseType === null) {\r\n return {\r\n headers: headers\r\n };\r\n }\r\n else {\r\n return {\r\n headers: headers,\r\n responseType: responseType\r\n };\r\n }\r\n }\r\n\r\n public postDownload(path: string, fileName: string, data: any, cb: (err) => void = null) {\r\n var err = false;\r\n var xhr = new XMLHttpRequest();\r\n xhr.open('POST', path, true);\r\n xhr.responseType = 'blob';\r\n xhr.withCredentials = true;\r\n\r\n const token = this.storageService.getFromSession('token');\r\n xhr.setRequestHeader('Authorization', 'Bearer ' + token);\r\n xhr.setRequestHeader('Content-type', 'application/json; charset=UTF-8');\r\n\r\n xhr.onloadend = (a) => {\r\n if (cb !== null) {\r\n cb(err);\r\n }\r\n };\r\n\r\n xhr.onload = (e) => {\r\n\r\n if (xhr.status === 200) {\r\n if (xhr.response.size < 1) {\r\n return;\r\n }\r\n\r\n var _fileName = this.getFilename(xhr) || fileName;\r\n\r\n if (navigator.appVersion.toString().indexOf('.NET') > 0) {\r\n // window.navigator.msSaveBlob(xhr.response, _fileName);\r\n }\r\n else {\r\n var _url = window.URL || window.webkitURL;\r\n var src = _url.createObjectURL(xhr.response);\r\n\r\n var link = document.createElement('a');\r\n link.href = src;\r\n link.download = _fileName;\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n setTimeout(() => {\r\n window.URL.revokeObjectURL(src);\r\n }, 800);\r\n }\r\n } else {\r\n err = true;\r\n xhr.response.text().then((x) => {\r\n throw x;\r\n });\r\n }\r\n };\r\n\r\n xhr.send(JSON.stringify(data));\r\n };\r\n\r\n getFilename(xhr) {\r\n var disposition = xhr.getResponseHeader('Content-Disposition');\r\n var dispositionSplits = disposition.split(';');\r\n if (dispositionSplits && dispositionSplits.length === 3) {\r\n if (dispositionSplits[0] === 'attachment') {\r\n var fn = dispositionSplits[2].split('filename*=UTF-8\\'\\'');\r\n if (fn && fn.length === 2) {\r\n var dfn = decodeURI(fn[1]);\r\n return dfn;\r\n }\r\n }\r\n }\r\n\r\n return null;\r\n }\r\n\r\n public upload(url: string, input: FormData, cb: (data: T) => void, errCb: (err: any) => void = null) {\r\n var _headers = this.getRequestHeaders();\r\n var uploadReq = new HttpRequest('POST', url, input, {\r\n reportProgress: false,\r\n headers: _headers.headers\r\n });\r\n\r\n this.http.request(uploadReq).subscribe(event => {\r\n if (event.type === HttpEventType.Response) {\r\n var response = event.body as T;\r\n if (cb) {\r\n cb(response);\r\n }\r\n }\r\n }, err => {\r\n if (errCb) {\r\n errCb(err);\r\n }\r\n else {\r\n throw new Error(err.error.msg);\r\n }\r\n });\r\n } \r\n}","import { Injectable } from '@angular/core';\r\nimport { RouteKeys } from '../helper/route-keys.helper';\r\nimport { ApiService } from './api.service';\r\nimport { ConfigService } from './config.service';\r\nimport { StorageService } from './storage.service';\r\nimport { UrlService } from './url.service';\r\n\r\n@Injectable()\r\nexport class AuthService {\r\n constructor(\r\n private apiService: ApiService,\r\n private storageService: StorageService,\r\n private configService: ConfigService,\r\n private urlService: UrlService\r\n ) {}\r\n\r\n login(benutzername: string, passwort: string, okCb: () => void, errCb: (err: any) => void) {\r\n this.apiService.post(RouteKeys.Auth.get_token, { username: benutzername, password: passwort }).subscribe(\r\n (response) => {\r\n this.storageService.saveToSession('benutzername', response.benutzername);\r\n this.storageService.saveToSession('token', response.token);\r\n this.storageService.saveToSession('rollen', response.rollen);\r\n okCb();\r\n },\r\n (err) => {\r\n errCb(err);\r\n }\r\n );\r\n }\r\n\r\n logout() {\r\n this.storageService.clearSession();\r\n this.urlService.naviToPreserveQueryParams('extern');\r\n }\r\n\r\n isLoggedIn(): boolean {\r\n const token = this.storageService.getFromSession('token');\r\n const benutzername = this.storageService.getFromSession('benutzername');\r\n if (token && token.length && benutzername && benutzername.length) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n getBenutzerName(): string {\r\n return this.storageService.getFromSession('benutzername');\r\n }\r\n\r\n // isInRole(role: string = null): boolean {\r\n // const _role = this.getRole();\r\n // if (_role.toLocaleLowerCase() === 'administrator') {\r\n // return true;\r\n // }\r\n // return _role.toLocaleLowerCase() === role.toLocaleLowerCase();\r\n // }\r\n\r\n isInRole(role: string = null): boolean {\r\n const _roles = this.getRoles();\r\n let result = false;\r\n _roles.forEach((_role) => {\r\n const exist = this.configService.rollen.find((x) => x.id === _role);\r\n if (exist !== undefined && exist !== null) {\r\n if (exist.bezeichnung.toLocaleLowerCase() === role.toLocaleLowerCase()) {\r\n result = true;\r\n }\r\n }\r\n });\r\n\r\n return result;\r\n }\r\n\r\n isInOneOfThisRoles(roles: string[]): boolean {\r\n let result = false;\r\n roles.forEach((r) => {\r\n if (this.isInRole(r)) {\r\n result = true;\r\n }\r\n });\r\n\r\n return result;\r\n }\r\n\r\n // getRole(): string {\r\n // return this.storageService.getFromSession('rolle');\r\n // }\r\n getRoles(): number[] {\r\n return this.storageService.getFromSession('rollen');\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable, Subscription } from 'rxjs';\r\nimport { RouteKeys } from '../helper/route-keys.helper';\r\nimport { ApiService } from './api.service';\r\nimport { LanguageService } from './language.service';\r\n\r\n@Injectable()\r\nexport class ConfigService {\r\n public rollen: any[] = [\r\n {\r\n id: 1,\r\n bezeichnung: 'Administrator',\r\n },\r\n {\r\n id: 2,\r\n bezeichnung: 'Leitung',\r\n },\r\n {\r\n id: 3,\r\n bezeichnung: 'Sachbearbeitung 1',\r\n },\r\n {\r\n id: 4,\r\n bezeichnung: 'Sachbearbeitung 2',\r\n },\r\n {\r\n id: 5,\r\n bezeichnung: 'Azubi',\r\n },\r\n {\r\n id: 6,\r\n bezeichnung: 'Trägerverwaltung',\r\n },\r\n {\r\n id: 7,\r\n bezeichnung: 'Einrichtungsverwaltung',\r\n },\r\n ];\r\n\r\n public wochentage: any[] = [\r\n {\r\n key: 1,\r\n value: 'monday',\r\n },\r\n {\r\n key: 2,\r\n value: 'tuesday',\r\n },\r\n {\r\n key: 3,\r\n value: 'wednesday',\r\n },\r\n {\r\n key: 4,\r\n value: 'thursday',\r\n },\r\n {\r\n key: 5,\r\n value: 'friday',\r\n },\r\n ];\r\n\r\n public antragsStatus: any[] = [\r\n {\r\n key: 0,\r\n value: 'open',\r\n },\r\n {\r\n key: 1,\r\n value: 'inProcess',\r\n },\r\n {\r\n key: 2,\r\n value: 'inWaiting',\r\n },\r\n {\r\n key: 3,\r\n value: 'proposed',\r\n },\r\n {\r\n key: 4,\r\n value: 'accepted',\r\n },\r\n {\r\n key: 5,\r\n value: 'declined',\r\n },\r\n ];\r\n\r\n public emailPattern: string = '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\\.[a-z]{2,4}$';\r\n public telefonPattern: string = '/^[0123456789/()+- ]+$/';\r\n\r\n private allKataloge: any[] = [];\r\n public kataloge: any[] = [];\r\n public katalogeMitKeineAntragstellung: any[] = [];\r\n public strassen: any[] = [];\r\n public traeger: any[] = [];\r\n public einrichtungen: any[] = [];\r\n public globalSettings: any[] = [];\r\n public mandantName: string;\r\n\r\n isInit: BehaviorSubject = new BehaviorSubject(false);\r\n selectedLanguageObservable: Subscription;\r\n\r\n constructor(private languageService: LanguageService, private apiService: ApiService) {}\r\n\r\n init(): Observable {\r\n this.apiService.post(RouteKeys.Config.get_config, null).subscribe((response) => {\r\n this.allKataloge = response.kataloge;\r\n this.strassen = response.strassen;\r\n this.traeger = response.traeger;\r\n this.einrichtungen = response.einrichtungen;\r\n this.globalSettings = response.globalSettings;\r\n\r\n this.mandantName = response.mandantName;\r\n this.selectedLanguageObservable = this.languageService.get_selectedLanguageObservable.subscribe((lang) => {\r\n this.buildPatternMessages();\r\n this.getPasswordPolicy();\r\n });\r\n this.isInit.next(true);\r\n });\r\n\r\n return this.isInit.asObservable();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.selectedLanguageObservable) {\r\n this.selectedLanguageObservable.unsubscribe();\r\n }\r\n }\r\n\r\n public getStrassen() {\r\n return this.strassen;\r\n }\r\n\r\n public getTraeger() {\r\n return this.traeger;\r\n }\r\n\r\n noConfigFoundWarning: string[] = [];\r\n public getKatalog(typ: string) {\r\n const exist = this.kataloge[typ];\r\n if (exist !== null && exist !== undefined && exist.length > 0) {\r\n return exist;\r\n } else {\r\n const newKatalog = this.allKataloge.filter((x) => x.typ === typ && x.keineAntragstellung !== true);\r\n if (newKatalog !== null && newKatalog !== undefined && newKatalog.length > 0) {\r\n this.kataloge[typ] = newKatalog;\r\n return newKatalog;\r\n } else {\r\n if (!this.noConfigFoundWarning.find((x) => x === typ)) {\r\n this.noConfigFoundWarning.push(typ);\r\n console.warn('Katalog ' + typ + ' nicht gefunden!');\r\n }\r\n }\r\n }\r\n }\r\n\r\n public getKatalogMitKeineAntragstellung(typ: string) {\r\n const exist = this.katalogeMitKeineAntragstellung[typ];\r\n if (exist !== null && exist !== undefined && exist.length > 0) {\r\n return exist;\r\n } else {\r\n const newKatalog = this.allKataloge.filter((x) => x.typ === typ);\r\n if (newKatalog !== null && newKatalog !== undefined && newKatalog.length > 0) {\r\n this.katalogeMitKeineAntragstellung[typ] = newKatalog;\r\n return newKatalog;\r\n } else {\r\n if (!this.noConfigFoundWarning.find((x) => x === typ)) {\r\n this.noConfigFoundWarning.push(typ);\r\n console.warn('Katalog ' + typ + ' nicht gefunden!');\r\n }\r\n }\r\n }\r\n }\r\n\r\n public getMandantName(): string {\r\n return this.mandantName;\r\n }\r\n\r\n public getGlobalSettngsWithKategorie(kategorie: string) {\r\n const result = [];\r\n for (let index = 0; index < this.globalSettings.length; index++) {\r\n const element = this.globalSettings[index];\r\n if (element.kategorie !== undefined && element.kategorie !== null && element.kategorie.length > 0) {\r\n const exist = element.kategorie.find((x) => x === kategorie);\r\n if (exist !== undefined && exist !== null && exist.length > 0) {\r\n result.push(element);\r\n }\r\n }\r\n }\r\n return result;\r\n }\r\n\r\n public getGlobalSetting(param: string): string {\r\n if (param !== '' && param !== undefined) {\r\n const result = this.globalSettings.find((x) => x.key === param);\r\n if (result != null && result !== undefined) {\r\n return result.value;\r\n }\r\n }\r\n return '';\r\n }\r\n\r\n public getGlobalSettingAsNumber(param: string): number {\r\n const result = this.getGlobalSetting(param).replace(',', '.');\r\n if (!isNaN(Number(result))) {\r\n return Number(result);\r\n }\r\n return 0;\r\n }\r\n\r\n public getGlobalSettingAsDate(param: string): Date {\r\n const result = this.stringToDate(this.getGlobalSetting(param));\r\n return result;\r\n }\r\n\r\n public getMaxSelectedEinrichtungen(): number {\r\n return 0;\r\n }\r\n\r\n public getPlzPattern() {\r\n return /^[0123456789]+$/;\r\n }\r\n\r\n public passwordPolicy: any;\r\n\r\n buildPatternMessages() {\r\n this.passwordPolicy = {\r\n text: '',\r\n minZiffern: '',\r\n minZiffernMessage: this.languageService.translate('missingNumbers'),\r\n minKleinBuchstaben: '',\r\n minKleinBuchstabenMessage: this.languageService.translate('missingLowLetters'),\r\n minGrossBuchstaben: '',\r\n minGrossBuchstabenMessage: this.languageService.translate('missingUpLetters'),\r\n minSonderzeichen: '',\r\n minSonderzeichenMessage: this.languageService.translate('missingSpecials'),\r\n minLaenge: '',\r\n minLaengeMessage: this.languageService.translate('shortPassword'),\r\n maxLaenge: '',\r\n maxLaengeMessage: this.languageService.translate('longPassword'),\r\n };\r\n }\r\n\r\n getPasswordPolicy() {\r\n const policy = this.getGlobalSetting('passwordPolicy');\r\n\r\n if (policy != null && policy != undefined && policy.length > 0) {\r\n const pswPatternArray = policy.split(',').map((n) => {\r\n return Number(n);\r\n });\r\n\r\n if (pswPatternArray[0] > 0) {\r\n this.passwordPolicy.minLaenge = '[A-Za-z\\\\d$@$!%*?&#_-]{' + pswPatternArray[0].toString() + ',}';\r\n this.passwordPolicy.text =\r\n '

' +\r\n this.languageService.translate('patternArray0_1') +\r\n pswPatternArray[0] +\r\n (pswPatternArray[5] >= pswPatternArray[0] ? this.languageService.translate('patternArray0_2') + pswPatternArray[5] : '') +\r\n this.languageService.translate('patternArray0_3');\r\n }\r\n if (pswPatternArray[1] > 0) {\r\n this.passwordPolicy.minZiffern = '(?=([^0-9]*[0-9]){' + pswPatternArray[1].toString() + ',})';\r\n this.passwordPolicy.text =\r\n this.passwordPolicy.text.trim() +\r\n '
' +\r\n this.languageService.translate('patternArray1_1') +\r\n pswPatternArray[1] +\r\n this.languageService.translate('patternArray1_2');\r\n }\r\n if (pswPatternArray[2] > 0) {\r\n this.passwordPolicy.minKleinBuchstaben = '(?=([^a-z]*[a-z]){' + pswPatternArray[2].toString() + ',})';\r\n this.passwordPolicy.text =\r\n this.passwordPolicy.text.trim() +\r\n '
' +\r\n this.languageService.translate('patternArray2_1') +\r\n pswPatternArray[2] +\r\n this.languageService.translate('patternArray2_2');\r\n }\r\n if (pswPatternArray[3] > 0) {\r\n this.passwordPolicy.minGrossBuchstaben = '(?=([^A-Z]*[A-Z]){' + pswPatternArray[3].toString() + ',})';\r\n this.passwordPolicy.text =\r\n this.passwordPolicy.text.trim() +\r\n '
' +\r\n this.languageService.translate('patternArray3_1') +\r\n pswPatternArray[3] +\r\n this.languageService.translate('patternArray3_2');\r\n }\r\n if (pswPatternArray[4] > 0) {\r\n this.passwordPolicy.minSonderzeichen = '(?=(.*[$@$!%*?&#_-]){' + pswPatternArray[4].toString() + ',})';\r\n this.passwordPolicy.text =\r\n this.passwordPolicy.text.trim() +\r\n '
' +\r\n this.languageService.translate('patternArray4_1') +\r\n pswPatternArray[4] +\r\n this.languageService.translate('patternArray4_2');\r\n }\r\n if (pswPatternArray[5] > 0) {\r\n this.passwordPolicy.maxLaenge = pswPatternArray[5];\r\n this.passwordPolicy.text =\r\n this.passwordPolicy.text.trim() +\r\n (pswPatternArray[0] == 0\r\n ? '
' + this.languageService.translate('patternArray5_1') + pswPatternArray[5] + this.languageService.translate('patternArray5_2')\r\n : '');\r\n }\r\n\r\n this.passwordPolicy.text =\r\n this.passwordPolicy.text.trim() != '' ? '' + this.languageService.translate('passwordPolicy') + ':' + this.passwordPolicy.text : '';\r\n } else {\r\n console.warn('Password-Policy nicht gefunden!');\r\n }\r\n }\r\n\r\n private stringToDate(str: string): Date {\r\n // Datumformat muss zwingend dd.mm.yyyy sein!\r\n if (str.length > 9 && str.length < 20) {\r\n const [dateValues, timeValues] = str.split(' ');\r\n const [day, month, year] = dateValues.split('.');\r\n const [hours, minutes, seconds] = timeValues.split(':');\r\n const date = new Date(+year, +month - 1, +day, +hours, +minutes, +seconds);\r\n return date;\r\n }\r\n return null;\r\n }\r\n\r\n public getMonthName(monthNumber, lang) {\r\n const date = new Date();\r\n date.setMonth(monthNumber - 1);\r\n\r\n return date.toLocaleString(lang, { month: 'long' });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { StorageService } from './storage.service';\r\n\r\nimport 'devextreme/localization/globalize/number';\r\nimport 'devextreme/localization/globalize/date';\r\nimport 'devextreme/localization/globalize/currency';\r\nimport 'devextreme/localization/globalize/message';\r\n\r\nimport deMessages from 'devextreme/localization/messages/de.json';\r\nimport enMessages from 'devextreme/localization/messages/en.json';\r\n\r\nimport supplemental from 'devextreme-cldr-data/supplemental.json';\r\nimport deCldrData from 'devextreme-cldr-data/de.json';\r\nimport enCldrData from 'devextreme-cldr-data/en.json';\r\n\r\nimport Globalize from 'globalize';\r\nimport { locale } from 'devextreme/localization';\r\nimport { Router } from '@angular/router';\r\n\r\n@Injectable()\r\nexport class LanguageService {\r\n private _blackListWarnings: string[] = [];\r\n private _selectedLanguage: BehaviorSubject = new BehaviorSubject(navigator.language);\r\n\r\n public get get_selectedLanguageObservable(): Observable {\r\n return this._selectedLanguage.asObservable();\r\n }\r\n\r\n constructor(private storageService: StorageService, private router: Router) {\r\n Globalize.load(supplemental, deCldrData, enCldrData);\r\n\r\n this.loadMessages(deMessages);\r\n this.loadMessages(enMessages);\r\n this.loadMessages(window.defaultLang.getDictionary());\r\n }\r\n\r\n public init() {\r\n this.get_selectedLanguageObservable.subscribe((lang) => {\r\n Globalize.locale(lang);\r\n locale(lang);\r\n });\r\n\r\n let _lang = this.storageService.getFromLocale('lang');\r\n\r\n if (_lang === null || _lang === undefined || _lang.length === 0) {\r\n _lang = navigator.language;\r\n }\r\n\r\n if (_lang !== null && _lang !== undefined && _lang.length > 1) {\r\n switch (_lang.substring(0, 2)) {\r\n case 'en':\r\n _lang = 'en';\r\n break;\r\n default:\r\n _lang = 'de';\r\n }\r\n } else {\r\n _lang = 'de';\r\n }\r\n this._selectedLanguage.next(_lang);\r\n }\r\n\r\n private loadMessages(messages: any) {\r\n if (messages !== null && messages !== undefined) {\r\n Globalize.loadMessages(messages);\r\n }\r\n }\r\n\r\n public setLanguage(lang: string) {\r\n if (lang !== null && lang !== undefined && lang.length > 0 && this._selectedLanguage.value !== lang) {\r\n this._selectedLanguage.next(lang);\r\n this.storageService.saveToLocale('lang', lang);\r\n //this.forcePageRepaint();\r\n }\r\n }\r\n\r\n public getLanguage() {\r\n if (this._selectedLanguage !== null && this._selectedLanguage !== undefined) {\r\n return this._selectedLanguage.value;\r\n }\r\n return '';\r\n }\r\n\r\n private forcePageRepaint() {\r\n location.reload();\r\n }\r\n\r\n //---------------------\r\n\r\n public translate(key: string, params: string[] = []): string {\r\n return this.formatMessage(key, params) || '#' + key + '#';\r\n }\r\n\r\n private formatMessage(key: string, params: string[] = []): string {\r\n try {\r\n return Globalize.formatMessage(key, params);\r\n } catch (ex) {\r\n const msg = ex.message;\r\n\r\n if (!this._blackListWarnings.find((x) => x === msg)) {\r\n this._blackListWarnings.push(msg);\r\n }\r\n\r\n return null;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class MobileService {\r\n\r\n isMobile:boolean = false;\r\n constructor() {\r\n this.isMobile = this._isMobile();\r\n }\r\n\r\n private _isMobile(): boolean {\r\n let _hasTouchScreen: boolean = false;\r\n\r\n\r\n const _navigator: any = window.navigator;\r\n\r\n\r\n if ('maxTouchPoints' in _navigator) {\r\n _hasTouchScreen = _navigator.maxTouchPoints > 0;\r\n } else if ('msMaxTouchPoints' in _navigator) {\r\n _hasTouchScreen = _navigator.msMaxTouchPoints > 0;\r\n } else {\r\n const mQ = window.matchMedia('(pointer:coarse)');\r\n\r\n\r\n if (mQ && mQ.media === '(pointer:coarse)') {\r\n _hasTouchScreen = !!mQ.matches;\r\n } else if ('orientation' in window) {\r\n _hasTouchScreen = true;\r\n } else {\r\n const UA = navigator.userAgent;\r\n _hasTouchScreen = (\r\n /\\b(BlackBerry|webOS|iPhone|IEMobile)\\b/i.test(UA) ||\r\n /\\b(Android|Windows Phone|iPad|iPod)\\b/i.test(UA)\r\n );\r\n }\r\n }\r\n\r\n\r\n return _hasTouchScreen;\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class PopupService {\r\n constructor() {}\r\n\r\n // Einrichtung-Detail-Popup\r\n private _detailPopup: BehaviorSubject = new BehaviorSubject(null);\r\n public get get_detailPopupAsObservable(): Observable {\r\n return this._detailPopup.asObservable();\r\n }\r\n\r\n showDetailPopup(item, preview: boolean = false) {\r\n this._detailPopup.next({\r\n open: true,\r\n item: item,\r\n preview: preview,\r\n });\r\n }\r\n\r\n // Einrichtung-Hinzufügen-Popup\r\n private _addInstitutionPopup: BehaviorSubject = new BehaviorSubject(null);\r\n public get get_addInstitutionPopupAsObservable(): Observable {\r\n return this._addInstitutionPopup.asObservable();\r\n }\r\n\r\n showAddInstitutionPopup() {\r\n this._addInstitutionPopup.next({\r\n open: true,\r\n });\r\n }\r\n\r\n // Benutzerkonto-Löschen-Popup\r\n private _removeAccountPopup: BehaviorSubject = new BehaviorSubject(null);\r\n public get get_removeAccountPopupAsObservable(): Observable {\r\n return this._removeAccountPopup.asObservable();\r\n }\r\n\r\n showRemoveAccountPopup() {\r\n this._removeAccountPopup.next({\r\n open: true,\r\n });\r\n }\r\n\r\n // Passwort-Ändern-Popup\r\n private _changePasswordPopup: BehaviorSubject = new BehaviorSubject(null);\r\n public get get_changePasswordPopupAsObservable(): Observable {\r\n return this._changePasswordPopup.asObservable();\r\n }\r\n\r\n showChangePasswordPopup() {\r\n this._changePasswordPopup.next({\r\n open: true,\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class StorageService {\r\n useCrypt: boolean = false;\r\n\r\n constructor() {\r\n this.useCrypt = !window.globalConfig.dev;\r\n }\r\n\r\n clearSession(){\r\n sessionStorage.clear();\r\n }\r\n \r\n clearFromSession(key: string) {\r\n if (!key || !key.length) {\r\n throw new Error('invalid key: ' + key);\r\n }\r\n\r\n sessionStorage.removeItem(this.encrypt(key));\r\n }\r\n\r\n clearPartFromSession(key: string, part: string) {\r\n if (!key || !key.length) {\r\n throw new Error('invalid key: ' + key);\r\n }\r\n\r\n var node = this.getFromSession(key);\r\n \r\n if (node !== null && node !== undefined) {\r\n delete node[part];\r\n this.saveToSession(key, node);\r\n }\r\n }\r\n\r\n clearFromLocale(key: string) {\r\n if (!key || !key.length) {\r\n throw new Error('invalid key: ' + key);\r\n }\r\n\r\n localStorage.removeItem(this.encrypt(key));\r\n }\r\n\r\n clearPartFromLocale(key: string, part: string) {\r\n if (!key || !key.length) {\r\n throw new Error('invalid key: ' + key);\r\n }\r\n\r\n var node = this.getFromLocale(key);\r\n \r\n if (node !== null && node !== undefined) {\r\n delete node[part];\r\n this.saveToLocale(key, node);\r\n }\r\n }\r\n\r\n getFromSession(key: string): T | null {\r\n if (!key || !key.length) {\r\n throw new Error('invalid key: ' + key);\r\n }\r\n\r\n const item = sessionStorage.getItem(this.encrypt(key));\r\n if (item) {\r\n return this.decrypt(item);\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n\r\n getFromLocale(key: string): T | null {\r\n if (!key || !key.length) {\r\n throw new Error('invalid key: ' + key);\r\n }\r\n\r\n const item = localStorage.getItem(this.encrypt(key));\r\n if (item) {\r\n return this.decrypt(item);\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n\r\n saveToSession(key: string, data: any) {\r\n if (!key || !key.length) {\r\n throw new Error('invalid key: ' + key);\r\n }\r\n\r\n if (data === null || data === undefined) {\r\n throw new Error('invalid data: ' + data);\r\n }\r\n\r\n sessionStorage.setItem(this.encrypt(key), this.encrypt(data));\r\n }\r\n\r\n saveToLocale(key: string, data: any) {\r\n if (!key || !key.length) {\r\n throw new Error('invalid key: ' + key);\r\n }\r\n\r\n if (data === null || data === undefined) {\r\n throw new Error('invalid data: ' + data);\r\n }\r\n localStorage.setItem(this.encrypt(key), this.encrypt(data));\r\n }\r\n\r\n private encrypt(data: any): string {\r\n if (this.useCrypt) {\r\n return btoa(encodeURIComponent(JSON.stringify(data)));\r\n }\r\n else {\r\n return JSON.stringify(data);\r\n }\r\n }\r\n\r\n private decrypt(data: string): T {\r\n if (!data) {\r\n throw new Error('invalid data: ' + data);\r\n }\r\n\r\n if (this.useCrypt) {\r\n return JSON.parse(decodeURIComponent(atob(data)));\r\n }\r\n else {\r\n return JSON.parse(data) as T;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { HttpParameterCodec } from \"@angular/common/http\";\r\nimport { StorageService } from './storage.service';\r\n\r\n@Injectable()\r\nexport class UrlService {\r\n\r\n last_externSearchQueryParams: string;\r\n private _externSearchQueryParams: BehaviorSubject = new BehaviorSubject(null);\r\n public get get_externSearchQueryParams(): Observable {\r\n return this._externSearchQueryParams.asObservable();\r\n }\r\n\r\n last_externSelectedIdsQueryParams: string;\r\n private _externSelectedIdsQueryParams: BehaviorSubject = new BehaviorSubject([]);\r\n public get get_externSelectedIdsQueryParams(): Observable {\r\n return this._externSelectedIdsQueryParams.asObservable();\r\n }\r\n\r\n last_externSelectedCareTypeIdsQueryParams: string;\r\n private _externSelectedCareTypeIdsQueryParams: BehaviorSubject = new BehaviorSubject([]);\r\n public get get_externSelectedCareTypeIdsQueryParams(): Observable {\r\n return this._externSelectedCareTypeIdsQueryParams.asObservable();\r\n }\r\n\r\n constructor(private route: ActivatedRoute, private router: Router, private storageService: StorageService) {\r\n this.route.queryParamMap.subscribe(paras => {\r\n\r\n const raw_search = paras.get('s');\r\n if (raw_search !== null && raw_search !== undefined && raw_search.length > 0) {\r\n const search = decodeURIComponent(atob(raw_search));\r\n if (raw_search !== this.last_externSearchQueryParams) {\r\n this._externSearchQueryParams.next(JSON.parse(search));\r\n this.last_externSearchQueryParams = raw_search;\r\n }\r\n }\r\n else {\r\n this._externSearchQueryParams.next(null);\r\n }\r\n\r\n //-----\r\n\r\n const raw_ids = paras.get('i');\r\n if (raw_ids !== null && raw_ids !== undefined && raw_ids.length > 0) {\r\n const idStringArray = raw_ids.split(',');\r\n const idArray = idStringArray.map(x => +x);\r\n\r\n if (raw_ids !== this.last_externSelectedIdsQueryParams) {\r\n this._externSelectedIdsQueryParams.next(idArray);\r\n this.last_externSelectedIdsQueryParams = raw_search;\r\n }\r\n }\r\n else {\r\n this._externSelectedIdsQueryParams.next([]);\r\n }\r\n\r\n //-----\r\n const raw_careTypeId = paras.get('t');\r\n if (raw_careTypeId !== null && raw_careTypeId !== undefined && raw_careTypeId.length > 0) {\r\n const idStringArray = raw_careTypeId.split(',');\r\n const idArray = idStringArray.map(x => +x);\r\n\r\n if (raw_careTypeId !== this.last_externSelectedIdsQueryParams) {\r\n this._externSelectedCareTypeIdsQueryParams.next(idArray);\r\n this.last_externSelectedCareTypeIdsQueryParams = raw_search;\r\n }\r\n }\r\n else {\r\n this._externSelectedCareTypeIdsQueryParams.next([]);\r\n }\r\n });\r\n }\r\n\r\n naviToMergeQueryParams(path: string, queryParams: any): Promise {\r\n return this.router.navigate([path], {\r\n queryParams: queryParams,\r\n queryParamsHandling: 'merge',\r\n });\r\n }\r\n\r\n naviToPreserveQueryParams(path: string, queryParams: any = null): Promise {\r\n return this.router.navigate([path], { queryParamsHandling: 'preserve', queryParams: queryParams });\r\n }\r\n\r\n naviTo(path: string, queryParams: any): Promise {\r\n return this.router.navigate([path], { queryParams: queryParams });\r\n }\r\n\r\n refreshQueryParams(queryParams: any): Promise {\r\n if (queryParams.i != undefined && queryParams.i != null) {\r\n this.storageService.saveToLocale(\"selectedIds\", queryParams.i);\r\n }\r\n\r\n return this.router.navigate(\r\n [],\r\n {\r\n relativeTo: this.route,\r\n queryParams: queryParams,\r\n queryParamsHandling: 'merge',\r\n });\r\n }\r\n}\r\n\r\nexport class CustomEncoder implements HttpParameterCodec {\r\n encodeKey(key: string): string {\r\n return encodeURIComponent(key);\r\n }\r\n\r\n encodeValue(value: string): string {\r\n return encodeURIComponent(value);\r\n }\r\n\r\n decodeKey(key: string): string {\r\n return decodeURIComponent(key);\r\n }\r\n\r\n decodeValue(value: string): string {\r\n return decodeURIComponent(value);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, Router, CanLoad, Route, UrlSegment, UrlTree } from '@angular/router';\r\nimport { ActivatedRouteSnapshot, RouterStateSnapshot, } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthService } from '../services/auth.service';\r\nimport { UrlService } from '../services/url.service';\r\n\r\n@Injectable()\r\nexport class AuthGuard implements CanActivate, CanLoad {\r\n\r\n constructor(private urlService: UrlService, private router: Router, private authService: AuthService) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean | Observable | Promise {\r\n const returnUrl = state.url.split('?')[0];\r\n return this.can(returnUrl);\r\n }\r\n\r\n canLoad(route: Route, segments: UrlSegment[]): boolean | UrlTree | Observable | Promise {\r\n let returnUrl = this.router.getCurrentNavigation().extractedUrl.toString().split('?')[0];\r\n return this.can(returnUrl);\r\n }\r\n\r\n can(returnUrl: string) {\r\n if (this.authService.isLoggedIn()) {\r\n return true;\r\n }\r\n\r\n this.urlService.naviToMergeQueryParams('extern/login',{ returnUrl: returnUrl } );\r\n return false;\r\n }\r\n}","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { AuthGuard } from './share/guards/auth.guard';\r\n\r\n\r\nconst routes: Routes = [\r\n { path: '', redirectTo: 'extern', pathMatch: 'full' },\r\n {\r\n path: 'extern', loadChildren: () => import('./citizen-extern/citizen-extern.module').then(m => m.CitizenExternModule)\r\n },\r\n {\r\n path: 'intern', loadChildren: () => import('./citizen-intern/citizen-intern.module').then(m => m.CitizenInternModule), canActivate: [AuthGuard], canLoad: [AuthGuard]\r\n },\r\n {\r\n path: '**', redirectTo: ''\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, { onSameUrlNavigation: 'reload', useHash: true })],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { DxPopupComponent } from 'devextreme-angular/ui/popup';\r\nimport { PopupService } from '../../services/popup.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { RouteKeys } from '../../helper/route-keys.helper';\r\nimport { ApiService } from '../../services/api.service';\r\n\r\n@Component({\r\n selector: 'app-error-handler-popup',\r\n templateUrl: './error-handler-popup.component.html',\r\n styleUrls: ['./error-handler-popup.component.scss'],\r\n})\r\nexport class ErrorHandlerPopupComponent implements OnInit {\r\n @ViewChild('errorHandlerPopup', { static: false }) errorHandlerPopup: DxPopupComponent;\r\n\r\n description: string = '';\r\n error: any;\r\n\r\n // subscription_get_PopupAsObservable: Subscription;\r\n constructor(private popupService: PopupService, private route: ActivatedRoute, private apiService: ApiService) {\r\n this.onClickSend = this.onClickSend.bind(this);\r\n this.onClickCancel = this.onClickCancel.bind(this);\r\n\r\n // this.subscription_get_PopupAsObservable = this.popupService.get__errorHandlerPopupAsObservable.subscribe(context => {\r\n // if (context !== null && context !== undefined && context.open === true && context.error !== null && context.error !== undefined) {\r\n // this.error = context.error;\r\n // this.error.browser = this.detectBrowserName() + \" \" + this.detectBrowserVersion();\r\n // this.error.url = location.href;\r\n // this.errorHandlerPopup.instance.show();\r\n // }\r\n // });\r\n }\r\n\r\n ngOnInit() {}\r\n\r\n ngOnDestroy(): void {\r\n // if (this.subscription_get_PopupAsObservable) {\r\n // this.subscription_get_PopupAsObservable.unsubscribe();\r\n // }\r\n }\r\n\r\n onInitialized(e) {\r\n e.component.registerKeyHandler('tab', (arg) => {\r\n arg.stopPropagation();\r\n });\r\n }\r\n\r\n onClickSend(e) {\r\n this.error.description = this.description;\r\n\r\n this.logError(() => {\r\n this.sendMail(() => {\r\n this.errorHandlerPopup.instance.hide().then(() => {\r\n this.error = null;\r\n this.description = null;\r\n });\r\n });\r\n });\r\n }\r\n\r\n onClickCancel(e) {\r\n this.error.description = null;\r\n this.logError(() => {\r\n this.errorHandlerPopup.instance.hide().then(() => {\r\n this.error = null;\r\n this.description = null;\r\n });\r\n });\r\n }\r\n\r\n logError(cb: () => void) {\r\n this.apiService.post(RouteKeys.Exception.log_error, this.error).subscribe(() => {\r\n if (cb) {\r\n cb();\r\n }\r\n });\r\n }\r\n\r\n sendMail(cb: () => void) {\r\n this.apiService.post(RouteKeys.Exception.send_mail, this.error).subscribe(() => {\r\n if (cb) {\r\n cb();\r\n }\r\n });\r\n }\r\n\r\n detectBrowserName() {\r\n const agent = window.navigator.userAgent.toLowerCase();\r\n switch (true) {\r\n case agent.indexOf('edge') > -1:\r\n return 'edge';\r\n case agent.indexOf('opr') > -1 && !!(window).opr:\r\n return 'opera';\r\n case agent.indexOf('chrome') > -1 && !!(window).chrome:\r\n return 'chrome';\r\n case agent.indexOf('trident') > -1:\r\n return 'ie';\r\n case agent.indexOf('firefox') > -1:\r\n return 'firefox';\r\n case agent.indexOf('safari') > -1:\r\n return 'safari';\r\n default:\r\n return 'other';\r\n }\r\n }\r\n\r\n detectBrowserVersion() {\r\n const userAgent = navigator.userAgent;\r\n let matchTest = userAgent.match(/(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i) || [];\r\n let tem;\r\n if (/trident/i.test(matchTest[1])) {\r\n tem = /\\brv[ :]+(\\d+)/g.exec(userAgent) || [];\r\n return 'IE ' + (tem[1] || '');\r\n }\r\n if (matchTest[1] === 'Chrome') {\r\n tem = userAgent.match(/\\b(OPR|Edg)\\/(\\d+)/);\r\n if (tem != null) {\r\n return tem.slice(1).join(' ').replace('OPR', 'Opera');\r\n }\r\n }\r\n matchTest = matchTest[2] ? [matchTest[1], matchTest[2]] : [navigator.appName, navigator.appVersion, '-?'];\r\n if ((tem = userAgent.match(/version\\/(\\d+)/i)) != null) {\r\n matchTest.splice(1, 1, tem[1]);\r\n }\r\n return matchTest.join(' ');\r\n }\r\n}\r\n","\r\n

\r\n
\r\n {{'errorPopupDisclamer' | translate}}\r\n - URL\r\n {{'errorBrowserDisclaimer' | translate }}\r\n {{'errorUserIdDisclaimer' | translate }}\r\n {{'errorInformationDisclaimer' | translate }}\r\n {{'errorDescriptionDisclaimer' | translate }}\r\n {{'errorDescriptionLabel' | translate }}\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n {{'thxForHelp' | translate }}\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n","import { Component, OnDestroy } from '@angular/core';\r\nimport DateBox from 'devextreme/ui/date_box';\r\nimport TextBox from 'devextreme/ui/text_box';\r\nimport SelectBox from 'devextreme/ui/select_box';\r\nimport NumberBox from 'devextreme/ui/number_box';\r\nimport DataGrid from 'devextreme/ui/data_grid';\r\nimport Button from 'devextreme/ui/button';\r\nimport Popup from 'devextreme/ui/popup';\r\nimport config from 'devextreme/core/config';\r\n\r\nimport { LanguageService } from './share/services/language.service';\r\nimport { Subscription, withLatestFrom } from 'rxjs';\r\nimport { ConfigService } from './share/services/config.service';\r\nimport { ApiService } from './share/services/api.service';\r\nimport { RouteKeys } from './share/helper/route-keys.helper';\r\nimport dxToast from 'devextreme/ui/toast';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: 'app.component.html',\r\n styleUrls: ['app.component.scss'],\r\n})\r\nexport class AppComponent implements OnDestroy {\r\n // selectBoxLanguageObservable: Subscription;\r\n isInit: boolean = false;\r\n\r\n constructor(private languageService: LanguageService, private configService: ConfigService, private apiService: ApiService) {\r\n this.getVersion();\r\n this.configService.init().subscribe((isInit) => {\r\n this.isInit = isInit;\r\n });\r\n\r\n this.languageService.init();\r\n this.setGlobalConfig();\r\n }\r\n\r\n getVersion() {\r\n this.apiService.post(RouteKeys.Config.get_version, null).subscribe((response) => {\r\n console.info('CZ-Kita-Bürger:', response.version);\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n // if (this.selectBoxLanguageObservable) {\r\n // this.selectBoxLanguageObservable.unsubscribe();\r\n // }\r\n }\r\n\r\n setGlobalConfig() {\r\n config({\r\n editorStylingMode: 'outlined', // 'filled' | 'outlined' | 'underlined'\r\n defaultCurrency: 'EUR',\r\n forceIsoDateParsing: true,\r\n floatingActionButtonConfig: {\r\n position: { at: 'left bottom', my: 'left bottom', offset: '0 -40' },\r\n },\r\n });\r\n\r\n NumberBox.defaultOptions({\r\n options: {\r\n showClearButton: true,\r\n min: 1,\r\n max: 31999,\r\n showSpinButtons: true,\r\n } as any,\r\n });\r\n\r\n SelectBox.defaultOptions({\r\n options: {\r\n showClearButton: true,\r\n },\r\n });\r\n\r\n TextBox.defaultOptions({\r\n options: {\r\n showClearButton: true,\r\n maxLength: 3999,\r\n labelLocation: 'top',\r\n } as any,\r\n });\r\n\r\n DateBox.defaultOptions({\r\n options: {\r\n //showClearButton: true,\r\n displayFormat: 'dd.MM.yyyy',\r\n type: 'date',\r\n pickerType: 'calendar',\r\n min: '1900/1/1',\r\n max: '2099/12/31',\r\n useMaskBehavior: true,\r\n dateSerializationFormat: 'yyyy-MM-ddTHH:mm:ss',\r\n } as any,\r\n });\r\n\r\n DataGrid.defaultOptions({\r\n options: {\r\n columnAutoWidth: true,\r\n showColumnLines: true,\r\n showRowLines: false,\r\n showBorders: false,\r\n rowAlternationEnabled: true,\r\n allowColumnReordering: true,\r\n allowColumnResizing: true,\r\n columnResizingMode: 'widget',\r\n\r\n scrolling: {\r\n useNative: false,\r\n mode: 'virtual',\r\n showScrollbar: 'always',\r\n },\r\n editing: {\r\n popup: {\r\n onContentReady: (e) => {\r\n const toolbarItems = e.component.option('toolbarItems');\r\n toolbarItems[0].options.type = 'default';\r\n toolbarItems[0].options.icon = 'save';\r\n toolbarItems[1].options.type = 'default';\r\n toolbarItems[1].options.icon = 'remove';\r\n e.component.option('toolbarItems', toolbarItems);\r\n },\r\n },\r\n },\r\n } as any,\r\n });\r\n\r\n Button.defaultOptions({\r\n options: {\r\n focusStateEnabled: false,\r\n hoverStateEnabled: false,\r\n } as any,\r\n });\r\n\r\n Popup.defaultOptions({\r\n options: {\r\n shadingColor: 'rgba(200, 200, 200, 0.75)',\r\n } as any,\r\n });\r\n\r\n dxToast.defaultOptions({\r\n options: {\r\n width: '320px',\r\n displayTime: '3000',\r\n position: {\r\n at: 'bottom center',\r\n my: 'bottom center',\r\n offset: '0 -40',\r\n //of: '#app-table-container'\r\n },\r\n } as any,\r\n });\r\n }\r\n}\r\n","
\r\n {{ 'initializeApplication' | translate }}\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\nimport { StorageService } from '../services/storage.service';\r\n\r\n@Injectable()\r\nexport class AuthInterceptor implements HttpInterceptor {\r\n\r\n constructor(private storageService: StorageService) { }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n const token = this.storageService.getFromSession('token');\r\n if (token) {\r\n req = req.clone(\r\n {\r\n setHeaders: {\r\n Authorization: 'Bearer ' + token\r\n }\r\n }\r\n );\r\n }\r\n return next.handle(req);\r\n }\r\n}\r\n\r\nexport const authInterceptorProvider = {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: AuthInterceptor,\r\n multi: true\r\n};","import { Injectable } from '@angular/core';\r\nimport { CanActivate, Router, CanLoad, Route, UrlSegment, UrlTree } from '@angular/router';\r\nimport { ActivatedRouteSnapshot, RouterStateSnapshot, } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthService } from '../services/auth.service';\r\n\r\n@Injectable()\r\nexport class RollenGuard implements CanActivate, CanLoad {\r\n\r\n constructor(private router: Router, private authService: AuthService) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean | Observable | Promise {\r\n return this.can(route.data.neededRoles);\r\n }\r\n\r\n canLoad(route: Route, segments: UrlSegment[]): boolean | UrlTree | Observable | Promise {\r\n return this.can(route.data.neededRoles);\r\n }\r\n\r\n can(neededRoles: string[]) {\r\n\r\n if (!this.authService.isLoggedIn()) {\r\n return false;\r\n }\r\n\r\n if(this.authService.isInRole('Administrator')) {\r\n return true;\r\n }\r\n\r\n let isInRole = false;\r\n neededRoles.forEach(nr => {\r\n const _isInRole = this.authService.isInRole(nr);\r\n if(_isInRole) {\r\n isInRole = true;\r\n }\r\n });\r\n\r\n return isInRole;\r\n }\r\n}\r\n\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor, HTTP_INTERCEPTORS, HttpErrorResponse } from '@angular/common/http';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { AuthService } from '../services/auth.service';\r\n\r\n@Injectable()\r\nexport class ErrorInterceptor implements HttpInterceptor {\r\n constructor(private authService: AuthService) { }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n return next.handle(request).pipe(catchError((err: HttpErrorResponse) => {\r\n if (err.status === 401) {\r\n this.authService.logout();\r\n }\r\n\r\n return throwError(() => {\r\n if (err.status < 500) {\r\n return {\r\n status: err.status,\r\n message: err.message\r\n };\r\n }\r\n if (err.status === 600) {\r\n return {\r\n status: err.status,\r\n message: err.error\r\n }\r\n }\r\n else {\r\n return {\r\n status: err.status,\r\n message: err.error?.message || err.error?.Message,\r\n stack: err.error?.stack || err.error?.Stack\r\n };\r\n }\r\n });\r\n\r\n }));\r\n }\r\n}\r\n\r\n\r\nexport const errorInterceptorProvider = {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: ErrorInterceptor,\r\n multi: true\r\n};","import { ErrorHandler, Injectable, NgZone } from '@angular/core';\r\nimport { ApiService } from '../services/api.service';\r\nimport { RouteKeys } from './route-keys.helper';\r\n\r\n@Injectable()\r\nexport class GlobalErrorHandler implements ErrorHandler {\r\n constructor(private zone: NgZone, private apiService: ApiService) {}\r\n\r\n handleError(error: any) {\r\n console.error('1', error); // wichtig um in der Console Fehler zu sehen\r\n\r\n this.zone.run(() => {\r\n let _error: any = {\r\n message: error.message,\r\n stack: error.stack,\r\n status: error.status || null,\r\n browser: this.detectBrowserName() + ' ' + this.detectBrowserVersion(),\r\n url: location.href,\r\n };\r\n console.log(_error);\r\n this.logError(_error);\r\n // this.popupService.showErrorHandlerPopup(_error);\r\n });\r\n }\r\n\r\n logError(error) {\r\n this.apiService.post(RouteKeys.Exception.log_error, error).subscribe(() => {});\r\n }\r\n\r\n // logError(error) {\r\n // this.apiService.post(RouteKeys.Exception.log_error, error).subscribe(() => {\r\n // if (cb) {\r\n // cb();\r\n // }\r\n // });\r\n // }\r\n\r\n // sendMail(cb: () => void) {\r\n // this.apiService.post(RouteKeys.Exception.send_mail, this.error).subscribe(() => {\r\n // if (cb) {\r\n // cb();\r\n // }\r\n // });\r\n // }\r\n\r\n detectBrowserName() {\r\n const agent = window.navigator.userAgent.toLowerCase();\r\n switch (true) {\r\n case agent.indexOf('edge') > -1:\r\n return 'edge';\r\n case agent.indexOf('opr') > -1 && !!(window).opr:\r\n return 'opera';\r\n case agent.indexOf('chrome') > -1 && !!(window).chrome:\r\n return 'chrome';\r\n case agent.indexOf('trident') > -1:\r\n return 'ie';\r\n case agent.indexOf('firefox') > -1:\r\n return 'firefox';\r\n case agent.indexOf('safari') > -1:\r\n return 'safari';\r\n default:\r\n return 'other';\r\n }\r\n }\r\n\r\n detectBrowserVersion() {\r\n const userAgent = navigator.userAgent;\r\n let matchTest = userAgent.match(/(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i) || [];\r\n let tem;\r\n if (/trident/i.test(matchTest[1])) {\r\n tem = /\\brv[ :]+(\\d+)/g.exec(userAgent) || [];\r\n return 'IE ' + (tem[1] || '');\r\n }\r\n if (matchTest[1] === 'Chrome') {\r\n tem = userAgent.match(/\\b(OPR|Edg)\\/(\\d+)/);\r\n if (tem != null) {\r\n return tem.slice(1).join(' ').replace('OPR', 'Opera');\r\n }\r\n }\r\n matchTest = matchTest[2] ? [matchTest[1], matchTest[2]] : [navigator.appName, navigator.appVersion, '-?'];\r\n if ((tem = userAgent.match(/version\\/(\\d+)/i)) != null) {\r\n matchTest.splice(1, 1, tem[1]);\r\n }\r\n return matchTest.join(' ');\r\n }\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { CUSTOM_ELEMENTS_SCHEMA, LOCALE_ID, NgModule, ErrorHandler } from '@angular/core';\r\nimport { HttpClientModule } from '@angular/common/http';\r\n\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { AuthGuard } from './share/guards/auth.guard';\r\nimport { StorageService } from './share/services/storage.service';\r\nimport { ApiService } from './share/services/api.service';\r\nimport { AuthService } from './share/services/auth.service';\r\nimport { authInterceptorProvider } from './share/interceptors/auth.interceptor';\r\nimport { InjectorModule } from './share/injection/injector.module';\r\nimport { LanguageService } from './share/services/language.service';\r\n\r\nimport { registerLocaleData } from '@angular/common';\r\nimport localeDe from '@angular/common/locales/de';\r\nimport localeEn from '@angular/common/locales/en';\r\nimport { RollenGuard } from './share/guards/rollen.guard';\r\nimport { UrlService } from './share/services/url.service';\r\nimport { PopupService } from './share/services/popup.service';\r\nimport { ConfigService } from './share/services/config.service';\r\nimport { errorInterceptorProvider } from './share/interceptors/error.interceptor';\r\nimport { ErrorHandlerPopupComponent } from './share/components/error-handler-popup/error-handler-popup.component';\r\nimport { GlobalErrorHandler } from './share/helper/error.handler';\r\nimport { MobileService } from './share/services/mobile.service';\r\n\r\nregisterLocaleData(localeDe);\r\nregisterLocaleData(localeEn);\r\n\r\n@NgModule({\r\n declarations: [\t\t\r\n AppComponent, ErrorHandlerPopupComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n HttpClientModule,\r\n AppRoutingModule,\r\n InjectorModule.forRoot(),\r\n \r\n ],\r\n providers: [\r\n { provide: LOCALE_ID, useValue: 'de' },\r\n {provide: ErrorHandler, useClass: GlobalErrorHandler},\r\n authInterceptorProvider,\r\n errorInterceptorProvider,\r\n StorageService, \r\n ApiService,\r\n AuthService,\r\n ConfigService,\r\n AuthGuard,\r\n LanguageService,\r\n RollenGuard,\r\n UrlService,\r\n PopupService,\r\n MobileService\r\n ],\r\n bootstrap: [\r\n AppComponent\r\n ],\r\n schemas: [\r\n CUSTOM_ELEMENTS_SCHEMA\r\n ]\r\n})\r\nexport class AppModule { }\r\n","export const environment = {\r\n version: '0.1.1',\r\n production: true\r\n};\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nwindow.globalConfig.version = environment.version;\r\n\r\nexport function getBaseUrl() {\r\n return document.getElementsByTagName('base')[0].href;\r\n}\r\n\r\nconst providers = [\r\n { provide: 'BASE_URL', useFactory: getBaseUrl, deps: [] }\r\n];\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic(providers).bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"names":["DxPopupComponent","PopupService","ApiService","UrlService","RouteKeys","LanguageService","DxFormComponent","i0","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵadvance","ɵɵtextInterpolate","ɵɵpipeBind1","AddInstitutionComponent","constructor","popupService","apiService","urlService","languageService","institutionList","selectedIds","formData","id","onCloseClick","bind","onSelectClick","subscription_get_externSelectedIdsQueryParams","get_externSelectedIdsQueryParams","subscribe","ids","undefined","length","selectedLanguageObservable","get_selectedLanguageObservable","lang","form","instance","repaint","subscription_get_PopupAsObservable","get_addInstitutionPopupAsObservable","context","open","addInstitutionPopup","show","post","Extern","get_search","response","filter","x","isSelectable","index","res","find","visible","i","adresse","einrichtungsName","strasse","hnr","hnrZusatz","plz","ort","err","ngOnDestroy","unsubscribe","push","refreshQueryParams","join","then","hide","onHidden","e","_","ɵɵdirectiveInject","i1","i2","i3","i4","_2","selectors","viewQuery","AddInstitutionComponent_Query","rf","ctx","ɵɵlistener","AddInstitutionComponent_Template_dx_popup_onHidden_0_listener","$event","ɵɵtemplate","AddInstitutionComponent_div_3_Template","ɵɵelement","ɵɵproperty","ɵɵpureFunction0","_c2","ɵɵpureFunction2","_c3","_c4","_c5","ɵɵpureFunction1","_c6","DataSource","EventEmitter","DxAutocompleteComponent","AutocompleteboxOsmComponent","valueType","searchTimeout","minSearchLength","whiteListType","isRequired","onSelected","onChanged","whiteLists","private_address","whiteList_countrycode","whiteList_key","whiteList_value","whiteList_type","insttution_address","all_address","getLatLonFromAddress","autoCompleteDataSource","key","load","loadOptions","searchValue","url","centerLat","centerLng","get","toPromise","results","features","forEach","element","newResult","mapSearchResults","exist","display_name","addr","cb","result","item","properties","countrycode","includes","toLowerCase","type","osm_key","osm_value","place_id","osm_id","lon","geometry","coordinates","lat","org","district","city","locality","street","housenumberString","housenumber","postcode","state","name","match","housenumberSupplement","supplement","console","warn","onSelectionChanged","selectedItem","setTimeout","value","ac","option","next","onChange","onValueChanged","isAcValid","trim","validate","isValid","AutocompleteboxOsmComponent_Query","AutocompleteboxOsmComponent_Template_dx_autocomplete_onSelectionChanged_0_listener","AutocompleteboxOsmComponent_Template_dx_autocomplete_onChange_0_listener","AutocompleteboxOsmComponent_Template_dx_autocomplete_onValueChanged_0_listener","placeholder","ConfigService","Router","_c1","ctx_r1","istZaehl_KZ","kind_format","onCalcClick","ɵɵtextInterpolate2","ɵɵpipeBind3","ctx_r4","betrag","ɵɵtextInterpolate1","CalculatorComponent","configService","router","inProcess","istBerechnet","istEKAbhaengig","istErmaessigungsTypRelevant","einkommensArt","einkommenText","translate","betreuungsArtDataSource","getKatalogMitKeineAntragstellung","onClickReset","onMaxEkValueChanged","onBetreuungsArtValueChanged","setEinkommensText","ngOnInit","hinweisText","getGlobalSetting","getLanguage","toUpperCase","parseInt","_berArt","istMaxEinkommen","alleinerziehend","einkommen","anzahlKinder","calcForm","Calculator","get_beitrag","beitrag","error","_err","Error","___err","message","Message","resetValues","ek","getEditor","reset","betreuungsUmfangDataSource","getKatalog","beziehungen","betreuungsUmfang","CalculatorComponent_Query","CalculatorComponent_dxi_item_19_Template","CalculatorComponent_dxi_validation_rule_21_Template","CalculatorComponent_dxi_item_23_Template","CalculatorComponent_div_26_Template","CalculatorComponent_div_27_Template","CalculatorComponent_div_28_Template","ɵɵsanitizeHtml","_c7","msg","ɵɵpureFunction3","_c8","_c9","CardComponent","bodyText","headerText","buttonText","buttonIcon","buttonAlignmentRight","canBeDisabled","onBtnClick","isSelected","onClick","emit","inputs","outputs","decls","vars","consts","template","CardComponent_Template","CardComponent_Template_dx_button_onClick_4_listener","ɵɵpropertyInterpolate","_c0","passwordPolicy","text","ChangePasswordComponent_div_3_div_20_Template","passwordFormData","maxLaenge","onPasswordChanged","minZiffern","minZiffernMessage","minKleinBuchstaben","minKleinBuchstabenMessage","minGrossBuchstaben","minGrossBuchstabenMessage","minSonderzeichen","minSonderzeichenMessage","minLaenge","minLaengeMessage","passwordComparison","ChangePasswordComponent","altPasswort","passwort","passwortConfirm","onClickClose","onClickSavePassword","get_changePasswordPopupAsObservable","changePasswordPopup","repaintPopup","validationResult","passwordForm","Intern","Buerger","update_password","document","getElementById","className","setMessageText","status","messageTimeout","clearTimeout","ChangePasswordComponent_Query","ChangePasswordComponent_div_3_Template","question_r10","frage","question_r11","antwort","ContactComponent_div_1_div_8_Template","ContactComponent_div_1_div_9_Template","ctx_r0","scrollbarMode","dataSource","ContactComponent_div_29_Template_dx_check_box_valueChange_1_listener","ɵɵrestoreView","_r14","ctx_r13","ɵɵnextContext","ɵɵresetView","confirm","ctx_r2","ctx_r3","ctx_r5","linkToDownload","ɵɵsanitizeUrl","ContactComponent","loading","timeStamp","Date","now","isFaqOn","success","contactFormData","email","betreff","betreff1","nachricht","onReset","onClickSend","btoa","validationFromResult","contactForm","Contact","send_message","take","Faq","get_question","data","intern","sprache","totalCount","summary","groupCount","catch","getGlobalSettingAsNumber","ContactComponent_Query","ContactComponent_div_1_Template","ContactComponent_div_29_Template","ContactComponent_span_36_Template","ContactComponent_span_37_Template","ContactComponent_div_38_Template","ContactComponent_Template_dx_load_panel_visibleChange_39_listener","emailPattern","DxGalleryComponent","DomSanitizer","ctx_r6","itemToShowDetails","EinrichtungDetailsComponent_div_3_div_1_Template","ɵɵpureFunction4","isPreview","onAbbruchClick","ctx_r16","oeffnungszeiten","iTag_r15","beginn2","ende2","EinrichtungDetailsComponent_div_6_span_37_span_10_Template","data_r14","ctx_r8","beginn","ende","arten_r18","ctx_r10","web","ctx_r11","beschreibung","ctx_r12","pictures","EinrichtungDetailsComponent_div_6_span_37_Template","EinrichtungDetailsComponent_div_6_span_62_Template","EinrichtungDetailsComponent_div_6_a_64_Template","EinrichtungDetailsComponent_div_6_div_98_Template","EinrichtungDetailsComponent_div_6_div_100_Template","EinrichtungDetailsComponent_div_6_app_map_osm_105_Template","ɵɵtextInterpolate3","hnrzusatz","traegerName","distance","wochentage","platzanzahl","ansprechpartner","betreuungsarten","telefon1","telefon2","fax","showGallery","isShowMap","EinrichtungDetailsComponent","sanitizer","languageServise","withoutBtns","onShown","get_detailPopupAsObservable","preview","bypassSecurityTrustHtml","beschreibungEN","galerie","detailPopup","gallery","resetOption","_item","_index","splice","i5","EinrichtungDetailsComponent_Query","EinrichtungDetailsComponent_Template_dx_popup_onShown_0_listener","EinrichtungDetailsComponent_Template_dx_popup_onHidden_0_listener","EinrichtungDetailsComponent_div_3_Template","EinrichtungDetailsComponent_dxi_toolbar_item_4_Template","EinrichtungDetailsComponent_dxi_toolbar_item_5_Template","EinrichtungDetailsComponent_div_6_Template","ImprintComponent","langToSend","Imprint","get_imprint","imprintText","wert","ImprintComponent_Template","L","control","Icon","icon","map","marker","tileLayer","MapOsmComponent","zoom","isDraggable","dragEnd","_idIndex","_markerArray","mapContainerName","crateGuiid","ngAfterViewInit","_initMap","addMarker","options","newId","_getNewId","_createMarker","addTo","_map","getAddressFromLatLon","address","_mapOsmToaddress","flyTo","_center_marker","setLatLng","setZoom","removeMarker","remove","removeAllMarker","setMarkerIcon","iconUrl","getIcon","setIcon","refresh","layers","maxZoom","attribution","center","scale","_createCenterMarker","markerOptions","title","centerTitle","draggable","centerImage","popupDetails","centerPopupDetails","zIndexOffset","closeButton","onDragend","target","getLatLng","lng","popup","setContent","iconSize","iconAnchor","shadowUrl","riseOnHover","on","bindPopup","openPopup","replace","c","r","Math","random","v","toString","MapOsmComponent_Template","DxBoxComponent","PageContainerComponent","initSize","PageContainerComponent_Query","ɵɵprojection","PrivacyComponent","Privacy","get_privacy","privacyText","PrivacyComponent_Template","StorageService","privacy_delete","deleteFormData","ɵɵclassMap","isRemoved","RemoveAccountComponent","storageService","password","onClickDelete","onDeleteAccountClick","get_removeAccountPopupAsObservable","removeAccountPopup","get_global_settings","showDeletePopup","deleteForm","dialogResult","remove_account","clearFromSession","navigate","RemoveAccountComponent_Query","RemoveAccountComponent_div_3_Template","Auth","get_token","Config","get_config","get_version","get_selected","Register","register_account","send_password_link","verify_email","send_verify_email","reset_password","set_inquire","get_all_inquire","get_inquire","delete_inquire","update_profile","get_profile","create_pdf","check_duplicate","save_document","get_doctext","send_inquireEmail","update_inquire","accept_suggestion","decline_suggestion","get_all_documents","delecte_document","check_status","Department","Vorlage","create","Exception","log_error","send_mail","TableContainerComponent_dx_button_6_Template_dx_button_onClick_0_listener","_r3","onExportClick","TableContainerComponent_dx_button_7_Template_dx_button_onClick_0_listener","_r5","onPrintClick","TableContainerComponent","btnExportVisible","btnPrintVisible","onBtnExportClick","onBtnPrintClick","TableContainerComponent_Query","TableContainerComponent_dx_button_6_Template","TableContainerComponent_dx_button_7_Template","ModuleWithProviders","CommonModule","ReactiveFormsModule","FormsModule","DxMenuModule","DxDrawerModule","DxFormModule","DxButtonModule","DxToolbarModule","DxDataGridModule","DxTemplateModule","DxNumberBoxModule","DxLoadIndicatorModule","DxListModule","DxTextBoxModule","DxSelectBoxModule","LanguagePipe","DxTextAreaModule","DxTabPanelModule","DxPopupModule","DxScrollViewModule","DxFileUploaderModule","DxCheckBoxModule","DxAccordionModule","DxResponsiveBoxModule","DxBoxModule","DxTagBoxModule","DxGalleryModule","DxAutocompleteModule","DxSortableModule","DxSliderModule","DxFilterBuilderModule","DxRadioGroupModule","DxLoadPanelModule","DxSpeedDialActionModule","DxPopoverModule","InjectorModule","forRoot","ngModule","providers","_3","declarations","imports","exports","SecurityContext","transform","params","sanitize","NONE","pure","HttpClient","HttpEventType","HttpHeaders","HttpRequest","DOCUMENT","http","endPoint","getRequestHeaders","responseType","headers","token","getFromSession","postDownload","path","fileName","xhr","XMLHttpRequest","withCredentials","setRequestHeader","onloadend","a","onload","size","_fileName","getFilename","navigator","appVersion","indexOf","_url","window","URL","webkitURL","src","createObjectURL","link","createElement","href","download","body","appendChild","click","removeChild","revokeObjectURL","send","JSON","stringify","disposition","getResponseHeader","dispositionSplits","split","fn","dfn","decodeURI","upload","input","errCb","_headers","uploadReq","reportProgress","request","event","Response","ɵɵinject","factory","ɵfac","AuthService","login","benutzername","okCb","username","saveToSession","rollen","logout","clearSession","naviToPreserveQueryParams","isLoggedIn","getBenutzerName","isInRole","role","_roles","getRoles","_role","bezeichnung","toLocaleLowerCase","isInOneOfThisRoles","roles","BehaviorSubject","antragsStatus","telefonPattern","allKataloge","kataloge","katalogeMitKeineAntragstellung","strassen","traeger","einrichtungen","globalSettings","isInit","noConfigFoundWarning","init","mandantName","buildPatternMessages","getPasswordPolicy","asObservable","getStrassen","getTraeger","typ","newKatalog","keineAntragstellung","getMandantName","getGlobalSettngsWithKategorie","kategorie","param","isNaN","Number","getGlobalSettingAsDate","stringToDate","getMaxSelectedEinrichtungen","getPlzPattern","maxLaengeMessage","policy","pswPatternArray","n","str","dateValues","timeValues","day","month","year","hours","minutes","seconds","date","getMonthName","monthNumber","setMonth","toLocaleString","deMessages","enMessages","supplemental","deCldrData","enCldrData","Globalize","locale","_selectedLanguage","_blackListWarnings","language","loadMessages","defaultLang","getDictionary","_lang","getFromLocale","substring","messages","setLanguage","saveToLocale","forcePageRepaint","location","reload","formatMessage","ex","MobileService","isMobile","_isMobile","_hasTouchScreen","_navigator","maxTouchPoints","msMaxTouchPoints","mQ","matchMedia","media","matches","UA","userAgent","test","_detailPopup","_addInstitutionPopup","_removeAccountPopup","_changePasswordPopup","showDetailPopup","showAddInstitutionPopup","showRemoveAccountPopup","showChangePasswordPopup","useCrypt","globalConfig","dev","sessionStorage","clear","removeItem","encrypt","clearPartFromSession","part","node","clearFromLocale","localStorage","clearPartFromLocale","getItem","decrypt","setItem","encodeURIComponent","parse","decodeURIComponent","atob","ActivatedRoute","get_externSearchQueryParams","_externSearchQueryParams","_externSelectedIdsQueryParams","get_externSelectedCareTypeIdsQueryParams","_externSelectedCareTypeIdsQueryParams","route","queryParamMap","paras","raw_search","search","last_externSearchQueryParams","raw_ids","idStringArray","idArray","last_externSelectedIdsQueryParams","raw_careTypeId","last_externSelectedCareTypeIdsQueryParams","naviToMergeQueryParams","queryParams","queryParamsHandling","naviTo","relativeTo","CustomEncoder","encodeKey","encodeValue","decodeKey","decodeValue","Route","UrlSegment","UrlTree","AuthGuard","authService","canActivate","returnUrl","can","canLoad","segments","getCurrentNavigation","extractedUrl","RouterModule","routes","redirectTo","pathMatch","loadChildren","m","CitizenExternModule","CitizenInternModule","AppRoutingModule","onSameUrlNavigation","useHash","ErrorHandlerPopupComponent_div_3_Template_dx_text_area_valueChange_22_listener","description","ErrorHandlerPopupComponent","onClickCancel","onInitialized","component","registerKeyHandler","arg","stopPropagation","logError","sendMail","errorHandlerPopup","detectBrowserName","agent","opr","chrome","detectBrowserVersion","matchTest","tem","exec","slice","appName","ErrorHandlerPopupComponent_Query","ErrorHandlerPopupComponent_Template_dx_popup_onInitialized_0_listener","ErrorHandlerPopupComponent_div_3_Template","ErrorHandlerPopupComponent_div_5_Template","DateBox","TextBox","SelectBox","NumberBox","DataGrid","Button","Popup","config","dxToast","AppComponent","getVersion","setGlobalConfig","info","version","editorStylingMode","defaultCurrency","forceIsoDateParsing","floatingActionButtonConfig","position","at","my","offset","defaultOptions","showClearButton","min","max","showSpinButtons","maxLength","labelLocation","displayFormat","pickerType","useMaskBehavior","dateSerializationFormat","columnAutoWidth","showColumnLines","showRowLines","showBorders","rowAlternationEnabled","allowColumnReordering","allowColumnResizing","columnResizingMode","scrolling","useNative","mode","showScrollbar","editing","onContentReady","toolbarItems","focusStateEnabled","hoverStateEnabled","shadingColor","width","displayTime","AppComponent_Template","AppComponent_div_0_Template","AppComponent_div_1_Template","AppComponent_app_einrichtung_details_2_Template","AppComponent_app_remove_account_3_Template","AppComponent_app_change_password_4_Template","AppComponent_app_error_handler_popup_5_Template","HttpHandler","HttpEvent","HTTP_INTERCEPTORS","AuthInterceptor","intercept","req","clone","setHeaders","Authorization","handle","authInterceptorProvider","provide","useClass","multi","RollenGuard","neededRoles","nr","_isInRole","HttpErrorResponse","throwError","catchError","ErrorInterceptor","pipe","stack","Stack","errorInterceptorProvider","NgZone","GlobalErrorHandler","zone","handleError","run","_error","browser","log","BrowserModule","BrowserAnimationsModule","LOCALE_ID","ErrorHandler","HttpClientModule","registerLocaleData","localeDe","localeEn","AppModule","bootstrap","useValue","environment","production","enableProdMode","getBaseUrl","getElementsByTagName","useFactory","deps","__NgCli_bootstrap_1","platformBrowser","bootstrapModule"],"sourceRoot":"webpack:///","x_google_ignoreList":[]}