{"version":3,"file":"main.js","mappings":"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CAAqC;EAClD3N,IAAI,EAAE;CACP;;;;;;;;;;;;;;;;;ACJ4C;AAGF;AACY;AAEzD,IAAIsN,6EAAsB,EAAE;EAC1B+kB,6DAAc,EAAE;;AAGlBC,sEAAAA,EAAwB,CAACC,eAAe,CAACrnC,sDAAS,CAAC,CAChD2kB,KAAK,CAAC5a,GAAG,IAAIxI,OAAO,CAACC,GAAG,CAACuI,GAAG,CAAC,CAAC;;;;;;;;;;ACXjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;AC7RA","sources":["./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/protected/admission/admission.component.ts","./src/app/protected/admission/admission.component.html","./src/app/protected/favorites/favorites-detail/favorites-detail.component.ts","./src/app/protected/favorites/favorites-detail/favorites-detail.component.html","./src/app/protected/favorites/favorites-extension/favorites-extension.component.ts","./src/app/protected/favorites/favorites-extension/favorites-extension.component.html","./src/app/protected/favorites/favorites.component.ts","./src/app/protected/favorites/favorites.component.html","./src/app/protected/features/phone-signature/components/atrust-button/atrust-button.component.ts","./src/app/protected/features/phone-signature/components/atrust-button/atrust-button.component.html","./src/app/protected/features/phone-signature/phone-signature.module.ts","./src/app/protected/navbar/navbar.component.ts","./src/app/protected/navbar/navbar.component.html","./src/app/protected/pricing-mobile/pricing-mobile.component.ts","./src/app/protected/pricing-mobile/pricing-mobile.component.html","./src/app/protected/pricing/pricing.component.ts","./src/app/protected/pricing/pricing.component.html","./src/app/protected/profile/api-user/api-detail/api-detail.component.ts","./src/app/protected/profile/api-user/api-detail/api-detail.component.html","./src/app/protected/profile/api-user/api-user.component.ts","./src/app/protected/profile/api-user/api-user.component.html","./src/app/protected/profile/api-user/connected-accounts/connected-accounts.component.ts","./src/app/protected/profile/api-user/connected-accounts/connected-accounts.component.html","./src/app/protected/profile/profile.component.ts","./src/app/protected/profile/profile.component.html","./src/app/protected/profile/promotion-ordered-dialog/promotion-ordered-dialog.component.ts","./src/app/protected/profile/promotion-ordered-dialog/promotion-ordered-dialog.component.html","./src/app/protected/profile/promotion/promotion.component.ts","./src/app/protected/profile/promotion/promotion.component.html","./src/app/protected/profile/services/admission.service.ts","./src/app/protected/profile/services/api-user.service.ts","./src/app/protected/profile/services/profile.service.ts","./src/app/protected/profile/services/promotion.service.ts","./src/app/protected/protected.component.ts","./src/app/protected/report-log/admission-log-detail/admission-log-detail.component.ts","./src/app/protected/report-log/admission-log-detail/admission-log-detail.component.html","./src/app/protected/report-log/report-log-detail/report-log-detail.component.ts","./src/app/protected/report-log/report-log-detail/report-log-detail.component.html","./src/app/protected/report-log/report-log.component.ts","./src/app/protected/report-log/report-log.component.html","./src/app/protected/requests/clients/requests-client.service.ts","./src/app/protected/requests/components/request-button/request-button.component.ts","./src/app/protected/requests/components/request-button/request-button.component.html","./src/app/protected/requests/components/requests-contact-list/requests-contact-list.component.ts","./src/app/protected/requests/components/requests-contact-list/requests-contact-list.component.html","./src/app/protected/requests/components/requests-dialog/requests-dialog.component.ts","./src/app/protected/requests/components/requests-dialog/requests-dialog.component.html","./src/app/protected/requests/components/requests/requests.component.ts","./src/app/protected/requests/components/requests/requests.component.html","./src/app/protected/requests/containers/request-button-view/request-button-view.component.html","./src/app/protected/requests/containers/request-button-view/request-button-view.component.ts","./src/app/protected/requests/containers/requests-view/requests-view.component.ts","./src/app/protected/requests/containers/requests-view/requests-view.component.html","./src/app/protected/requests/pipes/request-filter.pipe.ts","./src/app/protected/requests/pipes/status-filter.pipe.ts","./src/app/protected/requests/requests.module.ts","./src/app/protected/requests/services/requests.service.ts","./src/app/protected/sms-stats/clients/sms-stats-client.service.ts","./src/app/protected/sms-stats/components/sms-stats/sms-stats.component.html","./src/app/protected/sms-stats/components/sms-stats/sms-stats.component.ts","./src/app/protected/sms-stats/containers/sms-stats-view/sms-stats-view.component.ts","./src/app/protected/sms-stats/containers/sms-stats-view/sms-stats-view.component.html","./src/app/protected/sms-stats/services/sms-stats.service.ts","./src/app/protected/sms-stats/sms-stats.module.ts","./src/app/protected/text-block/text-block-detail/text-block-detail.component.ts","./src/app/protected/text-block/text-block-detail/text-block-detail.component.html","./src/app/protected/text-block/text-block.component.ts","./src/app/protected/text-block/text-block.component.html","./src/app/protected/upload/favorites-dialog/favorites-dialog.component.ts","./src/app/protected/upload/favorites-dialog/favorites-dialog.component.html","./src/app/protected/upload/portal-filter-dialog/portal-filter-dialog.component.ts","./src/app/protected/upload/portal-filter-dialog/portal-filter-dialog.component.html","./src/app/protected/upload/send-file/send-file.component.ts","./src/app/protected/upload/send-file/send-file.component.html","./src/app/protected/upload/sign-dialog/sign-dialog.component.ts","./src/app/protected/upload/sign-dialog/sign-dialog.component.html","./src/app/protected/upload/upload.component.ts","./src/app/protected/upload/upload.component.html","./src/app/public/agb/agb.component.ts","./src/app/public/agb/agb.component.html","./src/app/public/download/download.component.html","./src/app/public/download/download.component.ts","./src/app/public/etresor/etresor.component.html","./src/app/public/etresor/etresor.component.ts","./src/app/public/home/home.component.ts","./src/app/public/home/home.component.html","./src/app/public/login/login.component.ts","./src/app/public/login/login.component.html","./src/app/public/oauth/oauth.component.ts","./src/app/public/oauth/oauth.component.html","./src/app/public/password-reset/password-reset.component.ts","./src/app/public/password-reset/password-reset.component.html","./src/app/public/register/register.component.ts","./src/app/public/register/register.component.html","./src/app/shared/classes/cuberry-promotion.ts","./src/app/shared/classes/favorite.ts","./src/app/shared/classes/patient-request.ts","./src/app/shared/classes/user-model.ts","./src/app/shared/classes/xconfig-shortcode.ts","./src/app/shared/collections/message-types.ts","./src/app/shared/collections/person-titles.ts","./src/app/shared/collections/portal-types.ts","./src/app/shared/collections/service-provider-types.ts","./src/app/shared/collections/svt-insurances.ts","./src/app/shared/components/confirm-dialog/confirm-dialog.component.ts","./src/app/shared/components/confirm-dialog/confirm-dialog.component.html","./src/app/shared/components/connected-accounts-list/connected-accounts-list.component.ts","./src/app/shared/components/connected-accounts-list/connected-accounts-list.component.html","./src/app/shared/components/contact-us/contact-us.component.ts","./src/app/shared/components/contact-us/contact-us.component.html","./src/app/shared/components/file-uploader/file-uploader.component.ts","./src/app/shared/components/file-uploader/file-uploader.component.html","./src/app/shared/components/footer/footer.component.ts","./src/app/shared/components/footer/footer.component.html","./src/app/shared/components/footer/impressum/impressum.component.ts","./src/app/shared/components/footer/impressum/impressum.component.html","./src/app/shared/components/message-dialog/message-dialog.component.ts","./src/app/shared/components/message-dialog/message-dialog.component.html","./src/app/shared/directives/macro.directive.ts","./src/app/shared/pipes/str-regex.pipe.ts","./src/app/shared/services/application-state.service.ts","./src/app/shared/services/azure-service.service.ts","./src/app/shared/services/connected-accounts.service.ts","./src/app/shared/services/download.service.ts","./src/app/shared/services/favorites.service.ts","./src/app/shared/services/groups.service.ts","./src/app/shared/services/hl7.service.ts","./src/app/shared/services/portals.service.ts","./src/app/shared/services/registration.service.ts","./src/app/shared/services/shortcode.service.ts","./src/app/shared/services/signature.service.ts","./src/environments/environment.test.ts","./src/main.ts","./node_modules/moment/locale/ sync ^\\.\\/.*$","ignored|D:\\a\\r1\\a\\_RepEx\\node_modules\\node-forge\\lib|crypto"],"sourcesContent":["import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { LoginComponent } from './public/login/login.component';\r\nimport { UploadComponent } from './protected/upload/upload.component';\r\nimport { AzureServiceService } from './shared/services/azure-service.service';\r\nimport { DownloadComponent } from './public/download/download.component';\r\nimport { ProtectedComponent } from './protected/protected.component';\r\nimport { RegisterComponent } from './public/register/register.component';\r\nimport { ReportLogComponent } from './protected/report-log/report-log.component';\r\nimport { ReportLogDetailComponent } from './protected/report-log/report-log-detail/report-log-detail.component';\r\nimport { PasswordResetComponent } from './public/password-reset/password-reset.component';\r\nimport { ProfileComponent } from './protected/profile/profile.component';\r\nimport { AgbComponent } from './public/agb/agb.component';\r\nimport { HomeComponent } from './public/home/home.component';\r\nimport { TextBlockComponent } from './protected/text-block/text-block.component';\r\nimport { FavoritesComponent } from './protected/favorites/favorites.component';\r\nimport { PricingMobileComponent } from './protected/pricing-mobile/pricing-mobile.component';\r\nimport { AdmissionComponent } from './protected/admission/admission.component';\r\nimport { FavoritesDetailComponent } from './protected/favorites/favorites-detail/favorites-detail.component';\r\nimport { ETresorComponent } from './public/etresor/etresor.component';\r\nimport { SmsStatsViewComponent } from './protected/sms-stats/containers/sms-stats-view/sms-stats-view.component';\r\nimport { OauthComponent } from './public/oauth/oauth.component';\r\n\r\nconst routes: Routes = [\r\n\t// {\r\n\t// path: '',\r\n\t// redirectTo: 'login',\r\n\t// // component: HomeComponent\r\n\t// pathMatch: 'full'\r\n\t// },\r\n\t// {\r\n\t// path: 'home', // nJ0O1ExJp9FFp8nfBhN7\r\n\t// component: HomeComponent\r\n\t// },\r\n\t{\r\n\t\tpath: 'login', // nJ0O1ExJp9FFp8nfBhN7\r\n\t\tcomponent: LoginComponent\r\n\t},\r\n\t{\r\n\t\tpath: 'login/via/:connectedAccountType',\r\n\t\tcomponent: LoginComponent\r\n\t},\r\n\t{\r\n\t\tpath: 'register',\r\n\t\tcomponent: RegisterComponent\r\n\t},\r\n\t{\r\n\t\tpath: 'register/via/:connectedAccountType',\r\n\t\tcomponent: RegisterComponent\r\n\t},\r\n\t{\r\n\t\tpath: 'passwordReset',\r\n\t\tcomponent: PasswordResetComponent\r\n\t},\r\n\t{\r\n\t\tpath: 'agb',\r\n\t\tcomponent: AgbComponent\r\n\t},\r\n\r\n\t// {\r\n\t// path: 'upload',\r\n\t// component: UploadComponent,\r\n\t// canActivate: [AzureServiceService]\r\n\t// },\r\n\t{\r\n\t\tpath: 'download/:token',\r\n\t\tcomponent: DownloadComponent\r\n\t},\r\n\r\n\t{\r\n\t\tpath: 'et',\r\n\t\tcomponent: ETresorComponent\r\n\t},\r\n\r\n {\r\n path: 'oauth/callback',\r\n component: OauthComponent\r\n },\r\n\r\n\t{\r\n\t\tpath: '',\r\n\t\tchildren: [\r\n\t\t\t{\r\n\t\t\t\tpath: '',\r\n\t\t\t\tcomponent: ProtectedComponent,\r\n\t\t\t\tchildren: [\r\n\t\t\t\t\t{ path: '', redirectTo: 'upload', pathMatch: 'full' },\r\n\t\t\t\t\t{ path: 'upload', component: UploadComponent, canActivate: [ AzureServiceService ] },\r\n\t\t\t\t\t{ path: 'reportLog', component: ReportLogComponent, canActivate: [ AzureServiceService ] },\r\n\t\t\t\t\t{ path: 'reportLog/:idx', component: ReportLogComponent, canActivate: [ AzureServiceService ] },\r\n\t\t\t\t\t{ path: 'profile', component: ProfileComponent, canActivate: [ AzureServiceService ] },\r\n\t\t\t\t\t{ path: 'textblock', component: TextBlockComponent, canActivate: [ AzureServiceService ] },\r\n\t\t\t\t\t{ path: 'statistics', component: SmsStatsViewComponent, canActivate: [ AzureServiceService ] },\r\n\t\t\t\t\t{ path: 'pricing', component: PricingMobileComponent, canActivate: [ AzureServiceService ] },\r\n\t\t\t\t\t{ path: 'favorites', component: FavoritesComponent, canActivate: [ AzureServiceService ] },\r\n\t\t\t\t\t{ path: 'admission', component: AdmissionComponent, canActivate: [ AzureServiceService ] }\r\n\t\t\t\t]\r\n\t\t\t}\r\n\t\t]\r\n\t},\r\n\t{\r\n\t\tpath: '**',\r\n\t\tredirectTo: 'login'\r\n\t\t// pathMatch: 'full'\r\n\t}\r\n];\r\n\r\n@NgModule({\r\n\timports: [ RouterModule.forRoot(routes) ],\r\n\texports: [ RouterModule ]\r\n})\r\nexport class AppRoutingModule {}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\nexport class AppComponent implements OnInit {\r\n title = 'app';\r\n\r\n ngOnInit() {\r\n window.addEventListener('dragover', function (e) {\r\n if (e) { e.preventDefault(); }\r\n }, false);\r\n window.addEventListener('drop', function (e) {\r\n if (e) { e.preventDefault(); }\r\n }, false);\r\n }\r\n}\r\n","\r\n\r\n\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule, FormControl, Validators } from '@angular/forms';\r\nimport { HttpClientModule } from '@angular/common/http';\r\n\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { MatLegacyFormFieldModule as MatFormFieldModule } from '@angular/material/legacy-form-field';\r\nimport { MatLegacyInputModule as MatInputModule } from '@angular/material/legacy-input';\r\nimport { MatLegacyButtonModule as MatButtonModule } from '@angular/material/legacy-button';\r\nimport { MatLegacyMenuModule as MatMenuModule } from '@angular/material/legacy-menu';\r\nimport { MatLegacySelectModule as MatSelectModule } from '@angular/material/legacy-select';\r\nimport { MatLegacyCheckboxModule as MatCheckboxModule } from '@angular/material/legacy-checkbox';\r\nimport { MatLegacyTableModule as MatTableModule } from '@angular/material/legacy-table';\r\nimport { MatSortModule } from '@angular/material/sort';\r\nimport { MatLegacySnackBarModule as MatSnackBarModule } from '@angular/material/legacy-snack-bar';\r\nimport { MatLegacyRadioModule as MatRadioModule } from '@angular/material/legacy-radio';\r\nimport { MatLegacyAutocompleteModule as MatAutocompleteModule } from '@angular/material/legacy-autocomplete';\r\nimport { MatLegacyDialogModule as MatDialogModule } from '@angular/material/legacy-dialog';\r\nimport { MatLegacyListModule as MatListModule } from '@angular/material/legacy-list';\r\nimport { MatLegacyCardModule as MatCardModule } from '@angular/material/legacy-card';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\n\r\nimport { AppComponent } from './app.component';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { LoginComponent } from './public/login/login.component';\r\nimport { AzureServiceService } from './shared/services/azure-service.service';\r\nimport { DownloadService } from './shared/services/download.service';\r\nimport { UploadComponent } from './protected/upload/upload.component';\r\nimport { FileUploaderComponent } from './shared/components/file-uploader/file-uploader.component';\r\nimport { DownloadComponent } from './public/download/download.component';\r\nimport { NavbarComponent } from './protected/navbar/navbar.component';\r\nimport { ProtectedComponent } from './protected/protected.component';\r\nimport { RegisterComponent } from './public/register/register.component';\r\nimport { ReportLogComponent } from './protected/report-log/report-log.component';\r\nimport { PasswordResetComponent } from './public/password-reset/password-reset.component';\r\nimport { ProfileComponent } from './protected/profile/profile.component';\r\nimport { AgbComponent } from './public/agb/agb.component';\r\nimport { HomeComponent } from './public/home/home.component';\r\nimport { StrRegexPipe } from './shared/pipes/str-regex.pipe';\r\nimport { ContactUsComponent } from './shared/components/contact-us/contact-us.component';\r\nimport { FooterComponent } from './shared/components/footer/footer.component';\r\nimport { SendFileComponent } from './protected/upload/send-file/send-file.component';\r\nimport { PortalsService } from './shared/services/portals.service';\r\nimport { ReportLogDetailComponent } from './protected/report-log/report-log-detail/report-log-detail.component';\r\nimport { PortalFilterDialogComponent } from './protected/upload/portal-filter-dialog/portal-filter-dialog.component';\r\nimport { PromotionComponent } from './protected/profile/promotion/promotion.component';\r\nimport { PromotionOrderedDialogComponent } from './protected/profile/promotion-ordered-dialog/promotion-ordered-dialog.component';\r\nimport { ApiUserComponent } from './protected/profile/api-user/api-user.component';\r\nimport { ConfirmDialogComponent } from './shared/components/confirm-dialog/confirm-dialog.component';\r\nimport { MacroDirective } from './shared/directives/macro.directive';\r\nimport { TextBlockComponent } from './protected/text-block/text-block.component';\r\nimport { TextBlockDetailComponent } from './protected/text-block/text-block-detail/text-block-detail.component';\r\nimport { ShortcodeService } from './shared/services/shortcode.service';\r\nimport { FavoritesComponent } from './protected/favorites/favorites.component';\r\nimport { FavoritesService } from './shared/services/favorites.service';\r\nimport { FavoritesDetailComponent } from './protected/favorites/favorites-detail/favorites-detail.component';\r\nimport { FavoritesDialogComponent } from './protected/upload/favorites-dialog/favorites-dialog.component';\r\nimport { Hl7Service } from './shared/services/hl7.service';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { ImpressumComponent } from './shared/components/footer/impressum/impressum.component';\r\nimport { PricingComponent } from './protected/pricing/pricing.component';\r\nimport { PricingMobileComponent } from './protected/pricing-mobile/pricing-mobile.component';\r\nimport { ApiDetailComponent } from './protected/profile/api-user/api-detail/api-detail.component';\r\nimport { AdmissionComponent } from './protected/admission/admission.component';\r\nimport { AdmissionLogDetailComponent } from './protected/report-log/admission-log-detail/admission-log-detail.component';\r\nimport { PhoneSignatureModule } from './protected/features/phone-signature/phone-signature.module';\r\nimport { ETresorComponent } from './public/etresor/etresor.component';\r\nimport { SignDialogComponent } from './protected/upload/sign-dialog/sign-dialog.component';\r\nimport { SmsStatsModule } from './protected/sms-stats/sms-stats.module';\r\nimport { FavoritesExtensionComponent } from './protected/favorites/favorites-extension/favorites-extension.component';\r\nimport { MomentDateModule, MAT_MOMENT_DATE_ADAPTER_OPTIONS } from '@angular/material-moment-adapter';\r\nimport { RequestsModule } from './protected/requests/requests.module';\r\nimport { MAT_DATE_LOCALE, MAT_DATE_FORMATS } from '@angular/material/core';\r\nimport { ConnectedAccountsComponent } from './protected/profile/api-user/connected-accounts/connected-accounts.component';\r\nimport { ConnectedAccountsListComponent } from './shared/components/connected-accounts-list/connected-accounts-list.component';\r\nimport { OauthComponent } from './public/oauth/oauth.component';\r\nimport { RegistrationService } from './shared/services/registration.service';\r\nimport { MessageDialogComponent } from './shared/components/message-dialog/message-dialog.component';\r\nimport { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n LoginComponent,\r\n UploadComponent,\r\n FileUploaderComponent,\r\n DownloadComponent,\r\n NavbarComponent,\r\n ProtectedComponent,\r\n RegisterComponent,\r\n ReportLogComponent,\r\n PasswordResetComponent,\r\n ProfileComponent,\r\n OauthComponent,\r\n AgbComponent,\r\n HomeComponent,\r\n StrRegexPipe,\r\n ContactUsComponent,\r\n FooterComponent,\r\n SendFileComponent,\r\n ReportLogDetailComponent,\r\n PortalFilterDialogComponent,\r\n PromotionComponent,\r\n PromotionOrderedDialogComponent,\r\n ApiUserComponent,\r\n ConnectedAccountsComponent,\r\n ConfirmDialogComponent,\r\n MessageDialogComponent,\r\n MacroDirective,\r\n TextBlockComponent,\r\n TextBlockDetailComponent,\r\n FavoritesComponent,\r\n FavoritesDetailComponent,\r\n FavoritesDialogComponent,\r\n ImpressumComponent,\r\n PricingComponent,\r\n PricingMobileComponent,\r\n ApiDetailComponent,\r\n AdmissionComponent,\r\n AdmissionLogDetailComponent,\r\n ETresorComponent,\r\n SignDialogComponent,\r\n FavoritesExtensionComponent,\r\n ConnectedAccountsListComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n AppRoutingModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n HttpClientModule,\r\n BrowserAnimationsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatButtonModule,\r\n MatDatepickerModule,\r\n MomentDateModule,\r\n MatMenuModule,\r\n MatSelectModule,\r\n MatCheckboxModule,\r\n MatTableModule,\r\n MatSortModule,\r\n MatSnackBarModule,\r\n MatRadioModule,\r\n MatAutocompleteModule,\r\n MatDialogModule,\r\n MatListModule,\r\n MatGridListModule,\r\n MatCardModule,\r\n MatProgressSpinnerModule,\r\n NgbModule,\r\n MatExpansionModule,\r\n PhoneSignatureModule,\r\n SmsStatsModule,\r\n RequestsModule\r\n ],\r\n providers: [\r\n AzureServiceService,\r\n DownloadService,\r\n PortalsService,\r\n ShortcodeService,\r\n FavoritesService,\r\n Hl7Service,\r\n RegistrationService,\r\n UploadComponent,\r\n PricingComponent,\r\n AdmissionComponent,\r\n SendFileComponent,\r\n { provide: MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: { useUtc: true } },\r\n { provide: MAT_DATE_LOCALE, useValue: 'de-AT' },\r\n // { provide: MAT_DATE_FORMATS, useValue: MAT_MOMENT_DATE_FORMATS },\r\n {\r\n provide: MAT_DATE_FORMATS,\r\n useValue: {\r\n parse: {\r\n dateInput: ['DDMMYYYY', 'DD.MM.YYYY', 'DDMMYY']\r\n },\r\n display: {\r\n dateInput: 'DD.MM.YYYY',\r\n monthYearLabel: 'MMM YYYY',\r\n dateA11yLabel: 'LL',\r\n monthYearA11yLabel: 'MMMM YYYY'\r\n }\r\n }\r\n }\r\n ],\r\n // entryComponents: [\r\n // ReportLogDetailComponent,\r\n // PortalFilterDialogComponent,\r\n // PromotionOrderedDialogComponent,\r\n // ConfirmDialogComponent,\r\n // MessageDialogComponent,\r\n // TextBlockDetailComponent,\r\n // FavoritesDetailComponent,\r\n // FavoritesDialogComponent,\r\n // ImpressumComponent,\r\n // ApiDetailComponent,\r\n // AdmissionLogDetailComponent,\r\n // SignDialogComponent\r\n // ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule {}\r\n","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\r\nimport { AdmissionService } from '../profile/services/admission.service';\r\nimport { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';\r\nimport { FavoritesDialogComponent } from '../upload/favorites-dialog/favorites-dialog.component';\r\nimport { FavoritesService } from '../../shared/services/favorites.service';\r\n\r\n@Component({\r\n\tselector: 'app-admission',\r\n\ttemplateUrl: './admission.component.html',\r\n\tstyleUrls: [ './admission.component.css' ]\r\n})\r\nexport class AdmissionComponent implements OnInit {\r\n\t@ViewChild('emailField')\r\n\temailField: ElementRef;\r\n\r\n\tpublic hasAccount = false;\r\n\tpublic templates = [];\r\n\tpublic filteredTemplates = [];\r\n\tpublic fileSendType = 2;\r\n\tpublic searchName;\r\n\tpublic recipientEMail;\r\n\tpublic patientData = {\r\n\t\ttitle: 'Dr.',\r\n\t\tfirstName: '',\r\n\t\tlastName: ''\r\n\t};\r\n\tpublic patientID;\r\n\r\n\tconstructor(\r\n\t\tprivate admissionService: AdmissionService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate favoritesService: FavoritesService\r\n\t) {\r\n\t\tthis.initData();\r\n\t}\r\n\r\n\tasync ngOnInit() {\r\n\t\tawait this.initData();\r\n\t}\r\n\r\n\tprivate async initData() {\r\n\t\tconst res = await this.admissionService.read();\r\n\t\tthis.templates = this.admissionService.getTemplates();\r\n\t\tconsole.log('temps', this.templates);\r\n\t\tthis.filteredTemplates = this.templates;\r\n\t\tconsole.log('init', this.filteredTemplates);\r\n\t}\r\n\r\n\tpublic filterTemplates(searchText) {\r\n\t\tconst filtered = this.templates.filter((item) => {\r\n\t\t\treturn !searchText || item.SurveyName.toLowerCase().indexOf(searchText.toLowerCase()) > -1;\r\n\t\t});\r\n\t\tthis.filteredTemplates = filtered;\r\n\t\treturn filtered;\r\n\t}\r\n\r\n\tpublic select(template) {\r\n\t\tconsole.log(`Send ${template.SurveyName} ${this.fileSendType === 1 ? 'via Praxis' : 'via e-Mail'}`);\r\n\t}\r\n\r\n\tpublic async send(template) {\r\n\t\ttry {\r\n\t\t\ttemplate.recipientEMail = this.recipientEMail;\r\n\t\t\ttemplate.templateIDs = [ template.id ];\r\n\t\t\ttemplate.surveyTypeID = 2;\r\n\t\t\ttemplate.patientData = this.patientData;\r\n\t\t\ttemplate.patientID = this.patientID;\r\n\r\n\t\t\tconst result = await this.admissionService.createSurveyFromTemplate(template);\r\n\t\t\tconsole.log('Sent', result);\r\n\t\t} catch (error) {\r\n\t\t\tconsole.log(error);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic showFavoritesDialog() {\r\n\t\tif(this.dialog.openDialogs.some(openDialog => openDialog.componentInstance instanceof FavoritesDialogComponent)){\r\n\t\t\treturn;\r\n\t\t }\r\n\t\tconst dialogRef = this.dialog.open(FavoritesDialogComponent, {\r\n\t\t\twidth: '500px',\r\n\t\t\theight: '1200px',\r\n\t\t\tdata: this.favoritesService.favoriteMap\r\n\t\t});\r\n\t\tdialogRef.afterClosed().subscribe((result) => {\r\n\t\t\tif (!result) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tconsole.log(result);\r\n\t\t\tif (result.EMail) {\r\n\t\t\t\tthis.recipientEMail = result.EMail;\r\n\t\t\t\tthis.patientData.firstName = result.FirstNameEn;\r\n\t\t\t\tthis.patientData.lastName = result.LastNameEn;\r\n\t\t\t\tthis.patientID = result.id;\r\n\t\t\t\tlet elem: HTMLElement;\r\n\t\t\t\telem = this.emailField.nativeElement as HTMLElement;\r\n\t\t\t\telem.click();\r\n\t\t\t\telem.blur();\r\n\t\t\t\tconsole.log('test');\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n}\r\n","
\r\n \r\n
\r\n

Admission

\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ template.SurveyName }}\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 Kontakt auswählen\r\n \r\n
\r\n \r\n \r\n \r\n \r\n Senden\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';\r\nimport { MatLegacyDialog as MatDialog, MatLegacyDialogRef as MatDialogRef, MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA } from '@angular/material/legacy-dialog';\r\nimport * as moment from 'moment';\r\nimport { BehaviorSubject, defer, from, merge, Observable, of } from 'rxjs';\r\nimport { catchError, exhaustMap, map, scan } from 'rxjs/operators';\r\nimport { Favorite } from '../../../shared/classes/favorite';\r\nimport { PatientRequest } from '../../../shared/classes/patient-request';\r\nimport { PersonTitles } from '../../../shared/collections/person-titles';\r\nimport { ConfirmDialogComponent } from '../../../shared/components/confirm-dialog/confirm-dialog.component';\r\nimport { ApplicationStateService, APP_SCREEN_SIZES } from '../../../shared/services/application-state.service';\r\nimport { FavoritesService } from '../../../shared/services/favorites.service';\r\nimport { RequestsDialogComponent } from '../../requests/components/requests-dialog/requests-dialog.component';\r\nimport { RequestsService } from '../../requests/services/requests.service';\r\n\r\n@Component({\r\n selector: 'app-favorites-detail',\r\n templateUrl: './favorites-detail.component.html',\r\n styleUrls: ['./favorites-detail.component.css']\r\n})\r\nexport class FavoritesDetailComponent implements OnInit {\r\n form: UntypedFormGroup;\r\n favorite: Favorite;\r\n public editMode = false;\r\n public personTitles = PersonTitles;\r\n public header: String;\r\n public notNotified = false;\r\n public sendSMS = true;\r\n public displayExtension = JSON.parse(localStorage.getItem('userobject'))?.PortalTypeID === 99;\r\n screenSize$: Observable;\r\n APP_SCREEN_SIZES = APP_SCREEN_SIZES;\r\n\r\n requestsState$: Observable<{ items: PatientRequest[]; status?: string }>;\r\n requestsEvent$$: BehaviorSubject<{ dataObservable?: Observable; action?: string }>;\r\n\r\n constructor(\r\n private fb: UntypedFormBuilder,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: any,\r\n private favoritesService: FavoritesService,\r\n private dialog: MatDialog,\r\n private appStateService: ApplicationStateService,\r\n private requestsService: RequestsService\r\n ) {\r\n if (data?.FirstNameEn) {\r\n // console.log('edit');\r\n this.editMode = true;\r\n this.header = 'Kontakt Bearbeiten';\r\n this.favorite = data;\r\n if (this.favorite.StatusID === 1) {\r\n this.notNotified = true;\r\n }\r\n this.sendSMS = this.favorite.DefaultSendSMS ?? true;\r\n } else {\r\n this.header = 'Neuer Kontakt';\r\n this.favorite = new Favorite({\r\n PersonTitle: '',\r\n FirstNameEn: '',\r\n LastNameEn: '',\r\n EMail: data?.EMail || '',\r\n PhoneMobile: data?.PhoneMobile || '',\r\n Note: '',\r\n DefaultSendSMS: true,\r\n DefaultPW: ''\r\n });\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n // console.log(this.favorite);\r\n if (this.displayExtension) {\r\n this.initRequestObservables();\r\n }\r\n\r\n this.screenSize$ = this.appStateService.screenSize$;\r\n this.form = this.fb.group({\r\n title: [this.favorite.PersonTitle, []],\r\n firstName: [this.favorite.FirstNameEn, []],\r\n lastName: [this.favorite.LastNameEn, []],\r\n email: [this.favorite.EMail, []],\r\n phone: [this.favorite.PhoneMobile, []],\r\n note: [this.favorite.Note, []],\r\n password: [this.favorite.DefaultPW, []]\r\n });\r\n\r\n // console.log('OK');\r\n //await this.favoritesService.registerPhone(this.favorite);\r\n }\r\n\r\n async registerPhone() {\r\n return await this.favoritesService.registerPhone(this.favorite);\r\n }\r\n\r\n async delete() {\r\n if (this.dialog.openDialogs.some((openDialog) => openDialog.componentInstance instanceof ConfirmDialogComponent)) {\r\n return;\r\n }\r\n const dialogRef2 = this.dialog.open(ConfirmDialogComponent, {\r\n width: '500px',\r\n data: `Sind Sie sicher, dass Sie ${this.favorite.PersonTitle} ${this.favorite.FirstNameEn} ${this.favorite.LastNameEn}\r\n aus ihren Favoriten löschen wollen?`\r\n });\r\n\r\n dialogRef2.afterClosed().subscribe(async (result) => {\r\n if (result) {\r\n await this.favoritesService.delete(this.favorite);\r\n // console.log('deleted');\r\n this.dialogRef.close();\r\n }\r\n });\r\n }\r\n\r\n close() {\r\n this.dialogRef.close();\r\n }\r\n\r\n async save(reopenDialog?: boolean) {\r\n if (this.displayExtension) {\r\n this.setExtendedFields();\r\n }\r\n let result;\r\n this.favorite.StatusID = this.notNotified ? 1 : 0;\r\n this.favorite.DefaultSendSMS = this.sendSMS;\r\n if (this.editMode) {\r\n result = await this.favoritesService.update(this.data, this.favorite);\r\n // console.log('Updated');\r\n // this.dialogRef.close();\r\n } else {\r\n result = await this.favoritesService.insert(this.favorite);\r\n // console.log('Inserted');\r\n // this.dialogRef.close();\r\n }\r\n this.dialogRef.close(reopenDialog ? { reOpen: reopenDialog, favoriteResult: result } : undefined);\r\n // this.dialogRef.close(this.form.value);\r\n return result;\r\n }\r\n\r\n public setExtendedFields() {\r\n // console.log(this.form.value.dateOfBirth);\r\n this.favorite.Street = this.form.value.street;\r\n this.favorite.ZIPCode = this.form.value.zipCode;\r\n this.favorite.City = this.form.value.city;\r\n this.favorite.CountryID = this.form.value.countryID;\r\n this.favorite.DateOfBirth = moment(this.form.value.dateOfBirth).isValid()\r\n ? moment.utc(this.form.value.dateOfBirth).toISOString()\r\n : null;\r\n this.favorite.InsuranceNo = this.form.value.insuranceNumber;\r\n this.favorite.InsurancePrimary = this.form.value.insurance;\r\n this.favorite.PlaceOfBirth = this.form.value.placeOfBirth;\r\n this.favorite.PersonalIDNo = this.form.value.personalIDNo;\r\n // console.log(this.favorite.DateOfBirth);\r\n }\r\n\r\n // async testLimit() {\r\n // const amount = 2000;\r\n // for (let i = 0; i < amount; i++) {\r\n // const fav = new Favorite({\r\n // PersonTitle: 'Herr',\r\n // FirstNameEn: `Limit${i}`,\r\n // LastNameEn: `Test${i}`,\r\n // EMail: 'testemail@peacequare.at',\r\n // PhoneMobile: '00232381515',\r\n // Note: 'Delete test user',\r\n // StatusID: 0\r\n // });\r\n // await this.favoritesService.insert(fav);\r\n // console.log(i);\r\n // }\r\n // }\r\n\r\n async showRequestDialog(request: PatientRequest, favorite) {\r\n try {\r\n if (\r\n this.dialog.openDialogs.some((openDialog) => openDialog.componentInstance instanceof RequestsDialogComponent)\r\n ) {\r\n return;\r\n }\r\n this.favorite.StatusID = this.notNotified ? 1 : 0;\r\n this.favorite.DefaultSendSMS = this.sendSMS;\r\n await this.favoritesService.update(this.data, this.favorite);\r\n const dialogRef = this.dialog.open(RequestsDialogComponent, {\r\n width: '900px',\r\n autoFocus: false,\r\n data: {\r\n request,\r\n updateRequestItem: (requestData: PatientRequest) => {\r\n this.requestsEvent$$.next({\r\n dataObservable: defer(() =>\r\n from(this.requestsService.updateRequest(requestData)).pipe(map((result) => [result]))\r\n ),\r\n action: 'update'\r\n });\r\n },\r\n getPdf: (requestData: PatientRequest) => this.requestsService.printRequestResult(requestData, favorite)\r\n }\r\n });\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n }\r\n\r\n initRequestObservables() {\r\n this.requestsEvent$$ = new BehaviorSubject({\r\n dataObservable: this.requestsService.readRequests({ patientID: this.favorite.id }),\r\n action: 'read'\r\n });\r\n this.requestsState$ = this.requestsEvent$$.pipe(\r\n exhaustMap(({ dataObservable, action }) =>\r\n merge(\r\n dataObservable.pipe(\r\n map((items) => ({ items, action })),\r\n catchError(() => of({ action: 'error' }))\r\n ),\r\n of({ action: 'loading' })\r\n )\r\n ),\r\n scan(\r\n (acc: { items: PatientRequest[]; status?: string }, curr: { items?; action }) => {\r\n if (curr.action === 'read') {\r\n return { items: [...curr.items] };\r\n }\r\n if (curr.action === 'add') {\r\n return { items: [...curr.items, ...acc.items] };\r\n }\r\n if (curr.action === 'update') {\r\n const [currentItem] = curr.items;\r\n return {\r\n items: acc.items.map((item) => (item.id === currentItem.id ? currentItem : item))\r\n };\r\n }\r\n if (curr.action === 'loading') {\r\n return { items: [...acc.items], status: 'loading' };\r\n }\r\n if (curr.action === 'error') {\r\n return { items: [...acc.items], status: 'error' };\r\n }\r\n return acc;\r\n },\r\n\r\n { items: [] }\r\n )\r\n );\r\n }\r\n\r\n saveAndAddRequest(item: Favorite) {\r\n return this.save(true).then((result) => this.requestsService.addRequest(result.id));\r\n }\r\n\r\n addPatientRequest(patientID: number) {\r\n this.requestsEvent$$.next({\r\n dataObservable: defer(() => from(this.requestsService.addRequest(patientID)).pipe(map((result) => [result]))),\r\n action: 'add'\r\n });\r\n }\r\n}\r\n","
\r\n \r\n
\r\n

{{ this.header }}

\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ title }}\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 Der Code muss aus 6-20 Buchstaben und Zahlen bestehen.\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n Will nicht kontaktiert werden\r\n
\r\n Code per SMS zuschicken\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 Speichern\r\n \r\n\r\n \r\n\r\n \r\n\r\n\r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { UntypedFormControl, UntypedFormGroup } from '@angular/forms';\r\nimport { MAT_MOMENT_DATE_ADAPTER_OPTIONS, MomentDateAdapter } from '@angular/material-moment-adapter';\r\nimport { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';\r\n// Depending on whether rollup is used, moment needs to be imported differently.\r\n// Since Moment.js doesn't have a default export, we normally need to import using the `* as`\r\n// syntax. However, rollup creates a synthetic default module and we thus need to import it using\r\n// the `default as` syntax.\r\nimport * as _moment from 'moment';\r\n// tslint:disable-next-line:no-duplicate-imports\r\nimport { default as _rollupMoment } from 'moment';\r\nimport { Observable } from 'rxjs';\r\nimport { SVTInsurances } from 'src/app/shared/collections/svt-insurances';\r\nimport { Favorite } from '../../../shared/classes/favorite';\r\nimport { ApplicationStateService, APP_SCREEN_SIZES } from '../../../shared/services/application-state.service';\r\nimport { FavoritesService } from '../../../shared/services/favorites.service';\r\n\r\nconst moment = _rollupMoment || _moment;\r\n\r\n// See the Moment.js docs for the meaning of these formats:\r\n// https://momentjs.com/docs/#/displaying/format/\r\nexport const MY_FORMATS = {\r\n parse: {\r\n dateInput: 'DD.MM.YYYY'\r\n },\r\n display: {\r\n dateInput: 'DD.MM.YYYY',\r\n monthYearLabel: 'MMM YYYY',\r\n dateA11yLabel: 'LL',\r\n monthYearA11yLabel: 'MMMM YYYY'\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'app-favorites-extension',\r\n templateUrl: './favorites-extension.component.html',\r\n styleUrls: ['./favorites-extension.component.css'],\r\n providers: [\r\n // `MomentDateAdapter` can be automatically provided by importing `MomentDateModule` in your\r\n // application's root module. We provide it at the component level here, due to limitations of\r\n // our example generation script.\r\n {\r\n provide: DateAdapter,\r\n useClass: MomentDateAdapter,\r\n deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS]\r\n },\r\n\r\n { provide: MAT_DATE_FORMATS, useValue: MY_FORMATS }\r\n ]\r\n})\r\nexport class FavoritesExtensionComponent implements OnInit {\r\n @Input() favorite: Favorite;\r\n @Input() form: UntypedFormGroup;\r\n @Input() editMode: boolean;\r\n screenSize$: Observable;\r\n APP_SCREEN_SIZES = APP_SCREEN_SIZES;\r\n public insurances = SVTInsurances;\r\n\r\n countries: any[];\r\n cities: any[];\r\n\r\n constructor(private appStateService: ApplicationStateService, private favoritesService: FavoritesService) {}\r\n\r\n async ngOnInit() {\r\n this.screenSize$ = this.appStateService.screenSize$;\r\n this.initForm();\r\n this.countries = await this.favoritesService.getCountries();\r\n this.cities = await this.favoritesService.getCities();\r\n }\r\n\r\n private initForm(): void {\r\n this.form.addControl('street', new UntypedFormControl(this.favorite.Street || ''));\r\n this.form.addControl('zipCode', new UntypedFormControl(this.favorite.ZIPCode || ''));\r\n this.form.addControl('city', new UntypedFormControl(this.favorite.City || ''));\r\n this.form.addControl('countryID', new UntypedFormControl(this.favorite.CountryID || ''));\r\n this.form.addControl('dateOfBirth', new UntypedFormControl(this.favorite.DateOfBirth || ''));\r\n this.form.addControl('insuranceNumber', new UntypedFormControl(this.favorite.InsuranceNo || ''));\r\n this.form.addControl('insurance', new UntypedFormControl(this.favorite.InsurancePrimary || ''));\r\n this.form.addControl('placeOfBirth', new UntypedFormControl(this.favorite.PlaceOfBirth || ''));\r\n this.form.addControl('personalIDNo', new UntypedFormControl(this.favorite.PersonalIDNo || ''));\r\n }\r\n\r\n checkZipCode(zip) {\r\n // const zip = this.form.value.zipCode;\r\n const city = this.cities.find((city) => city.ZIPCode == zip);\r\n if (city) {\r\n this.form.controls['city'].setValue(city.CityNameDe);\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 {{ country.CountryNameDe }}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Geburtsdatum\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 {{ insurance.kurzbezeichnung }}\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, OnInit } from '@angular/core';\r\nimport { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { Favorite } from '../../shared/classes/favorite';\r\nimport { FavoritesService } from '../../shared/services/favorites.service';\r\nimport { FavoritesDetailComponent } from './favorites-detail/favorites-detail.component';\r\n\r\n@Component({\r\n selector: 'app-favorites',\r\n templateUrl: './favorites.component.html',\r\n styleUrls: ['./favorites.component.css']\r\n})\r\nexport class FavoritesComponent implements OnInit {\r\n public clickLock = false;\r\n private favorites;\r\n public filteredFavorites;\r\n public searchName;\r\n\r\n constructor(private route: ActivatedRoute, private favoritesService: FavoritesService, private dialog: MatDialog) {}\r\n\r\n async ngOnInit() {\r\n await this.initData();\r\n this.route.queryParams.subscribe((params) => {\r\n const uid = params['uid'],\r\n tid = params['tid'],\r\n res = params['result'];\r\n\r\n // console.log(`UserID: ${uid}, TransactionID: ${tid}, Result: ${res}`);\r\n });\r\n }\r\n\r\n private async initData() {\r\n this.favorites = await this.getFavorites();\r\n this.favorites.sort((a, b) => (a.LastNameEn > b.LastNameEn ? 1 : b.LastNameEn > a.LastNameEn ? -1 : 0));\r\n this.filteredFavorites = this.favorites.slice(0, 100);\r\n // console.log('init');\r\n }\r\n\r\n public showDetailDialog() {\r\n if (\r\n this.dialog.openDialogs.some((openDialog) => openDialog.componentInstance instanceof FavoritesDetailComponent)\r\n ) {\r\n return;\r\n }\r\n const dialogRef = this.dialog.open(FavoritesDetailComponent, {});\r\n dialogRef.afterClosed().subscribe(async ({ reOpen, favoriteResult } = {}) => {\r\n await this.initData();\r\n if (reOpen) {\r\n this.edit(favoriteResult);\r\n // console.log('dialog closed');\r\n }\r\n });\r\n }\r\n\r\n async edit(data) {\r\n // console.log(data);\r\n if (this.clickLock) {\r\n // console.log('Clicklock');\r\n return;\r\n }\r\n this.clickLock = true;\r\n const dialogRef = this.dialog.open(FavoritesDetailComponent, {\r\n data: new Favorite(data)\r\n });\r\n this.clickLock = false;\r\n dialogRef.afterClosed().subscribe(async ({ reOpen, favoriteResult } = {}) => {\r\n await this.initData();\r\n this.filterFavorites(this.searchName);\r\n if (reOpen) {\r\n this.edit(favoriteResult);\r\n // console.log('dialog closed');\r\n }\r\n });\r\n }\r\n\r\n public getFavorites() {\r\n return this.favoritesService.getFavorites();\r\n }\r\n\r\n public filterFavorites(searchText) {\r\n const search = searchText?.replace(/ /g, ''); // Filter out whitespaces not correct fix\r\n // console.log(search);\r\n const filtered = this.favorites.filter((item) => {\r\n return !searchText || (item.FirstNameEn + item.LastNameEn).toLowerCase().indexOf(search.toLowerCase()) > -1;\r\n });\r\n this.filteredFavorites = filtered.slice(0, 100);\r\n return filtered;\r\n }\r\n}\r\n\r\n/*\r\n\t\t\t\t!searchText ||\r\n\t\t\t\titem.FirstNameEn.toLowerCase().indexOf(search.toLowerCase()) > -1 ||\r\n\t\t\t\titem.PersonTitle.toLowerCase().indexOf(search.toLowerCase()) > -1 ||\r\n\t\t\t\titem.LastNameEn.toLowerCase().indexOf(search.toLowerCase()) > -1\r\n\t\t\t\t*/\r\n","
\r\n
\r\n\r\n
\r\n

Kontakte

\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

{{favorite.PersonTitle}} {{favorite.FirstNameEn}} {{favorite.LastNameEn}}

\r\n \r\n

\r\n {{favorite.EMail}}\r\n

\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
","import { Component, OnInit, Output, EventEmitter, Input } from '@angular/core';\r\nimport { FavoritesService } from '../../../../../shared/services/favorites.service';\r\nimport { Favorite } from '../../../../../shared/classes/favorite';\r\n\r\n@Component({\r\n\tselector: 'app-atrust-button',\r\n\ttemplateUrl: './atrust-button.component.html',\r\n\tstyleUrls: [ './atrust-button.component.css' ]\r\n})\r\nexport class AtrustButtonComponent implements OnInit {\r\n\t@Input() public label = 'atrust';\r\n\t@Output() public click = new EventEmitter();\r\n\r\n\tconstructor(favoritesService: FavoritesService) {}\r\n\r\n\tngOnInit() {}\r\n\r\n\tpublic buttonClicked(): void {\r\n\t\tthis.click.emit(new Date());\r\n\t}\r\n}\r\n","","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AtrustButtonComponent } from './components/atrust-button/atrust-button.component';\r\nimport { FavoritesService } from '../../../shared/services/favorites.service';\r\n\r\n@NgModule({\r\n\tdeclarations: [ AtrustButtonComponent ],\r\n\timports: [ CommonModule ],\r\n\texports: [ AtrustButtonComponent ],\r\n\tproviders: [ FavoritesService ]\r\n})\r\nexport class PhoneSignatureModule {}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AzureServiceService } from '../../shared/services/azure-service.service';\r\n\r\n@Component({\r\n selector: 'app-navbar',\r\n templateUrl: './navbar.component.html',\r\n styleUrls: ['./navbar.component.css']\r\n})\r\nexport class NavbarComponent implements OnInit {\r\n public userName = '';\r\n public labUserID = '';\r\n constructor(private azureClient: AzureServiceService) { }\r\n\r\n async ngOnInit() {\r\n this.userName = this.azureClient.getUserName();\r\n this.labUserID = JSON.parse(localStorage.getItem('userobject')).ContactPortalObject.LabUserID;\r\n }\r\n\r\n public logout(event) {\r\n event.preventDefault();\r\n this.azureClient.logout();\r\n }\r\n}\r\n","\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-pricing-mobile',\r\n templateUrl: './pricing-mobile.component.html',\r\n styleUrls: ['./pricing-mobile.component.css']\r\n})\r\nexport class PricingMobileComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n

Unsere Preise

\r\n \r\n
\r\n
\r\n
\r\n
FREE
\r\n
0€
\r\n
pro Monat zzgl. USt.
\r\n
\r\n
\r\n
\r\n - 0 SMS pro Monat\r\n
\r\n
\r\n - Daten 1 Woche abrufbar\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
MINI
\r\n
9,90€*
\r\n
pro Monat zzgl. USt.
\r\n
\r\n
\r\n
\r\n - 50 SMS pro Monat\r\n
\r\n
\r\n - Daten 3 Monate abrufbar\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
BASIC
\r\n
14,90€*
\r\n
pro Monat zzgl. USt.
\r\n
\r\n
\r\n
\r\n - 120 SMS pro Monat\r\n
\r\n
\r\n - Daten 1 Jahr abrufbar\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
PLUS
\r\n
24,90€*
\r\n
pro Monat zzgl. USt.
\r\n
\r\n
\r\n
\r\n - 200 SMS pro Monat\r\n
\r\n
\r\n - Daten 5 Jahre abrufbar\r\n
\r\n
\r\n
\r\n
\r\n \r\n

\r\n * Preise exkl. USt. Jährliche Zahlung im Voraus.\r\n

\r\n
\r\n
","import { Component, OnInit, ElementRef, Renderer2, ViewChild } from '@angular/core';\r\nimport { UploadComponent } from '../upload/upload.component';\r\nimport { AzureServiceService } from '../../shared/services/azure-service.service';\r\nimport { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';\r\nimport { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';\r\nimport { ConfirmDialogComponent } from '../../shared/components/confirm-dialog/confirm-dialog.component';\r\nimport { PortalsService } from '../../shared/services/portals.service';\r\nimport { CuberryPromotion } from '../../shared/classes/cuberry-promotion';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { APP_SCREEN_SIZES, ApplicationStateService } from '../../shared/services/application-state.service';\r\n\r\n@Component({\r\n\tselector: 'app-pricing',\r\n\ttemplateUrl: './pricing.component.html',\r\n\tstyleUrls: [ './pricing.component.css' ]\r\n})\r\nexport class PricingComponent implements OnInit {\r\n\tconstructor(\r\n\t\tprivate uploadComponent: UploadComponent,\r\n\t\tprivate azureClient: AzureServiceService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate portalService: PortalsService,\r\n\t\tprivate snackBar: MatSnackBar,\r\n\t\tprivate renderer: Renderer2,\r\n\t\tprivate elem: ElementRef,\r\n\t\tprivate appStateService: ApplicationStateService\r\n\t) {}\r\n\tpublic aboType: Number;\r\n\tpublic portalObject;\r\n\tscreenSize$: Observable;\r\n\tcurrentSize: string;\r\n \tAPP_SCREEN_SIZES = APP_SCREEN_SIZES;\r\n\r\n\t@ViewChild('startBtn')\r\n\tstartBtn: ElementRef;\r\n\t@ViewChild('miniBtn')\r\n\tminiBtn: ElementRef;\r\n\t@ViewChild('basicBtn')\r\n\tbasicBtn: ElementRef;\r\n\t@ViewChild('plusBtn')\r\n\tplusBtn: ElementRef;\r\n\r\n\t@ViewChild('pBox')\r\n\tpBox: ElementRef;\r\n\t@ViewChild('bxLabel')\r\n\tbxLabel: ElementRef;\r\n\t@ViewChild('arrow')\r\n\tarrow: ElementRef;\r\n\r\n\tpublic userSettings = {\r\n\t\tfreeText: 'Aktiv',\r\n\t\tstartText: 'Jetzt upgraden!',\r\n\t\tminiText: 'Jetzt upgraden!',\r\n\t\tbasicText: 'Jetzt upgraden!',\r\n\t\tplusText: 'Jetzt upgraden!'\r\n\t};\r\n\tpublic aboNames = {\r\n\t\t0: 'Free',\r\n\t\t4: 'Start',\r\n\t\t1: 'Mini',\r\n\t\t2: 'Basic',\r\n\t\t3: 'Plus'\r\n\t};\r\n\tprivate aboPrices = {\r\n\t\t4: '132€',\r\n\t\t1: '264€',\r\n\t\t2: '396€',\r\n\t\t3: '528€'\r\n\t};\r\n\tprivate aboInfo = {\r\n\t\t4: '15 SMS pro Monat, Daten 3 Monate abrufbar',\r\n\t\t1: '50 SMS pro Monat, Daten 1 Jahr abrufbar',\r\n\t\t2: '120 SMS pro Monat, Daten 7 Jahre abrufbar',\r\n\t\t3: '200 SMS pro Monat, Daten unlimitiert abrufbar'\r\n\t};\r\n\r\n\tasync ngOnInit() {\r\n\t\tthis.screenSize$ = this.appStateService.screenSize$;\r\n\t\tthis.screenSize$.subscribe(currSize => this.currentSize = currSize);\r\n\t\tawait this.getPortal();\r\n\t\tthis.aboType = this.portalObject.AboType;\r\n\t\tif (\r\n\t\t\tthis.aboType !== 0 &&\r\n\t\t\tthis.aboType !== 1 &&\r\n\t\t\tthis.aboType !== 2 &&\r\n\t\t\tthis.aboType !== 3 &&\r\n\t\t\tthis.aboType !== 4\r\n\t\t) {\r\n\t\t\tthis.aboType = 0;\r\n\t\t}\r\n\t\tthis.initUser();\r\n\t\tif (this.azureClient.showAd && this.currentSize !== APP_SCREEN_SIZES.small) {\r\n\t\t\tthis.expandPricing();\r\n\t\t\tthis.azureClient.showAd = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate async getPortal() {\r\n\t\ttry {\r\n\t\t\tconst portalResult = await this.portalService.getOwnPortal();\r\n\t\t\t// console.log(this.userObject);\r\n\t\t\tthis.portalObject = portalResult;\r\n\t\t\t// console.log(this.portalObject);\r\n\t\t} catch (err) {\r\n\t\t\tconsole.log(err);\r\n\t\t}\r\n\t}\r\n\r\n\tupgrade(id) {\r\n\t\tif(this.dialog.openDialogs.some(openDialog => openDialog.componentInstance instanceof ConfirmDialogComponent)){\r\n\t\t\treturn;\r\n\t\t }\r\n\t\tconst dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n\t\t\twidth: '500px',\r\n\t\t\tdata: `BefundExpress ${this.aboNames[id]}\r\n${this.aboPrices[id]} jährlich exkl. USt.\r\n(Kostenpflichtig bestellen)`\r\n\t\t});\r\n\r\n\t\tdialogRef.afterClosed().subscribe(async (res) => {\r\n\t\t\tif (res) {\r\n\t\t\t\tthis.snackBar.open('Vielen Dank, Ihr Abo wurde aufgestuft!', null, {\r\n\t\t\t\t\tduration: 5000,\r\n\t\t\t\t\tpanelClass: 'blue-snackbar',\r\n\t\t\t\t\tverticalPosition: 'top'\r\n\t\t\t\t});\r\n\r\n\t\t\t\tconst promotion = new CuberryPromotion();\r\n\t\t\t\tpromotion.FutureAboTypeID = id;\r\n\r\n\t\t\t\tconst result = await this.portalService.updateAboType(this.portalObject, promotion);\r\n\t\t\t\tthis.aboType = result.AboType;\r\n\t\t\t\tconst user = JSON.parse(localStorage.getItem('userobject'));\r\n\t\t\t\tuser.ContactPortalObject.AboType = this.aboType;\r\n\t\t\t\tlocalStorage.setItem('userobject', JSON.stringify(user));\r\n\t\t\t\tconsole.log('Updated LocalStorage: ', JSON.parse(localStorage.getItem('userobject')));\r\n\r\n\r\n\t\t\t\tthis.initUser();\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\tinitUser() {\r\n\t\tif (this.aboType === 4) {\r\n\t\t\tthis.userSettings = {\r\n\t\t\t\tfreeText: '-',\r\n\t\t\t\tstartText: 'Aktiv',\r\n\t\t\t\tminiText: 'Jetzt upgraden!',\r\n\t\t\t\tbasicText: 'Jetzt upgraden!',\r\n\t\t\t\tplusText: 'Jetzt upgraden!'\r\n\t\t\t};\r\n\r\n\t\t\tthis.removeClasses();\r\n\t\t\t// document.getElementById('miniBtn').classList.add('active');\r\n\t\t\t// document.getElementById('basicBtn').classList.add('available');\r\n\t\t\t// document.getElementById('plusBtn').classList.add('available');\r\n\r\n\t\t\tthis.renderer.addClass(this.startBtn.nativeElement, 'active');\r\n\t\t\tthis.renderer.addClass(this.miniBtn.nativeElement, 'available');\r\n\t\t\tthis.renderer.addClass(this.basicBtn.nativeElement, 'available');\r\n\t\t\tthis.renderer.addClass(this.plusBtn.nativeElement, 'available');\r\n\t\t}\r\n\t\tif (this.aboType === 1) {\r\n\t\t\tthis.userSettings = {\r\n\t\t\t\tfreeText: '-',\r\n\t\t\t\tstartText: '-',\r\n\t\t\t\tminiText: 'Aktiv',\r\n\t\t\t\tbasicText: 'Jetzt upgraden!',\r\n\t\t\t\tplusText: 'Jetzt upgraden!'\r\n\t\t\t};\r\n\r\n\t\t\tthis.removeClasses();\r\n\t\t\t// document.getElementById('miniBtn').classList.add('active');\r\n\t\t\t// document.getElementById('basicBtn').classList.add('available');\r\n\t\t\t// document.getElementById('plusBtn').classList.add('available');\r\n\r\n\t\t\tthis.renderer.addClass(this.miniBtn.nativeElement, 'active');\r\n\t\t\tthis.renderer.addClass(this.basicBtn.nativeElement, 'available');\r\n\t\t\tthis.renderer.addClass(this.plusBtn.nativeElement, 'available');\r\n\t\t}\r\n\t\tif (this.aboType === 2) {\r\n\t\t\tthis.userSettings = {\r\n\t\t\t\tfreeText: '-',\r\n\t\t\t\tstartText: '-',\r\n\t\t\t\tminiText: '-',\r\n\t\t\t\tbasicText: 'Aktiv',\r\n\t\t\t\tplusText: 'Jetzt upgraden!'\r\n\t\t\t};\r\n\r\n\t\t\tthis.removeClasses();\r\n\t\t\t// document.getElementById('basicBtn').classList.add('active');\r\n\t\t\t// document.getElementById('plusBtn').classList.add('available');\r\n\r\n\t\t\tthis.renderer.addClass(this.basicBtn.nativeElement, 'active');\r\n\t\t\tthis.renderer.addClass(this.plusBtn.nativeElement, 'available');\r\n\t\t}\r\n\t\tif (this.aboType === 3) {\r\n\t\t\tthis.userSettings = {\r\n\t\t\t\tfreeText: '-',\r\n\t\t\t\tstartText: '-',\r\n\t\t\t\tminiText: '-',\r\n\t\t\t\tbasicText: '-',\r\n\t\t\t\tplusText: 'Aktiv'\r\n\t\t\t};\r\n\r\n\t\t\tthis.removeClasses();\r\n\t\t\tthis.renderer.addClass(this.plusBtn.nativeElement, 'active');\r\n\t\t}\r\n\t}\r\n\r\n\texpandPricing() {\r\n\t\tthis.uploadComponent.showPricing();\r\n\t\tdocument.getElementById('pBox').classList.toggle('fade');\r\n\t\tdocument.getElementById('arrow').classList.toggle('fa-arrow-circle-right');\r\n\t\tdocument.getElementById('bxLabel').classList.toggle('hide');\r\n\r\n\t\tthis.renderer.addClass('pBox', 'fade');\r\n\t}\r\n\r\n\tremoveClasses() {\r\n\t\tconst elements = this.elem.nativeElement.querySelectorAll('.buttonField');\r\n\r\n\t\telements.forEach((el) => {\r\n\t\t\t// el.classList.remove('active');\r\n\t\t\t// el.classList.remove('available');\r\n\t\t\tthis.renderer.removeClass(el, 'active');\r\n\t\t\tthis.renderer.removeClass(el, 'available');\r\n\t\t});\r\n\t}\r\n}\r\n","
\r\n
\r\n

Unser Angebot

\r\n

BefundExpress+

\r\n
\r\n
\r\n
\r\n
FREE
\r\n
0€
\r\n
pro Monat
\r\n
\r\n
\r\n
\r\n 99 Cent pro SMS\r\n
\r\n
\r\n Daten 1 Woche abrufbar\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
START
\r\n
11€
\r\n
pro Monat
\r\n
\r\n
\r\n
\r\n 15 SMS monatlich**\r\n
\r\n
\r\n Daten 3 Monate abrufbar\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
MINI
\r\n
22€
\r\n
pro Monat
\r\n
\r\n
\r\n
\r\n 50 SMS monatlich*\r\n
\r\n
\r\n Daten 1 Jahr abrufbar\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
BASIC
\r\n
33€
\r\n
pro Monat
\r\n
\r\n
\r\n
\r\n 120 SMS monatlich*\r\n
\r\n
\r\n Daten 7 Jahre abrufbar\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
= 2 && aboType != 4\">\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
PLUS
\r\n
44€
\r\n
pro Monat
\r\n
\r\n
\r\n
\r\n 200 SMS monatlich*\r\n
\r\n
\r\n Daten unlimitiert abrufbar\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 Alle Preise exkl. 20% USt. Jährliche Zahlung im Voraus.\r\n

\r\n

\r\n * Kosten je weitere SMS: 0,22€.\r\n

\r\n

\r\n ** Kosten je weitere SMS: 0,99€.\r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MatLegacyDialogRef as MatDialogRef, MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA } from '@angular/material/legacy-dialog';\r\nimport { AzureServiceService } from '../../../../shared/services/azure-service.service';\r\nimport { AdmissionService } from '../../services/admission.service';\r\n\r\n@Component({\r\n\tselector: 'app-api-detail',\r\n\ttemplateUrl: './api-detail.component.html',\r\n\tstyleUrls: [ './api-detail.component.css' ]\r\n})\r\nexport class ApiDetailComponent implements OnInit {\r\n\tpublic username = '';\r\n\tpublic password = '';\r\n\tpublic errorMessage = '';\r\n\tpublic loginPending = false;\r\n\tconstructor(\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any,\r\n\t\tprivate azureClient: AzureServiceService,\r\n\t\tprivate admissionService: AdmissionService\r\n\t) {}\r\n\r\n\tngOnInit() {}\r\n\r\n\tasync loginClick(event) {\r\n\t\tevent.preventDefault();\r\n\t\t// console.log(event);\r\n\t\tif (!this.username || !this.password) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.errorMessage = '';\r\n\t\ttry {\r\n\t\t\tthis.loginPending = true;\r\n\t\t\tconst loginData = {\r\n\t\t\t\tusername: this.username,\r\n\t\t\t\tpassword: this.password\r\n\t\t\t};\r\n\t\t\tconst loginRes = await this.admissionService.authenticate(loginData);\r\n\t\t\tconsole.log('Success', loginRes);\r\n\t\t\tthis.dialogRef.close();\r\n\t\t} catch (err) {\r\n\t\t\tthis.errorMessage = err.message;\r\n\t\t} finally {\r\n\t\t\tthis.loginPending = false;\r\n\t\t}\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n

Admission Login

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{errorMessage}}\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';\r\n\r\nimport { ApiUserService } from '../services/api-user.service';\r\nimport { ConfirmDialogComponent } from '../../../shared/components/confirm-dialog/confirm-dialog.component';\r\nimport { ApiDetailComponent } from './api-detail/api-detail.component';\r\nimport { AdmissionService } from '../services/admission.service';\r\n\r\n@Component({\r\n\tselector: 'app-api-user',\r\n\ttemplateUrl: './api-user.component.html',\r\n\tstyleUrls: [ './api-user.component.css' ],\r\n\tproviders: [ ApiUserService ]\r\n})\r\nexport class ApiUserComponent implements OnInit {\r\n\tapiUser: any;\r\n\tsaveInProgress = false;\r\n\ttokenUsers: any[];\r\n\tconstructor(\r\n\t\tprivate apiUserService: ApiUserService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate admissionService: AdmissionService\r\n\t) {}\r\n\r\n\tasync ngOnInit() {\r\n\t\ttry {\r\n\t\t\tconst apiUserRes = await this.apiUserService.get();\r\n\t\t\tthis.apiUser = apiUserRes.apiUser;\r\n\t\t\tthis.tokenUsers = apiUserRes.tokenUsers;\r\n\t\t} catch (err) {\r\n\t\t\tconsole.log(err);\r\n\t\t}\r\n\t}\r\n\r\n\tasync createApiUser() {\r\n\t\ttry {\r\n\t\t\tthis.saveInProgress = true;\r\n\t\t\tconst newApiUser = await this.apiUserService.insert();\r\n\t\t\tthis.apiUser = newApiUser;\r\n\t\t\treturn newApiUser;\r\n\t\t} catch (err) {\r\n\t\t\tconsole.log(err);\r\n\t\t} finally {\r\n\t\t\tthis.saveInProgress = false;\r\n\t\t}\r\n\t}\r\n\r\n\thasAdmissionAccount() {\r\n\t\treturn this.admissionService.hasAccount;\r\n\t}\r\n\r\n\tshowChangePWDialog() {\r\n\t\tif(this.dialog.openDialogs.some(openDialog => openDialog.componentInstance instanceof ConfirmDialogComponent)){\r\n\t\t\treturn;\r\n\t\t }\r\n\t\tconst dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n\t\t\twidth: '500px',\r\n\t\t\tdata:\r\n\t\t\t\t'Wenn Sie das Passwort ändern, müssen Sie dieses bei allen aktuell verbundenen Anbietern auch anpassen.' +\r\n\t\t\t\t'\\r\\nSind Sie sicher, dass Sie das Passwort für Ihren API - Benutzer ändern wollen?'\r\n\t\t});\r\n\r\n\t\tdialogRef.afterClosed().subscribe((result) => {\r\n\t\t\tif (result) {\r\n\t\t\t\tthis.changeApiUserPW(this.apiUser);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tasync changeApiUserPW(currentUser) {\r\n\t\ttry {\r\n\t\t\tthis.saveInProgress = true;\r\n\t\t\tconst changePWRes = await this.apiUserService.changePassword(currentUser.UserId);\r\n\t\t\tthis.apiUser = changePWRes;\r\n\t\t\treturn changePWRes;\r\n\t\t} catch (err) {\r\n\t\t\tconsole.log(err);\r\n\t\t} finally {\r\n\t\t\tthis.saveInProgress = false;\r\n\t\t}\r\n\t}\r\n\r\n\tshowAdmissionDialog() {\r\n\t\tif(this.dialog.openDialogs.some(openDialog => openDialog.componentInstance instanceof ApiDetailComponent)){\r\n\t\t\treturn;\r\n\t\t }\r\n\t\tconst dialogRef = this.dialog.open(ApiDetailComponent, {\r\n\t\t\twidth: '500px'\r\n\t\t});\r\n\r\n\t\tdialogRef.afterClosed().subscribe((result) => {\r\n\t\t\tif (result) {\r\n\t\t\t\tthis.changeApiUserPW(this.apiUser);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tasync showDeleteAdmissionDialog() {\r\n\t\tif(this.dialog.openDialogs.some(openDialog => openDialog.componentInstance instanceof ConfirmDialogComponent)){\r\n\t\t\treturn;\r\n\t\t }\r\n\t\tconst dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n\t\t\twidth: '500px',\r\n\t\t\tdata:\r\n\t\t\t\t'Wenn Sie das diesen Benutzer löschen ist eine Anbindung über andere Anbieter nicht mehr möglich.' +\r\n\t\t\t\t'\\r\\nSind Sie sicher, dass Sie ihren Schnittstellen - Benutzer löschen wollen?'\r\n\t\t});\r\n\r\n\t\tdialogRef.afterClosed().subscribe(async (result) => {\r\n\t\t\tif (result) {\r\n\t\t\t\tawait this.admissionService.removeAccount();\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tshowDeleteDialog() {\r\n\t\tif(this.dialog.openDialogs.some(openDialog => openDialog.componentInstance instanceof ConfirmDialogComponent)){\r\n\t\t\treturn;\r\n\t\t }\r\n\t\tconst dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n\t\t\twidth: '500px',\r\n\t\t\tdata:\r\n\t\t\t\t'Wenn Sie das diesen Benutzer löschen ist eine Anbindung über andere Anbieter nicht mehr möglich.' +\r\n\t\t\t\t'\\r\\nSind Sie sicher, dass Sie ihren Schnittstellen - Benutzer löschen wollen?'\r\n\t\t});\r\n\r\n\t\tdialogRef.afterClosed().subscribe((result) => {\r\n\t\t\tif (result) {\r\n\t\t\t\tthis.deleteApiUser(this.apiUser);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tasync deleteApiUser(currentUser) {\r\n\t\ttry {\r\n\t\t\tthis.saveInProgress = true;\r\n\t\t\tconst deleteRes = await this.apiUserService.delete(currentUser.UserId);\r\n\t\t\tthis.apiUser = {};\r\n\t\t\treturn deleteRes;\r\n\t\t} catch (err) {\r\n\t\t\tconsole.log(err);\r\n\t\t} finally {\r\n\t\t\tthis.saveInProgress = false;\r\n\t\t}\r\n\t}\r\n\r\n\tshowDeleteBYAPIIDDialog(tokenUser) {\r\n\t\tif(this.dialog.openDialogs.some(openDialog => openDialog.componentInstance instanceof ConfirmDialogComponent)){\r\n\t\t\treturn;\r\n\t\t }\r\n\t\tconst dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n\t\t\twidth: '500px',\r\n\t\t\tdata: `Sind Sie sicher, dass Sie die Verbinung zu ${tokenUser.APIName} entfernen wollen?`\r\n\t\t});\r\n\r\n\t\tdialogRef.afterClosed().subscribe((result) => {\r\n\t\t\tif (result) {\r\n\t\t\t\tthis.deleteByAPIID(tokenUser);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tasync deleteByAPIID(tokenUser: any) {\r\n\t\ttry {\r\n\t\t\ttokenUser.clickDisabled = true;\r\n\t\t\tconst deleteRes = await this.apiUserService.deleteByAPIID(tokenUser.APIID);\r\n\t\t\t// this.apiUser = {};\r\n\t\t\tthis.tokenUsers = this.tokenUsers.filter((item) => item.APIID !== tokenUser.APIID);\r\n\t\t\treturn deleteRes;\r\n\t\t} catch (err) {\r\n\t\t\tconsole.log(err);\r\n\t\t} finally {\r\n\t\t\tthis.saveInProgress = false;\r\n\t\t}\r\n\t}\r\n}\r\n","
\r\n
\r\n

Schnittstellen - Benutzer

\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
{{apiUser.UserId}}
\r\n
\r\n
\r\n
\r\n \r\n
{{apiUser.PW}}
\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

Aktive Verbindungen

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
{{tokenUser.APIName}}
\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
Care01 - Admission
\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, OnInit, Inject, AfterViewInit } from '@angular/core';\r\nimport { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';\r\nimport { ConfirmDialogComponent } from 'src/app/shared/components/confirm-dialog/confirm-dialog.component';\r\nimport { ConnectedAccountsListComponent, IConnectedAccountType } from 'src/app/shared/components/connected-accounts-list/connected-accounts-list.component';\r\nimport { ConnectedAccountsService, IConnectedAccount } from '../../../../shared/services/connected-accounts.service';\r\n\r\n@Component({\r\n\tselector: 'app-connected-accounts',\r\n\ttemplateUrl: './connected-accounts.component.html',\r\n\tstyleUrls: [ './connected-accounts.component.css' ],\r\n\tproviders: [ ConnectedAccountsService ]\r\n})\r\nexport class ConnectedAccountsComponent implements OnInit, AfterViewInit {\r\n public view = 'loading';\r\n public availableAccountTypes: string[] = [];\r\n public connectedAccounts: IConnectedAccount[] = [];\r\n\r\n\tconstructor(\r\n private caService: ConnectedAccountsService,\r\n private dialog: MatDialog\r\n\t) {}\r\n\r\n\tngOnInit() {\r\n this.filterAccountTypes = this.filterAccountTypes.bind(this);\r\n }\r\n ngAfterViewInit() {\r\n this.loadAccounts().then(() => this.switchView('overview'));\r\n }\r\n\r\n async loadAccounts() {\r\n const connected = await this.caService.getConnectedAccounts();\r\n this.connectedAccounts = connected;\r\n this.availableAccountTypes = ConnectedAccountsListComponent.CONNECTED_ACCOUNT_TYPES.filter(t => !connected.find(c => c.AccountType === t.name)).map(t => t.name);\r\n }\r\n\r\n public async connectAccount(accountType) {\r\n let redirect = await this.caService.getRedirect(accountType.name, 'connect');\r\n window.location.replace(redirect.url);\r\n }\r\n public async unlinkAccount(connectedAccount) {\r\n if (this.dialog.openDialogs.some((openDialog) => openDialog.componentInstance instanceof ConfirmDialogComponent)) {\r\n return;\r\n }\r\n const confirmDialog = this.dialog.open(ConfirmDialogComponent, {\r\n width: '500px',\r\n data: `Sind Sie sicher, dass Sie die Verbindung zwischen diesem ${this.nameFor(connectedAccount)}-Account und Ihrem BefundExpress-Account lösen möchten?`\r\n });\r\n\r\n confirmDialog.afterClosed().subscribe(async (result) => {\r\n if (result) {\r\n await this.caService.unlinkConnectedAccount(connectedAccount.AccountType);\r\n await this.loadAccounts();\r\n }\r\n });\r\n }\r\n\r\n public switchView(viewName) {\r\n this.view = viewName;\r\n }\r\n public filterAccountTypes(accountType: IConnectedAccountType) {\r\n return this.availableAccountTypes.includes(accountType.name);\r\n }\r\n public nameFor(connectedAccount: IConnectedAccount) {\r\n return ConnectedAccountsListComponent.CONNECTED_ACCOUNT_TYPES.find(t => t.name === connectedAccount.AccountType).description;\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
Keine Accounts verbunden
\r\n {{nameFor(connectedAccount)}}\r\n \r\n
\r\n \r\n
\r\n
\r\n

Bitte wählen Sie einen Accounttyp zum Verbinden

\r\n \r\n\r\n \r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';\r\nimport { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';\r\n\r\nimport { PersonTitles } from '../../shared/collections/person-titles';\r\nimport { UserModel } from '../../shared/classes/user-model';\r\nimport { ProfileService } from './services/profile.service';\r\nimport { PortalsService } from '../../shared/services/portals.service';\r\nimport { ApiUserService } from './services/api-user.service';\r\nimport { CuberryPromotion } from '../../shared/classes/cuberry-promotion';\r\nimport { PromotionOrderedDialogComponent } from './promotion-ordered-dialog/promotion-ordered-dialog.component';\r\nimport { AdmissionService } from './services/admission.service';\r\n\r\n@Component({\r\n\tselector: 'app-profile',\r\n\ttemplateUrl: './profile.component.html',\r\n\tstyleUrls: [ './profile.component.css' ],\r\n\tproviders: [ ProfileService, PortalsService ]\r\n})\r\nexport class ProfileComponent implements OnInit {\r\n\tpublic userObject: UserModel;\r\n\tpublic portalObject;\r\n\tpublic confirmPW: '';\r\n\tpublic updatePending = false;\r\n\tpublic pwChangePending = false;\r\n\tpublic updateAboTypePending = false;\r\n\tpublic salutations = [ { id: 1, value: 'Herr' }, { id: 2, value: 'Frau' } ];\r\n\tpublic titles = PersonTitles;\r\n\tpublic promotionData;\r\n\r\n\tconstructor(\r\n\t\tprivate profileService: ProfileService,\r\n\t\tpublic snackBar: MatSnackBar,\r\n\t\tprivate portalsService: PortalsService,\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate admissionService: AdmissionService\r\n\t) {}\r\n\r\n\tasync ngOnInit() {\r\n\t\tawait this.getUser();\r\n\t\tawait this.getPortal();\r\n\t\tawait this.admissionService.checkUserHasAccount();\r\n\t\tawait this.admissionService.getTemplates();\r\n\t}\r\n\r\n\tprivate async getUser() {\r\n\t\ttry {\r\n\t\t\tconst userResult = await this.profileService.get();\r\n\t\t\t// this.userObject = new UserModel();\r\n\t\t\t// console.log(this.userObject);\r\n\t\t\tthis.userObject = new UserModel(userResult);\r\n\t\t\t// console.log(this.userObject);\r\n\t\t} catch (err) {\r\n\t\t\tconsole.log(err);\r\n\t\t}\r\n\t}\r\n\r\n\tprivate async getPortal() {\r\n\t\ttry {\r\n\t\t\tconst portalResult = await this.portalsService.getOwnPortal();\r\n\t\t\t// console.log(this.userObject);\r\n\t\t\tthis.portalObject = portalResult;\r\n\t\t\t// console.log(this.portalObject);\r\n\t\t} catch (err) {\r\n\t\t\tconsole.log(err);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async updateUser(event) {\r\n\t\tevent.preventDefault();\r\n\t\tlet snackBarText;\r\n\t\ttry {\r\n\t\t\tthis.updatePending = true;\r\n\t\t\tconst updateResult = await Promise.all([\r\n\t\t\t\tthis.profileService.update(this.userObject),\r\n\t\t\t\tthis.portalsService.update(this.portalObject)\r\n\t\t\t]);\r\n\t\t\t// this.userObject = new UserModel();\r\n\t\t\t// console.log(this.userObject);\r\n\t\t\tthis.userObject = updateResult[0];\r\n\t\t\tthis.portalObject = updateResult[1];\r\n\t\t\tthis.confirmPW = '';\r\n\t\t\tsnackBarText = 'Ihr Profil wurde erfolgreich gespeichert!';\r\n\r\n\t\t\tconst localObject = JSON.parse(localStorage.getItem(\"userobject\"));\r\n\t\t\tlocalObject.PersonTitle = this.userObject.PersonTitle;\r\n\t\t\tlocalObject.FirstName = this.userObject.FirstName;\r\n\t\t\tlocalObject.LastName = this.userObject.LastName;\r\n\t\t\tlocalStorage.setItem(\"userobject\", JSON.stringify(localObject));\r\n\r\n\t\t} catch (err) {\r\n\t\t\tsnackBarText = 'Fehler beim Speichern Ihres Profils!';\r\n\t\t\tconsole.log(err);\r\n\t\t} finally {\r\n\t\t\tthis.snackBar.open(snackBarText, null, {\r\n\t\t\t\tduration: 3000,\r\n\t\t\t\tpanelClass: 'orange-snackbar'\r\n\t\t\t\t// verticalPosition: 'top'\r\n\t\t\t});\r\n\t\t\tthis.updatePending = false;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async updatePassword(form) {\r\n\t\t// event.preventDefault();\r\n\t\t// console.log(event);\r\n\t\tlet snackBarText;\r\n\t\ttry {\r\n\t\t\tthis.pwChangePending = true;\r\n\t\t\tconst updateResult = await this.profileService.changePassword(this.userObject);\r\n\t\t\t// this.userObject = new UserModel();\r\n\t\t\t// console.log(this.userObject);\r\n\t\t\t// this.userObject = updateResult;\r\n\t\t\tthis.confirmPW = null;\r\n\t\t\tthis.userObject.PW = null;\r\n\t\t\tthis.userObject.NewPW = null;\r\n\t\t\tform.resetForm();\r\n\t\t\tsnackBarText =\r\n\t\t\t\t'Ihr Passwort wurde erfolgreich geändert!\\r\\nSie erhalten in Kürze eine Bestätigung per EMail';\r\n\t\t} catch (err) {\r\n\t\t\tconst error = err.request.response && JSON.parse(err.request.response);\r\n\t\t\tif (error[0].Error === 9) {\r\n\t\t\t\tsnackBarText = 'Fehler bei der Änderung Ihres Passworts!\\r\\nFalsche Eingabe beim aktuellen Passwort';\r\n\t\t\t} else {\r\n\t\t\t\tsnackBarText = 'Fehler bei der Änderung Ihres Passworts!';\r\n\t\t\t}\r\n\t\t} finally {\r\n\t\t\tthis.snackBar.open(snackBarText, null, {\r\n\t\t\t\tduration: 3000,\r\n\t\t\t\tpanelClass: 'orange-snackbar'\r\n\t\t\t\t// verticalPosition: 'top'\r\n\t\t\t});\r\n\t\t\tthis.pwChangePending = false;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async promotionOrdered(promotion: CuberryPromotion) {\r\n\t\tthis.updateAboTypePending = true;\r\n\t\ttry {\r\n\t\t\tconst result = await this.portalsService.updateAboType(this.portalObject, promotion);\r\n\t\t\tthis.portalObject.AboType = result.AboType;\r\n\t\t\tthis.showPromoOrderedDialog(promotion);\r\n\t\t\treturn result;\r\n\t\t} catch (err) {\r\n\t\t\tconsole.log(err);\r\n\t\t} finally {\r\n\t\t\tthis.updateAboTypePending = false;\r\n\t\t}\r\n\t\t// console.log(promotion);\r\n\t}\r\n\r\n\tpublic showPromoOrderedDialog(promoItem: CuberryPromotion) {\r\n\t\tif(this.dialog.openDialogs.some(openDialog => openDialog.componentInstance instanceof PromotionOrderedDialogComponent)){\r\n\t\t\treturn;\r\n\t\t }\r\n\t\tthis.dialog.open(PromotionOrderedDialogComponent, {\r\n\t\t\twidth: '500px',\r\n\t\t\tdata: promoItem\r\n\t\t});\r\n\t}\r\n}\r\n","
\r\n
\r\n \r\n\r\n
\r\n
\r\n Daten werden geladen...\r\n \r\n
\r\n
\r\n

Profil

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ salutation.value }}\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 Bitte geben Sie Ihren Vornamen ein.\r\n \r\n
\r\n
\r\n \r\n \r\n Bitte geben Sie Ihren Vornamen ein.\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Bitte geben Sie Ihren Ordinations/Apotheken Namen ein.\r\n \r\n
\r\n
\r\n \r\n \r\n Bitte geben Sie eine korrekte E-Mail Adresse ein.\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Die Postleitzahl darf maximal 10 Zeichen lang sein.\r\n \r\n
\r\n
\r\n \r\n \r\n Der Name der Stadt darf maximal 50 Zeichen lang sein.\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Der Name vom Ordner darf maximal 15 Zeichen lang sein, und darf keine Leer- oder Sonderzeichen\r\n enthalten\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n Als Empfänger anzeigen (In der BefundExpress Empfängerliste sichtbar)\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n Versendete Emails automatisch mit meinem Namen unterschreiben\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n Speichern\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Passwort

\r\n
\r\n Das neue Passwort muss mindestens 7 Zeichen lang sein und muss sich vom aktuellen Passwort unterscheiden.\r\n
\r\n
\r\n
\r\n \r\n \r\n Bitte geben Sie ihr aktuelles Passwort ein.\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Bitte geben Sie ein gültiges Passwort ein (mind. 7 Zeichen).\r\n \r\n
\r\n
\r\n \r\n \r\n Die Passwörter stimmen nicht überein.\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n Passwort ändern\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, OnInit, Inject } from '@angular/core';\r\nimport { MatLegacyDialogRef as MatDialogRef, MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA } from '@angular/material/legacy-dialog';\r\n\r\nimport { CuberryPromotion } from '../../../shared/classes/cuberry-promotion';\r\n\r\n@Component({\r\n selector: 'app-promotion-ordered-dialog',\r\n templateUrl: './promotion-ordered-dialog.component.html',\r\n styleUrls: ['./promotion-ordered-dialog.component.css']\r\n})\r\nexport class PromotionOrderedDialogComponent implements OnInit {\r\n public promoItem: CuberryPromotion;\r\n\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: CuberryPromotion) {\r\n // console.log(data);\r\n this.promoItem = data;\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n

{{promoItem.PromoName}}

\r\n \r\n
\r\n
\r\n {{ promoItem.PromoResponse }}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
","import { Component, OnInit, Output, EventEmitter, Input } from '@angular/core';\r\n\r\nimport { PromotionService } from '../services/promotion.service';\r\nimport { CuberryPromotion } from '../../../shared/classes/cuberry-promotion';\r\nimport { AzureServiceService } from '../../../shared/services/azure-service.service';\r\n\r\n@Component({\r\n\tselector: 'app-promotion',\r\n\ttemplateUrl: './promotion.component.html',\r\n\tstyleUrls: [ './promotion.component.css' ],\r\n\tproviders: [ PromotionService ]\r\n})\r\nexport class PromotionComponent implements OnInit {\r\n\tpublic promotionData: CuberryPromotion[];\r\n\t// public saveInProgress = false;\r\n\tconstructor(private promotionService: PromotionService, private azureClient: AzureServiceService) {}\r\n\r\n\t@Input() saveInProgress: boolean;\r\n\t@Input() activeAboType;\r\n\t@Output() ordered = new EventEmitter();\r\n\r\n\tpublic aboName: String;\r\n\tpublic aboNames = {\r\n\t\t0: 'Free',\r\n\t\t4: 'Start',\r\n\t\t1: 'Mini',\r\n\t\t2: 'Basic',\r\n\t\t3: 'Plus'\r\n\t};\r\n\r\n\tasync ngOnInit() {\r\n\t\tawait this.getPromotions();\r\n\t}\r\n\r\n\tprivate async getPromotions(): Promise {\r\n\t\ttry {\r\n\t\t\tconst aboNr = this.azureClient.getUserAboType();\r\n\t\t\tconsole.log(this.aboNames);\r\n\t\t\tconsole.log(aboNr);\r\n\t\t\tthis.aboName = this.aboNames[aboNr];\r\n\t\t\tconst result = await this.promotionService.get();\r\n\t\t\t// console.log(this.userObject);\r\n\t\t\tconsole.log('aboname', this.aboName);\r\n\t\t\tthis.promotionData = result;\r\n\t\t\treturn result;\r\n\t\t\t// console.log(this.portalObject);\r\n\t\t} catch (err) {\r\n\t\t\tconsole.log(err);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic filterUpgradePromotions(promotions = []): CuberryPromotion[] {\r\n\t\treturn promotions.filter((item) => {\r\n\t\t\tif (item.FutureAboTypeID !== 4 && this.activeAboType !== 4) {\r\n\t\t\t\treturn !this.activeAboType || item.FutureAboTypeID > this.activeAboType;\r\n\t\t\t} else {\r\n\t\t\t\treturn this.activeAboType === 4\r\n\t\t\t\t\t? !this.activeAboType || item.FutureAboTypeID + 4 > this.activeAboType\r\n\t\t\t\t\t: !this.activeAboType || item.FutureAboTypeID - 4 > this.activeAboType;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tpublic activePromoName(aboType: number) {\r\n\t\tconst activePromo = this.promotionData\r\n\t\t\t? this.promotionData.find((item) => item.FutureAboTypeID === aboType)\r\n\t\t\t: null;\r\n\t\treturn activePromo ? activePromo.PromoName : '';\r\n\t}\r\n\r\n\tpublic orderPromotion(promotionItem) {\r\n\t\tthis.ordered.emit(promotionItem);\r\n\t\t// this.saveInProgress = true;\r\n\t}\r\n}\r\n","
\r\n
\r\n

Aktives Abo: {{aboName}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{promotion.PromoName}}

\r\n {{promotion.PromoText}}\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 { Injectable } from '@angular/core';\r\nimport { AzureServiceService } from '../../../shared/services/azure-service.service';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\nexport class AdmissionService {\r\n\tconstructor(private azureService: AzureServiceService) {}\r\n\r\n\tpublic hasAccount = false;\r\n\tprivate externalServicesTable = this.azureService.client.getTable('CuberryExternalServices');\r\n\tpublic templates;\r\n\r\n\tasync authenticate(loginData) {\r\n\t\ttry {\r\n\t\t\tconst res = await this.azureService.client.invokeApi('admissionauth', {\r\n\t\t\t\tbody: loginData,\r\n\t\t\t\tmethod: 'POST'\r\n\t\t\t});\r\n\r\n\t\t\tconsole.log('Success', res.message);\r\n\t\t\tthis.hasAccount = true;\r\n\t\t} catch (error) {\r\n\t\t\tconsole.log('Error', error.message);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic getAccount() {\r\n\t\treturn this.hasAccount;\r\n\t}\r\n\r\n\tasync checkUserHasAccount() {\r\n\t\tconst res = await this.externalServicesTable.read({\r\n\t\t\tCheckActive: true,\r\n\t\t\tServiceID: 401\r\n\t\t});\r\n\r\n\t\tthis.hasAccount = res.hasEntry;\r\n\r\n\t\treturn this.hasAccount;\r\n\t}\r\n\r\n\tasync removeAccount() {\r\n\t\tconst res = await this.azureService.client.invokeApi('admissionauth', {\r\n\t\t\tmethod: 'DELETE'\r\n\t\t});\r\n\r\n\t\tthis.hasAccount = false;\r\n\t}\r\n\r\n\tasync read() {\r\n\t\ttry {\r\n\t\t\tconst res = await this.azureService.client.invokeApi('admission', {\r\n\t\t\t\tparameters: {\r\n\t\t\t\t\trequestType: 'templates'\r\n\t\t\t\t},\r\n\t\t\t\tmethod: 'GET'\r\n\t\t\t});\r\n\r\n\t\t\tthis.templates = res.result;\r\n\t\t} catch (e) {\r\n\t\t\tconsole.log('Error', e);\r\n\t\t}\r\n\t}\r\n\r\n\tasync createSurveyFromTemplate(options) {\r\n\t\tconsole.log('options:', options);\r\n\t\ttry {\r\n\t\t\tconst res = await this.azureService.client.invokeApi('admission', {\r\n\t\t\t\t// parameters: {},\r\n\t\t\t\tbody: options,\r\n\t\t\t\tmethod: 'POST'\r\n\t\t\t});\r\n\r\n\t\t\tconsole.log('success', res);\r\n\t\t} catch (error) {\r\n\t\t\tconsole.log('error', error);\r\n\t\t}\r\n\t}\r\n\r\n\tasync getSurveys(options) {\r\n\t\tconst res = await this.azureService.client.invokeApi('admission', {\r\n\t\t\tparameters: options,\r\n\t\t\tmethod: 'GET'\r\n\t\t});\r\n\t\tconsole.log(res);\r\n\t\treturn res;\r\n\t}\r\n\r\n\tpublic getTemplates() {\r\n\t\treturn this.templates;\r\n\t}\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AzureServiceService } from '../../../shared/services/azure-service.service';\r\n\r\n@Injectable()\r\nexport class ApiUserService {\r\n\tconstructor(private azureClient: AzureServiceService) {}\r\n\tprivate apiUserTable = this.azureClient.client.getTable('XSecUserApi');\r\n\r\n\tpublic async get() {\r\n\t\tconst userResult = await this.apiUserTable.read();\r\n\t\treturn userResult;\r\n\t}\r\n\r\n\tpublic async insert() {\r\n\t\tconst userResult = await this.apiUserTable.insert({});\r\n\t\treturn userResult;\r\n\t}\r\n\r\n\tpublic async changePassword(userId: string) {\r\n\t\tconst result = await this.apiUserTable.update({ id: userId });\r\n\t\treturn result;\r\n\t}\r\n\r\n\tpublic async delete(userId: string) {\r\n\t\tconst result = await this.apiUserTable.del({ id: userId });\r\n\t\treturn result;\r\n\t}\r\n\r\n\tpublic async deleteByAPIID(apiid: number) {\r\n\t\tconst result = await this.apiUserTable.del({ id: apiid }, { type: 'deleteByAPIID' });\r\n\t\treturn result;\r\n\t}\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { AzureServiceService } from \"../../../shared/services/azure-service.service\";\r\n@Injectable()\r\nexport class ProfileService {\r\n constructor(private azureClient: AzureServiceService) {}\r\n private userTable = this.azureClient.client.getTable(\"XSecUser\");\r\n\r\n public async get() {\r\n const userResult = await this.userTable.read();\r\n return userResult;\r\n }\r\n\r\n public async update(userData) {\r\n const updateResult = await this.userTable.update(userData);\r\n return updateResult;\r\n }\r\n\r\n public async changePassword(userData) {\r\n const result = await this.userTable.update({\r\n id: userData.id,\r\n PW: userData.PW,\r\n NewPW: userData.NewPW\r\n });\r\n return result;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\nimport { AzureServiceService } from '../../../shared/services/azure-service.service';\r\nimport { CuberryPromotion } from '../../../shared/classes/cuberry-promotion';\r\n\r\n@Injectable()\r\nexport class PromotionService {\r\n\r\n constructor(private azureClient: AzureServiceService) { }\r\n private table = this.azureClient.client.getTable('CuberryPromotion');\r\n\r\n public async get(): Promise {\r\n const result = await this.table.read();\r\n return result as CuberryPromotion[];\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ShortcodeService } from '../shared/services/shortcode.service';\r\nimport { FavoritesService } from '../shared/services/favorites.service';\r\nimport { AdmissionService } from './profile/services/admission.service';\r\nimport { AdmissionComponent } from './admission/admission.component';\r\n\r\n@Component({\r\n\tselector: 'app-protected',\r\n\ttemplate: `\r\n \r\n `\r\n\t// styleUrls: ['./protected.component.css']\r\n})\r\nexport class ProtectedComponent implements OnInit {\r\n\tconstructor(\r\n\t\tprivate shortcodeService: ShortcodeService,\r\n\t\tprivate favoritesService: FavoritesService,\r\n\t\tprivate admissionService: AdmissionService\r\n\t) // private admissionComponent: AdmissionComponent\r\n\t{\r\n\t}\r\n\r\n\tasync ngOnInit() {\r\n\t\tawait this.shortcodeService.read();\r\n\t\tawait this.favoritesService.read();\r\n\t\tawait this.admissionService.checkUserHasAccount();\r\n\t\tif (this.admissionService.getAccount()) {\r\n\t\t\tawait this.admissionService.read();\r\n\t\t\t// this.admissionComponent.initData();\r\n\t\t}\r\n\t}\r\n}\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MatLegacyDialogRef as MatDialogRef, MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA } from '@angular/material/legacy-dialog';\r\n\r\n@Component({\r\n\tselector: 'app-admission-log-detail',\r\n\ttemplateUrl: './admission-log-detail.component.html',\r\n\tstyleUrls: [ './admission-log-detail.component.css' ]\r\n})\r\nexport class AdmissionLogDetailComponent implements OnInit {\r\n\tpublic questions;\r\n\tpublic results;\r\n\tpublic answered = false;\r\n\tpublic answeredQuestions;\r\n\r\n\tconstructor(\r\n\t\tpublic dialogRef: MatDialogRef,\r\n\t\t@Inject(MAT_DIALOG_DATA) public data: any\r\n\t) {\r\n\t\tthis.setData();\r\n\t}\r\n\r\n\tngOnInit() {}\r\n\r\n\tprivate setData() {\r\n\t\tif (this.data) {\r\n\t\t\tconst id = Object.keys(this.data.ResultsJSON)[0];\r\n\t\t\tthis.answered = true;\r\n\t\t\tthis.results = this.data.ResultsJSON[id].results;\r\n\t\t\tthis.questions = this.data.QuestionsJSON;\r\n\t\t\tthis.createTemplate();\r\n\t\t} else {\r\n\t\t\tconsole.log('Not answered yet');\r\n\t\t}\r\n\t}\r\n\r\n\tprivate createTemplate() {\r\n\t\tconst allQuestions = [];\r\n\t\tthis.questions.forEach((element) => {\r\n\t\t\telement.questions.forEach((item) => {\r\n\t\t\t\tallQuestions.push({ label: item.label, answer: this.results[element.pageNo][item.key] });\r\n\t\t\t});\r\n\t\t});\r\n\t\tallQuestions.forEach((item) => {\r\n\t\t\tif (typeof item.answer === 'boolean') {\r\n\t\t\t\titem.answer ? (item.answer = 'Ja') : (item.answer = 'Nein');\r\n\t\t\t}\r\n\t\t});\r\n\t\tthis.answeredQuestions = allQuestions;\r\n\t}\r\n}\r\n","\r\n \r\n

{{ question.label }}

\r\n

\r\n {{ question.answer }} \r\n

\r\n
\r\n
\r\n\r\n
\r\n

Diese Umfrage wurde noch nicht beantwortet!

\r\n
\r\n","import { Component, OnInit, Inject, EventEmitter } from '@angular/core';\r\nimport {\r\n MatLegacyDialogRef as MatDialogRef,\r\n MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA\r\n} from '@angular/material/legacy-dialog';\r\nimport { Url } from 'url';\r\nimport { UploadComponent } from '../../upload/upload.component';\r\nimport { Router } from '@angular/router';\r\nimport { DownloadService } from '../../../shared/services/download.service';\r\n\r\n@Component({\r\n selector: 'app-report-log-detail',\r\n templateUrl: './report-log-detail.component.html',\r\n styleUrls: ['./report-log-detail.component.css']\r\n})\r\nexport class ReportLogDetailComponent implements OnInit {\r\n public downloadData;\r\n public downloadLinks: Url[];\r\n public onSubmitReason = new EventEmitter();\r\n // constructor(private downloadService: DownloadService) { }\r\n\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: any,\r\n public uploadComponent: UploadComponent,\r\n public router: Router,\r\n private downloadService: DownloadService\r\n ) {\r\n // console.log(data);\r\n // console.log(data.documentType);\r\n this.downloadData = data;\r\n this.downloadLinks = data.downloadLinks;\r\n // console.log(this.downloadData);\r\n }\r\n\r\n openDownloadLink(url) {\r\n window.open(url, '_blank');\r\n }\r\n\r\n ngOnInit() {}\r\n\r\n sendAgain() {\r\n const uploadData = this.setUploadData();\r\n this.router.navigate(['/upload'], { state: { data: uploadData } });\r\n this.dialogRef.close();\r\n }\r\n\r\n async update() {\r\n // console.log(this.downloadData);\r\n const res = await this.downloadService.update(this.downloadData.idx, this.downloadData.RecipientComments);\r\n this.onSubmitReason.emit(res);\r\n }\r\n\r\n async setSeen(data) {\r\n if (data.StatusID !== 101 && !data.RecipientName) {\r\n await this.downloadService.updateDownloadStatusPortal(data.idx);\r\n console.log('updated status');\r\n }\r\n }\r\n\r\n setUploadData() {\r\n // console.log(this.downloadData);\r\n let files;\r\n files = this.downloadData.fileNames?.map((fileName, index) => {\r\n return { url: this.downloadLinks[index], fileName };\r\n });\r\n if (!this.downloadData.fileNames) {\r\n const fileEnding = this.downloadData?.DocumentPathSender?.split('/')?.slice(-1)[0]?.split('.')[1] || 'pdf';\r\n console.log({ fileEnding });\r\n files = [\r\n {\r\n url: this.downloadLinks[0],\r\n fileName: `temp-${Date.now()}.${fileEnding}`\r\n }\r\n ];\r\n }\r\n return {\r\n idx: this.downloadData.idx,\r\n files,\r\n patientFirstName: this.downloadData.AffectedPersonFirstName,\r\n patientLastName: this.downloadData.AffectedPersonLastName,\r\n patientTitle: this.downloadData.AffectedPersonTitle,\r\n recipientEmail: this.downloadData.RecipientEMail,\r\n senderComments: this.downloadData.SenderCommentsSender,\r\n recipientName: this.downloadData.RecipientName,\r\n contactID: this.downloadData.CRContactID\r\n };\r\n }\r\n}\r\n","
\r\n

Dokument öffnen

\r\n
\r\n
\r\n \r\n {{ downloadData.SenderPortalName }}\r\n
\r\n
\r\n \r\n {{ downloadData.RecipientName }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ downloadData?.CreatedOn | date: 'dd.MM.yyyy HH:mm' }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ downloadData.AffectedPersonTitle || '' }} \r\n {{ downloadData.AffectedPersonFirstName || '' }} \r\n {{ downloadData.AffectedPersonLastName || '' }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ downloadData.SenderCommentsSender }}\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 downloadData.fileNames\r\n ? downloadData.fileNames[index]\r\n : downloadLinks.length > 1\r\n ? 'Dokument ' + (index + 1)\r\n : ''\r\n }}\r\n Öffnen\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, OnInit, ViewChild } from '@angular/core';\r\nimport { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';\r\nimport { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';\r\nimport { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatLegacyTableDataSource as MatTableDataSource } from '@angular/material/legacy-table';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport * as moment from 'moment';\r\nimport { Observable } from 'rxjs';\r\nimport { DocumentDownload } from '../../shared/classes/document-download';\r\nimport { MessageTypes } from '../../shared/collections/message-types';\r\nimport { PortalTypes } from '../../shared/collections/portal-types';\r\nimport { ApplicationStateService, APP_SCREEN_SIZES } from '../../shared/services/application-state.service';\r\nimport { AzureServiceService } from '../../shared/services/azure-service.service';\r\nimport { DownloadService } from '../../shared/services/download.service';\r\nimport { FavoritesService } from '../../shared/services/favorites.service';\r\nimport { ReportLogDetailComponent } from './report-log-detail/report-log-detail.component';\r\n\r\n@Component({\r\n selector: 'app-report-log',\r\n templateUrl: './report-log.component.html',\r\n styleUrls: ['./report-log.component.css']\r\n})\r\nexport class ReportLogComponent implements OnInit, AfterViewInit {\r\n private initData: DocumentDownload[] = [];\r\n public dataSource = new MatTableDataSource(this.initData);\r\n public dataSourceReceived = new MatTableDataSource(this.initData);\r\n // public dataSourceAdmission = new MatTableDataSource(this.initData);\r\n public dataSourceNoFilter = { sent: null, received: null };\r\n public displayRequests = JSON.parse(localStorage.getItem('userobject')).PortalTypeID === 99;\r\n screenSize$: Observable;\r\n APP_SCREEN_SIZES = APP_SCREEN_SIZES;\r\n\r\n // private downloadTable;\r\n public loading = false;\r\n public displayedColumns = [\r\n 'MessageTypeID',\r\n 'CreatedOn',\r\n 'RecipientName',\r\n 'AffectedPersonTitle',\r\n 'AffectedPersonFirstName',\r\n 'AffectedPersonLastName',\r\n 'InternalNote',\r\n 'TextStatus',\r\n 'DownloadStatus'\r\n ];\r\n public displayedColumnsMobile = [\r\n 'MessageTypeID',\r\n 'CreatedOn',\r\n 'RecipientName',\r\n 'AffectedPersonTitle',\r\n 'AffectedPersonFirstName',\r\n 'AffectedPersonLastName',\r\n 'InternalNote',\r\n 'TextStatus'\r\n ];\r\n public displayedColumnsReceived = [\r\n 'CreatedOn',\r\n 'SenderPortalName',\r\n 'AffectedPersonTitle',\r\n 'AffectedPersonFirstName',\r\n 'AffectedPersonLastName',\r\n 'Status'\r\n ];\r\n // public displayedColumnsAdmission = [\r\n // 'MessageTypeID',\r\n // 'CreatedOn',\r\n // 'TemplateName',\r\n // 'AffectedPersonTitle',\r\n // 'AffectedPersonFirstName',\r\n // 'AffectedPersonLastName',\r\n // 'Status'\r\n // ];\r\n\r\n public filterOptions = [\r\n { name: 'Alle Ergebnisse', value: 'all' },\r\n { name: 'Jahr', value: 'year' },\r\n { name: 'Monat', value: 'month' },\r\n { name: 'Woche', value: 'week' },\r\n { name: 'Heute', value: 'today' }\r\n ];\r\n\r\n public messageTypes = MessageTypes;\r\n public portalTypes = PortalTypes;\r\n\r\n private tableClickLock = false;\r\n public documentType = 1;\r\n public dateFilter = 'today';\r\n private endDate: Date;\r\n\r\n filterForm: UntypedFormGroup;\r\n\r\n public cachedEntries: any[] = [];\r\n\r\n @ViewChild('table', { read: MatSort, static: true })\r\n sort: MatSort;\r\n @ViewChild('tableReceived', { read: MatSort, static: true })\r\n sortReceived: MatSort;\r\n // @ViewChild('tableAdmission', { read: MatSort, static: true })\r\n // sortAdmission: MatSort;\r\n\r\n constructor(\r\n private azureClient: AzureServiceService,\r\n private downloadService: DownloadService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private dialog: MatDialog,\r\n public snackBar: MatSnackBar,\r\n // private admissionService: AdmissionService,\r\n private favoritesService: FavoritesService,\r\n private appStateService: ApplicationStateService,\r\n private formBuilder: UntypedFormBuilder\r\n ) {\r\n // this.downloadTable = azureClient.client.getTable('CCPatientDocumentDownload');\r\n }\r\n\r\n async ngOnInit() {\r\n this.initFilterForm();\r\n this.screenSize$ = this.appStateService.screenSize$;\r\n await this.updateDateFilter(this.filterForm.value);\r\n let docIdx: any = this.route.snapshot.paramMap.get('idx');\r\n docIdx = docIdx ? parseInt(docIdx, 10) : null;\r\n if (docIdx) {\r\n const downloadElement = this.dataSourceReceived.data.slice().find((item) => item.idx === docIdx);\r\n downloadElement\r\n ? ((this.documentType = 2), this.selectDownloadEntry(downloadElement))\r\n : (this.router.navigate(['reportLog']),\r\n this.snackBar.open('Fehler beim Laden des Befundes', null, {\r\n duration: 3000,\r\n panelClass: 'orange-snackbar'\r\n // verticalPosition: 'top'\r\n }));\r\n }\r\n await this.setSmsStatus();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.dataSource.sort = this.sort;\r\n this.dataSourceReceived.sort = this.sortReceived;\r\n // this.dataSourceAdmission.sort = this.sortAdmission;\r\n }\r\n\r\n async setSmsStatus() {\r\n this.dataSource?.data.reduce((prev, e) => {\r\n return prev\r\n .then(() => {\r\n return new Promise((resolve) => setTimeout(resolve, 200));\r\n })\r\n .then(() => {\r\n if (e.SMSID && e.SMSStatusID !== 1) {\r\n return this.azureClient.checkSMS(e.SMSID).then((smsStatusID) => {\r\n e.SMSStatusID = smsStatusID;\r\n });\r\n }\r\n return Promise.resolve();\r\n });\r\n }, Promise.resolve());\r\n\r\n // this.dataSource?.data.forEach(async (e) => {\r\n // if (e.SMSID) {\r\n // if (e.SMSStatusID !== 1) {\r\n // e.SMSStatusID = await this.azureClient.checkSMS(e.SMSID);\r\n // }\r\n // }\r\n // });\r\n }\r\n\r\n initFilterForm() {\r\n this.filterForm = this.formBuilder.group({\r\n fromDate: [moment.utc().startOf('day')],\r\n toDate: [moment.utc().endOf('day')]\r\n });\r\n }\r\n\r\n applyFilterToSent(filterValue: string) {\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n }\r\n\r\n applyFilterToReceived(filterValue: string) {\r\n this.dataSourceReceived.filter = filterValue.trim().toLowerCase();\r\n }\r\n\r\n // applyFilterToAdmission(filterValue: string) {\r\n // this.dataSourceAdmission.filter = filterValue.trim().toLowerCase();\r\n // }\r\n\r\n public async readData(readParams?: any) {\r\n try {\r\n this.loading = true;\r\n const result = await this.downloadService.read(readParams);\r\n\r\n // const visibleSent = result.Sent.filter((element) => element.CreatedOn > this.endDate);\r\n const sentWithNames = (result.Sent || []).map((item) => {\r\n item.RecipientName = item.RecipientEMail || item.RecipientPortalName;\r\n return item;\r\n });\r\n this.dataSource.data = sentWithNames;\r\n // console.log(this.dataSourceNoFilter);\r\n //console.log('Sent: ', this.dataSource.data);\r\n // const visibleReceived = result.Received.filter((element) => element.CreatedOn > this.endDate);\r\n // this.dataSourceNoFilter.received = result.Received;\r\n this.dataSourceReceived.data = result.Received;\r\n // const resultAdmission = await this.admissionService.getSurveys({});\r\n\r\n // resultAdmission.result.forEach((item) => {\r\n // item.QuestionsJSON = JSON.parse(item.QuestionsJSON);\r\n // item.ResultsJSON = JSON.parse(item.ResultsJSON);\r\n // });\r\n // this.dataSourceAdmission = resultAdmission.result;\r\n // console.log('Admission Results:', resultAdmission.result);\r\n await this.setSmsStatus();\r\n return result;\r\n } catch (err) {\r\n console.log(err);\r\n } finally {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n public async selectDownloadEntry(data) {\r\n if (this.tableClickLock) {\r\n return;\r\n }\r\n this.tableClickLock = true;\r\n console.log(data);\r\n try {\r\n // if (!this.checkDownloadMaxAge(data)) {\r\n // return this.showSnackbar('Dieses Dokument ist älter als eine Woche');\r\n // }\r\n const cachedEntry = this.cachedEntries.find((item) => item.idx === data.idx);\r\n if (cachedEntry) {\r\n const refresh = moment.duration(moment().diff(cachedEntry.cachedTS)).asMinutes() > 4;\r\n if (!refresh) {\r\n this.showDetailDialog(cachedEntry);\r\n return cachedEntry;\r\n } else {\r\n this.cachedEntries = this.cachedEntries.filter((item) => item.idx !== data.idx);\r\n }\r\n }\r\n const result = await this.downloadService.downloadDocumentByIDx(data);\r\n if (!result.fileUrls) {\r\n throw new Error('no fileUrl');\r\n }\r\n const entryData = {\r\n downloadLinks: result.fileUrls,\r\n patientInfo: result.patientInfo,\r\n documentType: this.documentType,\r\n fileNames: result.fileNames ? result.fileNames.split(',') : null,\r\n cachedTS: new Date(),\r\n ...data\r\n };\r\n this.cachedEntries = [...this.cachedEntries, entryData];\r\n this.showDetailDialog(entryData);\r\n return entryData;\r\n } catch (err) {\r\n console.log(err);\r\n this.showSnackbar('Fehler beim Laden des Befundes');\r\n // this.goBackToList();\r\n } finally {\r\n this.tableClickLock = false;\r\n }\r\n // this.router.navigate([`reportLog/${data.idx}`]);\r\n }\r\n\r\n public checkDownloadMaxAge(downloadEntry) {\r\n const maxAge = (() => {\r\n const tempDate = new Date();\r\n tempDate.setDate(tempDate.getDate() - 8);\r\n return tempDate;\r\n })();\r\n return downloadEntry.CreatedOn > maxAge;\r\n }\r\n\r\n public showDetailDialog(dialogData) {\r\n console.log(dialogData);\r\n if (\r\n this.dialog.openDialogs.some((openDialog) => openDialog.componentInstance instanceof ReportLogDetailComponent)\r\n ) {\r\n return;\r\n }\r\n const dialogRef = this.dialog.open(ReportLogDetailComponent, {\r\n width: '500px',\r\n data: dialogData\r\n });\r\n\r\n const subscribeDialog = dialogRef.componentInstance.onSubmitReason.subscribe((data) => {\r\n const { id, RecipientComments: recipientComments } = data;\r\n this.setRecipientComments(id, recipientComments);\r\n });\r\n dialogRef.afterClosed().subscribe((result) => {\r\n subscribeDialog.unsubscribe();\r\n });\r\n }\r\n\r\n private setRecipientComments(id, recipientComments) {\r\n console.log('setting comments: ', id, recipientComments);\r\n this.dataSourceReceived.data = this.dataSourceReceived.data.map((item) => {\r\n if (item.idx == id) {\r\n item.RecipientComments = recipientComments;\r\n console.log(item);\r\n }\r\n return item;\r\n });\r\n console.log(this.dataSourceReceived.data);\r\n }\r\n\r\n private showSnackbar(text: string) {\r\n this.snackBar.open(text, null, {\r\n duration: 3000,\r\n panelClass: 'orange-snackbar'\r\n // verticalPosition: 'top'\r\n });\r\n // dialogRef.afterClosed().subscribe(result => {\r\n // this.router.navigate(['reportLog']);\r\n // });\r\n }\r\n\r\n public getFavoriteName(id, field) {\r\n if (this.favoritesService.favoriteMap) {\r\n const selected = this.favoritesService.favoriteMap[id];\r\n\r\n return selected && selected[field] ? selected[field] : null;\r\n }\r\n }\r\n\r\n // public selectSurvey(row) {\r\n // if (row.StatusID === 2) {\r\n // if (\r\n // this.dialog.openDialogs.some((openDialog) => openDialog.componentInstance instanceof ReportLogDetailComponent)\r\n // ) {\r\n // return;\r\n // }\r\n // const dialogRef = this.dialog.open(AdmissionLogDetailComponent, {\r\n // width: 'auto',\r\n // minWidth: '500px',\r\n // height: 'auto',\r\n // maxHeight: '900px',\r\n // data: row\r\n // });\r\n // } else {\r\n // if (\r\n // this.dialog.openDialogs.some(\r\n // (openDialog) => openDialog.componentInstance instanceof AdmissionLogDetailComponent\r\n // )\r\n // ) {\r\n // return;\r\n // }\r\n // const dialogRef = this.dialog.open(AdmissionLogDetailComponent, {\r\n // width: '500px'\r\n // });\r\n // }\r\n // }\r\n\r\n public async updateDateFilter({ fromDate, toDate }: { fromDate: moment.Moment; toDate: moment.Moment }) {\r\n // console.log('updateFilter: ', this.dateFilter);\r\n await this.readData({\r\n fromDate: moment(fromDate).toISOString(),\r\n toDate: moment(toDate).toISOString()\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n Gesendet\r\n Empfangen\r\n \r\n Anfragen\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 \r\n \r\n \r\n \r\n\r\n \r\n Empfänger \r\n \r\n {{ element.RecipientName }}\r\n \r\n \r\n\r\n \r\n Gesendet am \r\n \r\n {{ element.CreatedOn | date: 'dd.MM.yyyy HH:mm' }}\r\n {{ element.CreatedBy && element.CreatedBy.length === 2 ? '(' + element.CreatedBy + ')' : '' }}\r\n \r\n \r\n\r\n \r\n Titel der/des Betroffenen \r\n \r\n {{ element.AffectedPersonTitle || '' }}\r\n \r\n \r\n\r\n \r\n Vorname der/des Betroffenen \r\n \r\n {{ element.AffectedPersonFirstName || '' }}\r\n \r\n \r\n\r\n \r\n Nachname der/des Betroffenen \r\n \r\n {{ element.AffectedPersonLastName || '' }}\r\n \r\n \r\n\r\n \r\n\r\n \r\n Interne Hinweise \r\n \r\n {{\r\n element.InternalNote?.length > 25\r\n ? element.InternalNote.substring(0, 25) + '...'\r\n : element.InternalNote\r\n }}\r\n \r\n \r\n\r\n \r\n SMS Status \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n Download Status \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 Empfangen am \r\n \r\n {{ element.CreatedOn | date: 'dd.MM.yyyy HH:mm' }}\r\n \r\n \r\n\r\n \r\n Sender \r\n \r\n {{ element.SenderPortalName }}\r\n \r\n \r\n\r\n \r\n Titel der/des Betroffenen \r\n \r\n {{ element.AffectedPersonTitle || '' }}\r\n \r\n \r\n\r\n \r\n Vorname der/des Betroffenen \r\n \r\n {{ element.AffectedPersonFirstName || '' }}\r\n \r\n \r\n\r\n \r\n Nachname der/des Betroffenen \r\n \r\n {{ element.AffectedPersonLastName || '' }}\r\n \r\n \r\n\r\n \r\n Status \r\n \r\n {{ element.RecipientComments || '' }}\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 { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from '../../../../environments/environment';\r\nimport { PatientRequest } from '../../../shared/classes/patient-request';\r\nimport { AzureServiceService } from '../../../shared/services/azure-service.service';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RequestsClientService {\r\n requestsTable;\r\n\r\n constructor(private azureService: AzureServiceService, private http: HttpClient) {\r\n this.requestsTable = azureService.client.getTable('CCPatientRequest');\r\n }\r\n\r\n readRequests(params: any = {}): Observable {\r\n return this.http.get(`${environment.azureAppURL}/tables/CCPatientRequest`, {\r\n params,\r\n headers: {\r\n 'ZUMO-API-VERSION': '2.0.0',\r\n 'X-ZUMO-AUTH': this.azureService.client.currentUser.mobileServiceAuthenticationToken\r\n }\r\n });\r\n }\r\n\r\n async deleteRequest(request) {\r\n console.log('req to delete: ', request);\r\n const params = { id: request.id };\r\n return this.http\r\n .delete(`${environment.azureAppURL}/tables/CCPatientRequest`, {\r\n params,\r\n headers: {\r\n 'ZUMO-API-VERSION': '2.0.0',\r\n 'X-ZUMO-AUTH': this.azureService.client.currentUser.mobileServiceAuthenticationToken\r\n }\r\n })\r\n .toPromise();\r\n }\r\n\r\n async sendRequest(patientID: number) {\r\n const request = new PatientRequest();\r\n request.PatientID = patientID;\r\n return await Promise.resolve(this.requestsTable.insert(request));\r\n }\r\n\r\n sendRequestCollection(requests: PatientRequest[]): Observable {\r\n return this.http.post(`${environment.azureAppURL}/api/sendpatientrequests`, requests, {\r\n headers: {\r\n 'ZUMO-API-VERSION': '2.0.0',\r\n 'X-ZUMO-AUTH': this.azureService.client.currentUser.mobileServiceAuthenticationToken\r\n }\r\n });\r\n }\r\n\r\n async update(request) {\r\n return await Promise.resolve(this.requestsTable.update(request));\r\n }\r\n\r\n async getPdf(parameters, templateName) {\r\n const formData = new FormData();\r\n formData.append('parameters', parameters);\r\n return await Promise.resolve(\r\n this.http\r\n .post(\r\n `${environment.azureAppURL}/api/pdfengine`,\r\n { parameters, templateName },\r\n {\r\n headers: {\r\n 'ZUMO-API-VERSION': '2.0.0',\r\n 'X-ZUMO-AUTH': this.azureService.client.currentUser.mobileServiceAuthenticationToken\r\n }\r\n }\r\n )\r\n .toPromise()\r\n );\r\n }\r\n}\r\n","import { Component, OnInit, Output, EventEmitter, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-request-button',\r\n templateUrl: './request-button.component.html',\r\n styleUrls: ['./request-button.component.css']\r\n})\r\nexport class RequestButtonComponent implements OnInit {\r\n @Output() sendRequest = new EventEmitter();\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n sendPatientRequest() {\r\n this.sendRequest.emit();\r\n }\r\n}\r\n","\r\n","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { PatientRequest } from '../../../../shared/classes/patient-request';\r\n\r\n@Component({\r\n selector: 'app-requests-contact-list',\r\n templateUrl: './requests-contact-list.component.html',\r\n styleUrls: ['./requests-contact-list.component.css']\r\n})\r\nexport class RequestsContactListComponent implements OnInit {\r\n @Input() requests: PatientRequest[];\r\n @Output() itemClicked = new EventEmitter();\r\n @ViewChild('table', { read: MatSort, static: true })\r\n sort: MatSort;\r\n public hasFetched = false;\r\n // public dataSource: MatTableDataSource; // = new MatTableDataSource(this.requests);\r\n public status = ['Offen', 'In Bearbeitung', 'Resultat Erhalten', 'Versendet'];\r\n public resultMap = {\r\n '1': 'pos',\r\n '2': 'neg',\r\n '3': 'verzögert',\r\n '4': 'zu wiederholen'\r\n };\r\n\r\n displayedColumns = ['reqdate', 'resdate', 'status', 'type', 'result'];\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n // console.log(this.requests)\r\n // this.dataSource = new MatTableDataSource(this.requests);\r\n // this.dataSource.sort = this.sort;\r\n }\r\n\r\n ngOnChanges() {\r\n // if (!this.dataSource.data) {\r\n // this.dataSource = new MatTableDataSource(this.requests);\r\n // } else {\r\n // const today = new Date();\r\n // const endDate = new Date();\r\n // console.log(this.filter);\r\n // if (this.filter === 'year') {\r\n // endDate.setDate(today.getDate() - 365);\r\n // } else if (this.filter === 'month') {\r\n // endDate.setDate(today.getDate() - 31);\r\n // } else if (this.filter === 'week') {\r\n // endDate.setDate(today.getDate() - 7);\r\n // } else if (this.filter === 'today') {\r\n // endDate.setDate(today.getDate());\r\n // endDate.setHours(0, 0, 0, 0);\r\n // }\r\n // this.dataSource.data = this.requests?.filter((item) => new Date(item.CreatedOn) >= endDate);\r\n // console.log(this.requests);\r\n // console.log(this.dataSource.data);\r\n // }\r\n }\r\n\r\n ngAfterViewInit() {}\r\n}\r\n","
0\">\r\n \r\n \r\n Datum der Anfrage\r\n {{ entry.RequestDate | date: 'dd.MM.yyyy' }}\r\n \r\n\r\n \r\n Datum des Ergebnisses\r\n {{ entry.ResultDate | date: 'dd.MM.yyyy' }}\r\n \r\n\r\n \r\n Status\r\n \r\n {{ status[entry.StatusID] }}\r\n \r\n \r\n\r\n \r\n Testart\r\n \r\n {{ entry?.RequestResultsJSON?.testTemplateName }}\r\n \r\n \r\n\r\n \r\n Ergebnis\r\n \r\n {{ entry?.RequestResultsJSON?.testResult ? resultMap[entry.RequestResultsJSON.testResult] : '' }}\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
Keine Anfragen vorhanden
\r\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatLegacyDialog as MatDialog, MatLegacyDialogRef as MatDialogRef, MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA } from '@angular/material/legacy-dialog';\r\nimport { MatStepper } from '@angular/material/stepper';\r\nimport { Router } from '@angular/router';\r\nimport { PatientRequest } from 'src/app/shared/classes/patient-request';\r\n\r\n@Component({\r\n selector: 'app-requests-dialog',\r\n templateUrl: './requests-dialog.component.html',\r\n styleUrls: ['./requests-dialog.component.css']\r\n})\r\nexport class RequestsDialogComponent implements OnInit {\r\n @ViewChild('stepper') stepper: MatStepper;\r\n constructor(\r\n @Inject(MAT_DIALOG_DATA)\r\n public data: {\r\n request: PatientRequest;\r\n getPdf: (request: PatientRequest, sendToMA: boolean) => Promise;\r\n updateRequestItem: (request: Partial) => Promise;\r\n deleteRequest: (requestData: PatientRequest) => Promise;\r\n },\r\n private dialogRef: MatDialogRef,\r\n private router: Router,\r\n private dialog: MatDialog\r\n ) {}\r\n testTemplateName: 'LabPCRTest' | 'LabAntibodyTest' = 'LabPCRTest';\r\n testResult: 1 | 2 | 3 | 4;\r\n requestNo: number;\r\n loading = false;\r\n errorMessage: string;\r\n accountLinked = false;\r\n showMAButton = this.data.request.CreatedBy === 'MeineAkte' ? true : false;\r\n ngOnInit(): void {\r\n // console.log(this.data);\r\n const request = this.data.request;\r\n this.requestNo = request.RequestNo;\r\n this.testTemplateName = request.RequestResultsJSON?.testTemplateName || 'LabPCRTest';\r\n this.testResult = request.RequestResultsJSON?.testResult;\r\n if (request.RequestExternalID) {\r\n this.accountLinked = true;\r\n }\r\n // if (request.StatusID >= 2) {\r\n\r\n // }\r\n }\r\n ngAfterViewInit() {\r\n // this.stepper._getIndicatorType = () => 'number';\r\n // this.stepper.selectedIndex = null;\r\n // setTimeout(() => {\r\n // this.stepper.selectedIndex = this.data.request.StatusID;\r\n // },1);\r\n }\r\n\r\n async updateStatus(statusID) {\r\n const requestItem = { ...this.data.request };\r\n requestItem.StatusID = statusID;\r\n requestItem.RequestNo = this.requestNo;\r\n if (!(requestItem.RequestNo ? `${requestItem.RequestNo}` : '').match(/\\w{0,50}/)) {\r\n return;\r\n }\r\n if (statusID === 0 && this.data.request.RequestResultsJSON) {\r\n requestItem.RequestResultsJSON = null;\r\n }\r\n\r\n if (statusID === 1) {\r\n // requestItem.RequestResultsJSON = null;\r\n requestItem.RequestResultsJSON = { testResult: null, testTemplateName: this.testTemplateName };\r\n requestItem.ResultDate = null;\r\n }\r\n if (statusID === 2) {\r\n requestItem.RequestResultsJSON = { testResult: this.testResult, testTemplateName: this.testTemplateName };\r\n requestItem.ResultDate = new Date();\r\n }\r\n const res = await this.data.updateRequestItem({\r\n id: requestItem.id,\r\n RequestResultsJSON: requestItem.RequestResultsJSON,\r\n ResultDate: requestItem.RequestDate,\r\n RequestNo: requestItem.RequestNo,\r\n StatusID: requestItem.StatusID\r\n });\r\n this.dialogRef.close();\r\n //this.dialogRef.close(res); Case\r\n }\r\n\r\n async delete() {\r\n try {\r\n const deleteRes = await this.data.deleteRequest(this.data.request);\r\n this.dialogRef.close();\r\n } catch (error) {\r\n this.errorMessage = error;\r\n }\r\n }\r\n\r\n async send(destination: 'MeineAkte' | 'BefundExpress') {\r\n try {\r\n if (destination === 'BefundExpress') {\r\n const res: any = await this.generatePdf(false).catch((err) => {\r\n throw new Error('Fehler beim Erstellen des Ergebnis - PDFs!');\r\n });\r\n const uploadData = this.setUploadData(res.sasUrl);\r\n this.router.navigate(['/upload'], { state: { data: uploadData } });\r\n // this.dialogRef.close();\r\n this.dialog.closeAll();\r\n } else if (destination === 'MeineAkte') {\r\n const res: any = await this.generatePdf(true).catch((err) => {\r\n throw new Error('Fehler beim Erstellen des Ergebnis - PDFs!');\r\n });\r\n await this.updateStatus(3);\r\n }\r\n } catch (err) {\r\n this.errorMessage = err;\r\n }\r\n }\r\n\r\n async generatePdf(sendToMA: boolean) {\r\n this.loading = true;\r\n const res = await this.data.getPdf(this.data.request, sendToMA);\r\n\r\n this.loading = false;\r\n return res;\r\n }\r\n\r\n setUploadData(url: string) {\r\n const files = [\r\n {\r\n url,\r\n fileName: `temp-${Date.now()}.pdf`\r\n }\r\n ];\r\n return {\r\n reqID: this.data.request.id,\r\n files,\r\n contactID: this.data.request.PatientID\r\n };\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n

Anfragen-Status

\r\n
\r\n \r\n
\r\n \r\n \r\n Offen\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n PCR Test\r\n Antikörper Test\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 In Bearbeitung\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Positiv\r\n Negativ\r\n Verzögert\r\n zu Wiederholen\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n Resultat Erhalten\r\n\r\n
\r\n \r\n \r\n \r\n \r\n An Meine Akte versenden\r\n \r\n \r\n
\r\n
\r\n {{ errorMessage }}\r\n
\r\n
\r\n \r\n Versendet\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { SelectionModel } from '@angular/cdk/collections';\r\nimport { AfterViewInit, Component, EventEmitter, Input, OnInit, Output, SimpleChanges, ViewChild } from '@angular/core';\r\nimport { MatLegacyPaginator as MatPaginator } from '@angular/material/legacy-paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatLegacyTableDataSource as MatTableDataSource } from '@angular/material/legacy-table';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { Favorite } from '../../../../shared/classes/favorite';\r\nimport { PatientRequest } from '../../../../shared/classes/patient-request';\r\n\r\n@Component({\r\n selector: 'app-requests',\r\n templateUrl: './requests.component.html',\r\n styleUrls: ['./requests.component.css']\r\n})\r\nexport class RequestsComponent implements OnInit, AfterViewInit {\r\n private destroy$$ = new Subject();\r\n\r\n @Input() requests: PatientRequest[] = [];\r\n @Input() favorites: Favorite[];\r\n @Input() statusFilter: number;\r\n\r\n @Output() showDialog = new EventEmitter();\r\n\r\n @Output() sendSelected = new EventEmitter();\r\n\r\n @ViewChild(MatSort) set matSort(sort: MatSort) {\r\n this.dataSource.sort = sort;\r\n }\r\n\r\n @ViewChild(MatPaginator) set paginator(paginator: MatPaginator) {\r\n this.dataSource.paginator = paginator;\r\n }\r\n\r\n public hasFetched = false;\r\n public dataSource = new MatTableDataSource(this.requests);\r\n public status = ['Offen', 'In Bearbeitung', 'Resultat Erhalten', 'Versendet'];\r\n public resultMap = {\r\n '1': 'pos',\r\n '2': 'neg',\r\n '3': 'verzögert',\r\n '4': 'zu wiederholen'\r\n };\r\n\r\n displayedColumns = [\r\n 'RequestDate',\r\n 'RequestNo',\r\n 'patientName',\r\n 'ResultDate',\r\n 'StatusID',\r\n 'RequestResultsJSON.testTemplateName',\r\n 'RequestResultsJSON.testResult'\r\n ];\r\n selection = new SelectionModel(true, []);\r\n\r\n @Output()\r\n selectionChange = new EventEmitter();\r\n\r\n isAllSelected() {\r\n const numSelected = this.selection.selected.length;\r\n const numRows = this.requests.length;\r\n return numSelected === numRows;\r\n }\r\n\r\n masterToggle() {\r\n this.isAllSelected() ? this.selection.clear() : this.requests.forEach((row) => this.selection.select(row));\r\n }\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n this.selection.changed.pipe(takeUntil(this.destroy$$)).subscribe((result) => {\r\n this.selectionChange.emit(result.source.selected);\r\n });\r\n\r\n this.dataSource.sortingDataAccessor = (item, property) => {\r\n if (property === 'RequestResultsJSON.testResult') {\r\n return item?.RequestResultsJSON?.testResult ? this.resultMap[item.RequestResultsJSON.testResult] : '';\r\n } else {\r\n return item[property];\r\n }\r\n };\r\n // console.log(this.requests)\r\n // this.dataSource = new MatTableDataSource(this.requests);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.destroy$$.next();\r\n this.destroy$$.complete();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n // console.log(changes);\r\n if (changes.requests) {\r\n this.dataSource.data = changes.requests.currentValue;\r\n this.selection.clear();\r\n }\r\n if (changes.statusFilter) {\r\n this.displayedColumns =\r\n changes.statusFilter.currentValue == 2\r\n ? [...this.displayedColumns, 'select']\r\n : [...this.displayedColumns].filter((column) => column !== 'select');\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n // console.log(this.sort);\r\n // this.dataSource.sort = this.sort;\r\n // console.log(this.dataSource);\r\n }\r\n\r\n getFavoriteName(id) {\r\n // console.log({ favs: this.favorites, id });\r\n const favorite = this.favorites?.find((favorite) => favorite.id === id);\r\n return favorite ? `${favorite?.FirstNameEn} ${favorite?.LastNameEn}` : '';\r\n }\r\n\r\n onSendSelected(currentSelection: SelectionModel) {\r\n const selectedItems = currentSelection.selected;\r\n this.sendSelected.emit(selectedItems);\r\n }\r\n}\r\n","
0\">\r\n \r\n \r\n Datum der Anfrage\r\n {{ entry.RequestDate | date: 'dd.MM.yyyy HH:mm' }}\r\n \r\n\r\n \r\n Nummer\r\n {{ entry.RequestNo }}\r\n \r\n\r\n \r\n Patient\r\n {{ entry.patientName }}\r\n \r\n\r\n \r\n Datum des Ergebnisses\r\n {{ entry.ResultDate | date: 'dd.MM.yyyy HH:mm' }}\r\n \r\n\r\n \r\n Status\r\n \r\n {{ status[entry.StatusID] }}\r\n \r\n \r\n\r\n \r\n Testart\r\n \r\n {{ entry?.RequestResultsJSON?.testTemplateName }}\r\n \r\n \r\n\r\n \r\n Ergebnis\r\n \r\n {{ entry?.RequestResultsJSON?.testResult ? resultMap[entry.RequestResultsJSON.testResult] : '' }}\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
Keine Anfragen vorhanden
\r\n","\r\n\r\n\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { RequestsClientService } from '../../clients/requests-client.service';\r\nimport { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';\r\n\r\n@Component({\r\n selector: 'app-request-button-view',\r\n templateUrl: './request-button-view.component.html',\r\n styleUrls: ['./request-button-view.component.css']\r\n})\r\nexport class RequestButtonViewComponent implements OnInit {\r\n @Input() patientID;\r\n requestStatus = 0;\r\n\r\n constructor(private requestsService: RequestsClientService, private dialog: MatDialog) {}\r\n\r\n ngOnInit(): void {}\r\n\r\n async sendPatientRequest() {\r\n if (!this.patientID) {\r\n return;\r\n }\r\n this.requestStatus = 1;\r\n console.log('reqPending');\r\n await this.requestsService.sendRequest(this.patientID);\r\n console.log('reqDone');\r\n this.requestStatus = 2;\r\n setTimeout(() => {\r\n this.dialog.closeAll();\r\n }, 300);\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';\r\nimport { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';\r\nimport * as moment from 'moment';\r\nimport { BehaviorSubject, merge, Observable, of, Subject } from 'rxjs';\r\nimport { catchError, map, scan, switchMap } from 'rxjs/operators';\r\nimport { Favorite } from '../../../../shared/classes/favorite';\r\nimport { PatientRequest } from '../../../../shared/classes/patient-request';\r\nimport { FavoritesService } from '../../../../shared/services/favorites.service';\r\nimport { RequestsDialogComponent } from '../../components/requests-dialog/requests-dialog.component';\r\nimport { RequestsService } from '../../services/requests.service';\r\n\r\n@Component({\r\n selector: 'app-requests-view',\r\n templateUrl: './requests-view.component.html',\r\n styleUrls: ['./requests-view.component.css']\r\n})\r\nexport class RequestsViewComponent implements OnInit {\r\n // @Input() filter: string;\r\n requests$: Observable;\r\n favorites: Favorite[];\r\n\r\n filterForm: UntypedFormGroup;\r\n filterStatusID: number = null;\r\n filterString = '';\r\n statusValues = [\r\n { value: 0, text: 'Offen' },\r\n { value: 1, text: 'In Bearbeitung' },\r\n { value: 2, text: 'Resultat Erhalten' },\r\n { value: 3, text: 'Versendet' }\r\n ];\r\n\r\n private readRequests$$: BehaviorSubject<{ fromDate: string; toDate: string }>;\r\n private updateRequest$$ = new Subject();\r\n\r\n public currentSelection: PatientRequest[];\r\n\r\n constructor(\r\n private requestsService: RequestsService,\r\n private favoritesService: FavoritesService,\r\n private dialog: MatDialog,\r\n private formBuilder: UntypedFormBuilder\r\n ) {}\r\n\r\n async ngOnInit() {\r\n this.initFilterForm();\r\n this.favorites = await this.favoritesService.reloadFavorites();\r\n // const filterUpdates = this.filterForm.valueChanges.pipe(tap((value) => console.log(value))).subscribe();\r\n this.readRequests$$ = new BehaviorSubject({\r\n fromDate: this.filterForm.get('fromDate').value.toISOString(),\r\n toDate: this.filterForm.get('toDate').value.toISOString()\r\n });\r\n this.requests$ = merge(\r\n this.readRequests$$.pipe(\r\n switchMap(({ fromDate, toDate }) =>\r\n this.requestsService.readRequests({\r\n fromDate,\r\n toDate\r\n })\r\n ),\r\n\r\n map((result) => ({ data: result, action: 'read' }))\r\n ),\r\n this.updateRequest$$.pipe(map((item) => ({ data: item, action: 'update' })))\r\n ).pipe(\r\n catchError((err) => of({ action: 'error' })),\r\n scan((acc, curr: { action?: string; data?: any }) => {\r\n if (curr.action === 'read') {\r\n return [...curr.data];\r\n }\r\n if (curr.action === 'update') {\r\n return acc.map((item) => (item.id === curr.data.id ? curr.data : item));\r\n }\r\n return acc;\r\n }, []),\r\n\r\n // set patientName for each PatientRequest entry to enable filtering/sorting\r\n map((result: PatientRequest[]) =>\r\n result.map((item) => {\r\n if (item.patientName) return item;\r\n\r\n const patientID = item.PatientID;\r\n const favorite = this.favorites?.find((favorite) => favorite.id === patientID);\r\n const patientName = [favorite?.FirstNameEn, favorite?.LastNameEn].filter((value) => !!value).join(' ');\r\n return { ...item, patientName };\r\n })\r\n )\r\n );\r\n }\r\n\r\n initFilterForm() {\r\n this.filterForm = this.formBuilder.group({\r\n fromDate: [moment.utc().startOf('day')],\r\n toDate: [moment.utc().endOf('day')]\r\n });\r\n }\r\n\r\n filterItems(filterValues) {\r\n const { fromDate, toDate } = filterValues;\r\n this.readRequests$$.next({ fromDate: fromDate.toISOString(), toDate: toDate.toISOString() });\r\n }\r\n\r\n showDialog(request: PatientRequest) {\r\n if (this.dialog.openDialogs.some((openDialog) => openDialog.componentInstance instanceof RequestsDialogComponent)) {\r\n return;\r\n }\r\n const favorite = this.favorites.find((item) => item.id == request.PatientID);\r\n const dialogRef = this.dialog.open(RequestsDialogComponent, {\r\n width: '900px',\r\n autoFocus: false,\r\n data: {\r\n request,\r\n updateRequestItem: (requestData: PatientRequest) => {\r\n this.requestsService.updateRequest(requestData).then((result) => this.updateRequest$$.next(result));\r\n },\r\n getPdf: (requestData: PatientRequest, sendToMA: boolean) =>\r\n this.requestsService.printRequestResult(requestData, favorite, sendToMA),\r\n deleteRequest: (requestData: PatientRequest) => this.requestsService.deleteRequest(requestData)\r\n }\r\n });\r\n\r\n dialogRef.afterClosed().subscribe((result) => {\r\n if (!result) {\r\n return;\r\n }\r\n console.log(result);\r\n });\r\n }\r\n\r\n selectionChanged(changedSelection: PatientRequest[]) {\r\n this.currentSelection = [...changedSelection];\r\n }\r\n\r\n onSendSelected(selectedRequests: PatientRequest[]) {\r\n return this.requestsService.sendRequestCollection(selectedRequests).catch(console.log);\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 Alle\r\n {{ status.text }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n Auswahl versenden\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { PatientRequest } from 'src/app/shared/classes/patient-request';\r\n\r\n@Pipe({\r\n name: 'requestFilter'\r\n})\r\nexport class RequestFilterPipe implements PipeTransform {\r\n transform(value: PatientRequest[], filterString: string): unknown {\r\n const filter = (filterString || '').trim().toLowerCase();\r\n\r\n return !filter\r\n ? value\r\n : (value || []).filter(\r\n (item) => item.patientName.toLowerCase().includes(filter) || ((item.RequestNo ?? '') + '').toLowerCase().includes(filter)\r\n );\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'statusFilter'\r\n})\r\nexport class StatusFilterPipe implements PipeTransform {\r\n transform(value: any[], statusID: number): unknown {\r\n return (value || []).filter((item) => (!statusID && statusID != 0) || item.StatusID === statusID);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RequestsViewComponent } from './containers/requests-view/requests-view.component';\r\nimport { RequestsComponent } from './components/requests/requests.component';\r\nimport { RequestsClientService } from './clients/requests-client.service';\r\nimport { RequestsService } from './services/requests.service';\r\nimport { MatLegacyInputModule as MatInputModule } from '@angular/material/legacy-input';\r\nimport { MatLegacyTableModule as MatTableModule } from '@angular/material/legacy-table';\r\nimport { MatLegacyPaginatorModule as MatPaginatorModule } from '@angular/material/legacy-paginator';\r\nimport { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';\r\nimport { RequestButtonViewComponent } from './containers/request-button-view/request-button-view.component';\r\nimport { RequestButtonComponent } from './components/request-button/request-button.component';\r\nimport { MatLegacyButtonModule as MatButtonModule } from '@angular/material/legacy-button';\r\nimport { MatSortModule } from '@angular/material/sort';\r\nimport { RequestsDialogComponent } from './components/requests-dialog/requests-dialog.component';\r\nimport { MatLegacyDialogModule as MatDialogModule } from '@angular/material/legacy-dialog';\r\nimport { MatStepperModule } from '@angular/material/stepper';\r\nimport { MatLegacyRadioModule as MatRadioModule } from '@angular/material/legacy-radio';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { RequestsContactListComponent } from './components/requests-contact-list/requests-contact-list.component';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { StatusFilterPipe } from './pipes/status-filter.pipe';\r\nimport { MatLegacyCheckboxModule as MatCheckboxModule } from '@angular/material/legacy-checkbox';\r\nimport { RequestFilterPipe } from './pipes/request-filter.pipe';\r\n\r\n@NgModule({\r\n // entryComponents: [RequestsViewComponent, RequestsDialogComponent],\r\n declarations: [\r\n RequestsViewComponent,\r\n RequestsComponent,\r\n RequestButtonViewComponent,\r\n RequestButtonComponent,\r\n RequestsDialogComponent,\r\n RequestsContactListComponent,\r\n StatusFilterPipe,\r\n RequestFilterPipe\r\n ],\r\n providers: [RequestsClientService, RequestsService],\r\n imports: [\r\n CommonModule,\r\n MatCheckboxModule,\r\n MatDialogModule,\r\n MatInputModule,\r\n MatTableModule,\r\n MatPaginatorModule,\r\n MatProgressSpinnerModule,\r\n MatButtonModule,\r\n MatSortModule,\r\n MatStepperModule,\r\n MatRadioModule,\r\n MatDatepickerModule,\r\n FormsModule,\r\n ReactiveFormsModule\r\n ],\r\n exports: [RequestsViewComponent, RequestButtonViewComponent, RequestsContactListComponent]\r\n})\r\nexport class RequestsModule {}\r\n","import { Injectable } from '@angular/core';\r\nimport * as moment from 'moment';\r\nimport { Observable } from 'rxjs';\r\nimport { Favorite } from '../../../shared/classes/favorite';\r\nimport { PatientRequest } from '../../../shared/classes/patient-request';\r\nimport { RequestsClientService } from '../clients/requests-client.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RequestsService {\r\n constructor(private requestClientService: RequestsClientService) {}\r\n\r\n readRequests(params?: object): Observable {\r\n return this.requestClientService.readRequests(params);\r\n }\r\n\r\n updateRequest(item: Partial): Promise {\r\n return this.requestClientService.update(item);\r\n }\r\n\r\n addRequest(patientID: number): Promise {\r\n return this.requestClientService.sendRequest(patientID);\r\n }\r\n\r\n deleteRequest(item: PatientRequest) {\r\n return this.requestClientService.deleteRequest(item);\r\n }\r\n\r\n sendRequestCollection(requests: PatientRequest[]): Promise {\r\n //return Promise.resolve();\r\n return this.requestClientService.sendRequestCollection(requests).toPromise();\r\n }\r\n\r\n printRequestResult(request: PatientRequest, favorite: Favorite, sendToMA = false) {\r\n let requestResult = request?.RequestResultsJSON;\r\n if (!requestResult?.testTemplateName && requestResult?.testResult) {\r\n throw new Error('incomplete data');\r\n }\r\n const { testTemplateName, testResult } = requestResult;\r\n\r\n const resultMap = {\r\n 1: 'POS',\r\n 2: 'NEG',\r\n 3: 'DELAYED',\r\n 4: 'INVALID'\r\n };\r\n\r\n const templateName = `${testTemplateName}${resultMap[testResult] ? resultMap[testResult] : ''}`;\r\n console.log(templateName);\r\n // try {\r\n // requestResult = JSON.parse(request.RequestResultsJSON);\r\n // } catch (err) {\r\n // requestResult = {};\r\n // }\r\n // console.log(favorite);\r\n return this.requestClientService.getPdf(\r\n {\r\n PatientTitle: favorite.PersonTitle ?? '',\r\n PatientFirstName: favorite.FirstNameEn ?? '',\r\n PatientLastName: favorite.LastNameEn ?? '',\r\n PatientMiddleName: favorite.MiddleNameEn ?? '',\r\n PatientDateOfBirth: favorite.DateOfBirth ? moment(favorite.DateOfBirth).format('DD.MM.YYYY') : '',\r\n PatientCity: favorite.City ?? '',\r\n PatientPlaceOfBirth: favorite.PlaceOfBirth ?? '',\r\n PersonalIDNo: favorite.PersonalIDNo || '',\r\n MedicalReportDate: request.RequestDate ? moment(request.RequestDate).format('DD.MM.YYYY') : '',\r\n MedicalReportDateTime: request.RequestDate ? moment(request.RequestDate).format('DD.MM.YYYY HH:mm') : '',\r\n MAuserID: sendToMA ? favorite.MAContactID : null,\r\n MArequestID: sendToMA ? request.id : null,\r\n ...requestResult\r\n },\r\n templateName\r\n // 'MedicalReportCoronaZeugnis'\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AzureServiceService } from '../../../shared/services/azure-service.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nexport interface SmsStatisticMonthly {\r\n Anz?: number,\r\n M?: number,\r\n Y?: number\r\n\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SmsStatsClientService {\r\n\r\n constructor(private azureService: AzureServiceService, private http: HttpClient) { }\r\n\r\n readSmsStatistics(params: any = {}): Observable {\r\n params.RequestFrom = 'BxManagement';\r\n return this.http.get(`${environment.azureAppURL}/tables/CCPatientDocumentDownload`,{\r\n params,\r\n headers: {\r\n 'ZUMO-API-VERSION': '2.0.0',\r\n 'X-ZUMO-AUTH': this.azureService.client.currentUser.mobileServiceAuthenticationToken\r\n }\r\n });\r\n }\r\n}\r\n","
0\">\r\n \r\n \r\n Monat\r\n {{ months[entry.M - 1] }}\r\n \r\n\r\n \r\n Jahr\r\n {{ entry.Y }}\r\n \r\n\r\n \r\n Versendete SMS\r\n {{ entry.Anz }} / {{ limit }} \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n Keine SMS vorhanden\r\n
\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { SmsStatisticMonthly } from '../../clients/sms-stats-client.service';\r\n\r\n@Component({\r\n selector: 'app-sms-stats',\r\n templateUrl: './sms-stats.component.html',\r\n styleUrls: ['./sms-stats.component.css']\r\n})\r\nexport class SmsStatsComponent implements OnInit {\r\n @Input()\r\n smsStats: SmsStatisticMonthly[];\r\n\r\n @Input()\r\n limit: number;\r\n\r\n displayedColumns = ['month', 'year', 'amount'];\r\n months = [\r\n 'Januar',\r\n 'Februar',\r\n 'März',\r\n 'April',\r\n 'Mai',\r\n 'Juni',\r\n 'Juli',\r\n 'August',\r\n 'September',\r\n 'Oktober',\r\n 'November',\r\n 'Dezember'\r\n ];\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Subject, Observable, of } from 'rxjs';\r\nimport { catchError, exhaustMap, takeUntil, switchMap } from 'rxjs/operators';\r\nimport * as moment from 'moment';\r\nimport { SmsStatsClientService, SmsStatisticMonthly } from '../../clients/sms-stats-client.service';\r\nimport { PortalsService } from '../../../../shared/services/portals.service';\r\n\r\n@Component({\r\n selector: 'app-sms-stats-view',\r\n templateUrl: './sms-stats-view.component.html',\r\n styleUrls: ['./sms-stats-view.component.css']\r\n})\r\nexport class SmsStatsViewComponent implements OnInit {\r\n monthlySmsStats$: Observable;\r\n smsLimit: number;\r\n limits = {\r\n 0: 0,\r\n 4: 15,\r\n 1: 50,\r\n 2: 120,\r\n 3: 200\r\n }\r\n\r\n constructor(private smsStatsService: SmsStatsClientService, private portalService: PortalsService) {}\r\n\r\n async ngOnInit() {\r\n this.monthlySmsStats$ = this.smsStatsService.readSmsStatistics();\r\n const portal = await this.portalService.getOwnPortal();\r\n this.smsLimit = this.limits[portal.AboType];\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Versand Statistik

\r\n \r\n
\r\n
\r\n
\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SmsStatsService {\r\n\r\n constructor() { }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SmsStatsViewComponent } from './containers/sms-stats-view/sms-stats-view.component';\r\nimport { SmsStatsComponent } from './components/sms-stats/sms-stats.component';\r\nimport { SmsStatsClientService } from './clients/sms-stats-client.service';\r\nimport { SmsStatsService } from './services/sms-stats.service';\r\nimport { MatLegacyInputModule as MatInputModule } from '@angular/material/legacy-input';\r\nimport { MatLegacyTableModule as MatTableModule } from '@angular/material/legacy-table';\r\nimport { MatLegacyPaginatorModule as MatPaginatorModule } from '@angular/material/legacy-paginator';\r\nimport { MatLegacyProgressSpinnerModule as MatProgressSpinnerModule } from '@angular/material/legacy-progress-spinner';\r\n\r\n\r\n\r\n@NgModule({\r\n // entryComponents: [SmsStatsViewComponent],\r\n declarations: [SmsStatsViewComponent, SmsStatsComponent],\r\n providers:[SmsStatsClientService, SmsStatsService],\r\n imports: [\r\n CommonModule,\r\n MatInputModule,\r\n MatTableModule,\r\n MatPaginatorModule,\r\n MatProgressSpinnerModule\r\n ],\r\n exports: [SmsStatsViewComponent]\r\n})\r\nexport class SmsStatsModule { }\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MatLegacyDialog as MatDialog, MatLegacyDialogRef as MatDialogRef, MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA } from '@angular/material/legacy-dialog';\r\nimport { XConfigShortcode } from '../../../shared/classes/xconfig-shortcode';\r\nimport { UntypedFormGroup, UntypedFormBuilder } from '@angular/forms';\r\nimport { ShortcodeService } from '../../../shared/services/shortcode.service';\r\nimport { ConfirmDialogComponent } from '../../../shared/components/confirm-dialog/confirm-dialog.component';\r\n\r\n@Component({\r\n selector: 'app-text-block-detail',\r\n templateUrl: './text-block-detail.component.html',\r\n styleUrls: ['./text-block-detail.component.css']\r\n})\r\nexport class TextBlockDetailComponent implements OnInit {\r\n form: UntypedFormGroup;\r\n shortCodeObject: XConfigShortcode;\r\n public editMode = false;\r\n\r\n constructor(\r\n private fb: UntypedFormBuilder,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: any,\r\n private shortCodeService: ShortcodeService,\r\n private dialog: MatDialog\r\n ) {\r\n if (data) {\r\n this.editMode = true;\r\n this.shortCodeObject = data;\r\n } else {\r\n this.shortCodeObject = new XConfigShortcode({\r\n ShortcodeKey: '',\r\n ShortcodeText: ''\r\n });\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n console.log(this.shortCodeObject);\r\n this.form = this.fb.group({\r\n shortcutKey: [this.shortCodeObject.ShortcutKey, []],\r\n shortcutText: [this.shortCodeObject.ShortcutText, []]\r\n });\r\n }\r\n\r\n async delete() {\r\n // if(confirm('Wollen Sie den Textblock tatsächlich löschen?')){\r\n // await this.shortCodeService.delete(this.shortCodeObject);\r\n // this.dialogRef.close();\r\n // }\r\n if(this.dialog.openDialogs.some(openDialog => openDialog.componentInstance instanceof ConfirmDialogComponent)){\r\n\t\t\treturn;\r\n\t\t }\r\n const dialogRef2 = this.dialog.open(ConfirmDialogComponent, {\r\n width: '500px',\r\n data: `Sind Sie sicher, dass sie den Textblock für das Kürzel ${\r\n this.shortCodeObject.ShortcutKey\r\n } löschen wollen?`\r\n });\r\n\r\n dialogRef2.afterClosed().subscribe(async result => {\r\n if (result) {\r\n await this.shortCodeService.delete(this.shortCodeObject);\r\n console.log('deleted');\r\n this.dialogRef.close();\r\n }\r\n });\r\n }\r\n\r\n close() {\r\n this.dialogRef.close();\r\n }\r\n\r\n async save() {\r\n if (this.editMode) {\r\n await this.shortCodeService.update(this.data, this.shortCodeObject);\r\n console.log('Updated');\r\n this.dialogRef.close();\r\n\r\n } else {\r\n await this.shortCodeService.insert(this.shortCodeObject);\r\n console.log('Added');\r\n this.dialogRef.close();\r\n }\r\n this.dialogRef.close(this.form.value);\r\n }\r\n}\r\n","
\r\n \r\n
\r\n

Text-Blöcke

\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, OnInit } from '@angular/core';\r\nimport { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';\r\nimport { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';\r\nimport { ShortcodeService } from '../../shared/services/shortcode.service';\r\nimport { TextBlockDetailComponent } from './text-block-detail/text-block-detail.component';\r\nimport { XConfigShortcode } from '../../shared/classes/xconfig-shortcode';\r\n\r\n@Component({\r\n\tselector: 'app-text-block',\r\n\ttemplateUrl: './text-block.component.html',\r\n\tstyleUrls: [ './text-block.component.css' ]\r\n})\r\nexport class TextBlockComponent implements OnInit {\r\n\tpublic clickLock = false;\r\n\r\n\tconstructor(private shortCodeService: ShortcodeService, private dialog: MatDialog) {}\r\n\r\n\tasync ngOnInit() {\r\n\t\tawait this.shortCodeService.read();\r\n\t\tthis.getShortCodes();\r\n\t}\r\n\r\n\tedit(data) {\r\n\t\tif (!this.clickLock) {\r\n\t\t\tthis.clickLock = true;\r\n\t\t\tconst dialogRef = this.dialog.open(TextBlockDetailComponent, {\r\n\t\t\t\tdata: new XConfigShortcode(data)\r\n\t\t\t});\r\n\r\n\t\t\t// await dialogRef.afterClosed().subscribe(async result => {\r\n\t\t\t// if (result) {\r\n\t\t\t// const shortCodeObject = new XConfigShortcode({\r\n\t\t\t// ShortcutKey: result.shortcutKey,\r\n\t\t\t// ShortcutText: result.shortcutText\r\n\t\t\t// });\r\n\t\t\t// await this.shortCodeService.update(data, shortCodeObject);\r\n\t\t\t// }\r\n\t\t\t// });\r\n\r\n\t\t\tthis.clickLock = false;\r\n\t\t} else {\r\n\t\t\tconsole.log('Clicklock');\r\n\t\t}\r\n\t}\r\n\r\n\tpublic showDetailDialog() {\r\n\t\tif(this.dialog.openDialogs.some(openDialog => openDialog.componentInstance instanceof TextBlockDetailComponent)){\r\n\t\t\treturn;\r\n\t\t }\r\n\t\tconst dialogRef = this.dialog.open(TextBlockDetailComponent, {});\r\n\r\n\t\t// await dialogRef.afterClosed().subscribe(async result => {\r\n\t\t// console.log(result);\r\n\t\t// const shortCodeObject = new XConfigShortcode({\r\n\t\t// ShortcutKey: result.shortcutKey,\r\n\t\t// ShortcutText: result.shortcutText\r\n\t\t// });\r\n\t\t// await this.shortCodeService.insert(shortCodeObject);\r\n\t\t// });\r\n\t}\r\n\r\n\tpublic getShortCodes() {\r\n\t\treturn this.shortCodeService.getShortCodes();\r\n\t}\r\n}\r\n","
\r\n
\r\n\r\n
\r\n

Text-Blöcke

\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n

{{code.ShortcutKey}}

\r\n

\r\n {{code.ShortcutText}}\r\n

\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA } from '@angular/material/legacy-dialog';\r\nimport { FavoritesService } from '../../../shared/services/favorites.service';\r\n\r\n@Component({\r\n\tselector: 'app-favorites-dialog',\r\n\ttemplateUrl: './favorites-dialog.component.html',\r\n\tstyleUrls: [ './favorites-dialog.component.css' ]\r\n})\r\nexport class FavoritesDialogComponent implements OnInit {\r\n\tprivate favorites;\r\n\tpublic filteredFavorites;\r\n\tpublic searchName;\r\n\r\n\tconstructor(@Inject(MAT_DIALOG_DATA) public data: any, private favoritesService: FavoritesService) {\r\n\t\tthis.favorites = Object.values(data);\r\n\t\tthis.filteredFavorites = this.favorites.slice(0,25);\r\n\t}\r\n\r\n\tngOnInit() {}\r\n\r\n\tpublic getFavorites() {\r\n\t\treturn this.favoritesService.getFavorites();\r\n\t}\r\n\r\n\tpublic filterFavorites(searchText) {\r\n\t\tconst search = searchText.replace(/ /g, ''); // Filter out whitespaces not correct fix\r\n\t\tconsole.log(search);\r\n\t\tconst filtered = this.favorites.filter((item) => {\r\n\t\t\treturn !searchText || (item.FirstNameEn + item.LastNameEn).toLowerCase().indexOf(search.toLowerCase()) > -1;\r\n\t\t});\r\n\t\tthis.filteredFavorites = filtered.slice(0,25);\r\n\t\treturn filtered;\r\n\t}\r\n}\r\n","
\r\n

Kontakte

\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, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatLegacyDialogRef as MatDialogRef, MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA } from '@angular/material/legacy-dialog';\r\nimport { MatLegacySelectionList as MatSelectionList } from '@angular/material/legacy-list';\r\nimport { ServiceProviderTypes } from '../../../shared/collections/service-provider-types';\r\n\r\n@Component({\r\n selector: 'app-portal-filter-dialog',\r\n templateUrl: './portal-filter-dialog.component.html',\r\n styleUrls: ['./portal-filter-dialog.component.css']\r\n})\r\nexport class PortalFilterDialogComponent implements OnInit {\r\n private portals;\r\n public groups;\r\n public members;\r\n public filteredPortals;\r\n public serviceProviderTypeID: Number = null;\r\n public portalFilterText: String;\r\n public serviceProviderTypes = ServiceProviderTypes;\r\n\r\n @ViewChild(MatSelectionList) portalList: MatSelectionList;\r\n\r\n constructor(public dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data: any) {\r\n this.portals = data.portals.slice();\r\n this.groups = data.groups?.slice();\r\n this.members = data.members?.slice();\r\n this.filteredPortals = this.sortByFavorite(data.portals.slice());\r\n }\r\n\r\n ngOnInit() {\r\n // this.portalList.selectedOptions = new SelectionModel(false);\r\n // this.portalList.selectedOptions._multiple = false;\r\n }\r\n\r\n public filterPortals(searchText, portalType) {\r\n const filtered = this.portals.filter(\r\n (item) =>\r\n (!searchText ||\r\n item.Name.toLowerCase().indexOf(searchText.toLowerCase()) > -1 ||\r\n item.ZIPCode?.toLowerCase().indexOf(searchText.toLowerCase()) > -1) &&\r\n (!portalType ||\r\n (portalType < 0\r\n ? this.getPortalsInGroup(portalType * -1).includes(item.idx)\r\n : item.ServiceProviderTypeID === portalType))\r\n );\r\n this.filteredPortals = filtered;\r\n return filtered;\r\n }\r\n\r\n sortByFavorite(portals) {\r\n const favorites = JSON.parse(JSON.parse(localStorage.getItem('userobject')).FavoritePortalsJSON);\r\n return favorites\r\n ? portals.sort((a, b) => {\r\n if (favorites.includes(a.idx) && !favorites.includes(b.idx)) {\r\n return -1;\r\n }\r\n if (!favorites.includes(a.idx) && favorites.includes(b.idx)) {\r\n return 1;\r\n }\r\n return a.idx - b.idx;\r\n })\r\n : portals;\r\n }\r\n\r\n public getPortalsInGroup(groupID) {\r\n const groups = this.members.filter((item) => item.GroupID == groupID);\r\n return groups.map((item) => item.PortalID);\r\n }\r\n\r\n public getPortalLabel(portalObject) {\r\n return portalObject\r\n ? [portalObject.Name, portalObject.ZIPCode, portalObject.City].filter((val) => !!val).join(' ')\r\n : '';\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n Alle\r\n {{ provider.value }}\r\n {{ group.GroupName }}\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, OnInit } from \"@angular/core\";\r\nimport { MatLegacyDialog as MatDialog } from \"@angular/material/legacy-dialog\";\r\nimport { PDFDocument } from 'pdf-lib';\r\n\r\nimport { AzureServiceService } from \"../../../shared/services/azure-service.service\";\r\nimport { PortalsService } from \"../../../shared/services/portals.service\";\r\nimport { PortalTypes } from \"../../../shared/collections/portal-types\";\r\nimport { PersonTitles } from \"../../../shared/collections/person-titles\";\r\nimport { ServiceProviderTypes } from \"../../../shared/collections/service-provider-types\";\r\nimport { PortalFilterDialogComponent } from \"../portal-filter-dialog/portal-filter-dialog.component\";\r\nimport { UploadComponent } from \"../upload.component\";\r\nimport { GroupsService } from \"../../../shared/services/groups.service\";\r\nimport { GroupMember } from \"../../../shared/classes/group-member\";\r\nimport { SignDialogComponent } from \"../sign-dialog/sign-dialog.component\";\r\n@Component({\r\n selector: \"app-send-file\",\r\n templateUrl: \"./send-file.component.html\",\r\n styleUrls: [\"./send-file.component.css\"],\r\n})\r\nexport class SendFileComponent implements OnInit {\r\n public fileSentStatus = 0;\r\n public uploadData = {\r\n filesToReSend: null,\r\n reSendID: null,\r\n patientTitle: null,\r\n patientFirstName: null,\r\n patientLastName: null,\r\n filesToSend: null,\r\n recipientPortal: null,\r\n senderComments: '',\r\n internalNote: '',\r\n signedFiles: null\r\n };\r\n public convertedFiles;\r\n public signSubmit = false;\r\n public signDocuments = false;\r\n\r\n public portalTypes = PortalTypes;\r\n public serviceProviderTypes = ServiceProviderTypes;\r\n public personTitles = PersonTitles;\r\n public portalTypeFilter = null;\r\n private portals: Array = [];\r\n private groups: Array = [];\r\n private members: Array;\r\n public filteredPortals: Array = [];\r\n constructor(\r\n private azureClient: AzureServiceService,\r\n private portalsService: PortalsService,\r\n private dialog: MatDialog,\r\n private uploadComp: UploadComponent,\r\n private groupsService: GroupsService\r\n ) {}\r\n\r\n async ngOnInit() {\r\n this.portals = await this.portalsService.getAll();\r\n await this.initGroups();\r\n this.filteredPortals = [...this.portals];\r\n this.setData();\r\n }\r\n\r\n private setData() {\r\n if (history.state.data) {\r\n this.uploadData.filesToReSend = history.state.data.files;\r\n this.uploadData.reSendID = history.state.data.idx;\r\n this.uploadData.senderComments = history.state.data.senderComments;\r\n this.uploadData.patientTitle = history.state.data.patientTitle;\r\n this.uploadData.patientFirstName = history.state.data.patientFirstName;\r\n this.uploadData.patientLastName = history.state.data.patientLastName;\r\n this.uploadData.recipientPortal = this.filteredPortals.find(\r\n (portal) => portal.Name === history.state.data.recipientName\r\n );\r\n }\r\n }\r\n\r\n private async initGroups() {\r\n this.groups = await this.groupsService.getUserGroups();\r\n console.log('Groups:', this.groups);\r\n this.members = await this.groupsService.getGroupMembers(this.groups.map((item) => item.id));\r\n console.log('Members:', this.members);\r\n }\r\n\r\n public async sendFile(form?) {\r\n try {\r\n // console.log(this.uploadData.recipientPortal);\r\n // console.log(this.uploadData.fileToSend);\r\n if (this.signSubmit) {\r\n return;\r\n }\r\n if (this.fileSentStatus === 1) {\r\n return;\r\n }\r\n if (!this.azureClient.filesToUpload && !this.uploadData.signedFiles && !this.uploadData.filesToReSend) {\r\n return;\r\n }\r\n this.fileSentStatus = 1;\r\n this.uploadComp.setFileSentStatus(1);\r\n if (this.azureClient.filesToUpload?.length > 0 && !this.signDocuments) {\r\n await this.azureClient.sendFileToPortal(this.azureClient.filesToUpload, 'api/fileservice', this.uploadData);\r\n }\r\n if ((this.uploadData.signedFiles?.length > 0 && this.signDocuments) || this.uploadData.filesToReSend) {\r\n await this.azureClient.uploadFormDataFileSigned(this.uploadData, 'signedservice');\r\n }\r\n\r\n // console.log(form);\r\n this.resetUploadData();\r\n console.log('reset upload');\r\n // form.resetForm();\r\n if (form) {\r\n form.resetForm();\r\n }\r\n this.fileSentStatus = 2;\r\n this.uploadComp.setFileSentStatus(2);\r\n } catch (err) {\r\n console.log(err);\r\n this.fileSentStatus = 0;\r\n this.uploadComp.setFileSentStatus(0);\r\n }\r\n }\r\n\r\n private resetUploadData() {\r\n this.uploadData = {\r\n filesToReSend: null,\r\n reSendID: null,\r\n patientTitle: null,\r\n patientFirstName: null,\r\n patientLastName: null,\r\n filesToSend: null,\r\n recipientPortal: null,\r\n senderComments: '',\r\n internalNote: '',\r\n signedFiles: null\r\n };\r\n this.azureClient.filesToUpload = null;\r\n this.azureClient.filesIsEmpty = true;\r\n this.signSubmit = false;\r\n this.signDocuments = false;\r\n }\r\n\r\n public resetFileSentStatus() {\r\n this.fileSentStatus = 0;\r\n this.uploadComp.setFileSentStatus(0);\r\n }\r\n\r\n public getFilesToSend() {\r\n return this.azureClient.filesToUpload;\r\n }\r\n\r\n public fileAdd(files) {\r\n const fileArr: File[] = Array.from(files);\r\n if (this.azureClient.filesIsEmpty) {\r\n this.azureClient.filesToUpload = fileArr;\r\n this.azureClient.setFiles();\r\n } else {\r\n this.azureClient.filesToUpload.push(...fileArr);\r\n }\r\n }\r\n\r\n public signAll() {\r\n setTimeout(() => {\r\n if (this.signDocuments) {\r\n this.showSignatureDialog(0);\r\n } else {\r\n this.uploadData.signedFiles = null;\r\n }\r\n }, 200);\r\n }\r\n\r\n public removeFile(index, type) {\r\n if (type === 'normal') {\r\n this.azureClient.filesToUpload.splice(index, 1);\r\n if (this.azureClient.filesToUpload.length === 0) {\r\n this.azureClient.filesToUpload = null;\r\n }\r\n } else if(type === 'signed') {\r\n this.uploadData.signedFiles.splice(index, 1);\r\n if (this.uploadData.signedFiles.length === 0) {\r\n this.uploadData.signedFiles = null;\r\n }\r\n } else if(type === 'reSend'){\r\n this.uploadData.filesToReSend.splice(index, 1);\r\n if (this.uploadData.filesToReSend.length === 0) {\r\n this.uploadData.filesToReSend = null;\r\n }\r\n }\r\n this.azureClient.filesIsEmpty = true;\r\n }\r\n\r\n //PDF Details\r\n readFile(file) {\r\n return new Promise((resolve, reject) => {\r\n const reader = new FileReader();\r\n\r\n reader.onload = () => resolve(reader.result);\r\n reader.onerror = (error) => reject(error);\r\n\r\n reader.readAsArrayBuffer(file);\r\n });\r\n }\r\n\r\n async getNumPages(file) {\r\n const arrayBuffer = await this.readFile(file) as any;\r\n\r\n const pdf = await PDFDocument.load(arrayBuffer);\r\n\r\n return pdf.getPages().length;\r\n }\r\n\r\n public displayFn(portal): string | undefined {\r\n return portal ? portal.Name : undefined;\r\n }\r\n\r\n public showPortalFilterDialog() {\r\n const dialogRef = this.dialog.open(PortalFilterDialogComponent, {\r\n width: '500px',\r\n data: {\r\n portals: this.portals,\r\n groups: this.groups,\r\n members: this.members,\r\n },\r\n // disableClose: true\r\n });\r\n dialogRef.afterClosed().subscribe((result) => {\r\n // console.log(result);\r\n if (!result) {\r\n return;\r\n }\r\n this.uploadData.recipientPortal = result;\r\n // if (!result || !result.length || !result[0].value) { return; }\r\n // this.uploadData.recipientPortal = result[0].value;\r\n });\r\n }\r\n\r\n public async convertFiles() {\r\n const res: any = await this.azureClient.getURLFromFile(this.azureClient.filesToUpload, 'api/fileconversion');\r\n console.log(res);\r\n const pages = await Promise.all(\r\n this.azureClient.filesToUpload.map(\r\n async (file) => await this.getNumPages(file)\r\n )\r\n );\r\n const filePaths = res.filePaths;\r\n const encIVs = res.encIVs;\r\n\r\n const result = await this.azureClient.getURL(filePaths, encIVs);\r\n console.log(result.fileUrls);\r\n const fileNames = res.fileNames.split(',');\r\n this.convertedFiles = result.fileUrls.map((url, index) => {\r\n return { url, fileName: fileNames[index], pages: pages[index] };\r\n });\r\n }\r\n\r\n public async showSignatureDialog(index) {\r\n if (!this.convertedFiles) {\r\n await this.convertFiles();\r\n }\r\n this.signSubmit = true;\r\n try {\r\n const dialogRef = this.dialog.open(SignDialogComponent, {\r\n width: '300px',\r\n height: 'auto',\r\n data: this.convertedFiles[index]\r\n });\r\n\r\n dialogRef.afterClosed().subscribe(async (result) => {\r\n if (!this.uploadData.signedFiles) {\r\n this.uploadData.signedFiles = [];\r\n }\r\n if (result !== 'Abort') {\r\n this.uploadData.signedFiles.push(result);\r\n //this.removeFile(index, false);\r\n if (index < this.convertedFiles.length - 1) {\r\n await this.showSignatureDialog(index + 1);\r\n }\r\n }\r\n });\r\n this.signSubmit = false;\r\n } catch (error) {\r\n console.log(error);\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 {{ file?.name }}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n {{ file?.fileName }} \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{ file?.fileName }} \r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n Empfänger:\r\n {{ uploadData.recipientPortal?.Name || '- bitte auswählen -' }}\r\n \r\n
\r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n {{ title }}\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 Senden\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n Datei wurde erfolgreich versendet!\r\n
\r\n \r\n
\r\n","import { Component, OnInit, Inject } from \"@angular/core\";\r\n\r\nimport { MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA, MatLegacyDialogRef as MatDialogRef } from \"@angular/material/legacy-dialog\";\r\ndeclare const pdfAs: any;\r\n@Component({\r\n selector: \"app-sign-dialog\",\r\n templateUrl: \"./sign-dialog.component.html\",\r\n styleUrls: [\"./sign-dialog.component.css\"]\r\n})\r\nexport class SignDialogComponent implements OnInit {\r\n private file;\r\n private signedDocument;\r\n\r\n constructor(\r\n @Inject(MAT_DIALOG_DATA) public data: any,\r\n public dialog: MatDialogRef\r\n ) {\r\n this.file = data;\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n async ngAfterViewInit() {\r\n try {\r\n console.log(this.file);\r\n const res = await this.sign(this.file);\r\n this.signedDocument = { url: res, fileName: this.file.fileName };\r\n this.dialog.close(this.signedDocument);\r\n } catch (error) {\r\n this.dialog.close(\"Abort\");\r\n }\r\n }\r\n\r\n public async sign(file) {\r\n const op = {\r\n content: file.url, // Diese Eigenschaft ist optional, wenn ausgelassen wird dem Benutzer ein Texteingabefeld gezeigt. Dies ist der Inhalt der signiert werden soll.\r\n connector: \"mobilebku\", // Diese Eigenschaft ist optional, wenn ausgelassen wird dem Benutzer gefragt. Moegliche Werte sind: \"bku\" -> Signatur mit der lokalen BKU, \"onlinebku\" -> Signatur mit der online BKU, \"mobilebku\" -> Signatur mit der Handy Signatur\r\n uiId: \"mobileSignatureBox\", // Diese Eigenschaft ist optional, wenn ausgelassen wird ein Overlay erzeugt. Dies ist die id eines div elements in das das iframe zur Benutzerinteraktion eingefuegt werden soll.\r\n sig_pos_x: 320, // Die X-Koordinate der links-unten Signaturblockecke.\r\n sig_pos_y: 820, // Die X-Koordinate der links-unten Signaturblockecke.\r\n sig_pos_p: file.pages + 1, // Die Seite auf der der Signaturblock platziert werden soll.\r\n sig_pos_w: 250, //Die Breite des Signaturblocks\r\n sig_pos_f: 50 // Die Hoehe der Fuszzeile ueber der der Signaturblock platziert werden soll.\r\n };\r\n\r\n return new Promise(function(resolve, reject) {\r\n pdfAs.signPdf(op, errorHandler, successHandler);\r\n\r\n function errorHandler(error, cause) {\r\n reject(error);\r\n console.log(cause);\r\n }\r\n function successHandler(pdfurl) {\r\n //this.dialog.close(pdfurl);\r\n resolve(pdfurl);\r\n }\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\r\nimport { AzureServiceService } from '../../shared/services/azure-service.service';\r\nimport { FormControl, Validators } from '@angular/forms';\r\nimport { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';\r\nimport { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';\r\nimport * as numeral from 'numeral';\r\nimport { parsePhoneNumberFromString } from 'libphonenumber-js';\r\nimport { FavoritesDialogComponent } from './favorites-dialog/favorites-dialog.component';\r\nimport { FavoritesService } from '../../shared/services/favorites.service';\r\nimport { Favorite } from '../../shared/classes/favorite';\r\nimport { FavoritesDetailComponent } from '../favorites/favorites-detail/favorites-detail.component';\r\nimport { PersonTitles } from '../../shared/collections/person-titles';\r\nimport * as forge from 'node-forge';\r\nimport { PortalsService } from '../../shared/services/portals.service';\r\nimport { SignatureService } from '../../shared/services/signature.service';\r\nimport { SignDialogComponent } from './sign-dialog/sign-dialog.component';\r\nimport { PDFDocument } from 'pdf-lib';\r\nimport { RequestsClientService } from '../requests/clients/requests-client.service';\r\n\r\n@Component({\r\n selector: 'app-upload',\r\n templateUrl: './upload.component.html',\r\n styleUrls: ['./upload.component.css']\r\n})\r\nexport class UploadComponent implements OnInit {\r\n @ViewChild('emailField')\r\n emailField: ElementRef;\r\n @ViewChild('senderComments') senderInput;\r\n public uploadData = {\r\n filesToSend: null,\r\n filesToReSend: null,\r\n reSendID: '',\r\n uploadPIN: '',\r\n confirmUploadPIN: '',\r\n recipientEmail: '',\r\n senderComments: '',\r\n internalNote: '',\r\n recipientPhoneNo: '',\r\n smsID: '',\r\n patientTitle: '',\r\n patientFirstName: '',\r\n patientLastName: '',\r\n salt: '',\r\n iv: '',\r\n signedFiles: null,\r\n contactID: ''\r\n };\r\n\r\n public convertedFiles;\r\n public personTitles = PersonTitles;\r\n public fileSendType = 1;\r\n public fileSentStatus = 0;\r\n public fileSendError = false;\r\n public sendSms = true;\r\n public signDocuments = false;\r\n public validNumber = true;\r\n private contactExists = false;\r\n public panelOpenState = false;\r\n public showETresor = false;\r\n private currentContact: Favorite;\r\n public sendETresor = false;\r\n public wantsToBeNotified = true;\r\n public signSubmit = false;\r\n private reqID = null;\r\n\r\n constructor(\r\n private azureClient: AzureServiceService,\r\n private portalService: PortalsService,\r\n private dialog: MatDialog,\r\n private favoritesService: FavoritesService,\r\n public snackBar: MatSnackBar,\r\n private signatureService: SignatureService,\r\n private requestsService: RequestsClientService\r\n ) {}\r\n\r\n async ngOnInit() {\r\n this.uploadData.uploadPIN = this.generatePIN();\r\n await this.handleReSend();\r\n console.log('ABOTYPE:', this.azureClient.getUserAboType());\r\n }\r\n\r\n private async handleReSend() {\r\n const {\r\n state: { data: stateData }\r\n } = history;\r\n if (stateData?.idx) {\r\n if (stateData.recipientEmail) {\r\n this.uploadData.recipientEmail = stateData.recipientEmail;\r\n this.uploadData.senderComments = stateData.senderComments;\r\n this.uploadData.patientTitle = stateData.patientTitle;\r\n this.uploadData.patientFirstName = stateData.patientFirstName;\r\n this.uploadData.patientLastName = stateData.patientLastName;\r\n this.uploadData.filesToReSend = stateData.files;\r\n this.uploadData.reSendID = stateData.idx;\r\n this.uploadData.contactID = stateData.contactID;\r\n if (this.uploadData.contactID) {\r\n // console.log('contact');\r\n await this.setFavoriteCode();\r\n }\r\n } else {\r\n this.fileSendType = 2;\r\n }\r\n } else if (stateData?.reqID) {\r\n this.reqID = stateData.reqID;\r\n this.uploadData.filesToReSend = stateData.files;\r\n this.uploadData.contactID = stateData.contactID;\r\n this.uploadData.reSendID = '-1';\r\n await this.setFavoriteData(stateData.contactID);\r\n }\r\n }\r\n\r\n private async setFavoriteCode() {\r\n const favorites = await this.favoritesService.getFavorites();\r\n const result = favorites.find((favorite) => favorite.id === this.uploadData.contactID);\r\n if (!result) {\r\n return;\r\n }\r\n if (result.DefaultPW) {\r\n this.uploadData.uploadPIN = result.DefaultPW;\r\n }\r\n }\r\n\r\n private async setFavoriteData(contactID) {\r\n const favorites = await this.favoritesService.getFavorites();\r\n const result = favorites.find((favorite) => favorite.id === contactID);\r\n if (!result) {\r\n return;\r\n }\r\n const contactUploadData = {\r\n recipientEmail: result.EMail || '',\r\n patientTitle: result.PersonTitle || '',\r\n patientFirstName: result.FirstNameEn || '',\r\n patientLastName: result.LastNameEn || '',\r\n ...(result.DefaultPW && { uploadPIN: result.DefaultPW }),\r\n ...(result.DefaultPW && { confirmUploadPIN: result.DefaultPW }),\r\n ...(result.PhoneMobile && { recipientPhoneNo: result.PhoneMobile })\r\n };\r\n this.sendSms = result.DefaultSendSMS ?? true;\r\n this.wantsToBeNotified = result.StatusID !== 1;\r\n this.uploadData = { ...this.uploadData, ...contactUploadData };\r\n }\r\n\r\n public async fileAdd(files) {\r\n const fileArr: File[] = Array.from(files);\r\n\r\n const encArr = [];\r\n /* await fileArr.forEach(async (item) => {\r\n\t\t\tconst encFile = await this.encryptFile(item);\r\n\t\t\tencArr.push({ name: item.name, file: encFile });\r\n\t\t}); */\r\n\r\n // console.log('Unencrypted Files', fileArr);\r\n // console.log('Encrypted Files', encArr);\r\n\r\n if (this.azureClient.filesIsEmpty) {\r\n this.azureClient.filesToUpload = fileArr;\r\n this.azureClient.setFiles();\r\n } else {\r\n this.azureClient.filesToUpload.push(...fileArr);\r\n }\r\n }\r\n\r\n public getFilesToSend() {\r\n return this.azureClient.filesToUpload;\r\n }\r\n\r\n public getPin() {\r\n return this.azureClient.getPin();\r\n }\r\n\r\n setRequestStatus() {}\r\n\r\n public async sendFile(event) {\r\n this.uploadData.senderComments = this.senderInput.nativeElement.value;\r\n console.log(this.uploadData.senderComments);\r\n if (this.signSubmit) {\r\n return;\r\n }\r\n try {\r\n if (this.fileSentStatus === 1) {\r\n return;\r\n }\r\n if (!this.azureClient.filesToUpload && !this.uploadData.signedFiles && !this.uploadData.filesToReSend) {\r\n return;\r\n }\r\n if (!this.uploadData.signedFiles) {\r\n this.uploadData.signedFiles = '';\r\n }\r\n this.fileSentStatus = 1;\r\n this.fileSendError = false;\r\n this.azureClient.setPin(this.uploadData.uploadPIN);\r\n if (this.sendSms) {\r\n this.validNumber = await this.sendPIN(this.uploadData.recipientPhoneNo);\r\n }\r\n if (this.validNumber) {\r\n if (this.sendETresor) {\r\n await this.sendToETresor();\r\n }\r\n\r\n const portal = await this.portalService.getOwnPortal();\r\n console.log(portal);\r\n this.azureClient.signWithName = portal.SignWithName;\r\n\r\n if (this.azureClient.filesToUpload?.length > 0 && !this.signDocuments) {\r\n await this.azureClient.uploadFormDataFile(this.azureClient.filesToUpload, 'api/fileupload', this.uploadData);\r\n }\r\n if (\r\n (this.uploadData.signedFiles?.length > 0 && this.signDocuments) ||\r\n this.uploadData.filesToReSend?.length > 0\r\n ) {\r\n await this.azureClient.uploadFormDataFileSigned(this.uploadData, 'signedupload');\r\n }\r\n if (this.reqID) {\r\n await this.requestsService.update({ id: this.reqID, StatusID: 3 });\r\n }\r\n this.resetUploadData();\r\n console.log('reset upload');\r\n this.fileSentStatus = 2;\r\n } else if (!this.validNumber) {\r\n this.fileSentStatus = 0;\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n this.fileSendError = true;\r\n this.fileSentStatus = 0;\r\n }\r\n // .subscribe((res) => {\r\n // console.log(res);\r\n // }, err => {\r\n // console.log(err);\r\n // });\r\n }\r\n\r\n public removeFile(index, type) {\r\n if (type === 'normal') {\r\n this.azureClient.filesToUpload.splice(index, 1);\r\n if (this.azureClient.filesToUpload.length === 0) {\r\n this.azureClient.filesToUpload = null;\r\n }\r\n } else if (type === 'signed') {\r\n this.uploadData.signedFiles.splice(index, 1);\r\n if (this.uploadData.signedFiles.length === 0) {\r\n this.uploadData.signedFiles = null;\r\n }\r\n } else if (type === 'reSend') {\r\n this.uploadData.filesToReSend.splice(index, 1);\r\n if (this.uploadData.filesToReSend.length === 0) {\r\n this.uploadData.filesToReSend = null;\r\n }\r\n }\r\n this.azureClient.filesIsEmpty = true;\r\n }\r\n\r\n private resetUploadData() {\r\n this.uploadData = {\r\n filesToSend: null,\r\n filesToReSend: null,\r\n reSendID: '',\r\n uploadPIN: this.generatePIN(),\r\n confirmUploadPIN: '',\r\n recipientEmail: '',\r\n senderComments: '',\r\n internalNote: '',\r\n recipientPhoneNo: '',\r\n smsID: '',\r\n patientTitle: '',\r\n patientFirstName: '',\r\n patientLastName: '',\r\n salt: '',\r\n iv: '',\r\n signedFiles: null,\r\n contactID: ''\r\n };\r\n this.azureClient.filesToUpload = null;\r\n this.azureClient.filesIsEmpty = true;\r\n this.panelOpenState = false;\r\n this.showETresor = false;\r\n this.sendETresor = false;\r\n this.wantsToBeNotified = true;\r\n this.signSubmit = false;\r\n this.signDocuments = false;\r\n }\r\n\r\n public resetFileSentStatus() {\r\n this.resetUploadData();\r\n this.fileSentStatus = 0;\r\n }\r\n\r\n private generatePIN() {\r\n const number = Math.round(Math.random() * 1e6);\r\n return numeral(number).format('000000');\r\n }\r\n\r\n public signAll() {\r\n setTimeout(() => {\r\n if (this.signDocuments) {\r\n this.showSignatureDialog(0);\r\n } else {\r\n this.uploadData.signedFiles = null;\r\n }\r\n }, 200);\r\n }\r\n\r\n public async sendPIN(recipientPhoneNo) {\r\n try {\r\n const messageText =\r\n `Sie haben ein Dokument über den BefundExpress erhalten.` +\r\n ` Mit dem folgenden Code können Sie das Dokument abrufen: ${this.uploadData.uploadPIN}`;\r\n const result = await this.azureClient.sendSMS(\r\n messageText,\r\n // this.uploadData.uploadPIN,\r\n recipientPhoneNo\r\n );\r\n\r\n if (result) {\r\n this.uploadData.smsID = result;\r\n console.log('SMSID: ' + this.uploadData.smsID);\r\n return true;\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n return false;\r\n }\r\n console.log(`Message: ${this.uploadData.uploadPIN} \\n PhoneNo: ${recipientPhoneNo}`);\r\n }\r\n\r\n public async showFavoritesDialog() {\r\n if (\r\n this.dialog.openDialogs.some((openDialog) => openDialog.componentInstance instanceof FavoritesDialogComponent)\r\n ) {\r\n return;\r\n }\r\n\r\n const favorites = await this.favoritesService.getFavorites();\r\n const dialogRef = this.dialog.open(FavoritesDialogComponent, {\r\n width: '500px',\r\n height: 'auto',\r\n maxHeight: '900px',\r\n data: favorites\r\n });\r\n dialogRef.afterClosed().subscribe((result) => {\r\n if (!result) {\r\n return;\r\n }\r\n console.log(result);\r\n if (result.EMail) {\r\n this.uploadData.recipientEmail = result.EMail;\r\n this.uploadData.patientTitle = result.PersonTitle;\r\n this.uploadData.patientFirstName = result.FirstNameEn;\r\n this.uploadData.patientLastName = result.LastNameEn;\r\n this.uploadData.contactID = result.id;\r\n if (result.DefaultPW) {\r\n this.uploadData.uploadPIN = result.DefaultPW;\r\n }\r\n this.sendSms = result.DefaultSendSMS ?? true;\r\n this.wantsToBeNotified = result.StatusID !== 1;\r\n\r\n this.panelOpenState = true;\r\n let elem: HTMLElement;\r\n elem = this.emailField.nativeElement as HTMLElement;\r\n elem.click();\r\n elem.blur();\r\n console.log('test');\r\n this.currentContact = result;\r\n if (result.ETresorUID) {\r\n console.log('true');\r\n this.showETresor = true;\r\n }\r\n }\r\n if (result.PhoneMobile) {\r\n this.uploadData.recipientPhoneNo = result.PhoneMobile;\r\n }\r\n });\r\n }\r\n\r\n public async convertFiles() {\r\n const res: any = await this.azureClient.getURLFromFile(this.azureClient.filesToUpload, 'api/fileconversion');\r\n console.log(res);\r\n const pages = await Promise.all(this.azureClient.filesToUpload.map(async (file) => await this.getNumPages(file)));\r\n const filePaths = res.filePaths;\r\n const encIVs = res.encIVs;\r\n\r\n const result = await this.azureClient.getURL(filePaths, encIVs);\r\n console.log(result.fileUrls);\r\n const fileNames = res.fileNames.split(',');\r\n this.convertedFiles = result.fileUrls.map((url, index) => {\r\n return { url, fileName: fileNames[index], pages: pages[index] };\r\n });\r\n }\r\n\r\n public async showSignatureDialog(index) {\r\n if (!this.convertedFiles) {\r\n await this.convertFiles();\r\n }\r\n this.signSubmit = true;\r\n try {\r\n if (this.dialog.openDialogs.some((openDialog) => openDialog.componentInstance instanceof SignDialogComponent)) {\r\n return;\r\n }\r\n const dialogRef = this.dialog.open(SignDialogComponent, {\r\n width: '300px',\r\n height: 'auto',\r\n data: this.convertedFiles[index]\r\n });\r\n\r\n dialogRef.afterClosed().subscribe(async (result) => {\r\n if (!this.uploadData.signedFiles) {\r\n this.uploadData.signedFiles = [];\r\n }\r\n if (result !== 'Abort') {\r\n this.uploadData.signedFiles.push(result);\r\n //this.removeFile(index, false);\r\n if (index < this.convertedFiles.length - 1) {\r\n await this.showSignatureDialog(index + 1);\r\n }\r\n }\r\n });\r\n this.signSubmit = false;\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n }\r\n\r\n public async showAddFavoritesDialog(email, phoneNo) {\r\n const favorites = await this.favoritesService.getFavorites();\r\n favorites.forEach((favorite) => {\r\n if (favorite.EMail === email) {\r\n this.contactExists = true;\r\n this.snackBar.open('Die Email-Adresse ist bereits einem Kontakt zugewiesen', null, {\r\n duration: 3000,\r\n panelClass: 'orange-snackbar'\r\n // verticalPosition: 'top'\r\n });\r\n return;\r\n }\r\n });\r\n\r\n if (!this.contactExists) {\r\n if (\r\n this.dialog.openDialogs.some((openDialog) => openDialog.componentInstance instanceof FavoritesDetailComponent)\r\n ) {\r\n return;\r\n }\r\n const dialogRef = this.dialog.open(FavoritesDetailComponent, {\r\n data: new Favorite({\r\n PersonTitle: '',\r\n FirstNameEn: '',\r\n LastNameEn: '',\r\n EMail: email,\r\n PhoneMobile: phoneNo,\r\n edit: false\r\n })\r\n });\r\n }\r\n this.contactExists = false;\r\n }\r\n\r\n public setFileSentStatus(status) {\r\n this.fileSentStatus = status;\r\n }\r\n\r\n public showPricing() {\r\n document.getElementById('pricing').classList.toggle('show');\r\n document.getElementById('uploadBox').classList.toggle('move');\r\n }\r\n\r\n //PDF Details\r\n readFile(file) {\r\n return new Promise((resolve, reject) => {\r\n const reader = new FileReader();\r\n\r\n reader.onload = () => resolve(reader.result);\r\n reader.onerror = (error) => reject(error);\r\n\r\n reader.readAsArrayBuffer(file);\r\n });\r\n }\r\n\r\n async getNumPages(file) {\r\n const arrayBuffer = (await this.readFile(file)) as any;\r\n\r\n const pdf = await PDFDocument.load(arrayBuffer);\r\n\r\n return pdf.getPages().length;\r\n }\r\n\r\n private getBase64(file) {\r\n const reader = new FileReader();\r\n\r\n return new Promise((resolve, reject) => {\r\n reader.readAsDataURL(file);\r\n reader.onerror = () => {\r\n reader.abort();\r\n reject(new DOMException('Problem parsing input file.'));\r\n };\r\n reader.onload = () => {\r\n resolve(reader.result);\r\n };\r\n });\r\n }\r\n\r\n private dataURLtoFile(dataurl, filename) {\r\n const arr = dataurl.split(',');\r\n const mime = arr[0].match(/:(.*?);/)[1];\r\n const bstr = atob(arr[1]);\r\n let n = bstr.length;\r\n const u8arr = new Uint8Array(n);\r\n\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n return new File([u8arr], filename, { type: mime });\r\n }\r\n\r\n // private async encryptionTest(file) {\r\n // try {\r\n // const file64 = await this.getBase64(file);\r\n // console.log('file64', file64);\r\n // // AES Encrytpion\r\n // const key = forge.random.getBytesSync(16);\r\n // const iv = forge.random.getBytesSync(16);\r\n\r\n // const cipher = forge.cipher.createCipher('AES-CBC', key);\r\n // cipher.start({ iv: iv });\r\n // const fileBuffer = forge.util.createBuffer(file64);\r\n // cipher.update(fileBuffer);\r\n // cipher.finish();\r\n // const encrypted = cipher.output;\r\n\r\n // const decipher = forge.cipher.createDecipher('AES-CBC', key);\r\n // decipher.start({ iv: iv });\r\n // decipher.update(encrypted);\r\n // const result = decipher.finish();\r\n // console.log('Decrypted File', this.dataURLtoFile(decipher.output.toString(), 'test'));\r\n\r\n // // PKCS5 Encryption\r\n // const numIterations = 10000;\r\n // const salt = forge.random.getBytesSync(128);\r\n // const password = '691821';\r\n\r\n // const derivedKey = forge.pkcs5.pbkdf2(password, salt, numIterations, 16);\r\n // const encoded = forge.util.encode64(derivedKey);\r\n\r\n // // console.log('devKey', encoded);\r\n // } catch (e) {\r\n // console.log(e);\r\n // }\r\n // }\r\n\r\n private async encryptFile(file) {\r\n try {\r\n const file64 = await this.getBase64(file);\r\n\r\n const key = this.generateKey();\r\n const iv = forge.random.getBytesSync(16);\r\n\r\n const cipher = forge.cipher.createCipher('AES-CBC', key);\r\n cipher.start({ iv: iv });\r\n const fileBuffer = forge.util.createBuffer(file64);\r\n cipher.update(fileBuffer);\r\n cipher.finish();\r\n const encrypted = cipher.output.toHex();\r\n return encrypted;\r\n } catch (e) {\r\n console.log('Error while encrypting', e);\r\n }\r\n }\r\n\r\n private generateKey() {\r\n const numIterations = 100000;\r\n const salt = forge.random.getBytesSync(128);\r\n\r\n const derivedKey = forge.pkcs5.pbkdf2(this.uploadData.uploadPIN, salt, numIterations, 16);\r\n // const encoded = forge.util.encode64(derivedKey);\r\n return derivedKey;\r\n }\r\n\r\n public async sendToETresor() {\r\n if (this.currentContact) {\r\n const blobs = await Promise.all(\r\n this.azureClient.filesToUpload.map((file) => {\r\n const blob = new Blob([file], {\r\n type: 'text/plain'\r\n });\r\n const newObj = {\r\n name: file.name,\r\n data: blob\r\n };\r\n\r\n return newObj;\r\n })\r\n );\r\n\r\n console.log('blobs: ', blobs);\r\n const res = await this.azureClient.sendToETresor(this.currentContact, blobs);\r\n return res;\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n BefundExpress Account\r\n E-Mail\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 {{ file?.name }} \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n {{ file?.fileName }} \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n {{ file?.fileName }} \r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n Dieser Empfänger will nicht kontaktiert werden!\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n \r\n \r\n Bitte geben Sie eine gültige EMail Adresse ein\r\n \r\n\r\n \r\n \r\n\r\n Der Code muss aus 6-20 Buchstaben und Zahlen bestehen.\r\n \r\n \r\n Code per SMS\r\n\r\n \r\n \r\n Die eingegebenen Codes stimmen nicht überein\r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n Bitte geben Sie eine gültige Telefonnummer ein\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 Daten der/des Betroffenen\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n {{ title }}\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
Bitte geben Sie eine gültige Telefonnummer ein
\r\n
\r\n
\r\n Fehler beim Versenden. Bitte überprüfen Sie Ihre Eingaben\r\n
\r\n
\r\n \r\n Senden\r\n \r\n \r\n
\r\n \r\n
\r\n
Code: {{ getPin() }}
\r\n
\r\n Datei wurde erfolgreich versendet!\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, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-agb',\r\n templateUrl: './agb.component.html',\r\n styleUrls: ['./agb.component.css']\r\n})\r\nexport class AgbComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","

\r\n agb works!\r\n

\r\n","
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n Ungültiger Code\r\n
\r\n
\r\n \r\n Überprüfen\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n Link wird überprüft\r\n \r\n
\r\n
\r\n Ungültiger Link!\r\n
\r\n
\r\n\r\n","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { DownloadService } from '../../shared/services/download.service';\r\nimport { Url } from 'url';\r\n\r\n@Component({\r\n\tselector: 'app-download',\r\n\ttemplateUrl: './download.component.html',\r\n\tstyleUrls: [ './download.component.css' ]\r\n})\r\nexport class DownloadComponent implements OnInit {\r\n\tprivate token: string;\r\n\tpublic pin: string;\r\n\tpublic checkFile = 0;\r\n\t// public downloadLink: Url;\r\n\tpublic downloadLinks: Url[];\r\n\tpublic fileDownloadStatus = 0;\r\n\tpublic senderComments: string;\r\n\tpublic fileNames: string[];\r\n\tprivate downloadID;\r\n\tprivate statusID;\r\n\tpublic errorMessage = false;\r\n\tconstructor(private route: ActivatedRoute, private downloadService: DownloadService) {}\r\n\r\n\tasync ngOnInit() {\r\n\t\tthis.token = this.route.snapshot.paramMap.get('token');\r\n\t\tthis.checkFile = await this.downloadService.checkIfDocumentExists(this.token);\r\n\t\t// .subscribe(data => this.uploadInfos = { ...data },\r\n\t\t// error => this.errorMessage = 'Ungültiger Token');\r\n\t}\r\n\r\n\tasync downloadFile(event) {\r\n\t\tevent.preventDefault();\r\n\t\tif (this.fileDownloadStatus === 1) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\ttry {\r\n\t\t\tthis.fileDownloadStatus = 1;\r\n\t\t\tconst {id, comments, fileUrls, fileNames, statusID } = await this.downloadService.downloadDocument(this.token, this.pin);\r\n\t\t\tthis.downloadID = id;\r\n\t\t\tthis.statusID = statusID;\r\n\t\t\t// const result = await this.downloadService.downloadDocument(this.token, this.pin);\r\n\r\n\t\t\t/* const bytes = new Uint8Array(result.response.length);\r\n\t\t\tfor (let i = 0; i < result.response.length; i++) {\r\n\t\t\t\tbytes[i] = result.response.charCodeAt(i);\r\n\t\t\t}\r\n\t\t\tconst blob = new Blob([ bytes ], { type: 'text/plain' });\r\n\t\t\tconsole.log('Res: ', blob);*/\r\n\t\t\tthis.errorMessage = false;\r\n\t\t\t// console.log(comments, fileUrl);\r\n\t\t\tthis.senderComments = comments;\r\n\t\t\tthis.fileNames = fileNames ? fileNames.split(',') : null;\r\n\t\t\t// this.downloadLink = fileUrl;\r\n\t\t\tthis.downloadLinks = fileUrls;\r\n\t\t\tthis.fileDownloadStatus = 2;\r\n\t\t} catch (err) {\r\n\t\t\tthis.errorMessage = true;\r\n\t\t\tthis.fileDownloadStatus = 0;\r\n\t\t}\r\n\t}\r\n\r\n\tasync setSeen(){\r\n\t\tif(this.statusID != 101){\r\n\t\t\tawait this.downloadService.updateDownloadStatus(this.token, this.downloadID);\r\n\t\t}\r\n\t\tconsole.log('already checked');\r\n\t}\r\n\r\n\tpublic blobToFile = (theBlob: Blob, fileName: string): File => {\r\n\t\tconst b: any = theBlob;\r\n\r\n\t\tb.lastModifiedDate = new Date();\r\n\t\tb.name = fileName;\r\n\r\n\t\treturn theBlob;\r\n\t};\r\n\r\n\t// https://stackoverflow.com/questions/41379274/print-html-template-in-angular-2-ng-print-in-angular-2\r\n\tprintToCart(printSectionId: string) {\r\n\t\tlet popupWinindow;\r\n\t\tconst innerContents = document.getElementById(printSectionId).innerHTML;\r\n\t\tpopupWinindow = window.open(\r\n\t\t\t'',\r\n\t\t\t'_blank',\r\n\t\t\t'width=600,height=700,scrollbars=no,menubar=no,toolbar=no,location=no,status=no,titlebar=no'\r\n\t\t);\r\n\t\tpopupWinindow.document.open();\r\n\t\tpopupWinindow.document.write(\r\n\t\t\t`\r\n\t ` +\r\n\t\t\t\tinnerContents +\r\n\t\t\t\t''\r\n\t\t);\r\n\t\tpopupWinindow.document.close();\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n ETresor-Account erfolgreich verbunden!\r\n \r\n
\r\n
\r\n Ungültiger Link!\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { FavoritesService } from '../../shared/services/favorites.service';\r\n\r\n@Component({\r\n\tselector: 'app-etresor',\r\n\ttemplateUrl: './etresor.component.html',\r\n\tstyleUrls: [ './etresor.component.css' ]\r\n})\r\nexport class ETresorComponent implements OnInit {\r\n\tprivate uid;\r\n\tprivate tid;\r\n\tpublic resultCode;\r\n\tpublic status = 0;\r\n\r\n\tconstructor(private route: ActivatedRoute, private favoritesService: FavoritesService) {}\r\n\r\n\tasync ngOnInit() {\r\n\t\tthis.route.queryParams.subscribe(async (params) => {\r\n\t\t\tthis.uid = params['uid'];\r\n\t\t\tthis.tid = params['tid'];\r\n\t\t\tthis.resultCode = params['result'];\r\n\r\n\t\t\tconsole.log(`UserID: ${this.uid}, TransactionID: ${this.tid}, Result: ${this.resultCode}`);\r\n\t\t\tif (this.uid && this.tid) {\r\n\t\t\t\tconst result = await this.favoritesService.connectAccounts(this.tid, this.uid);\r\n\t\t\t\tthis.status = 1;\r\n\t\t\t\tconsole.log(result);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.css']\r\n})\r\nexport class HomeComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","

\r\n home works!\r\n

\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ConnectedAccountsService } from '../../shared/services/connected-accounts.service';\r\nimport { IConnectedAccountType } from 'src/app/shared/components/connected-accounts-list/connected-accounts-list.component';\r\nimport { AzureServiceService } from '../../shared/services/azure-service.service';\r\nimport { FavoritesService } from '../../shared/services/favorites.service';\r\nimport { ShortcodeService } from '../../shared/services/shortcode.service';\r\n\r\n@Component({\r\n\tselector: 'app-login',\r\n\ttemplateUrl: './login.component.html',\r\n\tstyleUrls: [ './login.component.css' ],\r\n\tproviders: [ ConnectedAccountsService ]\r\n})\r\nexport class LoginComponent implements OnInit {\r\n\tpublic username = '';\r\n\tpublic password = '';\r\n\tpublic errorMessage = '';\r\n\tpublic loginPending = false;\r\n\tpublic externalLoginPending = false;\r\n\tconstructor(\r\n\t\tprivate azureClient: AzureServiceService,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate router: Router,\r\n\t\tprivate favoritesService: FavoritesService,\r\n\t\tprivate shortCodeService: ShortcodeService,\r\n private caService: ConnectedAccountsService\r\n\t) {}\r\n\r\n\tngOnInit() {\r\n\t\t// Check if login is happening via the connected accounts route /login/via/\r\n\t\t// and if yes, redirect to external login straight away\r\n\t\tconst loginVia = this.route.snapshot.paramMap.get(\"connectedAccountType\");\r\n\t\tif(loginVia) {\r\n\t\t\tthis.externalLoginPending = true;\r\n\t\t\tthis.externalLogin(loginVia);\r\n\t\t}\r\n\t\t// this.heroForm = new FormGroup({\r\n\t\t// 'name': new FormControl(this.hero.name, [\r\n\t\t// Validators.required,\r\n\t\t// ]),\r\n\t\t// 'alterEgo': new FormControl(this.hero.alterEgo),\r\n\t\t// 'power': new FormControl(this.hero.power, Validators.required)\r\n\t\t// });\r\n\t}\r\n\r\n\tasync loginClick(event) {\r\n\t\tevent.preventDefault();\r\n\t\t// console.log(event);\r\n\t\tif (!this.username || !this.password) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.errorMessage = '';\r\n\t\ttry {\r\n\t\t\tthis.loginPending = true;\r\n\t\t\tconst loginRes = await this.azureClient.login(this.username, this.password);\r\n\t\t\tif (loginRes) {\r\n\t\t\t\tthis.azureClient.redirectAfterLogin();\r\n\t\t\t\t// this.router.navigate(['upload']);\r\n\t\t\t} else {\r\n\t\t\t\tthis.errorMessage = 'MFA wird aktuell nicht unterstützt, bitte kontaktieren sie den Service.';\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tthis.errorMessage = err.message;\r\n\t\t} finally {\r\n\t\t\tthis.loginPending = false;\r\n\t\t}\r\n\t}\r\n\r\n async externalLoginClick(accountType: IConnectedAccountType) {\r\n\tawait this.externalLogin(accountType.name);\r\n }\r\n async externalLogin(accountTypeName: string) {\r\n\t// Generate a redirect URI\r\n let redirect = await this.caService.getRedirect(accountTypeName, 'login');\r\n window.location.replace(redirect.url);\r\n }\r\n}\r\n","
\r\n","import { AfterViewInit, Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AzureServiceService } from '../../shared/services/azure-service.service';\r\nimport { FavoritesService } from '../../shared/services/favorites.service';\r\nimport { ShortcodeService } from '../../shared/services/shortcode.service';\r\nimport { ConnectedAccountsService } from '../../shared/services/connected-accounts.service';\r\nimport { RegistrationService } from 'src/app/shared/services/registration.service';\r\n\r\ninterface IOauthStateInfo {\r\n accountType: string;\r\n action: string;\r\n id: string;\r\n}\r\n\r\n@Component({\r\n\tselector: 'app-oauth',\r\n\ttemplateUrl: './oauth.component.html',\r\n\tstyleUrls: [ './oauth.component.css' ],\r\n\tproviders: [ ConnectedAccountsService ]\r\n})\r\nexport class OauthComponent implements OnInit, AfterViewInit {\r\n public view = \"\";\r\n public errorDetails = \"\";\r\n\r\n private stateRegex = /(?[^-]+)-(?[^-]+)-(?.+)/;\r\n private stateInfo: IOauthStateInfo = { accountType: \"\", action: \"\", id: \"\" };\r\n\r\n private authState: string;\r\n private authCode: string;\r\n\r\n private static readonly KEY_STATE = 'state';\r\n private static readonly KEY_CODE = 'code';\r\n\r\n private static readonly VALID_ACTIONS = ['connect', 'login'];\r\n\r\n\tconstructor(\r\n\t\tprivate azureClient: AzureServiceService,\r\n private caService: ConnectedAccountsService,\r\n private registrationService: RegistrationService,\r\n private router: Router\r\n\t) {}\r\n\r\n\tngOnInit() {\r\n try{\r\n // First, attempt to get state and code from the URL\r\n let params = new URLSearchParams(window.location.search);\r\n if(!params.has(OauthComponent.KEY_STATE) || !params.has(OauthComponent.KEY_CODE)) {\r\n throw new Error(\"Missing state or code in URL: \" + window.location);\r\n }\r\n this.authState = params.get(OauthComponent.KEY_STATE);\r\n this.authCode = params.get(OauthComponent.KEY_CODE);\r\n // Then, extract the action (login/connect) from the state (little bit sketchy but what's life without some risk)\r\n const regexResult = this.stateRegex.exec(this.authState);\r\n if(!regexResult || !regexResult.groups || !regexResult.groups.accountType || !regexResult.groups.action || !regexResult.groups.id) {\r\n throw new Error(\"Invalid state: \"+ this.authState);\r\n }\r\n this.stateInfo = regexResult.groups as any;\r\n // Verify it's one of the valid actions\r\n if(!OauthComponent.VALID_ACTIONS.includes(this.stateInfo.action)){\r\n throw new Error(\"Invalid action in state: \" + this.stateInfo.action);\r\n }\r\n // Start with the connecting view\r\n this.view = \"connecting\";\r\n } catch(e) {\r\n this.showError(e);\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n const { action, accountType } = this.stateInfo;\r\n if(action === 'connect') {\r\n this.connectAccount(accountType, this.authState, this.authCode).then(() => this.showSuccess()).catch(err => this.showError(err));\r\n }else if(action === 'login') {\r\n this.loginAccount(accountType, this.authState, this.authCode).catch(err => this.showError(err));\r\n }\r\n }\r\n\r\n private async connectAccount(accountType, authState, authCode) {\r\n // Send off a request to the backend to finish the linking\r\n await this.caService.connect(accountType, { state: authState, code: authCode });\r\n }\r\n private async loginAccount(accountType, authState, authCode) {\r\n // Send off a request to the backend to attempt a login\r\n const loginResult = await this.caService.login(accountType, { state: authState, code: authCode });\r\n // Based on returned action, either proceed with login or redirect to registration\r\n if(loginResult.action === 'login') {\r\n // Finish login with the azure service\r\n this.azureClient.loginExternal(loginResult.login);\r\n this.azureClient.redirectAfterLogin();\r\n } else if (loginResult.action === 'register') {\r\n // Store registration data in registration service\r\n this.registrationService.setRegistrationToken(loginResult.registrationToken);\r\n this.registrationService.setRegistrationPrefillData({\r\n firstName: loginResult.profile.first_name,\r\n lastName: loginResult.profile.last_name,\r\n email: loginResult.profile.email,\r\n title: loginResult.profile.academic_title,\r\n salutation: loginResult.profile.gender === 'm' ? 1 : loginResult.profile.gender === 'f' ? 2 : null,\r\n portalName2: loginResult.profile.specialization\r\n })\r\n // Navigate to the registration page\r\n this.router.navigate(['register', 'via', accountType]);\r\n } else {\r\n throw new Error(`Unknown external login action: ${(loginResult as any).action}`);\r\n }\r\n }\r\n\r\n private showError(message) {\r\n // Re-format server errors and exception to show the nice error text\r\n if(message.error && message.error.error){\r\n message = message.error.error;\r\n } else if (message.message) {\r\n message = message.message;\r\n }\r\n this.errorDetails = message;\r\n this.view = \"error\";\r\n }\r\n private showSuccess() {\r\n this.view = \"success\";\r\n }\r\n\r\n get viewConnecting() { return this.view === \"connecting\"; }\r\n get viewLogin() { return this.view === \"login\"; }\r\n get viewSuccess() { return this.view === \"success\"; }\r\n get viewError() { return this.view === \"error\"; }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

{{stateInfo.action == \"connect\" ? \"Ihr Account wird verbunden....\" : \"Sie werden eingeloggt...\"}}

\r\n \r\n

Dies nimmt nur ein paar Sekunden in Anspruch. Bitte schließen Sie diese Seite nicht.

\r\n
\r\n
\r\n

\r\n \r\n Ihr Account wurde erfolgreich verbunden!\r\n

\r\n \r\n
\r\n
\r\n

\r\n \r\n Bei der Verarbeitung ist ein Fehler aufgetreten.\r\n

\r\n

Bitte versuchen Sie es erneut. Sollte der Fehler bestehen bleiben, leiten Sie die folgenden Fehlerdetails bitte weiter: {{errorDetails}}

\r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-password-reset',\r\n templateUrl: './password-reset.component.html',\r\n styleUrls: ['./password-reset.component.css']\r\n})\r\nexport class PasswordResetComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","

\r\n password-reset works!\r\n

\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AzureServiceService } from '../../shared/services/azure-service.service';\r\n\r\nimport { PortalTypes } from '../../shared/collections/portal-types';\r\nimport { PersonTitles } from '../../shared/collections/person-titles';\r\nimport { IRegistrationData, RegistrationService } from 'src/app/shared/services/registration.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';\r\nimport { IMessageDialogData, MessageDialogComponent } from 'src/app/shared/components/message-dialog/message-dialog.component';\r\n\r\n@Component({\r\n\tselector: 'app-register',\r\n\ttemplateUrl: './register.component.html',\r\n\tstyleUrls: [ './register.component.css' ]\r\n})\r\nexport class RegisterComponent implements OnInit {\r\n\tpublic registerData: IRegistrationData;\r\n\tpublic registerPending = false;\r\n\tpublic registerSuccess = false;\r\n\tpublic registerErrorMsg = '';\r\n\r\n\tpublic isConnected = false;\r\n\tpublic connectedAccountType: string;\r\n\tpublic lockedFields: string[] = [];\r\n\tpublic accountTypeNames = { 'equip4ordi': 'Equip4Ordi' };\r\n\r\n\tpublic salutations = [ { id: 1, value: 'Herr' }, { id: 2, value: 'Frau' } ];\r\n\tpublic titles = PersonTitles;\r\n\r\n\tprivate registerErrors = {\r\n\t\t'1': 'Ungültiger Username (nur Buchstaben und Zahlen, mind. 4 Zeichen)!',\r\n\t\t'2': 'Ungültiges Passwort (mind. 7 Zeichen)!',\r\n\t\t'4': 'Dieser Username ist bereits vergeben!',\r\n\t\t'5': 'Diese EMail wird bereits verwendet!',\r\n\t\t'6': 'Interner Fehler: Registrierungstoken ungültig'\r\n\t};\r\n\r\n\tpublic physicianTypes = PortalTypes.get();\r\n\r\n\tpublic phonePrefixes = [\r\n\t\t{ text: 'AUT (+43)', value: '0043' },\r\n\t\t{ text: 'GER (+49)', value: '0049' },\r\n\t\t{ text: 'CH (+41)', value: '0041' }\r\n\t];\r\n\r\n\tconstructor(private azureClient: AzureServiceService, private registrationService: RegistrationService, private route: ActivatedRoute, private router: Router, private dialog: MatDialog) {}\r\n\r\n\tngOnInit() {\r\n\t\t// Fill data fields with default data\r\n\t\tthis.registerData = this.registrationService.getRegistrationDefaultData();\r\n\t\t// Determine if this is a connected registration or a normal one\r\n\t\tif(this.route.snapshot.paramMap.get(\"connectedAccountType\")) {\r\n\t\t\t// Let the template know\r\n\t\t\tthis.isConnected = true;\r\n\t\t\tthis.connectedAccountType = this.route.snapshot.paramMap.get(\"connectedAccountType\");\r\n\t\t\t// Validate we have prefill token and data if we're coming from a connected account\r\n\t\t\tif(!this.registrationService.getRegistrationPrefillData() || !this.registrationService.getRegistrationToken()) {\r\n\t\t\t\tthrow new Error(\"No registration data or token provided for connected accounts registration\");\r\n\t\t\t}\r\n\t\t\tconst prefillData = this.registrationService.getRegistrationPrefillData();\r\n\t\t\t// Add special option to titles so any specified freetext title is valid\r\n\t\t\tif(prefillData.title) this.titles.push(prefillData.title);\r\n\t\t\t// Lock all the fields for which prefill data has been provided\r\n\t\t\tthis.lockedFields = Object.keys(this.registrationService.getRegistrationPrefillData());\r\n\t\t\t// Prefill fields\r\n\t\t\tthis.registerData = { ...this.registerData, ...prefillData };\r\n\t\t\t// Clear data from registration service\r\n\t\t\tthis.registrationService.setRegistrationPrefillData(null);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async registerClick(event) {\r\n\t\ttry {\r\n\t\t\tthis.registerErrorMsg = '';\r\n\t\t\tthis.registerPending = true;\r\n\t\t\tif (!this.isLabOrPharmacy(this.registerData.fieldOfPractice)) {\r\n\t\t\t\tdelete this.registerData.portalName;\r\n\t\t\t}\r\n\t\t\tconst registerResult = await this.registrationService.register(this.registerData, this.isConnected ? this.registrationService.getRegistrationToken() : null);\r\n\t\t\tthis.registerSuccess = true;\r\n\t\t\tthis.registrationService.setRegistrationToken(null);\r\n\t\t} catch (err) {\r\n\t\t\tconst errors = JSON.parse(err.request.response);\r\n\t\t\tthis.registerErrorMsg = errors.map((error) => this.registerErrors[error.Error] || '').join('\\r\\n');\r\n\t\t} finally {\r\n\t\t\tthis.registerPending = false;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic isLabOrPharmacy(fieldOfPracticeID) {\r\n\t\treturn +fieldOfPracticeID === 45 || +fieldOfPracticeID === 33;\r\n\t}\r\n\r\n\tpublic alreadyRegisteredClick() {\r\n\t\tif(!this.isConnected) {\r\n\t\t\t// In a normal registration form, \"already registered\" just redirects to login\r\n\t\t\tthis.router.navigate(['login']);\r\n\t\t}else {\r\n\t\t\t// In a connected account registration, the user is supposed to connect an E4O account by using the settings while logged in.\r\n\t\t\t// Provide a guide to that end in a dialog\r\n\t\t\tconst infoDialog = this.dialog.open(\r\n\t\t\t\tMessageDialogComponent,\r\n\t\t\t\t{\r\n\t\t\t\t\twidth: '500px',\r\n\t\t\t\t\tdata: {\r\n\t\t\t\t\t\ttitle: 'Bereits registriert?',\r\n\t\t\t\t\t\tmessage: 'Falls Sie bereits ein BefundExpress-Konto haben, loggen Sie sich bitte normal ein und verbinden Sie Ihr ' + this.accountTypeNames[this.connectedAccountType] + '-Konto unter Einstellungen ➡ Mein Profil ➡ Schnittstellen-Benutzer ➡ Neuen Account verbinden.',\r\n\t\t\t\t\t\tbuttonLabel: 'Zum Login',\r\n\t\t\t\t\t\tbuttonAction: () => {\r\n\t\t\t\t\t\t\tinfoDialog.close();\r\n\t\t\t\t\t\t\tthis.router.navigate(['login']);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} as IMessageDialogData\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t}\r\n\t\t// Make sure the link doesn't reload the page\r\n\t\treturn false;\r\n\t}\r\n\r\n\t// agbClick(event) {\r\n\t// console.log(event);\r\n\t// }\r\n}\r\n","
\r\n
\r\n
\r\n

Registrierung

\r\n
\r\n Die Registrierung ist nur für Ärzte notwendig,\r\n nicht für Patienten!\r\n
\r\n
\r\n
Willkommen bei BefundExpress!
\r\n Ihre Daten werden von Ihrem {{accountTypeNames[connectedAccountType]}}-Konto übernommen. Bitte lesen und bestätigen Sie die AGB und die Datenschutzerklärung, um die Registrierung abzuschließen.\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ salutation.value }}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ title }}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n Bitte geben Sie Ihren Vornamen ein.\r\n \r\n
\r\n
\r\n \r\n \r\n Bitte geben Sie Ihren Nachnamen ein.\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ physicianType.value }}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n Bitte geben Sie den Namen ihres/r Labor/Apotheke\r\n ein.\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{ prefix.text }}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n Bitte geben Sie Ihre Telefonnr. ein.\r\n \r\n
\r\n
\r\n \r\n \r\n Bitte geben Sie eine gültige EMail Adresse ein.\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Bitte geben Sie einen gültigen Username ein (nur Buchstaben und\r\n Zahlen, mind. 4 Zeichen).\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Bitte geben Sie ein gültiges Passwort ein (mind. 7\r\n Zeichen).\r\n \r\n
\r\n
\r\n \r\n \r\n Die Passwörter stimmen nicht überein.\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n Mit der Bestätigung der Allgemeinen Geschäftsbedingungen und der\r\n Betätigung des Buttons \"Registrieren\", erklären Sie sich\r\n einerseits mit unseren Allgemeinen Geschäftsbedingungen\r\n einverstanden und geben außerdem eine gültige Bestellung für die\r\n Nutzung von BefundExpress bei der Peacequare GmbH ab.\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n\r\n","export class CuberryPromotion {\r\n id: number;\r\n PromoName: string;\r\n PromoStart: Date;\r\n PromoEnd: Date;\r\n FutureAboTypeID: number;\r\n PromoText: string;\r\n PromoResponse: string;\r\n ServiceStartDate: Date;\r\n ServiceDuration: number;\r\n IsMainAbo: boolean;\r\n UpgradeFromAboTypeID: number;\r\n ShowAsNotification: boolean;\r\n NotificationText: string;\r\n Active: boolean;\r\n StatusID: number;\r\n CreatedOn: Date;\r\n CreatedBy: string;\r\n EditedOn: Date;\r\n EditedBy: string;\r\n}\r\n","export class Favorite {\r\n id: any;\r\n Active: any;\r\n BxPortailID: any;\r\n City: any;\r\n ContactNo: any;\r\n CountryID: any;\r\n CreatedBy: any;\r\n CreatedOn: any;\r\n DateOfBirth: any;\r\n DefaultSendSMS: any;\r\n DefaultPW: any;\r\n EMail: any;\r\n EditedBy: any;\r\n EditedOn: any;\r\n ETresorTID: any;\r\n ETresorUID: any;\r\n FirstNameAr: any;\r\n FirstNameEn: any;\r\n GenderID: any;\r\n InsuranceNo: any;\r\n InsurancePrimary: any;\r\n IsSystemReferrer: any;\r\n JobTitle: any;\r\n LastNameAr: any;\r\n LastNameEn: any;\r\n MAPortailID: any;\r\n MaritalStatusID: any;\r\n MiddleNameAr: any;\r\n MiddleNameEn: any;\r\n Note: any;\r\n OrganisationID: any;\r\n OrganisationName: any;\r\n PIReferrerID: any;\r\n PISpecialityCode: any;\r\n PISpecialityID: any;\r\n PersonTitle: any;\r\n PersonalIDNo?: any;\r\n PersonalIDTYpeID?: any;\r\n PhoneHome: any;\r\n PhoneMobile: any;\r\n PhoneOffice: any;\r\n PortalID: any;\r\n Position: any;\r\n RelationTypeID: any;\r\n ReportTemplateName: any;\r\n Salutation: any;\r\n ServiceProviderTypeID: any;\r\n Speciality: any;\r\n StatusID: any;\r\n Street: any;\r\n TitleID: any;\r\n Website: any;\r\n ZIPCode: any;\r\n PlaceOfBirth: String;\r\n MAContactID: number;\r\n\r\n constructor(inputData) {\r\n this.id = inputData.id;\r\n this.Active = inputData.Active;\r\n this.BxPortailID = inputData.BxPortailID;\r\n this.City = inputData.City;\r\n this.ContactNo = inputData.ContactNo;\r\n this.CountryID = inputData.CountryID;\r\n this.CreatedBy = inputData.CreatedBy;\r\n this.CreatedOn = inputData.CreatedOn;\r\n this.DateOfBirth = inputData.DateOfBirth;\r\n this.DefaultPW = inputData.DefaultPW;\r\n this.DefaultSendSMS = inputData.DefaultSendSMS;\r\n this.EMail = inputData.EMail;\r\n this.EditedBy = inputData.EditedBy;\r\n this.EditedOn = inputData.EditedOn;\r\n this.ETresorTID = inputData.ETresorTID;\r\n this.ETresorUID = inputData.ETresorUID;\r\n this.FirstNameAr = inputData.FirstNameAr;\r\n this.FirstNameEn = inputData.FirstNameEn;\r\n this.GenderID = inputData.GenderID;\r\n this.IsSystemReferrer = inputData.IsSystemReferrer;\r\n this.InsuranceNo = inputData.InsuranceNo;\r\n this.InsurancePrimary = inputData.InsurancePrimary;\r\n this.JobTitle = inputData.JobTitle;\r\n this.LastNameAr = inputData.LastNameAr;\r\n this.LastNameEn = inputData.LastNameEn;\r\n this.MAPortailID = inputData.MAPortailID;\r\n this.MaritalStatusID = inputData.MaritalStatusID;\r\n this.MiddleNameAr = inputData.MiddleNameAr;\r\n this.MiddleNameEn = inputData.MiddleNameEn;\r\n this.Note = inputData.Note;\r\n this.OrganisationID = inputData.OrganisationID;\r\n this.OrganisationName = inputData.OrganisationName;\r\n this.PIReferrerID = inputData.PIReferrerID;\r\n this.PISpecialityCode = inputData.PISpecialityCode;\r\n this.PISpecialityID = inputData.PISpecialityID;\r\n this.PersonTitle = inputData.PersonTitle;\r\n this.PersonalIDNo = inputData.PersonalIDNo;\r\n this.PersonalIDTYpeID = inputData.PersonalIDTYpeID;\r\n this.PhoneHome = inputData.PhoneHome;\r\n this.PhoneMobile = inputData.PhoneMobile;\r\n this.PhoneOffice = inputData.PhoneOffice;\r\n this.PortalID = inputData.PortalID;\r\n this.Position = inputData.Position;\r\n this.RelationTypeID = inputData.RelationTypeID;\r\n this.ReportTemplateName = inputData.ReportTemplateName;\r\n this.Salutation = inputData.Salutation;\r\n this.ServiceProviderTypeID = inputData.ServiceProviderTypeID;\r\n this.Speciality = inputData.Speciality;\r\n this.StatusID = inputData.StatusID;\r\n this.Street = inputData.Street;\r\n this.TitleID = inputData.TitleID;\r\n this.Website = inputData.Website;\r\n this.ZIPCode = inputData.ZIPCode;\r\n this.PlaceOfBirth = inputData.PlaceOfBirth;\r\n this.MAContactID = inputData.MAContactID;\r\n }\r\n}\r\n","export class PatientRequest {\r\n id: number;\r\n PatientID: number;\r\n PortalID: Date;\r\n RequestDate: Date;\r\n ResultDate: Date;\r\n SourceID: number;\r\n RequestExternalID: number;\r\n PatientExternalID: number;\r\n RequestResults: string;\r\n RequestResultsJSON: { testResult: 1 | 2 | 3 | 4; testTemplateName: 'LabPCRTest' | 'LabAntibodyTest' };\r\n RequestNo: number;\r\n Note: string;\r\n StatusID: number;\r\n CreatedOn: Date;\r\n CreatedBy: string;\r\n EditedOn: Date;\r\n EditedBy: string;\r\n patientName?: string;\r\n}\r\n","export class UserModel {\r\n id: string;\r\n FirstName: string;\r\n LastName: string;\r\n PersonTitle: string;\r\n PW: string;\r\n NewPW: string;\r\n PersonSalutationID: number;\r\n constructor(init?: Partial) {\r\n Object.assign(this, init);\r\n }\r\n}\r\n","export class XConfigShortcode {\r\n id: any;\r\n Active: any;\r\n CreatedBy: any;\r\n CreatedOn: any;\r\n EditedBy: any;\r\n EditedOn: any;\r\n PortalID: any;\r\n ShortcutKey: any;\r\n ShortcutText: any;\r\n TextTypeID: any;\r\n\r\n constructor(inputData) {\r\n this.id = inputData.id;\r\n this.Active = inputData.Active;\r\n this.CreatedBy = inputData.CreatedBy;\r\n this.CreatedOn = inputData.CreatedOn;\r\n this.EditedBy = inputData.EditedBy;\r\n this.EditedOn = inputData.EditedOn;\r\n this.PortalID = inputData.PortalID;\r\n this.ShortcutKey = inputData.ShortcutKey;\r\n this.ShortcutText = inputData.ShortcutText;\r\n this.TextTypeID = inputData.TextTypeID;\r\n }\r\n}\r\n","export const MessageTypes = {\r\n values: [\r\n { id: 0, value: 'E-Mail' },\r\n { id: 1, value: 'Bx User' },\r\n { id: 2, value: 'B2B' },\r\n { id: 3, value: 'B2B' },\r\n { id: 4, value: 'B2B' },\r\n { id: 12, value: 'B2C' },\r\n { id: 13, value: 'B2C' },\r\n { id: 21, value: 'B2C' },\r\n { id: 22, value: 'B2C' },\r\n { id: 23, value: 'B2C' },\r\n { id: 31, value: 'B2C' },\r\n { id: 32, value: 'B2B' },\r\n ],\r\n get(id?: number) {\r\n return typeof id === 'undefined' ? this.values.slice() : this.values.find(item => item.id === id);\r\n }\r\n};\r\n\r\n","export const PersonTitles = [\r\n 'Dr.',\r\n 'Prof.',\r\n 'Prof. Dr.',\r\n 'Mag.'\r\n];\r\n","export const PortalTypes = {\r\n values: [\r\n { value: 'Apotheke', id: 45 },\r\n { value: 'Arzt/Ärztin', id: 1 },\r\n { value: 'Therapeut/Therapeutin', id: 36 },\r\n { value: 'Radiologie', id: 13 },\r\n { value: 'Labor', id: 33 },\r\n { value: 'Rehabilitationseinrichtungen', id: 43 },\r\n { value: 'Andere', id: 99 }\r\n // { value: 'Ambulatorium', id: 44 },\r\n // { value: 'Anästhesiologie und Intensivmedizin', id: 2 },\r\n // { value: 'Apotheke', id: 45 },\r\n // { value: 'Arbeits- und Betriebsmedizin', id: 29 },\r\n // { value: 'Arzt/Ärztin für Allgemeinmedizin', id: 1 },\r\n // { value: 'Augenheilkunde und Optometrie', id: 3 },\r\n // { value: 'Chirurgie', id: 4 },\r\n // { value: 'CT, MR und sonstige bildgebende technische Leistungen', id: 41 },\r\n // { value: 'Ergotherapeut', id: 40 },\r\n // { value: 'Frauenheilkunde und Geburtshilfe', id: 6 },\r\n // { value: 'Hals-, Nasen- und Ohren', id: 9 },\r\n // { value: 'Haut- und Geschlechtskrankheiten', id: 5 },\r\n // { value: 'Histologie und Embryologie', id: 26 },\r\n // { value: 'Hygiene und Mikrobiologie', id: 35 },\r\n // { value: 'Immunologie', id: 32 },\r\n // { value: 'Innere Medizin', id: 7 },\r\n // { value: 'Kinder- und Jugendheilkunde', id: 8 },\r\n // { value: 'Kinder- und Jugendpsychiatrie', id: 25 },\r\n // { value: 'Kinderchirurgie', id: 22 },\r\n // { value: 'Klinischer Psychologe', id: 39 },\r\n // { value: 'Labor', id: 33 },\r\n // { value: 'Logopäde', id: 37 },\r\n // { value: 'Lungenkrankheiten', id: 21 },\r\n // { value: 'medizinische Biologie', id: 27 },\r\n // { value: 'Medizinische und Chemische Labordiagnostik', id: 31 },\r\n // { value: 'Neurochirurgie', id: 17 },\r\n // { value: 'Neurologie', id: 18 },\r\n // { value: 'Neurologie und Psychiatrie', id: 10 },\r\n // { value: 'Nuklearmedizin', id: 23 },\r\n // { value: 'Orthopädie und orthopädische Chirurgie', id: 11 },\r\n // { value: 'Pathologie und Histologie', id: 34 },\r\n // { value: 'Pflegeheim, Pensionistenheim', id: 42 },\r\n // { value: 'Pharmakologie und Toxikologie', id: 30 },\r\n // { value: 'Physikalische Medizin', id: 12 },\r\n // { value: 'Physiotherapeut', id: 36 },\r\n // { value: 'Plastische Chirurgie', id: 20 },\r\n // { value: 'Psychiatrie', id: 19 },\r\n // { value: 'Psychotherapeut', id: 38 },\r\n // { value: 'Radiologie', id: 13 },\r\n // { value: 'Rehabilitationseinrichtungen', id: 43 },\r\n // { value: 'Strahlentherapie - Radioonkologie', id: 24 },\r\n // { value: 'Unfallchirurgie', id: 14 },\r\n // { value: 'Urologie', id: 15 },\r\n // { value: 'Virologie', id: 28 },\r\n // { value: 'Zahn-, Mund- und Kieferheilkunde', id: 16 }\r\n ],\r\n\r\n get(id?: number) {\r\n return typeof id === 'undefined' ? this.values.slice() : this.values.filter(item => item.id === id);\r\n }\r\n};\r\n\r\n","export const ServiceProviderTypes = {\r\n values: [\r\n { id: 1, value: 'Arzt' },\r\n { id: 2, value: 'Apotheke' }\r\n // { id: 3, value: 'Labor' },\r\n // { id: 3, value: 'Meine Akte' }\r\n ],\r\n\r\n get(id?: number) {\r\n return typeof id === 'undefined'\r\n ? this.values.slice()\r\n : this.values.filter(item => item.id === id);\r\n }\r\n};\r\n","export const SVTInsurances: ISVTInsurance[] = [\r\n {\r\n code: '11',\r\n nurAnzeige: false,\r\n text: 'Österreichische Gesundheitskasse',\r\n ASVG: true,\r\n EKVKCode: '1100',\r\n EKVKName: 'OEGK',\r\n kurzbezeichnung: 'ÖGK-W'\r\n },\r\n {\r\n code: '12',\r\n nurAnzeige: false,\r\n text: 'Österreichische Gesundheitskasse',\r\n ASVG: true,\r\n EKVKCode: '1200',\r\n EKVKName: 'OEGK',\r\n kurzbezeichnung: 'ÖGK-N'\r\n },\r\n {\r\n code: '13',\r\n nurAnzeige: false,\r\n text: 'Österreichische Gesundheitskasse',\r\n ASVG: true,\r\n EKVKCode: '1300',\r\n EKVKName: 'OEGK',\r\n kurzbezeichnung: 'ÖGK-B'\r\n },\r\n {\r\n code: '14',\r\n nurAnzeige: false,\r\n text: 'Österreichische Gesundheitskasse',\r\n ASVG: true,\r\n EKVKCode: '1400',\r\n EKVKName: 'OEGK',\r\n kurzbezeichnung: 'ÖGK-O'\r\n },\r\n {\r\n code: '15',\r\n nurAnzeige: false,\r\n text: 'Österreichische Gesundheitskasse',\r\n ASVG: true,\r\n EKVKCode: '1500',\r\n EKVKName: 'OEGK',\r\n kurzbezeichnung: 'ÖGK-ST'\r\n },\r\n {\r\n code: '16',\r\n nurAnzeige: false,\r\n text: 'Österreichische Gesundheitskasse',\r\n ASVG: true,\r\n EKVKCode: '1600',\r\n EKVKName: 'OEGK',\r\n kurzbezeichnung: 'ÖGK-K'\r\n },\r\n {\r\n code: '17',\r\n nurAnzeige: false,\r\n text: 'Österreichische Gesundheitskasse',\r\n ASVG: true,\r\n EKVKCode: '1700',\r\n EKVKName: 'OEGK',\r\n kurzbezeichnung: 'ÖGK-S'\r\n },\r\n {\r\n code: '18',\r\n nurAnzeige: false,\r\n text: 'Österreichische Gesundheitskasse',\r\n ASVG: true,\r\n EKVKCode: '1800',\r\n EKVKName: 'OEGK',\r\n kurzbezeichnung: 'ÖGK-T'\r\n },\r\n {\r\n code: '19',\r\n nurAnzeige: false,\r\n text: 'Österreichische Gesundheitskasse',\r\n ASVG: true,\r\n EKVKCode: '1900',\r\n EKVKName: 'OEGK',\r\n kurzbezeichnung: 'ÖGK-V'\r\n },\r\n {\r\n code: '22',\r\n nurAnzeige: false,\r\n text: 'Betriebskrankenkasse der Wiener Verkehrsbetriebe',\r\n ASVG: true,\r\n EKVKCode: '2200',\r\n EKVKName: 'BKKWVB',\r\n kurzbezeichnung: 'BKKVB'\r\n },\r\n {\r\n code: '24',\r\n nurAnzeige: false,\r\n text: 'Betriebskrankenkasse Mondi',\r\n ASVG: true,\r\n EKVKCode: '2400',\r\n EKVKName: 'BKKMONDI',\r\n kurzbezeichnung: 'BKKMO'\r\n },\r\n {\r\n code: '25',\r\n nurAnzeige: false,\r\n text: 'Betriebskrankenkasse voestalpine Bahnsysteme',\r\n ASVG: true,\r\n EKVKCode: '2500',\r\n EKVKName: 'BKKVABS',\r\n kurzbezeichnung: 'BKKVABS'\r\n },\r\n {\r\n code: '26',\r\n nurAnzeige: false,\r\n text: 'Betriebskrankenkasse Zeltweg',\r\n ASVG: true,\r\n EKVKCode: '2600',\r\n EKVKName: 'BKKZELTWEG',\r\n kurzbezeichnung: 'BKKZW'\r\n },\r\n {\r\n code: '28',\r\n nurAnzeige: false,\r\n text: 'Betriebskrankenkasse Kapfenberg',\r\n ASVG: true,\r\n EKVKCode: '2800',\r\n EKVKName: 'BKKKAPFENBERG',\r\n kurzbezeichnung: 'BKKKA'\r\n },\r\n {\r\n code: '05',\r\n nurAnzeige: false,\r\n text: 'BVAEB-Eisenbahn Bergbau',\r\n ASVG: false,\r\n EKVKCode: '0500',\r\n EKVKName: 'BVAEBEB',\r\n kurzbezeichnung: 'BVAEB-EB'\r\n },\r\n {\r\n code: '07',\r\n nurAnzeige: false,\r\n text: 'BVAEB-Oeffentl. Bedienstete',\r\n ASVG: false,\r\n EKVKCode: '0700',\r\n EKVKName: 'BVAEBOEB',\r\n kurzbezeichnung: 'BVAEB-OEB'\r\n },\r\n {\r\n code: '40',\r\n nurAnzeige: false,\r\n text: 'Sozialversicherungsanstalt der Selbständigen - gewerbliche Wirtschaft',\r\n ASVG: false,\r\n EKVKCode: '4000',\r\n EKVKName: 'SVSGW',\r\n kurzbezeichnung: 'SVS-GW'\r\n },\r\n {\r\n code: '50',\r\n nurAnzeige: false,\r\n text: 'Sozialversicherungsanstalt der Selbständigen - Landwirtschaft',\r\n ASVG: false,\r\n EKVKCode: '5000',\r\n EKVKName: 'SVSLW',\r\n kurzbezeichnung: 'SVS-LW'\r\n },\r\n {\r\n code: '1A',\r\n nurAnzeige: false,\r\n text: 'Krankenfürsorgeanstalt der Bediensteten der Stadt Wien',\r\n ASVG: false,\r\n EKVKCode: '1A00',\r\n EKVKName: 'KFAWIEN',\r\n kurzbezeichnung: 'KFAW'\r\n },\r\n {\r\n code: '5A',\r\n nurAnzeige: false,\r\n text: 'Krankenfürsorgeanstalt für die Beamten der Landeshauptstadt Graz',\r\n ASVG: false,\r\n EKVKCode: '5A00',\r\n EKVKName: 'KFGRAZ',\r\n kurzbezeichnung: 'KFGRZ'\r\n },\r\n {\r\n code: '6A',\r\n nurAnzeige: false,\r\n text: 'Krankenfürsorgeanstalt für die Beamten der Stadt Villach',\r\n ASVG: false,\r\n EKVKCode: '6A00',\r\n EKVKName: 'KFAVILLACH',\r\n kurzbezeichnung: 'KFVIL'\r\n },\r\n {\r\n code: '7A',\r\n nurAnzeige: false,\r\n text: 'Krankenfürsorgeanstalt der Magistratsbeamten der Landeshauptstadt Salzburg',\r\n ASVG: false,\r\n EKVKCode: '7A00',\r\n EKVKName: 'KFASALZBURG',\r\n kurzbezeichnung: 'KFSAL'\r\n },\r\n {\r\n code: '8B',\r\n nurAnzeige: false,\r\n text: 'Kranken- und Unfallfürsorge der Tiroler Gemeindebeamten',\r\n ASVG: false,\r\n EKVKCode: '8B00',\r\n EKVKName: 'KUFTGEM',\r\n kurzbezeichnung: 'KFTGB'\r\n },\r\n {\r\n code: '8C',\r\n nurAnzeige: false,\r\n text: 'Kranken- und Unfallfürsorge der Tiroler Landesbeamten',\r\n ASVG: false,\r\n EKVKCode: '8C00',\r\n EKVKName: 'KUFTIROL',\r\n kurzbezeichnung: 'KFTLB'\r\n },\r\n {\r\n code: '8D',\r\n nurAnzeige: false,\r\n text: 'Kranken- und Unfallfürsorge der Tiroler Landeslehrer',\r\n ASVG: false,\r\n EKVKCode: '8D00',\r\n EKVKName: 'KUFTLEHRER',\r\n kurzbezeichnung: 'KFTLL'\r\n }\r\n];\r\n\r\nexport interface ISVTInsurance {\r\n code: string;\r\n nurAnzeige: boolean;\r\n text: string;\r\n ASVG: boolean;\r\n EKVKCode: string;\r\n EKVKName: string;\r\n kurzbezeichnung: string;\r\n}\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MatLegacyDialogRef as MatDialogRef, MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA } from '@angular/material/legacy-dialog';\r\n\r\n@Component({\r\n selector: 'app-confirm-dialog',\r\n templateUrl: './confirm-dialog.component.html',\r\n styleUrls: ['./confirm-dialog.component.css']\r\n})\r\nexport class ConfirmDialogComponent implements OnInit {\r\n public confMessage: string;\r\n // constructor(private downloadService: DownloadService) { }\r\n\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: any) {\r\n // console.log(data);\r\n this.confMessage = data;\r\n // console.log(this.downloadData);\r\n }\r\n\r\n\r\n async ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n

Bestätigen

\r\n
\r\n
\r\n
\r\n
{{confMessage}}
\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, OnInit, Inject, Output, EventEmitter, Input } from '@angular/core';\r\n\r\nexport interface IConnectedAccountType {\r\n name: string;\r\n description: string;\r\n}\r\n\r\n@Component({\r\n\tselector: 'app-connected-accounts-list',\r\n\ttemplateUrl: './connected-accounts-list.component.html',\r\n\tstyleUrls: [ './connected-accounts-list.component.css' ]\r\n})\r\nexport class ConnectedAccountsListComponent implements OnInit {\r\n @Input() filterTypes: (accountType: IConnectedAccountType) => boolean = () => true;\r\n @Output() accountClick: EventEmitter = new EventEmitter();\r\n\r\n public static readonly CONNECTED_ACCOUNT_TYPES: IConnectedAccountType[] = [\r\n {\r\n name: 'equip4ordi',\r\n description: 'Equip4Ordi'\r\n }\r\n ]\r\n\r\n\tconstructor(\r\n\t) {}\r\n\r\n\tngOnInit() {}\r\n\r\n public accountClicked(accountType) {\r\n this.accountClick.emit(accountType);\r\n }\r\n public nameFor(accountType) { return accountType.description; }\r\n public imageFor(accountType) { return `../assets/images/accounts/${accountType.name}.png`; }\r\n get connectedAccountTypes() { return ConnectedAccountsListComponent.CONNECTED_ACCOUNT_TYPES.filter(this.filterTypes); }\r\n}\r\n","
\r\n \r\n
\r\n Keine weiteren Accounts verbindbar. Falls Sie einen Account erneut verbinden möchten, bitte löschen Sie diese Verbindung zuerst.\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-contact-us',\r\n templateUrl: './contact-us.component.html',\r\n styleUrls: ['./contact-us.component.css']\r\n})\r\nexport class ContactUsComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","

\r\n contact-us works!\r\n

\r\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-file-uploader',\r\n templateUrl: './file-uploader.component.html',\r\n styleUrls: ['./file-uploader.component.css']\r\n})\r\n\r\nexport class FileUploaderComponent implements OnInit {\r\n public uploadErrorMessage: string;\r\n @Output() fileAddedEvt = new EventEmitter();\r\n @Input() maxFileSize: number = (10 * 1024 * 1024);\r\n @Input() maxFileAmount = 8;\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n onFileAdded(event) {\r\n // if (event.action === Ng2FileInputAction.Added) {\r\n const files = event.target.files;\r\n if (!files) { return; }\r\n this.checkAndSetFile(files);\r\n // }\r\n }\r\n\r\n onDrop(event) {\r\n event.preventDefault();\r\n const files = event.dataTransfer.files;\r\n if (!files) { return; }\r\n this.checkAndSetFile(files);\r\n }\r\n\r\n private checkAndSetFile(files) {\r\n // console.log(file);\r\n this.uploadErrorMessage = null;\r\n const temp = Array.from(files) as File[];\r\n if(temp.length > 8){\r\n this.uploadErrorMessage = `Sie können maximal ${this.maxFileAmount} Dateien auf Einmal hochladen`;\r\n return;\r\n }\r\n temp.forEach(file => {\r\n if (file.size > this.maxFileSize) {\r\n this.uploadErrorMessage = `Die Datei darf nicht größer als ${this.maxFileSize / (1024 * 1024)}MB sein!`;\r\n return;\r\n }\r\n if ([\r\n 'application/pdf',\r\n 'image/jpg',\r\n 'image/jpeg',\r\n 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\r\n 'application/msword'\r\n ].indexOf(file.type) === -1) {\r\n this.uploadErrorMessage = 'Es dürfen nur PDFs, MS Word Dateien (.doc, .docx) oder Bilder (.jpg) hochgeladen werden!';\r\n return;\r\n }\r\n });\r\n \r\n // this.fileToUpload = file;\r\n if(!this.uploadErrorMessage) {\r\n console.log('Added Files:', files);\r\n this.fileAddedEvt.next(files);\r\n }\r\n \r\n // console.log(this.fileToUpload);\r\n\r\n }\r\n\r\n}\r\n","\r\n
\r\n
{{uploadErrorMessage}}
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';\r\nimport { ImpressumComponent } from './impressum/impressum.component';\r\n\r\n@Component({\r\n\tselector: 'app-footer',\r\n\ttemplateUrl: './footer.component.html',\r\n\tstyleUrls: [ './footer.component.css' ]\r\n})\r\nexport class FooterComponent implements OnInit {\r\n\tcurrentYear: Date;\r\n\r\n\tconstructor(private dialog: MatDialog) {\r\n\t\tthis.currentYear = new Date();\r\n\t}\r\n\r\n\tpublic showImpressumDialog() {\r\n\t\tif(this.dialog.openDialogs.some(openDialog => openDialog.componentInstance instanceof ImpressumComponent)){\r\n\t\t\treturn;\r\n\t\t }\r\n\t\tconst dialogRef = this.dialog.open(ImpressumComponent, {});\r\n\t}\r\n\r\n\tngOnInit() {}\r\n}\r\n","
\r\n
\r\n
\r\n Copyright ©\r\n Peacequare {{currentYear | date: 'yyyy'}}\r\n
\r\n
\r\n Rechtliches |\r\n Impressum\r\n
\r\n
\r\n \r\n
","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-impressum',\r\n templateUrl: './impressum.component.html',\r\n styleUrls: ['./impressum.component.css']\r\n})\r\nexport class ImpressumComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n
Impressum
\r\n
\r\n
\r\n
\r\n Befundexpress ist ein Dienst der:\r\n
\r\n
\r\n Peacequare GmbH\r\n
\r\n Sebastian Kneipp Gasse 9/35\r\n
\r\n 1020 Wien\r\n
\r\n Tel: +43 1 934 60 89\r\n
\r\n
\r\n Steuernummer: 12 549/5887\r\n
\r\n UID: ATU68951789\r\n
\r\n Amtsgericht Wien\r\n
\r\n Geschäftsführer: Mag. Amir Moussa\r\n
\r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MatLegacyDialogRef as MatDialogRef, MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA } from '@angular/material/legacy-dialog';\r\n\r\nexport interface IMessageDialogData {\r\n title: string,\r\n message: string,\r\n buttonLabel: string,\r\n buttonAction: () => void\r\n}\r\n\r\n@Component({\r\n selector: 'app-message-dialog',\r\n templateUrl: './message-dialog.component.html',\r\n styleUrls: ['./message-dialog.component.css']\r\n})\r\nexport class MessageDialogComponent {\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: IMessageDialogData) { }\r\n}\r\n","
\r\n

{{data.title}}

\r\n
\r\n
\r\n
\r\n
{{data.message}}
\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 { Directive, ElementRef, Input, OnInit, HostListener } from '@angular/core';\r\nimport { XConfigShortcode } from '../classes/xconfig-shortcode';\r\nimport { ShortcodeService } from '../services/shortcode.service';\r\nimport { NgModel } from '@angular/forms';\r\n\r\n@Directive({\r\n\tselector: '[shortcut]',\r\n\tproviders: [ NgModel ]\r\n})\r\nexport class MacroDirective implements OnInit {\r\n\telement: ElementRef;\r\n\tdata;\r\n\tprevKey = false;\r\n\r\n\tconstructor(element: ElementRef, private shortCodeData: ShortcodeService, private ngModel: NgModel) {\r\n\t\tthis.element = element;\r\n\t\tthis.data = shortCodeData.shortCodeMap;\r\n\t}\r\n\r\n\tngOnInit() {}\r\n\r\n @HostListener('keyup', ['$event']) onKeyUp(event: KeyboardEvent) {\r\n if (event.key === '#') {\r\n if (this.prevKey) {\r\n this.prevKey = false;\r\n let temp = this.element.nativeElement.value;\r\n temp = temp.replace(/\\r?\\n|\\r/g, \" \");\r\n temp = temp.split('##')[0];\r\n temp = temp.split(' ');\r\n const shortCode = temp[temp.length - 1];\r\n const shortCodeLower = shortCode.toLowerCase();\r\n\r\n\t\t\t\tif (this.shortCodeData.shortCodeMap[shortCodeLower]) {\r\n\t\t\t\t\tconst newValue = this.element.nativeElement.value.replace(\r\n\t\t\t\t\t\t`${shortCode}##`,\r\n\t\t\t\t\t\tthis.shortCodeData.shortCodeMap[shortCodeLower].ShortcutText + ' '\r\n\t\t\t\t\t);\r\n\r\n\t\t\t\t\tthis.element.nativeElement.value = newValue;\r\n\t\t\t\t\tconst length = this.element.nativeElement.value.length;\r\n\t\t\t\t\tthis.element.nativeElement.setSelectionRange(length, length);\r\n\t\t\t\t\tthis.ngModel.update.emit(newValue);\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tthis.prevKey = true;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis.prevKey = false;\r\n\t\t}\r\n\t}\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'strRegex'\r\n})\r\nexport class StrRegexPipe implements PipeTransform {\r\n\r\n transform(value: string, args?: any): any {\r\n return value ? value.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, '\\\\$&') : '';\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BreakpointObserver, BreakpointState, Breakpoints } from '@angular/cdk/layout';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\n\r\nexport enum APP_SCREEN_SIZES {\r\n small = 'small',\r\n medium = 'medium',\r\n large = 'large'\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ApplicationStateService {\r\n\r\n private screenSize$$ = new BehaviorSubject(APP_SCREEN_SIZES.small);\r\n screenSize$: Observable = this.screenSize$$.asObservable();\r\n\r\n constructor(private breakpointObserver: BreakpointObserver) {\r\n this.breakpointObserver\r\n .observe([Breakpoints.Medium, Breakpoints.Large, Breakpoints.XLarge])\r\n // .pipe(takeUntil(this.destroy$$))\r\n .subscribe((state: BreakpointState) => {\r\n const currentBreakpoint = Object.keys(state.breakpoints).find(item => !!state.breakpoints[item]);\r\n let currentSize = APP_SCREEN_SIZES.small;\r\n if (currentBreakpoint === Breakpoints.Large || currentBreakpoint === Breakpoints.XLarge) {\r\n currentSize = APP_SCREEN_SIZES.large;\r\n } else if (currentBreakpoint === Breakpoints.Medium) {\r\n currentSize = APP_SCREEN_SIZES.medium;\r\n }\r\n this.screenSize$$.next(currentSize);\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { MobileServiceClient } from 'azure-mobile-apps-client';\r\nimport { environment } from '../../../environments/environment';\r\nimport { Router, CanActivate } from '@angular/router';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport * as CryptoJS from 'crypto-js';\r\nimport { Favorite } from '../classes/favorite';\r\n\r\n@Injectable()\r\nexport class AzureServiceService implements CanActivate {\r\n private appUrl: string = environment.azureAppURL;\r\n private redirectPath: string;\r\n public client = new MobileServiceClient(this.appUrl);\r\n public filesToUpload: File[];\r\n public filesIsEmpty = true;\r\n public showAd: Boolean;\r\n public pin;\r\n public signWithName = true;\r\n // .withFilter((request, next, callback) => {\r\n // next(request, function (error, response) {\r\n // if (error) {\r\n // this.canActivate();\r\n // }\r\n // callback(error, response);\r\n // });\r\n // });\r\n // // private myReader: FileReader = new FileReader();\r\n private loginErrors = {\r\n '6': 'Ungültiger Username!',\r\n '7': 'Dieser User ist inaktiv!',\r\n '8': (minutes) => `Zu viele Loginversuche, bitte versuchen Sie es in ${minutes} Minuten erneut`,\r\n '9': 'Falsches Passwort!',\r\n '14': 'Ungültige Logindaten!'\r\n };\r\n\r\n constructor(private router: Router, private http: HttpClient) {}\r\n\r\n public async login(username: string, password: string) {\r\n try {\r\n const loginRes = await this.client.invokeApi('login', {\r\n body: {\r\n username: username,\r\n password: password\r\n },\r\n method: 'post'\r\n });\r\n // console.log(loginRes);\r\n if (loginRes.result.forward) {\r\n return false;\r\n }\r\n this.setUserObject(loginRes.result);\r\n return true;\r\n } catch (err) {\r\n // console.log(err);\r\n const errResponse = JSON.parse(err.request.response)[0],\r\n errorMessage =\r\n errResponse.Error === 8\r\n ? this.loginErrors[errResponse.Error](errResponse.Field)\r\n : this.loginErrors[errResponse.Error];\r\n throw new Error(errorMessage);\r\n }\r\n }\r\n public async loginExternal(loginRes) {\r\n this.setUserObject(loginRes);\r\n }\r\n\r\n public getPin() {\r\n return this.pin;\r\n }\r\n\r\n public setPin(newPin) {\r\n this.pin = newPin;\r\n }\r\n\r\n public logout() {\r\n this.client.logout();\r\n localStorage.clear();\r\n this.router.navigate(['login']);\r\n window.location.reload();\r\n // localStorage.removeItem('cuberry-credentials');\r\n // localStorage.removeItem('cuberry-userobject');\r\n }\r\n\r\n private setUserObject(loginRes) {\r\n localStorage.clear();\r\n const credentials = {\r\n userId: loginRes.user.userId,\r\n mobileServiceAuthenticationToken: loginRes.token\r\n };\r\n localStorage.setItem('credentials', JSON.stringify(credentials));\r\n localStorage.setItem('userobject', JSON.stringify(loginRes.user));\r\n if (loginRes.token) {\r\n this.client.currentUser = credentials;\r\n }\r\n }\r\n\r\n public getUserAboType() {\r\n const uObject = JSON.parse(localStorage.getItem('userobject'));\r\n let aboType = uObject.ContactPortalObject.AboType;\r\n\r\n if ((aboType !== 1 && aboType !== 2 && aboType !== 3 && aboType !== 4) || aboType === null) {\r\n aboType = 0;\r\n }\r\n return aboType;\r\n }\r\n\r\n public checkLogin(): boolean {\r\n return this.client.currentUser || this.loadCredentials();\r\n }\r\n\r\n public getUserName(): string {\r\n const userObject = localStorage.getItem('credentials');\r\n return userObject ? JSON.parse(userObject).userId : '';\r\n }\r\n\r\n private loadCredentials() {\r\n const data = localStorage.getItem('credentials');\r\n const credentials = JSON.parse(data);\r\n if (credentials && this.checkCredentialsValid(credentials.mobileServiceAuthenticationToken)) {\r\n this.client.currentUser = credentials;\r\n return true;\r\n }\r\n console.log('loadCredentials -> logout');\r\n this.client.logout();\r\n localStorage.clear();\r\n return false;\r\n }\r\n\r\n private checkCredentialsValid(credentials: string) {\r\n try {\r\n const credInfo = JSON.parse(atob(credentials.split('.')[1]));\r\n return credInfo.exp * 1000 > +new Date();\r\n } catch (err) {\r\n console.log(err);\r\n return false;\r\n }\r\n }\r\n\r\n public async uploadFormDataFileSigned(uploadData, endpoint: string) {\r\n try {\r\n const res = await this.client.invokeApi(endpoint, {\r\n // parameters: {},\r\n body: uploadData,\r\n method: 'POST'\r\n });\r\n\r\n console.log('success', res);\r\n } catch (error) {\r\n console.log('error', error);\r\n }\r\n }\r\n\r\n public uploadFormDataFile(files, endpoint: string, uploadData) {\r\n // this.myReader.onload = async (event) => {\r\n // const key = CryptoJS.enc.Utf8.parse('dsa');\r\n // const iv = CryptoJS.enc.Utf8.parse('myIv');\r\n // const fileData = this.myReader.result.split(',')[1];\r\n // const rawArray = CryptoJS.enc.Base64.parse(fileData);\r\n // const encrypted = CryptoJS.AES.encrypt(rawArray, 'dsa');\r\n // console.log(encrypted);\r\n // const encB64 = CryptoJS.enc.Base64.stringify(encrypted.ciphertext);\r\n // const b64Blob = new Blob([encB64], { type: 'application/pdf' });\r\n // const url = `data:application/octet-stream;base64,${encB64}`;\r\n\r\n // const tempResp = await fetch(url);\r\n // const b64Blob = await tempResp.blob();\r\n // console.log(b64Blob);\r\n // .then(res => res.blob())\r\n // .then(blob => console.log(blob));\r\n // console.log(encB64);\r\n // // console.log(decrypted);\r\n\r\n const _headers = new HttpHeaders();\r\n const headers = _headers.set('X-ZUMO-AUTH', this.client.currentUser.mobileServiceAuthenticationToken);\r\n const formData = new FormData();\r\n\r\n const uObject = JSON.parse(localStorage.getItem('userobject'));\r\n const userName = `${uObject.PersonTitle} ${uObject.FirstName} ${uObject.LastName}`;\r\n\r\n formData.append('PIN', uploadData.uploadPIN);\r\n formData.append('RecipientEMail', uploadData.recipientEmail);\r\n formData.append('SenderComments', uploadData.senderComments ? uploadData.senderComments.trim() : '');\r\n formData.append('CRContactID', uploadData.contactID ? uploadData.contactID : '');\r\n formData.append('InternalNote', uploadData.internalNote ? uploadData.internalNote.trim() : '');\r\n formData.append('PatientTitle', uploadData.patientTitle ? uploadData.patientTitle.trim() : '');\r\n formData.append('PatientFirstName', uploadData.patientFirstName ? uploadData.patientFirstName.trim() : '');\r\n formData.append('PatientLastName', uploadData.patientLastName ? uploadData.patientLastName.trim() : '');\r\n files.forEach((file, index) => {\r\n formData.append('files', file, file.name);\r\n });\r\n formData.append('SMSID', uploadData.smsID);\r\n formData.append('Salt', uploadData.salt);\r\n formData.append('IV', uploadData.iv);\r\n formData.append('SignedFiles', uploadData.signedFiles);\r\n\r\n formData.append('UserName', this.signWithName ? userName : '');\r\n\r\n return this.http\r\n .post(`${this.appUrl}/${endpoint}`, formData, {\r\n headers: headers\r\n })\r\n .toPromise();\r\n }\r\n\r\n public async sendSMS(message: string, phoneNo) {\r\n try {\r\n const res = await this.client.invokeApi('sendsms', {\r\n body: {\r\n message: message,\r\n recipientPhoneNo: phoneNo\r\n },\r\n method: 'post'\r\n });\r\n return res.result.smsID;\r\n } catch (err) {\r\n console.log('Error: ' + err);\r\n }\r\n }\r\n\r\n public async checkSMS(smsID: string) {\r\n try {\r\n const res = await this.client.invokeApi('sendsms', {\r\n parameters: {\r\n smsID\r\n },\r\n method: 'get'\r\n });\r\n // console.log('CheckSMS Status', res.result.StatusText);\r\n return res.result.StatusText === 'DELIVERED' ? 1 : res.result.StatusText === 'SENT' ? 0 : -1;\r\n } catch (error) {\r\n console.log('GET SMS', error);\r\n }\r\n }\r\n\r\n public getURLFromFile(files: File[], endpoint: string) {\r\n const _headers = new HttpHeaders();\r\n const headers = _headers.set('X-ZUMO-AUTH', this.client.currentUser.mobileServiceAuthenticationToken);\r\n\r\n const formData = new FormData();\r\n formData.append('TargetPortalIDx', '2311');\r\n files.forEach((file) => {\r\n formData.append('files', file, file.name);\r\n });\r\n\r\n return this.http\r\n .post(`${this.appUrl}/${endpoint}`, formData, {\r\n headers: headers\r\n })\r\n .toPromise();\r\n }\r\n\r\n public async getURL(filePaths, encIVs) {\r\n const result = await this.client.invokeApi(`fileconversion`, {\r\n method: 'get',\r\n parameters: {\r\n FilePaths: filePaths,\r\n IVs: encIVs\r\n }\r\n });\r\n return result.result;\r\n }\r\n\r\n public sendFileToPortal(files: File[], endpoint: string, uploadData) {\r\n const _headers = new HttpHeaders();\r\n const headers = _headers.set('X-ZUMO-AUTH', this.client.currentUser.mobileServiceAuthenticationToken);\r\n const formData = new FormData();\r\n\r\n const uObject = JSON.parse(localStorage.getItem('userobject'));\r\n const userName = `${uObject.PersonTitle} ${uObject.FirstName} ${uObject.LastName}`;\r\n\r\n // formData.append('RecipientEMail', uploadData.recipientEmail);\r\n // formData.append('SenderComments', uploadData.senderComments ? uploadData.senderComments.trim() : '');\r\n formData.append('UserName', this.signWithName ? userName : '');\r\n formData.append('InternalNote', uploadData.internalNote ? uploadData.internalNote.trim() : '');\r\n formData.append('TargetPortalIDx', uploadData.recipientPortal.idx);\r\n formData.append('PatientTitle', uploadData.patientTitle ? uploadData.patientTitle.trim() : '');\r\n formData.append('PatientFirstName', uploadData.patientFirstName ? uploadData.patientFirstName.trim() : '');\r\n formData.append('PatientLastName', uploadData.patientLastName ? uploadData.patientLastName.trim() : '');\r\n files.forEach((file) => {\r\n formData.append('files', file, file.name);\r\n });\r\n return this.http\r\n .post(`${this.appUrl}/${endpoint}`, formData, {\r\n headers: headers\r\n })\r\n .toPromise();\r\n }\r\n\r\n canActivate(route, state): boolean {\r\n if (!this.checkLogin()) {\r\n if (state.url.indexOf('reportLog') > -1 && route.params.idx) {\r\n this.redirectPath = state.url;\r\n }\r\n this.router.navigate(['login']);\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n redirectAfterLogin() {\r\n if (this.getUserAboType() === 0) {\r\n this.showAd = true;\r\n console.log('Free abo, ad activated');\r\n } else {\r\n this.showAd = false;\r\n console.log('not free abo');\r\n }\r\n const tempPath = this.redirectPath;\r\n !tempPath ? this.router.navigate(['upload']) : ((this.redirectPath = null), this.router.navigate([tempPath]));\r\n }\r\n\r\n setFiles() {\r\n this.filesIsEmpty = false;\r\n }\r\n\r\n async sendToETresor(favorite: Favorite, filesToSend: any[]) {\r\n const _headers = new HttpHeaders();\r\n const headers = _headers.set('X-ZUMO-AUTH', this.client.currentUser.mobileServiceAuthenticationToken);\r\n const formData = new FormData();\r\n\r\n formData.append('contactID', favorite.id);\r\n formData.append('contactUID', favorite.ETresorUID);\r\n for (const file of filesToSend) {\r\n formData.append('files', file.data, file.name);\r\n }\r\n\r\n return this.http\r\n .post(`${this.appUrl}/api/e-tresor`, formData, {\r\n headers: headers\r\n })\r\n .toPromise();\r\n\r\n try {\r\n console.log('FilesToSend: ', filesToSend);\r\n const res = await this.client.invokeApi('e-tresor', {\r\n body: { contact: favorite, files: filesToSend },\r\n method: 'POST'\r\n });\r\n\r\n console.log('Success', res.result);\r\n } catch (error) {\r\n console.log('Error', error.message);\r\n }\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { AzureServiceService } from \"./azure-service.service\";\r\nimport { environment } from '../../../environments/environment';\r\nimport { HttpClient } from \"@angular/common/http\";\r\n\r\ninterface IOAuthRedirect {\r\n url: string\r\n}\r\nexport interface IConnectedAccount {\r\n AccountType: string\r\n}\r\n\r\nexport interface IConnectedAccountsLoginResponse {\r\n action: 'login',\r\n login: {\r\n token: string,\r\n user: any,\r\n culture: string\r\n }\r\n}\r\nexport interface IConnectedAccountsRegisterResponse {\r\n action: 'register',\r\n registrationToken: string,\r\n profile: {\r\n email: string,\r\n first_name: string,\r\n last_name: string,\r\n gender: 'm' | 'f' | 'u',\r\n uuid: string,\r\n academic_title?: string,\r\n specialization: string,\r\n ma_number: string\r\n }\r\n}\r\nexport type IConnectedAccountsResponse = IConnectedAccountsLoginResponse | IConnectedAccountsRegisterResponse;\r\n\r\n@Injectable()\r\nexport class ConnectedAccountsService {\r\n constructor(private azureService: AzureServiceService, private http: HttpClient) {\r\n\r\n }\r\n async getRedirect(accountType: string, action: 'login' | 'connect') {\r\n return await this.http.get(`${environment.azureAppURL}/api/connected-accounts/${accountType}/redirect`, {\r\n params: { env: environment.name, action },\r\n headers: action == 'connect' ? {\r\n 'ZUMO-API-VERSION': '2.0.0',\r\n 'X-ZUMO-AUTH': this.azureService.client.currentUser.mobileServiceAuthenticationToken\r\n } : { }\r\n }).toPromise();\r\n }\r\n async connect(accountType: string, params: { state: string, code: string }) {\r\n if(!this.azureService.checkLogin()) throw new Error(\"Need to be logged in to connect accounts\");\r\n return await this.http.post(`${environment.azureAppURL}/api/connected-accounts/${accountType}/connect`,\r\n params,\r\n {\r\n headers: {\r\n 'ZUMO-API-VERSION': '2.0.0',\r\n 'X-ZUMO-AUTH': this.azureService.client.currentUser.mobileServiceAuthenticationToken\r\n }\r\n }).toPromise();\r\n }\r\n async login(accountType: string, params: { state: string, code: string }) {\r\n return await this.http.post(`${environment.azureAppURL}/api/connected-accounts/${accountType}/login`, params).toPromise();\r\n }\r\n\r\n async getAccountTypes() {\r\n return await this.http.get(`${environment.azureAppURL}/api/connected-accounts/types`, {\r\n headers: {\r\n 'ZUMO-API-VERSION': '2.0.0',\r\n 'X-ZUMO-AUTH': this.azureService.client.currentUser.mobileServiceAuthenticationToken\r\n }\r\n }).toPromise();\r\n }\r\n async getConnectedAccounts() {\r\n return await this.http.get(`${environment.azureAppURL}/api/connected-accounts/connected`, {\r\n headers: {\r\n 'ZUMO-API-VERSION': '2.0.0',\r\n 'X-ZUMO-AUTH': this.azureService.client.currentUser.mobileServiceAuthenticationToken\r\n }\r\n }).toPromise();\r\n }\r\n async unlinkConnectedAccount(accountType: string) {\r\n return await this.http.post(`${environment.azureAppURL}/api/connected-accounts/${accountType}/unlink`,\r\n null,\r\n {\r\n headers: {\r\n 'ZUMO-API-VERSION': '2.0.0',\r\n 'X-ZUMO-AUTH': this.azureService.client.currentUser.mobileServiceAuthenticationToken\r\n }\r\n }).toPromise();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AzureServiceService } from './azure-service.service';\r\nimport { HttpParams } from '@angular/common/http';\r\n\r\n@Injectable()\r\nexport class DownloadService {\r\n downloadTable;\r\n constructor(private azureService: AzureServiceService) {\r\n this.downloadTable = azureService.client.getTable('CCPatientDocumentDownload');\r\n }\r\n\r\n public async read(parameters?: any) {\r\n return Promise.resolve(this.downloadTable.read(parameters || {}));\r\n }\r\n\r\n public async update(idx, comments) {\r\n try {\r\n const res = await Promise.resolve(this.downloadTable.update({ id: idx, RecipientComments: comments }));\r\n return res;\r\n } catch (e) {\r\n console.log('Error: ' + e);\r\n }\r\n }\r\n\r\n public checkIfDocumentExists(token): Promise {\r\n const params = new HttpParams().set('RequestFrom', 'CheckEntry').set('token', token);\r\n return Promise.resolve(\r\n this.azureService.client.invokeApi(`fileupload?${params.toString()}`, {\r\n method: 'get'\r\n })\r\n )\r\n .then((res) => {\r\n return Promise.resolve(1);\r\n })\r\n .catch((err) => {\r\n // console.log(err);\r\n return Promise.resolve(2);\r\n });\r\n }\r\n\r\n public downloadDocument(token, pin) {\r\n if (!token) {\r\n throw new Error('no token');\r\n }\r\n if (!pin) {\r\n throw new Error('no PIN');\r\n }\r\n const params = new HttpParams().set('token', token).set('PIN', pin);\r\n return Promise.resolve(\r\n this.azureService.client.invokeApi(`fileupload?${params.toString()}`, {\r\n method: 'get'\r\n })\r\n ).then((result) => Promise.resolve(result.result));\r\n }\r\n\r\n public async updateDownloadStatus(token, id) {\r\n try {\r\n const res = await Promise.resolve(this.downloadTable.update({ id, StatusID: 101 }, { token }));\r\n return res;\r\n } catch (e) {\r\n console.log('Error ' + e);\r\n }\r\n }\r\n\r\n public async updateDownloadStatusPortal(idx) {\r\n try {\r\n const params = new HttpParams().set('DownloadID', idx);\r\n const res = await this.azureService.client.invokeApi('fileservice', { body: { DownloadID: idx }, method: 'put' });\r\n return res;\r\n } catch (e) {\r\n console.log('Error ' + e);\r\n }\r\n }\r\n\r\n public async downloadDocumentByIDx(data) {\r\n const documentIDx = data.idx;\r\n const requestFrom = data.MessageTypeID === 0 || data.MessageTypeID === 300 ? 'FileSent' : 'FileDownload';\r\n const params = new HttpParams()\r\n .set('DownloadID', documentIDx)\r\n .set('RequestFrom', requestFrom)\r\n .set('MessageTypeID', data.MessageTypeID);\r\n const result = await this.azureService.client.invokeApi(`fileservice?${params.toString()}`, {\r\n method: 'get'\r\n });\r\n return result.result;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AzureServiceService } from './azure-service.service';\r\nimport { Favorite } from '../classes/favorite';\r\n\r\n@Injectable()\r\nexport class FavoritesService {\r\n private favoritesTable;\r\n private favorites: Favorite[] = [];\r\n public favoriteMap;\r\n\r\n searchOffset = 0;\r\n\r\n constructor(private azureService: AzureServiceService) {\r\n this.favoritesTable = azureService.client.getTable('CRContact');\r\n }\r\n\r\n public async getFavorites() {\r\n if (this.favorites.length === 0) {\r\n await this.initFavorites();\r\n }\r\n return this.favorites;\r\n }\r\n\r\n public async reloadFavorites() {\r\n this.favorites = [];\r\n return this.getFavorites();\r\n }\r\n\r\n public async initFavorites() {\r\n console.log(`Loading Favorites: ${this.searchOffset + 3000}`);\r\n const readRes = await this.read();\r\n this.favorites.push(...readRes);\r\n if (readRes.length === 3000) {\r\n this.searchOffset += 3000;\r\n await this.initFavorites();\r\n } else {\r\n this.favoriteMap = this.favorites.reduce((obj, item) => {\r\n obj[item.id] = item;\r\n return obj;\r\n }, {});\r\n }\r\n }\r\n\r\n public async insert(favorite: Favorite) {\r\n try {\r\n const result = await Promise.resolve(this.favoritesTable.insert(favorite));\r\n //favorite.id = result.id;\r\n this.favorites.push(result);\r\n this.favoriteMap = this.favorites.reduce((obj, item) => {\r\n obj[item.id] = item;\r\n return obj;\r\n }, {});\r\n // this.read();\r\n // return this.getFavorites();\r\n return result;\r\n } catch (e) {\r\n console.log('Error inserting', e);\r\n }\r\n }\r\n\r\n public async update(favorite: Favorite, updatedFavorite: Favorite) {\r\n // console.log(updatedFavorite);\r\n const temp = favorite;\r\n temp.PersonTitle = updatedFavorite.PersonTitle;\r\n temp.FirstNameEn = updatedFavorite.FirstNameEn;\r\n temp.LastNameEn = updatedFavorite.LastNameEn;\r\n temp.EMail = updatedFavorite.EMail;\r\n temp.PhoneMobile = updatedFavorite.PhoneMobile;\r\n temp.Note = updatedFavorite.Note;\r\n temp.StatusID = updatedFavorite.StatusID;\r\n\r\n // console.log(temp);\r\n\r\n try {\r\n const result = await Promise.resolve(this.favoritesTable.update(temp));\r\n this.favoriteMap[favorite.id] = temp;\r\n this.favorites = Object.values(this.favoriteMap);\r\n return result;\r\n } catch (e) {\r\n console.log('Update Error', e);\r\n }\r\n }\r\n\r\n public async delete(favorite: Favorite) {\r\n try {\r\n await Promise.resolve(this.favoritesTable.del(favorite));\r\n delete this.favoriteMap[favorite.id];\r\n this.favorites = Object.values(this.favoriteMap);\r\n console.log('Deleted', this.favoriteMap);\r\n } catch (e) {\r\n console.log('Error deleting', e);\r\n }\r\n }\r\n\r\n public async read() {\r\n try {\r\n const result = await Promise.resolve(this.favoritesTable.read({ searchOffset: this.searchOffset }));\r\n //this.favorites = result;\r\n return result;\r\n //console.log('readfav', this.favorites);\r\n } catch (error) {\r\n console.log('READ', error);\r\n }\r\n }\r\n\r\n public async getCountries() {\r\n try {\r\n const countryTable = this.azureService.client.getTable('XConfigCountry');\r\n return await Promise.resolve(countryTable.read());\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n }\r\n\r\n public async getCities() {\r\n try {\r\n const cityTable = this.azureService.client.getTable('XConfigCity');\r\n return await Promise.resolve(cityTable.read());\r\n } catch (e) {\r\n console.log(e);\r\n }\r\n }\r\n\r\n async registerPhone(favorite: Favorite) {\r\n console.log('TCL: registerPhone -> favorite', favorite);\r\n\r\n try {\r\n const res = await this.azureService.client.invokeApi('a-trust', {\r\n body: { contact: favorite },\r\n method: 'POST'\r\n });\r\n\r\n console.log('Success', res.result);\r\n const temp = this.favoriteMap[favorite.id];\r\n temp.ETresorTID = res.result.tid;\r\n this.favoriteMap[favorite.id] = temp;\r\n this.favorites = Object.values(this.favoriteMap);\r\n\r\n window.open(res.result.url);\r\n } catch (error) {\r\n console.log('Error', error.message);\r\n }\r\n }\r\n\r\n async connectAccounts(tid, uid) {\r\n try {\r\n const res = await this.azureService.client.invokeApi('a-trust', {\r\n body: { tid, uid },\r\n method: 'PUT'\r\n });\r\n\r\n console.log('Success', res.result);\r\n } catch (error) {\r\n console.log('Account-Link Error: ', error.message);\r\n }\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { AzureServiceService } from \"./azure-service.service\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class GroupsService {\r\n private groupTable;\r\n private memberTable;\r\n\r\n constructor(private azureService: AzureServiceService) {\r\n this.memberTable = azureService.client.getTable(\"REGroupMember\");\r\n this.groupTable = azureService.client.getTable(\"REGroup\");\r\n }\r\n\r\n public async getGroupMembers(groupIDs) {\r\n return await this.groupTable.read({GroupIDs: groupIDs.join(',')});\r\n }\r\n\r\n public async getUserGroups() {\r\n return await this.memberTable.read();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Hl7Config } from '../classes/hl7-config';\r\n\r\n@Injectable()\r\nexport class Hl7Service {\r\n\r\n constructor() { }\r\n\r\n\r\n public createFile(caseData: Hl7Config) {\r\n const msh = `MSH|^~\\\\&|Innomed^${caseData.msh.name}|${caseData.msh.sender}^${caseData.msh.erkennung}||${caseData.msh.empfaenger}|${caseData.msh.versendezeit}||ORM^O01|${caseData.msh.barcodeID}|P^A|2.3\\n`;\r\n\r\n const pid = `PID|1|||${caseData.pid.patientID}|${caseData.pid.nachname}^${caseData.pid.vorname}^${caseData.pid.vorname2}^^${caseData.pid.titel}L^P||${caseData.pid.gebdat}|${caseData.pid.geschlecht}|||${caseData.pid.strasse}^^${caseData.pid.ort}^^${caseData.pid.plz}^AT^H|AUT||||||||${caseData.pid.svnr}\\n`;\r\n\r\n const in1 = `IN1|1||${caseData.in1.kkID}|${caseData.in1.kkName}||||||||||||${caseData.in1.nachname}^${caseData.in1.vorname}^${caseData.in1.vorname2}^^${caseData.in1.titel}^L||${caseData.in1.gebdat}|${caseData.in1.strasse}^^${caseData.in1.ort}^^${caseData.in1.plz}^AT^P\\n`;\r\n\r\n const in2 = `IN2||${caseData.in2.svnr}|^^${caseData.in2.dienstgeber}^^^^^^^L\\n`;\r\n\r\n const orc = `ORC|NW|${caseData.orc.barcodeID}^ORDERID|||O||||${caseData.orc.datum}|^${caseData.orc.nachname}^${caseData.orc.vorname}^${caseData.orc.vorname2}^^${caseData.orc.titel}^^L||||||${caseData.orc.versendezeit}|||care01\\n`;\r\n\r\n const obr = `OBR|1|${caseData.obr.barcodeID}^ORDERID\\n`;\r\n\r\n let obx = '';\r\n caseData.obx.forEach((element, index) => {\r\n obx += `OBX|${index + 1}|ST|${element.krzID}^${element.krz}||${element.text}\\n`;\r\n });\r\n\r\n const z10 = `Z10|${caseData.z10.woche}^${caseData.z10.zustellung}^${caseData.z10.sonstiges}\\n`;\r\n\r\n const result = msh + pid + in1 + in2 + orc + obr + obx + z10;\r\n\r\n console.log(result);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AzureServiceService } from './azure-service.service';\r\nimport { CuberryPromotion } from '../classes/cuberry-promotion';\r\n@Injectable()\r\nexport class PortalsService {\r\n\tprivate portals = [];\r\n\tprivate portalTable;\r\n\tconstructor(private azureService: AzureServiceService) {\r\n\t\tthis.portalTable = azureService.client.getTable('CuberryPortals');\r\n\t}\r\n\r\n\tpublic async update(portalObject) {\r\n\t\treturn await this.portalTable.update({\r\n\t\t\tid: portalObject.id,\r\n\t\t\tName: portalObject.Name,\r\n\t\t\tEmailHost: portalObject.EmailHost,\r\n\t\t\tZIPCode: portalObject.ZIPCode,\r\n\t\t\tCity: portalObject.City,\r\n\t\t\tShowInBxAddressBook: portalObject.ShowInBxAddressBook,\r\n\t\t\tFileAvailabilityIn: portalObject.FileAvailabilityIn,\r\n\t\t\tFileAvailabilityOut: portalObject.FileAvailabilityOut,\r\n\t\t\tSignWithName: portalObject.SignWithName,\r\n\t\t\tLocalFileDLPath: portalObject.LocalFileDLPath\r\n\t\t});\r\n\t}\r\n\r\n\tpublic async updateAboType(portalObject, promotionObject: CuberryPromotion) {\r\n\t\treturn await this.portalTable.update({\r\n\t\t\tid: portalObject.id,\r\n\t\t\tAboType: promotionObject.FutureAboTypeID,\r\n\t\t\tAboStartDate: promotionObject.ServiceStartDate || new Date()\r\n\t\t});\r\n\t}\r\n\r\n\tpublic async getAll() {\r\n\t\treturn await this.portalTable.read({ RequestFrom: 'ListView' });\r\n\t}\r\n\r\n\tpublic async getOwnPortal() {\r\n\t\treturn await this.portalTable.read();\r\n\t}\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { AzureServiceService } from \"./azure-service.service\";\r\nimport { environment } from '../../../environments/environment';\r\nimport { HttpClient } from \"@angular/common/http\";\r\n\r\nexport interface IRegistrationData {\r\n title: string,\r\n firstName: string,\r\n lastName: string,\r\n fieldOfPractice: number,\r\n phonePrefix: string,\r\n phoneMobile: string,\r\n email: string,\r\n username: string,\r\n password: string,\r\n confirmPassword: string,\r\n agbAccepted: boolean,\r\n dsgvoAccepted: boolean,\r\n portalName: string,\r\n portalName2?: string, // Detailed free-text field of practice (Tätigkeit gem. AG)\r\n salutation?: number\r\n}\r\n\r\ntype IRegistrationRequest = IRegistrationData & { registrationToken?: string }\r\n\r\n@Injectable()\r\nexport class RegistrationService {\r\n private registrationToken: string;\r\n private registrationPrefillData: Partial;\r\n\r\n constructor(private azureService: AzureServiceService, private http: HttpClient) {\r\n\r\n }\r\n\r\n /**\r\n * Register a new user in BefundExpress\r\n * If a valid registrationToken is provided, the user won't have to wait for e-mail confirmation/activation\r\n *\r\n * @param {IRegistrationData} data\r\n * @param {string} [registrationToken]\r\n * @memberof ConnectedAccountsService\r\n */\r\n public async register(data: IRegistrationData, registrationToken?: string) {\r\n return await this.azureService.client.invokeApi('login', {\r\n body: {\r\n ...data,\r\n registrationToken\r\n } as IRegistrationRequest,\r\n method: 'put'\r\n });\r\n }\r\n\r\n public setRegistrationToken(token: string) { this.registrationToken = token; }\r\n public getRegistrationToken() { return this.registrationToken; }\r\n\r\n public setRegistrationPrefillData(data: Partial) { this.registrationPrefillData = data; }\r\n public getRegistrationPrefillData() { return this.registrationPrefillData; }\r\n\r\n public getRegistrationDefaultData(): IRegistrationData {\r\n return {\r\n\t\ttitle: '',\r\n\t\tfirstName: '',\r\n\t\tlastName: '',\r\n\t\tfieldOfPractice: 44,\r\n\t\tphonePrefix: '0043',\r\n\t\tphoneMobile: '',\r\n\t\temail: '',\r\n\t\tusername: '',\r\n\t\tpassword: '',\r\n\t\tconfirmPassword: '',\r\n\t\tagbAccepted: false,\r\n\t\tdsgvoAccepted: false,\r\n\t\tportalName: '',\r\n\t\tsalutation: null\r\n\t};\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { XConfigShortcode } from '../classes/xconfig-shortcode';\r\nimport { AzureServiceService } from './azure-service.service';\r\n\r\n@Injectable()\r\nexport class ShortcodeService {\r\n\tprivate shortcutTable;\r\n\tprivate shortCodes: XConfigShortcode[];\r\n\tpublic shortCodeMap;\r\n\r\n\t// ngOnInit(): void {\r\n\t// // Called after the constructor, initializing input properties, and the first call to ngOnChanges.\r\n\t// // Add 'implements OnInit' to the class.\r\n\t// }\r\n\r\n\tconstructor(private azureService: AzureServiceService) {\r\n\t\tthis.shortcutTable = azureService.client.getTable('XConfigShortcut');\r\n\t}\r\n\r\n\tpublic async update(shortCodeObject: XConfigShortcode, updatedObject: XConfigShortcode) {\r\n\t\tconsole.log(updatedObject);\r\n\t\tconst temp = shortCodeObject;\r\n\t\ttemp.ShortcutKey = updatedObject.ShortcutKey;\r\n\t\ttemp.ShortcutText = updatedObject.ShortcutText;\r\n\r\n\t\t// console.log(temp);\r\n\r\n\t\ttry {\r\n\t\t\tconst result = await Promise.resolve(this.shortcutTable.update(temp));\r\n\t\t\tthis.shortCodeMap[shortCodeObject.ShortcutKey] = temp;\r\n\t\t\tthis.shortCodes = Object.values(this.shortCodeMap);\r\n\t\t\tawait this.read(); //temp\r\n\t\t} catch (e) {\r\n\t\t\tconsole.log('Update Error', e);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic getShortCodes() {\r\n\t\treturn this.shortCodes;\r\n\t}\r\n\r\n\tpublic async insert(shortCodeObject: XConfigShortcode) {\r\n\t\ttry {\r\n\t\t\tconst result = await Promise.resolve(this.shortcutTable.insert(shortCodeObject));\r\n\t\t\tconst shortCode = new XConfigShortcode(result);\r\n\t\t\tthis.shortCodes.push(shortCode);\r\n\t\t\tthis.shortCodeMap = this.shortCodes.reduce((obj, item) => {\r\n\t\t\t\tobj[item.ShortcutKey.toLowerCase()] = item;\r\n\t\t\t\treturn obj;\r\n\t\t\t}, {});\r\n\t\t\tconsole.log('Done!', result);\r\n\t\t\treturn this.shortCodes;\r\n\t\t} catch (e) {\r\n\t\t\tconsole.log('Error inserting', e);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async delete(shortCodeObject: XConfigShortcode) {\r\n\t\ttry {\r\n\t\t\tconsole.log('WHERE ID', shortCodeObject);\r\n\t\t\tawait Promise.resolve(this.shortcutTable.del(shortCodeObject));\r\n\t\t\tdelete this.shortCodeMap[shortCodeObject.ShortcutKey];\r\n\t\t\tthis.shortCodes = Object.values(this.shortCodeMap);\r\n\t\t\tconsole.log('Deleted', this.shortCodeMap);\r\n\t\t} catch (e) {\r\n\t\t\tconsole.log('Error deleting', e);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async read() {\r\n\t\ttry {\r\n\t\t\tconst result = await Promise.resolve(this.shortcutTable.read());\r\n\t\t\tthis.shortCodes = result;\r\n\t\t\tthis.shortCodeMap = result.reduce((obj, item) => {\r\n\t\t\t\tobj[item.ShortcutKey.toLowerCase()] = item;\r\n\t\t\t\treturn obj;\r\n\t\t\t}, {});\r\n\t\t} catch (error) {\r\n\t\t\tconsole.log('Read Error', error);\r\n\t\t}\r\n\t}\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class SignatureService {\r\n constructor() {}\r\n\r\n\r\n \r\n}\r\n","export const environment = {\r\n production: false,\r\n azureAppURL: 'https://repextest.azurewebsites.net',\r\n name: 'test'\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\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n","var map = {\n\t\"./af\": 58685,\n\t\"./af.js\": 58685,\n\t\"./ar\": 254,\n\t\"./ar-dz\": 4312,\n\t\"./ar-dz.js\": 4312,\n\t\"./ar-kw\": 32614,\n\t\"./ar-kw.js\": 32614,\n\t\"./ar-ly\": 18630,\n\t\"./ar-ly.js\": 18630,\n\t\"./ar-ma\": 28674,\n\t\"./ar-ma.js\": 28674,\n\t\"./ar-sa\": 49032,\n\t\"./ar-sa.js\": 49032,\n\t\"./ar-tn\": 24730,\n\t\"./ar-tn.js\": 24730,\n\t\"./ar.js\": 254,\n\t\"./az\": 53052,\n\t\"./az.js\": 53052,\n\t\"./be\": 60150,\n\t\"./be.js\": 60150,\n\t\"./bg\": 63069,\n\t\"./bg.js\": 63069,\n\t\"./bm\": 13466,\n\t\"./bm.js\": 13466,\n\t\"./bn\": 18516,\n\t\"./bn.js\": 18516,\n\t\"./bo\": 26273,\n\t\"./bo.js\": 26273,\n\t\"./br\": 9588,\n\t\"./br.js\": 9588,\n\t\"./bs\": 19815,\n\t\"./bs.js\": 19815,\n\t\"./ca\": 83331,\n\t\"./ca.js\": 83331,\n\t\"./cs\": 21320,\n\t\"./cs.js\": 21320,\n\t\"./cv\": 72219,\n\t\"./cv.js\": 72219,\n\t\"./cy\": 68266,\n\t\"./cy.js\": 68266,\n\t\"./da\": 66427,\n\t\"./da.js\": 66427,\n\t\"./de\": 67435,\n\t\"./de-at\": 52871,\n\t\"./de-at.js\": 52871,\n\t\"./de-ch\": 12994,\n\t\"./de-ch.js\": 12994,\n\t\"./de.js\": 67435,\n\t\"./dv\": 82357,\n\t\"./dv.js\": 82357,\n\t\"./el\": 95649,\n\t\"./el.js\": 95649,\n\t\"./en-au\": 59961,\n\t\"./en-au.js\": 59961,\n\t\"./en-ca\": 19878,\n\t\"./en-ca.js\": 19878,\n\t\"./en-gb\": 3924,\n\t\"./en-gb.js\": 3924,\n\t\"./en-ie\": 70864,\n\t\"./en-ie.js\": 70864,\n\t\"./en-il\": 91579,\n\t\"./en-il.js\": 91579,\n\t\"./en-in\": 30940,\n\t\"./en-in.js\": 30940,\n\t\"./en-nz\": 16181,\n\t\"./en-nz.js\": 16181,\n\t\"./en-sg\": 44301,\n\t\"./en-sg.js\": 44301,\n\t\"./eo\": 85291,\n\t\"./eo.js\": 85291,\n\t\"./es\": 54529,\n\t\"./es-do\": 53764,\n\t\"./es-do.js\": 53764,\n\t\"./es-us\": 63425,\n\t\"./es-us.js\": 63425,\n\t\"./es.js\": 54529,\n\t\"./et\": 35203,\n\t\"./et.js\": 35203,\n\t\"./eu\": 70678,\n\t\"./eu.js\": 70678,\n\t\"./fa\": 83483,\n\t\"./fa.js\": 83483,\n\t\"./fi\": 96262,\n\t\"./fi.js\": 96262,\n\t\"./fil\": 52521,\n\t\"./fil.js\": 52521,\n\t\"./fo\": 34555,\n\t\"./fo.js\": 34555,\n\t\"./fr\": 63131,\n\t\"./fr-ca\": 88239,\n\t\"./fr-ca.js\": 88239,\n\t\"./fr-ch\": 21702,\n\t\"./fr-ch.js\": 21702,\n\t\"./fr.js\": 63131,\n\t\"./fy\": 267,\n\t\"./fy.js\": 267,\n\t\"./ga\": 23821,\n\t\"./ga.js\": 23821,\n\t\"./gd\": 71753,\n\t\"./gd.js\": 71753,\n\t\"./gl\": 4074,\n\t\"./gl.js\": 4074,\n\t\"./gom-deva\": 92762,\n\t\"./gom-deva.js\": 92762,\n\t\"./gom-latn\": 5969,\n\t\"./gom-latn.js\": 5969,\n\t\"./gu\": 82809,\n\t\"./gu.js\": 82809,\n\t\"./he\": 45402,\n\t\"./he.js\": 45402,\n\t\"./hi\": 315,\n\t\"./hi.js\": 315,\n\t\"./hr\": 10410,\n\t\"./hr.js\": 10410,\n\t\"./hu\": 38288,\n\t\"./hu.js\": 38288,\n\t\"./hy-am\": 67928,\n\t\"./hy-am.js\": 67928,\n\t\"./id\": 71334,\n\t\"./id.js\": 71334,\n\t\"./is\": 86959,\n\t\"./is.js\": 86959,\n\t\"./it\": 34864,\n\t\"./it-ch\": 51124,\n\t\"./it-ch.js\": 51124,\n\t\"./it.js\": 34864,\n\t\"./ja\": 36141,\n\t\"./ja.js\": 36141,\n\t\"./jv\": 29187,\n\t\"./jv.js\": 29187,\n\t\"./ka\": 42136,\n\t\"./ka.js\": 42136,\n\t\"./kk\": 94332,\n\t\"./kk.js\": 94332,\n\t\"./km\": 18607,\n\t\"./km.js\": 18607,\n\t\"./kn\": 84305,\n\t\"./kn.js\": 84305,\n\t\"./ko\": 70234,\n\t\"./ko.js\": 70234,\n\t\"./ku\": 16003,\n\t\"./ku.js\": 16003,\n\t\"./ky\": 75061,\n\t\"./ky.js\": 75061,\n\t\"./lb\": 32786,\n\t\"./lb.js\": 32786,\n\t\"./lo\": 66183,\n\t\"./lo.js\": 66183,\n\t\"./lt\": 50029,\n\t\"./lt.js\": 50029,\n\t\"./lv\": 24169,\n\t\"./lv.js\": 24169,\n\t\"./me\": 68577,\n\t\"./me.js\": 68577,\n\t\"./mi\": 68177,\n\t\"./mi.js\": 68177,\n\t\"./mk\": 50337,\n\t\"./mk.js\": 50337,\n\t\"./ml\": 65260,\n\t\"./ml.js\": 65260,\n\t\"./mn\": 52325,\n\t\"./mn.js\": 52325,\n\t\"./mr\": 14695,\n\t\"./mr.js\": 14695,\n\t\"./ms\": 75334,\n\t\"./ms-my\": 37151,\n\t\"./ms-my.js\": 37151,\n\t\"./ms.js\": 75334,\n\t\"./mt\": 63570,\n\t\"./mt.js\": 63570,\n\t\"./my\": 97963,\n\t\"./my.js\": 97963,\n\t\"./nb\": 88028,\n\t\"./nb.js\": 88028,\n\t\"./ne\": 86638,\n\t\"./ne.js\": 86638,\n\t\"./nl\": 50302,\n\t\"./nl-be\": 66782,\n\t\"./nl-be.js\": 66782,\n\t\"./nl.js\": 50302,\n\t\"./nn\": 33501,\n\t\"./nn.js\": 33501,\n\t\"./oc-lnc\": 50563,\n\t\"./oc-lnc.js\": 50563,\n\t\"./pa-in\": 50869,\n\t\"./pa-in.js\": 50869,\n\t\"./pl\": 65302,\n\t\"./pl.js\": 65302,\n\t\"./pt\": 49687,\n\t\"./pt-br\": 74884,\n\t\"./pt-br.js\": 74884,\n\t\"./pt.js\": 49687,\n\t\"./ro\": 79107,\n\t\"./ro.js\": 79107,\n\t\"./ru\": 33627,\n\t\"./ru.js\": 33627,\n\t\"./sd\": 30355,\n\t\"./sd.js\": 30355,\n\t\"./se\": 83427,\n\t\"./se.js\": 83427,\n\t\"./si\": 11848,\n\t\"./si.js\": 11848,\n\t\"./sk\": 54590,\n\t\"./sk.js\": 54590,\n\t\"./sl\": 20184,\n\t\"./sl.js\": 20184,\n\t\"./sq\": 56361,\n\t\"./sq.js\": 56361,\n\t\"./sr\": 78965,\n\t\"./sr-cyrl\": 81287,\n\t\"./sr-cyrl.js\": 81287,\n\t\"./sr.js\": 78965,\n\t\"./ss\": 25456,\n\t\"./ss.js\": 25456,\n\t\"./sv\": 70451,\n\t\"./sv.js\": 70451,\n\t\"./sw\": 77558,\n\t\"./sw.js\": 77558,\n\t\"./ta\": 51356,\n\t\"./ta.js\": 51356,\n\t\"./te\": 73693,\n\t\"./te.js\": 73693,\n\t\"./tet\": 21243,\n\t\"./tet.js\": 21243,\n\t\"./tg\": 42500,\n\t\"./tg.js\": 42500,\n\t\"./th\": 55768,\n\t\"./th.js\": 55768,\n\t\"./tl-ph\": 35780,\n\t\"./tl-ph.js\": 35780,\n\t\"./tlh\": 29590,\n\t\"./tlh.js\": 29590,\n\t\"./tr\": 33807,\n\t\"./tr.js\": 33807,\n\t\"./tzl\": 93857,\n\t\"./tzl.js\": 93857,\n\t\"./tzm\": 60654,\n\t\"./tzm-latn\": 8806,\n\t\"./tzm-latn.js\": 8806,\n\t\"./tzm.js\": 60654,\n\t\"./ug-cn\": 30845,\n\t\"./ug-cn.js\": 30845,\n\t\"./uk\": 19232,\n\t\"./uk.js\": 19232,\n\t\"./ur\": 47052,\n\t\"./ur.js\": 47052,\n\t\"./uz\": 77967,\n\t\"./uz-latn\": 32233,\n\t\"./uz-latn.js\": 32233,\n\t\"./uz.js\": 77967,\n\t\"./vi\": 98615,\n\t\"./vi.js\": 98615,\n\t\"./x-pseudo\": 12320,\n\t\"./x-pseudo.js\": 12320,\n\t\"./yo\": 31313,\n\t\"./yo.js\": 31313,\n\t\"./zh-cn\": 64490,\n\t\"./zh-cn.js\": 64490,\n\t\"./zh-hk\": 55910,\n\t\"./zh-hk.js\": 55910,\n\t\"./zh-mo\": 98262,\n\t\"./zh-mo.js\": 98262,\n\t\"./zh-tw\": 44223,\n\t\"./zh-tw.js\": 44223\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 46700;","/* (ignored) */"],"names":["RouterModule","LoginComponent","UploadComponent","AzureServiceService","DownloadComponent","ProtectedComponent","RegisterComponent","ReportLogComponent","PasswordResetComponent","ProfileComponent","AgbComponent","TextBlockComponent","FavoritesComponent","PricingMobileComponent","AdmissionComponent","ETresorComponent","SmsStatsViewComponent","OauthComponent","routes","path","component","children","redirectTo","pathMatch","canActivate","AppRoutingModule","forRoot","imports","exports","AppComponent","constructor","ngOnInit","window","addEventListener","e","preventDefault","selectors","decls","vars","template","i0","BrowserModule","FormsModule","ReactiveFormsModule","HttpClientModule","BrowserAnimationsModule","MatLegacyFormFieldModule","MatFormFieldModule","MatLegacyInputModule","MatInputModule","MatLegacyButtonModule","MatButtonModule","MatLegacyMenuModule","MatMenuModule","MatLegacySelectModule","MatSelectModule","MatLegacyCheckboxModule","MatCheckboxModule","MatLegacyTableModule","MatTableModule","MatSortModule","MatLegacySnackBarModule","MatSnackBarModule","MatLegacyRadioModule","MatRadioModule","MatLegacyAutocompleteModule","MatAutocompleteModule","MatLegacyDialogModule","MatDialogModule","MatLegacyListModule","MatListModule","MatLegacyCardModule","MatCardModule","MatExpansionModule","MatDatepickerModule","DownloadService","FileUploaderComponent","NavbarComponent","HomeComponent","StrRegexPipe","ContactUsComponent","FooterComponent","SendFileComponent","PortalsService","ReportLogDetailComponent","PortalFilterDialogComponent","PromotionComponent","PromotionOrderedDialogComponent","ApiUserComponent","ConfirmDialogComponent","MacroDirective","TextBlockDetailComponent","ShortcodeService","FavoritesService","FavoritesDetailComponent","FavoritesDialogComponent","Hl7Service","NgbModule","MatGridListModule","ImpressumComponent","PricingComponent","ApiDetailComponent","AdmissionLogDetailComponent","PhoneSignatureModule","SignDialogComponent","SmsStatsModule","FavoritesExtensionComponent","MomentDateModule","MAT_MOMENT_DATE_ADAPTER_OPTIONS","RequestsModule","MAT_DATE_LOCALE","MAT_DATE_FORMATS","ConnectedAccountsComponent","ConnectedAccountsListComponent","RegistrationService","MessageDialogComponent","MatLegacyProgressSpinnerModule","MatProgressSpinnerModule","AppModule","bootstrap","provide","useValue","useUtc","parse","dateInput","display","monthYearLabel","dateA11yLabel","monthYearA11yLabel","declarations","admissionService","dialog","favoritesService","title","firstName","lastName","initData","res","read","templates","getTemplates","console","log","filteredTemplates","filterTemplates","searchText","filtered","filter","item","SurveyName","toLowerCase","indexOf","select","fileSendType","send","recipientEMail","templateIDs","id","surveyTypeID","patientData","patientID","result","createSurveyFromTemplate","error","showFavoritesDialog","openDialogs","some","openDialog","componentInstance","dialogRef","open","width","height","data","favoriteMap","afterClosed","subscribe","EMail","FirstNameEn","LastNameEn","elem","emailField","nativeElement","click","blur","viewQuery","ctx","MAT_LEGACY_DIALOG_DATA","MAT_DIALOG_DATA","moment","BehaviorSubject","defer","from","merge","of","catchError","exhaustMap","map","scan","Favorite","PersonTitles","APP_SCREEN_SIZES","RequestsDialogComponent","fb","appStateService","requestsService","JSON","localStorage","getItem","PortalTypeID","editMode","header","favorite","StatusID","notNotified","sendSMS","DefaultSendSMS","PersonTitle","PhoneMobile","Note","DefaultPW","displayExtension","initRequestObservables","screenSize$","form","group","email","phone","note","password","registerPhone","delete","dialogRef2","close","save","reopenDialog","setExtendedFields","update","insert","reOpen","favoriteResult","undefined","Street","value","street","ZIPCode","zipCode","City","city","CountryID","countryID","DateOfBirth","dateOfBirth","isValid","utc","toISOString","InsuranceNo","insuranceNumber","InsurancePrimary","insurance","PlaceOfBirth","placeOfBirth","PersonalIDNo","personalIDNo","showRequestDialog","request","autoFocus","updateRequestItem","requestData","requestsEvent$$","next","dataObservable","updateRequest","pipe","action","getPdf","printRequestResult","err","readRequests","requestsState$","items","acc","curr","currentItem","status","saveAndAddRequest","then","addRequest","addPatientRequest","consts","UntypedFormControl","MomentDateAdapter","DateAdapter","_moment","default","_rollupMoment","SVTInsurances","MY_FORMATS","initForm","countries","getCountries","cities","getCities","addControl","checkZipCode","zip","find","controls","setValue","CityNameDe","inputs","features","useClass","deps","route","queryParams","params","uid","tid","favorites","getFavorites","sort","a","b","filteredFavorites","slice","showDetailDialog","edit","clickLock","filterFavorites","searchName","search","replace","EventEmitter","AtrustButtonComponent","buttonClicked","emit","Date","label","outputs","CommonModule","azureClient","userName","getUserName","labUserID","ContactPortalObject","LabUserID","logout","event","CuberryPromotion","uploadComponent","portalService","snackBar","renderer","freeText","startText","miniText","basicText","plusText","currSize","currentSize","getPortal","aboType","portalObject","AboType","initUser","showAd","small","expandPricing","portalResult","getOwnPortal","upgrade","aboNames","aboPrices","duration","panelClass","verticalPosition","promotion","FutureAboTypeID","updateAboType","user","setItem","stringify","userSettings","removeClasses","addClass","startBtn","miniBtn","basicBtn","plusBtn","showPricing","document","getElementById","classList","toggle","elements","querySelectorAll","forEach","el","removeClass","loginClick","username","errorMessage","loginPending","loginData","loginRes","authenticate","message","ApiUserService","apiUserService","apiUserRes","get","apiUser","tokenUsers","createApiUser","saveInProgress","newApiUser","hasAdmissionAccount","hasAccount","showChangePWDialog","changeApiUserPW","currentUser","changePWRes","changePassword","UserId","showAdmissionDialog","showDeleteAdmissionDialog","removeAccount","showDeleteDialog","deleteApiUser","deleteRes","showDeleteBYAPIIDDialog","tokenUser","APIName","deleteByAPIID","clickDisabled","APIID","ConnectedAccountsService","caService","filterAccountTypes","bind","ngAfterViewInit","loadAccounts","switchView","connected","getConnectedAccounts","connectedAccounts","availableAccountTypes","CONNECTED_ACCOUNT_TYPES","t","c","AccountType","name","connectAccount","accountType","redirect","getRedirect","location","url","unlinkAccount","connectedAccount","confirmDialog","nameFor","unlinkConnectedAccount","viewName","view","includes","description","UserModel","ProfileService","profileService","portalsService","getUser","checkUserHasAccount","userResult","userObject","updateUser","snackBarText","updatePending","updateResult","Promise","all","confirmPW","localObject","FirstName","LastName","updatePassword","pwChangePending","PW","NewPW","resetForm","response","Error","promotionOrdered","updateAboTypePending","showPromoOrderedDialog","promoItem","PromotionService","promotionService","getPromotions","aboNr","getUserAboType","aboName","promotionData","filterUpgradePromotions","promotions","activeAboType","activePromoName","activePromo","PromoName","orderPromotion","promotionItem","ordered","AdmissionService","azureService","client","getTable","invokeApi","body","method","getAccount","externalServicesTable","CheckActive","ServiceID","hasEntry","parameters","requestType","options","getSurveys","factory","providedIn","apiUserTable","userId","del","apiid","type","userTable","userData","table","shortcodeService","setData","Object","keys","ResultsJSON","answered","results","questions","QuestionsJSON","createTemplate","allQuestions","element","push","answer","pageNo","key","answeredQuestions","router","downloadService","downloadData","downloadLinks","openDownloadLink","sendAgain","uploadData","setUploadData","navigate","state","idx","RecipientComments","onSubmitReason","setSeen","RecipientName","updateDownloadStatusPortal","files","fileNames","fileName","index","fileEnding","DocumentPathSender","split","now","patientFirstName","AffectedPersonFirstName","patientLastName","AffectedPersonLastName","patientTitle","AffectedPersonTitle","recipientEmail","RecipientEMail","senderComments","SenderCommentsSender","recipientName","contactID","CRContactID","MatSort","MatLegacyTableDataSource","MatTableDataSource","MessageTypes","PortalTypes","formBuilder","sent","received","initFilterForm","updateDateFilter","filterForm","docIdx","snapshot","paramMap","parseInt","downloadElement","dataSourceReceived","documentType","selectDownloadEntry","setSmsStatus","dataSource","sortReceived","reduce","prev","resolve","setTimeout","SMSID","SMSStatusID","checkSMS","smsStatusID","fromDate","startOf","toDate","endOf","applyFilterToSent","filterValue","trim","applyFilterToReceived","readData","readParams","loading","sentWithNames","Sent","RecipientPortalName","Received","tableClickLock","cachedEntry","cachedEntries","refresh","diff","cachedTS","asMinutes","downloadDocumentByIDx","fileUrls","entryData","patientInfo","showSnackbar","checkDownloadMaxAge","downloadEntry","maxAge","tempDate","setDate","getDate","CreatedOn","dialogData","subscribeDialog","recipientComments","setRecipientComments","unsubscribe","text","getFavoriteName","field","selected","environment","PatientRequest","RequestsClientService","http","requestsTable","azureAppURL","headers","mobileServiceAuthenticationToken","deleteRequest","toPromise","sendRequest","PatientID","sendRequestCollection","requests","post","templateName","formData","FormData","append","RequestButtonComponent","sendPatientRequest","RequestsContactListComponent","ngOnChanges","CreatedBy","requestNo","RequestNo","testTemplateName","RequestResultsJSON","testResult","RequestExternalID","accountLinked","updateStatus","statusID","requestItem","match","ResultDate","RequestDate","destination","generatePdf","catch","sasUrl","closeAll","sendToMA","reqID","SelectionModel","MatLegacyPaginator","MatPaginator","Subject","takeUntil","ctx_r28","$event","ctx_r32","RequestsComponent","matSort","paginator","isAllSelected","numSelected","selection","length","numRows","masterToggle","clear","row","changed","destroy$$","selectionChange","source","sortingDataAccessor","property","resultMap","ngOnDestroy","complete","changes","currentValue","statusFilter","displayedColumns","column","onSendSelected","currentSelection","selectedItems","sendSelected","RequestButtonViewComponent","requestStatus","switchMap","RequestsViewComponent","reloadFavorites","readRequests$$","requests$","updateRequest$$","patientName","join","filterItems","filterValues","showDialog","selectionChanged","changedSelection","selectedRequests","RequestFilterPipe","transform","filterString","pure","StatusFilterPipe","RequestsService","MatLegacyPaginatorModule","MatPaginatorModule","MatStepperModule","requestClientService","requestResult","PatientTitle","PatientFirstName","PatientLastName","PatientMiddleName","MiddleNameEn","PatientDateOfBirth","format","PatientCity","PatientPlaceOfBirth","MedicalReportDate","MedicalReportDateTime","MAuserID","MAContactID","MArequestID","SmsStatsClientService","readSmsStatistics","RequestFrom","SmsStatsComponent","smsStats","limit","smsStatsService","monthlySmsStats$","portal","smsLimit","limits","SmsStatsService","XConfigShortcode","shortCodeService","shortCodeObject","ShortcodeKey","ShortcodeText","shortcutKey","ShortcutKey","shortcutText","ShortcutText","getShortCodes","values","MatLegacySelectionList","MatSelectionList","ServiceProviderTypes","portals","groups","members","filteredPortals","sortByFavorite","filterPortals","portalType","Name","getPortalsInGroup","ServiceProviderTypeID","FavoritePortalsJSON","groupID","GroupID","PortalID","getPortalLabel","val","PDFDocument","uploadComp","groupsService","filesToReSend","reSendID","filesToSend","recipientPortal","internalNote","signedFiles","getAll","initGroups","history","getUserGroups","getGroupMembers","sendFile","signSubmit","fileSentStatus","filesToUpload","setFileSentStatus","signDocuments","sendFileToPortal","uploadFormDataFileSigned","resetUploadData","filesIsEmpty","resetFileSentStatus","getFilesToSend","fileAdd","fileArr","Array","setFiles","signAll","showSignatureDialog","removeFile","splice","readFile","file","reject","reader","FileReader","onload","onerror","readAsArrayBuffer","getNumPages","arrayBuffer","pdf","load","getPages","displayFn","showPortalFilterDialog","convertFiles","getURLFromFile","pages","filePaths","encIVs","getURL","convertedFiles","sign","signedDocument","op","content","connector","uiId","sig_pos_x","sig_pos_y","sig_pos_p","sig_pos_w","sig_pos_f","pdfAs","signPdf","errorHandler","successHandler","cause","pdfurl","numeral","forge","signatureService","uploadPIN","confirmUploadPIN","recipientPhoneNo","smsID","salt","iv","generatePIN","handleReSend","stateData","setFavoriteCode","setFavoriteData","contactUploadData","sendSms","wantsToBeNotified","encArr","getPin","setRequestStatus","senderInput","fileSendError","setPin","validNumber","sendPIN","sendETresor","sendToETresor","signWithName","SignWithName","uploadFormDataFile","panelOpenState","showETresor","number","Math","round","random","messageText","maxHeight","currentContact","ETresorUID","showAddFavoritesDialog","phoneNo","contactExists","getBase64","readAsDataURL","abort","DOMException","dataURLtoFile","dataurl","filename","arr","mime","bstr","atob","n","u8arr","Uint8Array","charCodeAt","File","encryptFile","file64","generateKey","getBytesSync","cipher","createCipher","start","fileBuffer","util","createBuffer","finish","encrypted","output","toHex","numIterations","derivedKey","pkcs5","pbkdf2","blobs","blob","Blob","newObj","theBlob","lastModifiedDate","token","checkFile","checkIfDocumentExists","downloadFile","fileDownloadStatus","comments","downloadDocument","pin","downloadID","updateDownloadStatus","printToCart","printSectionId","popupWinindow","innerContents","innerHTML","write","resultCode","connectAccounts","loginVia","externalLoginPending","externalLogin","login","redirectAfterLogin","externalLoginClick","accountTypeName","registrationService","URLSearchParams","has","KEY_STATE","KEY_CODE","authState","authCode","regexResult","stateRegex","exec","stateInfo","VALID_ACTIONS","showError","showSuccess","loginAccount","connect","code","loginResult","loginExternal","setRegistrationToken","registrationToken","setRegistrationPrefillData","profile","first_name","last_name","academic_title","salutation","gender","portalName2","specialization","errorDetails","viewConnecting","viewLogin","viewSuccess","viewError","registerData","getRegistrationDefaultData","isConnected","connectedAccountType","getRegistrationPrefillData","getRegistrationToken","prefillData","titles","lockedFields","registerClick","registerErrorMsg","registerPending","isLabOrPharmacy","fieldOfPractice","portalName","registerResult","register","registerSuccess","errors","registerErrors","fieldOfPracticeID","alreadyRegisteredClick","infoDialog","accountTypeNames","buttonLabel","buttonAction","inputData","Active","BxPortailID","ContactNo","EditedBy","EditedOn","ETresorTID","FirstNameAr","GenderID","IsSystemReferrer","JobTitle","LastNameAr","MAPortailID","MaritalStatusID","MiddleNameAr","OrganisationID","OrganisationName","PIReferrerID","PISpecialityCode","PISpecialityID","PersonalIDTYpeID","PhoneHome","PhoneOffice","Position","RelationTypeID","ReportTemplateName","Salutation","Speciality","TitleID","Website","init","assign","TextTypeID","nurAnzeige","ASVG","EKVKCode","EKVKName","kurzbezeichnung","confMessage","accountClicked","accountClick","imageFor","connectedAccountTypes","filterTypes","onFileAdded","target","checkAndSetFile","onDrop","dataTransfer","uploadErrorMessage","temp","maxFileAmount","size","maxFileSize","fileAddedEvt","currentYear","showImpressumDialog","NgModel","shortCodeData","ngModel","shortCodeMap","onKeyUp","prevKey","shortCode","shortCodeLower","newValue","setSelectionRange","hostBindings","args","Breakpoints","ApplicationStateService","breakpointObserver","screenSize$$","asObservable","observe","Medium","Large","XLarge","currentBreakpoint","breakpoints","large","medium","MobileServiceClient","HttpHeaders","appUrl","minutes","forward","setUserObject","errResponse","loginErrors","Field","newPin","reload","credentials","uObject","checkLogin","loadCredentials","checkCredentialsValid","credInfo","exp","endpoint","_headers","set","StatusText","FilePaths","IVs","redirectPath","tempPath","contact","env","getAccountTypes","HttpParams","downloadTable","toString","DownloadID","documentIDx","requestFrom","MessageTypeID","favoritesTable","initFavorites","searchOffset","readRes","obj","updatedFavorite","countryTable","cityTable","GroupsService","memberTable","groupTable","groupIDs","GroupIDs","createFile","caseData","msh","sender","erkennung","empfaenger","versendezeit","barcodeID","pid","nachname","vorname","vorname2","titel","gebdat","geschlecht","strasse","ort","plz","svnr","in1","kkID","kkName","in2","dienstgeber","orc","datum","obr","obx","krzID","krz","z10","woche","zustellung","sonstiges","portalTable","EmailHost","ShowInBxAddressBook","FileAvailabilityIn","FileAvailabilityOut","LocalFileDLPath","promotionObject","AboStartDate","ServiceStartDate","registrationPrefillData","phonePrefix","phoneMobile","confirmPassword","agbAccepted","dsgvoAccepted","shortcutTable","updatedObject","shortCodes","SignatureService","production","enableProdMode","__NgCli_bootstrap_1","bootstrapModule"],"sourceRoot":"webpack:///","x_google_ignoreList":[137]}