{"version":3,"file":"main.175815771337dc21.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/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/services/sys.service.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 next: (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 error: (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 next: (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 error: (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 next: (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 error: (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 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({\r\n next: (response: any) => {\r\n this.imprintText = this.sanitizer.bypassSecurityTrustHtml(response.wert);\r\n },\r\n error: (err) => {\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 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 next: (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 error: (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 privacyText: 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' ? 'privacyDE' : lang === 'en' ? 'privacyEN' : 'privacyDE';\r\n\r\n this.apiService.post(RouteKeys.Privacy.get_privacy, { key: langToSend }).subscribe({\r\n next: (response: any) => {\r\n this.privacyText = this.sanitizer.bypassSecurityTrustHtml(response.wert);\r\n },\r\n error: (err) => {\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 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 @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(\r\n private apiService: ApiService,\r\n private storageService: StorageService,\r\n private router: Router,\r\n private popupService: PopupService,\r\n private languageService: LanguageService\r\n ) {\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 this.selectedLanguageObservable = this.languageService.get_selectedLanguageObservable.subscribe((lang) => {\r\n this.apiService.post(RouteKeys.Extern.get_global_settings, { key: 'privacy_account_delete' + lang.trim() }).subscribe({\r\n next: (response) => {\r\n if (response.wert != null && response.wert != undefined && response.wert.trim() != '') {\r\n this.privacy_delete = response.wert;\r\n }\r\n },\r\n error: (err) => {\r\n this.privacy_delete = this.languageService.translate('privacy_delete');\r\n },\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 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({\r\n next: (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 },\r\n error: (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 constructor(@Inject(DOCUMENT) private document: Document, private http: HttpClient, private storageService: StorageService) {}\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 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 if (responseType === null) {\r\n return {\r\n headers: headers,\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 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 } 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({\r\n next: (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 },\r\n error: (err) => {\r\n if (errCb) {\r\n errCb(err);\r\n } else {\r\n throw new Error(err.error.msg);\r\n }\r\n },\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 next: (response) => {\r\n\t\tthis.storageService.clearFromLocale('inquire'); // um die in fr�heren Versionen nicht korrekt gespeicherten Daten zu l�schen\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 error: (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,6}$';\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 private _isOGS: boolean;\r\n\r\n get isOGS() {\r\n return this._isOGS;\r\n }\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 this._isOGS = response.isOGS;\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\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 clearFromLocaleForUser(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 + this.getUsername()));\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 clearPartFromLocaleForUser(key: string, part: string) {\r\n if (!key || !key.length) {\r\n throw new Error('invalid key: ' + key);\r\n }\r\n\r\n key = key + this.getUsername();\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 } 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 const item = localStorage.getItem(this.encrypt(key));\r\n if (item) {\r\n return this.decrypt(item);\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n getFromLocaleForUser(key: string): T | null {\r\n if (!key || !key.length) {\r\n throw new Error('invalid key: ' + key);\r\n }\r\n const item = localStorage.getItem(this.encrypt(key + this.getUsername()));\r\n if (item) {\r\n return this.decrypt(item);\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 saveToLocaleForUser(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.getUsername()), 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 } 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 } else {\r\n return JSON.parse(data) as T;\r\n }\r\n }\r\n\r\n private getUsername(): string {\r\n const bn = this.getFromSession('benutzername');\r\n if (bn !== null) {\r\n return bn;\r\n }\r\n return '';\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 { Injectable } from '@angular/core';\r\n\r\n/**\r\n * Der SysService mit denen man Systeminformationen abrufen kann.\r\n */\r\n\r\nexport interface ISysResult {\r\n browser: string;\r\n browserVersion: string;\r\n isMobile: boolean;\r\n language: string;\r\n languages: string[];\r\n platform: string;\r\n innerHeight: number;\r\n innerWidth: number;\r\n outerHeight: number;\r\n outerWidth: number;\r\n screenHeight: number;\r\n screenWidth: number;\r\n origin: string;\r\n}\r\n\r\n@Injectable()\r\nexport class SysService {\r\n constructor() {}\r\n\r\n /**\r\n * Gibt ein Objekt mit Systeminformationen zurück\r\n * @returns {ISysResult} Ein Objekt, das verschiedene Information über das aktuelle globale Fenster enthält (z. B Sprache, Browsername, Screen Größe)\r\n */\r\n public getSystemInformations(): ISysResult {\r\n return {\r\n browser: this._detectBrowserName(),\r\n browserVersion: this._detectBrowserVersion(),\r\n isMobile: this._isMobile(),\r\n language: window.navigator.language,\r\n languages: window.navigator.languages,\r\n platform: this._getOs(),\r\n innerHeight: window.innerHeight,\r\n innerWidth: window.innerWidth,\r\n outerHeight: window.outerHeight,\r\n outerWidth: window.outerWidth,\r\n origin: window.origin,\r\n screenHeight: window.screen.availHeight,\r\n screenWidth: window.screen.availWidth,\r\n } as ISysResult;\r\n }\r\n\r\n private _isMobile(): boolean {\r\n let _hasTouchScreen: boolean = false;\r\n\r\n const _navigator: any = window.navigator;\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 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 = /\\b(BlackBerry|webOS|iPhone|IEMobile)\\b/i.test(UA) || /\\b(Android|Windows Phone|iPad|iPod)\\b/i.test(UA);\r\n }\r\n }\r\n\r\n return _hasTouchScreen;\r\n }\r\n\r\n private _getOs(): string {\r\n if (/windows/i.test(navigator.userAgent)) {\r\n return 'Windows';\r\n } else if (/iphone/i.test(navigator.userAgent)) {\r\n return 'iOS';\r\n } else if (/ipad/i.test(navigator.userAgent)) {\r\n return 'iOS';\r\n } else if (/macintosh/i.test(navigator.userAgent)) {\r\n return 'Mac OS';\r\n } else {\r\n return 'unknown';\r\n }\r\n }\r\n\r\n private _detectBrowserName(): string {\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 private _detectBrowserVersion(): string {\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]] : [];\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 { 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\nimport { SysService } from './share/services/sys.service';\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 isMobile: boolean;\r\n\r\n constructor(\r\n private languageService: LanguageService,\r\n private configService: ConfigService,\r\n private apiService: ApiService,\r\n private sysService: SysService\r\n ) {\r\n this.getVersion();\r\n this.configService.init().subscribe((isInit) => {\r\n this.isInit = isInit;\r\n });\r\n\r\n let _sysInfo: any = this.sysService.getSystemInformations();\r\n this.isMobile = _sysInfo.isMobile;\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: this.isMobile ? false : true,\r\n } as any,\r\n });\r\n\r\n SelectBox.defaultOptions({\r\n options: {\r\n showClearButton: true,\r\n searchEnabled: this.isMobile ? false : true,\r\n acceptCustomValue: this.isMobile ? false : 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 acceptCustomValue: this.isMobile ? false : true,\r\n openOnFieldClick: this.isMobile ? true : false,\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 { SysService } from './share/services/sys.service';\r\n\r\nregisterLocaleData(localeDe);\r\nregisterLocaleData(localeEn);\r\n\r\n@NgModule({\r\n declarations: [AppComponent, ErrorHandlerPopupComponent],\r\n imports: [BrowserModule, BrowserAnimationsModule, HttpClientModule, AppRoutingModule, InjectorModule.forRoot()],\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 SysService,\r\n ],\r\n bootstrap: [AppComponent],\r\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\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","next","response","filter","x","isSelectable","index","res","find","visible","i","adresse","einrichtungsName","strasse","hnr","hnrZusatz","plz","ort","error","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","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","_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","Authorization","Pragma","Expires","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","clearFromLocale","saveToSession","rollen","logout","clearSession","naviToPreserveQueryParams","isLoggedIn","getBenutzerName","isInRole","role","_roles","getRoles","_role","bezeichnung","toLocaleLowerCase","isInOneOfThisRoles","roles","BehaviorSubject","isOGS","_isOGS","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","_detailPopup","_addInstitutionPopup","_removeAccountPopup","_changePasswordPopup","showDetailPopup","showAddInstitutionPopup","showRemoveAccountPopup","showChangePasswordPopup","useCrypt","globalConfig","dev","sessionStorage","clear","removeItem","encrypt","clearPartFromSession","part","node","localStorage","clearFromLocaleForUser","getUsername","clearPartFromLocale","clearPartFromLocaleForUser","getItem","decrypt","getFromLocaleForUser","setItem","saveToLocaleForUser","encodeURIComponent","parse","decodeURIComponent","atob","bn","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","SysService","getSystemInformations","browser","_detectBrowserName","browserVersion","_detectBrowserVersion","isMobile","_isMobile","languages","platform","_getOs","innerHeight","innerWidth","outerHeight","outerWidth","origin","screenHeight","screen","availHeight","screenWidth","availWidth","_hasTouchScreen","_navigator","maxTouchPoints","msMaxTouchPoints","mQ","matchMedia","media","matches","UA","userAgent","test","agent","opr","chrome","matchTest","tem","exec","slice","ErrorHandlerPopupComponent_div_3_Template_dx_text_area_valueChange_22_listener","description","ErrorHandlerPopupComponent","onClickCancel","onInitialized","component","registerKeyHandler","arg","stopPropagation","logError","sendMail","errorHandlerPopup","detectBrowserName","detectBrowserVersion","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","sysService","getVersion","_sysInfo","setGlobalConfig","info","version","editorStylingMode","defaultCurrency","forceIsoDateParsing","floatingActionButtonConfig","position","at","my","offset","defaultOptions","showClearButton","min","max","showSpinButtons","searchEnabled","acceptCustomValue","maxLength","labelLocation","displayFormat","pickerType","useMaskBehavior","dateSerializationFormat","openOnFieldClick","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","handle","authInterceptorProvider","provide","useClass","multi","RollenGuard","neededRoles","nr","_isInRole","HttpErrorResponse","throwError","catchError","ErrorInterceptor","pipe","stack","Stack","errorInterceptorProvider","NgZone","GlobalErrorHandler","zone","handleError","run","_error","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":[]}