{"version":3,"sources":["webpack:///src/$_lazy_route_resource lazy namespace object","webpack:///src/app/app.component.ts","webpack:///src/app/app.component.html","webpack:///src/app/app.module.ts","webpack:///src/app/app.routing.ts","webpack:///src/app/classes/organization.class.ts","webpack:///src/app/guards/PendingChanges.guard.ts","webpack:///src/app/guards/oauth.guard.ts","webpack:///src/app/guards/selfsignup.guard..ts","webpack:///src/app/interceptors/httporganizationinterceptor.ts","webpack:///src/app/modules/browser-storage/index.ts","webpack:///src/app/modules/browser-storage/local-storage.ts","webpack:///src/app/modules/browser-storage/session-storage.ts","webpack:///src/app/modules/browser-storage/storage-base.ts","webpack:///src/app/private/dbcheck/dbcheck.component.ts","webpack:///src/app/private/dbcheck/dbcheck.component.html","webpack:///src/app/private/envprocess/envprocess.component.ts","webpack:///src/app/private/envprocess/envprocess.component.html","webpack:///src/app/private/header/header.component.ts","webpack:///src/app/private/header/header.component.html","webpack:///src/app/private/main.component.ts","webpack:///src/app/private/main.component.html","webpack:///src/app/private/main.module.ts","webpack:///src/app/private/main.routing.ts","webpack:///src/app/private/start/start.component.ts","webpack:///src/app/private/start/start.component.html","webpack:///src/app/private/start/reset-database.dialog.html","webpack:///src/app/private/start/start.guard.ts","webpack:///src/app/private/trial-environment/trial-environment.component.html","webpack:///src/app/private/trial-environment/trial-environment.component.ts","webpack:///src/app/private/trial-environment/trial-environment.guard.ts","webpack:///src/app/private/upload/upload.component.html","webpack:///src/app/private/upload/upload.component.ts","webpack:///src/app/shared/loader/loader.component.ts","webpack:///src/app/shared/loader/loader.component.html","webpack:///src/app/shared/message/message.component.ts","webpack:///src/app/shared/message/message.component.html","webpack:///src/app/shared/oauth/authorisation.service.ts","webpack:///src/app/shared/services/communication.service.ts","webpack:///src/app/shared/services/graph.service.ts","webpack:///src/app/shared/services/title.service.ts","webpack:///src/app/shared/shared.module.ts","webpack:///src/app/shared/validators/requiredif.validator.ts","webpack:///src/app/welcome/introduction/introduction.component.ts","webpack:///src/app/welcome/introduction/introduction.component.html","webpack:///src/app/welcome/invited/invited.component.ts","webpack:///src/app/welcome/invited/invited.component.html","webpack:///src/app/welcome/self-signup/self-signup.component.ts","webpack:///src/app/welcome/self-signup/self-signup.component.html","webpack:///src/app/welcome/signedup/signedup.component.ts","webpack:///src/app/welcome/signedup/signedup.component.html","webpack:///src/app/welcome/welcome.component.ts","webpack:///src/app/welcome/welcome.component.html","webpack:///src/app/welcome/welcome.module.ts","webpack:///src/app/welcome/welcome.routing.ts","webpack:///src/environments/environment.ts","webpack:///src/main.ts"],"names":["webpackEmptyAsyncContext","req","Promise","resolve","then","e","Error","code","keys","module","exports","id","AppComponent","router","route","broadcastService","authService","communicationService","authorisationService","organization","graphService","isIframe","loggedIn","window","location","hostname","href","parent","opener","checkoutAccount","subscribe","isOrganisationSelected","isSelected","currentOrganizationId","selectOrganization","handleRedirectCallback","authError","response","console","error","errorMessage","log","setLogger","logLevel","message","piiEnabled","correlationId","createNewGuid","piiLoggingEnabled","envName","getAccount","isIE","navigator","userAgent","indexOf","loginRequest","scopes","additionalScopesToConsent","prompt","loginRedirect","loginPopup","loginResponse","reset","replace","redirectUri","logout","selector","templateUrl","styleUrls","protectedResourceMap","apiUrl","apiApplicationId","MSALConfigFactory","auth","clientId","authority","validateAuthority","postLogoutRedirectUri","navigateToLoginRequestUrl","cache","cacheLocation","storeAuthStateInCookie","system","loadFrameTimeout","MSALAngularConfigFactory","popUp","consentScopes","unprotectedResources","extraQueryParameters","AppModule","provide","useClass","multi","useFactory","forRoot","path","declarations","imports","providers","bootstrap","appRoutes","component","children","canActivate","redirectTo","pathMatch","authProviders","AppRoutingModule","Organization","msalService","getOrganizations","isInitialized","exists","allOrganizations","setOrganization","find","x","name","undefined","localStorage","removeItem","setItem","next","providedIn","PendingChangesGuard","canDeactivate","confirm","OauthGuard","oauthService","msalGuard","state","isSelfSignUp","currentUser","getCurrentUser","url","endsWith","navigate","result","acquireTokenSilent","isInteractionRequiredError","errorCode","getLogger","info","SelfSignUpGuard","HttpOrganizationInterceptor","request","getItem","clone","headers","set","handle","pipe","event","StorageModule","LocalStorage","SessionStorage","sessionStorage","StorageBase","storageObject","storageObjectName","key","value","index","clear","jsonInStorage","JSON","parse","stringify","length","DbcheckComponent","dbcheckChange","defaultcheck","isDatabaseUploaded","isDataLoaded","isDisabled","yesDatabase","chkChange","b","noDatabase","dbcheck","emit","EnvprocessComponent","status","getObject","Number","HeaderComponent","activatedRoute","pageTitle","events","firstChild","snapshot","data","params","title","MainComponent","isNavToggled","routerMain","routerLink","icon","hasOrganization","environmentStatus","setObject","encapsulation","None","MainModule","entryComponents","mainRoutes","MainRoutes","forChild","StartComponent","loader","as","dialog","isOwner","isUploading","isUploaded","currentState","initialdbcheck","initialstatus","isOrganizationAdmin","done","subscription","environmentStatusLoop","unsubscribe","fault","started","uploadStatus","show","createOrUpdateEnvironment","dialogRef","open","ResetDatabaseDialog","width","afterClosed","resetDatabase","resetEnvironment","checkEnvironmentStatus","checkEnvironmentStatusLoop","StartGuard","oauthGuard","currentOrganization","TrialEnvironmentComponent","http","cOrganization","EMAIL_REGEX","cocIsLoading","account","getProfile","profile","getOrganization","phoneNumber","businessPhones","mobilePhone","userNameCtrl","userPrincipalName","toLowerCase","required","disable","cocNumberCtrl","organizationNameCtrl","valueChanges","cocSearchResults","item","handelsnaam","setValue","dossiernummer","searchKvk","emailCtrl","trialForm","userName","firstName","givenName","lastName","surname","gender","organizationName","cocNumber","email","isExistingCustomer","customerNumber","get","customerPassword","isTermsAccepted","requiredTrue","updateValueAndValidity","formObj","getRawValue","json","createTrialEnvironment","newOrganizationId","onSubmit","TrialEnvironmentGuard","UploadComponent","toastr","httpClient","containerRef","canLeave","sizeLimit","uploadChange","uploadStarted","uploadSucces","color","mode","baseUrl","files","uploadInput","humanizeBytes","success","body","getScopesForEndpoint","verbose","token","tokenType","ID_TOKEN","idToken","rawIdToken","accessToken","Authorization","OrganizationId","output","type","file","fileExtension","lastIndexOf","substring","size","showError","removeAllFiles","push","findIndex","filter","dragOver","responseStatus","showSuccess","method","withCredentials","LoaderComponent","hidden","globalLoader","loaders","timer","create","t","MessageComponent","messageState","globalMessage","statusMessage","eventEmitter","display","opacity","top","animations","Message","statusText","MessageStatus","Info","Success","Warning","AuthorisationService","httpOptions","toPromise","CommunicationService","messageComponent","Headers","headersIdToken","ca","document","cookie","split","i","singup","post","err","handleError","map","res","Response","errMsg","reject","toString","GraphProfile","GraphOrganization","GraphService","initClient","graphClient","api","select","graphOrganization","displayName","init","authProvider","getAccessToken","reason","TitleService","separator","suffix","setTitle","getTitle","SharedModule","RequiredIfValidator","predicate","formControl","IntroductionComponent","win","focus","login","gotoCreateLiveAccount","gotoCreateAzureAccount","gotoContact","InvitedComponent","SelfSignupComponent","isRelation","f","valid","sendContact","SignedupComponent","WelcomeComponent","WelcomeModule","welcomeRoutes","WelcomeRoutes","environment","origin","domain","GoogleAnalyticsId","production","bootstrapModule"],"mappings":"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","file":"main-es5.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","import { AuthorisationService } from './shared/oauth/authorisation.service';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { CommunicationService } from './shared/services/communication.service';\r\n//import { NgcCookieConsentService } from 'ngx-cookieconsent';\r\nimport { NgcInitializeEvent, NgcStatusChangeEvent, NgcNoCookieLawEvent } from 'ngx-cookieconsent';\r\nimport { Subscription } from 'rxjs';\r\nimport { BroadcastService, MsalService } from '@azure/msal-angular';\r\nimport { Logger, CryptoUtils } from 'msal';\r\nimport { environment } from '../environments/environment';\r\nimport { Organization } from './classes/organization.class';\r\nimport { GraphService } from './shared/services/graph.service';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\nexport class AppComponent implements OnInit {\r\n\r\n private popupOpenSubscription: Subscription;\r\n private popupCloseSubscription: Subscription;\r\n private initializeSubscription: Subscription;\r\n private statusChangeSubscription: Subscription;\r\n private revokeChoiceSubscription: Subscription;\r\n private noCookieLawSubscription: Subscription;\r\n isIframe = false;\r\n public loggedIn = false;\r\n\r\n constructor(private router: Router,\r\n private route: ActivatedRoute,\r\n private broadcastService: BroadcastService,\r\n private authService: MsalService,\r\n private communicationService: CommunicationService,\r\n private authorisationService: AuthorisationService,\r\n private organization: Organization,\r\n private graphService: GraphService\r\n // private ccService: NgcCookieConsentService,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n\r\n /* rdj 01/07/2019: disable cookie consent\r\n - it is not accepted by Unit4 and must be OneTrust which requires an insane amount of time for content implementation\r\n - for now only use google tag with anonymous data \r\n\r\n this.ccService.getConfig().content = this.ccService.getConfig().content || {} ;\r\n \r\n // Override default messages with the translated ones\r\n// this.ccService.getConfig().content.header = 'header'\r\n this.ccService.getConfig().content.dismiss = 'dismiss'\r\n this.ccService.getConfig().content.allow = 'Akkoord'\r\n this.ccService.getConfig().content.deny = 'Weiger'\r\n //this.ccService.getConfig().content.link = \r\n this.ccService.getConfig().content.policy = 'Cookiebeleid'\r\n\r\n this.ccService.destroy();//remove previous cookie bar (with default messages)\r\n this.ccService.init(this.ccService.getConfig()); // update config with translated messages\r\n*/\r\n\r\n // this.analyticsService.allowedByCookie = true;\r\n // this.analyticsService.anonymous = true;\r\n\r\n // this.analyticsService.allowedByCookie = this.ccService.hasConsented();\r\n // this.analyticsService.anonymous = false;\r\n // this.analyticsService.init();\r\n\r\n if (window.location.hostname == \"test.unit4scenario.nl\") {\r\n window.location.href = \"https://mijn.test.dias.nl\";\r\n }\r\n if (window.location.hostname == \"www.unit4scenario.nl\" || window.location.hostname == \"unit4scenario.nl\") {\r\n window.location.href = \"https://mijn.dias.nl\";\r\n }\r\n\r\n this.isIframe = window !== window.parent && !window.opener;\r\n this.checkoutAccount();\r\n\r\n this.broadcastService.subscribe('msal:loginSuccess', () => {\r\n this.checkoutAccount();\r\n\r\n this.organization.isOrganisationSelected.subscribe(isSelected => {\r\n if (!isSelected) {\r\n var currentOrganizationId: string = this.organization.id;\r\n this.organization.selectOrganization();\r\n }\r\n });\r\n });\r\n\r\n this.authService.handleRedirectCallback((authError, response) => {\r\n if (authError) {\r\n console.error('Redirect Error: ', authError.errorMessage);\r\n return;\r\n }\r\n\r\n console.log('Redirect Success: ', response);\r\n });\r\n\r\n this.authService.setLogger(new Logger((logLevel, message, piiEnabled) => {\r\n console.log('MSAL Logging: ', message);\r\n }, {\r\n correlationId: CryptoUtils.createNewGuid(),\r\n piiLoggingEnabled: environment.envName == 'dev'\r\n }));\r\n\r\n /* \r\n this.popupCloseSubscription = this.ccService.popupClose$.subscribe(\r\n () => {\r\n this.analyticsService.allowedByCookie = this.ccService.hasConsented();\r\n this.analyticsService.init();\r\n });\r\n */\r\n }\r\n\r\n checkoutAccount() {\r\n this.loggedIn = !!this.authService.getAccount();\r\n }\r\n\r\n login() {\r\n const isIE = window.navigator.userAgent.indexOf('MSIE ') > -1 || window.navigator.userAgent.indexOf('Trident/') > -1 || window.navigator.userAgent.indexOf('Edge') > -1;\r\n// const apiScope = 'api://' + environment.apiApplicationId + '/access_as_user';\r\n const loginRequest = {\r\n scopes: [\r\n \"user.read\",\r\n \"openid\",\r\n \"profile\",\r\n \"email\"\r\n ],\r\n additionalScopesToConsent: ['user.read'],\r\n prompt: 'select_account'\r\n };\r\n\r\n if (isIE) {\r\n this.authService.loginRedirect(loginRequest); \r\n } else {\r\n this.authService.loginPopup(loginRequest).then(\r\n (loginResponse) => {\r\n this.organization.reset();\r\n window.location.replace(environment.redirectUri);\r\n }).catch(function (error) {\r\n console.log(error);\r\n });\r\n }\r\n }\r\n\r\n logout() {\r\n this.authService.logout();\r\n }\r\n}\r\n\r\n","
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n \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 { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\n\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgModule, Self } from '@angular/core';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\n\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\n\r\nimport { AppRoutingModule } from './app.routing';\r\nimport { AppComponent } from './app.component';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { WelcomeModule } from './welcome/welcome.module';\r\nimport { SharedModule } from './shared/shared.module';\r\nimport { MainModule } from './private/main.module';\r\nimport { ToastrModule } from 'ngx-toastr';\r\n\r\nimport { InvitedComponent } from './welcome/invited/invited.component'\r\n\r\nimport {\r\n MsalModule,\r\n MsalInterceptor,\r\n MSAL_CONFIG,\r\n MSAL_CONFIG_ANGULAR,\r\n MsalService,\r\n MsalAngularConfiguration\r\n} from '@azure/msal-angular';\r\nimport { HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http';\r\nimport { Configuration } from 'msal';\r\nimport { HttpOrganizationInterceptor } from './interceptors/httporganizationinterceptor';\r\n//import { NgcCookieConsentModule, NgcCookieConsentConfig } from 'ngx-cookieconsent';\r\nimport { environment } from '../environments/environment';\r\nimport { WelcomeComponent } from './welcome/welcome.component';\r\nimport { SelfSignupComponent } from './welcome/self-signup/self-signup.component';\r\nimport { reduce } from 'rxjs/operators';\r\nimport { SignedupComponent } from './welcome/signedup/signedup.component';\r\nimport { StartComponent } from './private/start/start.component';\r\nimport { TrialEnvironmentComponent } from './private/trial-environment/trial-environment.component';\r\n\r\n/*\r\nconst cookieConfig:NgcCookieConsentConfig = {\r\n cookie: {\r\n domain: environment.domain, \r\n },\r\n position: 'top',\r\n palette: {\r\n popup: {\r\n background: '#585858'\r\n },\r\n button: {\r\n background: '#00f12c'\r\n }\r\n },\r\n theme: 'classic',\r\n type: 'opt-out',\r\n layout: 'my-custom-layout',\r\n layouts: {\r\n \"my-custom-layout\": '{{messagelink}}{{compliance}}'\r\n },\r\n elements:{\r\n messagelink: `\r\n {{message}} \r\n {{cookiePolicyLink}}, \r\n {{privacyPolicyLink}} en onze\r\n {{tosLink}}\r\n \r\n `\r\n },\r\n content:{\r\n message: 'Onze website maakt gebruik van functionele en niet-privacygevoelige cookies. Accepteert u daarnaast ook de plaatsing van andere soorten cookies?',\r\n \r\n cookiePolicyLink: 'Cookiebeleid',\r\n cookiePolicyHref: 'https://www.unit4.com/nl/over-unit4/beleidslijnen-en-gedragscode/cookiebeleid',\r\n\r\n privacyPolicyLink: 'Privacyverklaring',\r\n privacyPolicyHref: 'https://www.unit4.com/nl/over-unit4/beleidslijnen-en-gedragscode/privacy-verklaring',\r\n\r\n tosLink: 'Algemene voorwaarden',\r\n tosHref: 'https://www.unit4.com/nl/over-unit4/algemene-voorwaarden',\r\n }\r\n};\r\n*/\r\n\r\nexport const protectedResourceMap:[string, string[]][]=[\r\n ['https://graph.microsoft.com/v1.0/me', ['user.read']], \r\n [environment.apiUrl, ['api://'+environment.apiApplicationId+'/access_as_user']]\r\n];\r\n\r\nconst isIE = window.navigator.userAgent.indexOf(\"MSIE \") > -1 || window.navigator.userAgent.indexOf(\"Trident\") > -1 || window.navigator.userAgent.indexOf(\"Edge\") > -1;\r\n\r\nfunction MSALConfigFactory(): Configuration {\r\n return {\r\n auth: {\r\n clientId: environment.clientId,\r\n authority: \"https://login.microsoftonline.com/common/\",\r\n validateAuthority: true,\r\n redirectUri: environment.redirectUri,\r\n postLogoutRedirectUri: environment.postLogoutRedirectUri,\r\n navigateToLoginRequestUrl: true, \r\n },\r\n cache: {\r\n cacheLocation: \"sessionStorage\",\r\n storeAuthStateInCookie: isIE, // set to true for IE 11\r\n },\r\n system: {\r\n loadFrameTimeout: 30000\r\n } \r\n };\r\n}\r\n\r\nfunction MSALAngularConfigFactory(): MsalAngularConfiguration {\r\n return {\r\n popUp: !isIE,\r\n consentScopes: [\r\n \"user.read\",\r\n \"openid\",\r\n \"profile\",\r\n \"email\",\r\n \"api://\"+environment.apiApplicationId+\"/access_as_user\"\r\n ],\r\n unprotectedResources: [\"https://www.microsoft.com/en-us/\", environment.apiUrl + \"/contact\"],\r\n protectedResourceMap,\r\n extraQueryParameters: {}\r\n };\r\n}\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n ],\r\n imports: [\r\n AppRoutingModule,\r\n BrowserModule,\r\n FormsModule,\r\n HttpClientModule,\r\n ReactiveFormsModule,\r\n BrowserAnimationsModule,\r\n ToastrModule.forRoot(),\r\n// NgcCookieConsentModule.forRoot(cookieConfig),\r\n FlexLayoutModule,\r\n WelcomeModule,\r\n MainModule,\r\n SharedModule,\r\n MsalModule, \r\n MatInputModule,\r\n RouterModule.forRoot([\r\n { path: '**', 'redirectTo': '/welkom' }\r\n ])\r\n ],\r\n providers: [\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: MsalInterceptor,\r\n multi: true\r\n },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: HttpOrganizationInterceptor,\r\n multi: true\r\n }, \r\n {\r\n provide: MSAL_CONFIG,\r\n useFactory: MSALConfigFactory\r\n },\r\n {\r\n provide: MSAL_CONFIG_ANGULAR,\r\n useFactory: MSALAngularConfigFactory\r\n },\r\n MsalService\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\n\r\nimport { OauthGuard } from './guards/oauth.guard';\r\nimport { LocationStrategy, HashLocationStrategy} from '@angular/common';\r\nimport { WelcomeComponent } from './welcome/welcome.component';\r\nimport { SelfSignupComponent } from './welcome/self-signup/self-signup.component';\r\nimport { StartComponent } from './private/start/start.component';\r\nimport { MainComponent } from './private/main.component';\r\nimport { PendingChangesGuard } from './guards/PendingChanges.guard';\r\nimport { SelfSignUpGuard } from './guards/selfsignup.guard.';\r\nimport { InvitedComponent } from './welcome/invited/invited.component';\r\nimport { SignedupComponent } from './welcome/signedup/signedup.component';\r\nimport { IntroductionComponent } from './welcome/introduction/introduction.component';\r\n\r\nconst appRoutes: Routes = [\r\n { path: 'app', component: MainComponent,\r\n children: [\r\n { path: 'start', canActivate: [OauthGuard], component: StartComponent },\r\n { path: '', redirectTo: '/start', pathMatch: 'full' }\r\n ]\r\n },\r\n { path: 'welkom', component: WelcomeComponent,\r\n children: [\r\n { path: 'invited', component: InvitedComponent },\r\n { path: 'signedup', component: SignedupComponent },\r\n { path: 'proeflicentie/advies', canActivate: [SelfSignUpGuard], component: IntroductionComponent },\r\n { path: 'proeflicentie/advies/contact', canActivate: [SelfSignUpGuard], component: SelfSignupComponent },\r\n { path: '', redirectTo: '/welkom/proeflicentie/advies', pathMatch: 'full' }\r\n ]\r\n },\r\n { path: 'proeflicentie/advies', canActivate: [SelfSignUpGuard], component: SelfSignupComponent },\r\n { path: 'welkom', component: WelcomeComponent },\r\n { path: 'invited', redirectTo: 'welkom/invited' },\r\n { path: 'signedup', redirectTo: 'welkom/signedup' }\r\n];\r\n\r\nexport const authProviders = [\r\n OauthGuard\r\n];\r\n@NgModule({\r\n\r\n imports: [RouterModule.forRoot(appRoutes)],\r\n exports: [RouterModule],\r\n providers: [{ provide: LocationStrategy, useClass: HashLocationStrategy }],\r\n})\r\nexport class AppRoutingModule { }\r\n","import { BehaviorSubject } from 'rxjs';\r\nimport { AuthorisationService } from '../shared/oauth/authorisation.service';\r\nimport { Injectable } from '@angular/core';\r\nimport { Organisation } from '../welcome/self-signup/self-signup.class';\r\nimport { MsalService } from '@azure/msal-angular';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n })\r\nexport class Organization {\r\n id: string;\r\n name: string;\r\n private isInitialized: boolean;\r\n private exists: boolean;\r\n isOrganisationSelected = new BehaviorSubject(false);\r\n\r\n constructor(private authorisationService: AuthorisationService, msalService: MsalService) { \r\n }\r\n \r\n private async getOrganizations() : Promise {\r\n return await this.authorisationService.getOrganizations();\r\n }\r\n \r\n async hasOrganization(): Promise {\r\n if (!this.isInitialized) {\r\n await this.selectOrganization();\r\n }\r\n return this.exists;\r\n } \r\n\r\n async selectOrganization() : Promise {\r\n var allOrganizations = await this.authorisationService.getOrganizations();\r\n await this.setOrganization(allOrganizations[0]);\r\n return allOrganizations[0];\r\n }\r\n\r\n async selectOrganizationById(id: string) {\r\n var organization = (await this.getOrganizations()).find(x => x.id == id)\r\n this.id = organization.id;\r\n this.name = organization.name;\r\n await this.setOrganization(this);\r\n }\r\n\r\n async reset() {\r\n this.isInitialized = false;\r\n this.exists = undefined;\r\n this.isOrganisationSelected = new BehaviorSubject(false);\r\n this.id = undefined;\r\n this.name = undefined;\r\n localStorage.removeItem('currentOrganizationId')\r\n }\r\n\r\n private async setOrganization(organization : Organization) {\r\n this.isInitialized = true;\r\n\r\n if (!organization) {\r\n this.exists = false;\r\n return;\r\n }\r\n\r\n localStorage.setItem('currentOrganizationId', organization.id);\r\n\r\n this.exists = true;\r\n this.id = organization.id;\r\n this.name = organization.name;\r\n\r\n this.isOrganisationSelected.next(true);\r\n }\r\n}","import {CanDeactivate} from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { Injectable } from \"@angular/core\";\r\nexport interface ComponentCanDeactivate {\r\n canDeactivate: () => boolean | Observable;\r\n}\r\n\r\n@Injectable()\r\nexport class PendingChangesGuard implements CanDeactivate {\r\n canDeactivate(component: ComponentCanDeactivate): boolean | Observable {\r\n // if there are no pending changes, just allow deactivation; else confirm first\r\n return component.canDeactivate() ?\r\n true :\r\n // NOTE: this warning message will only be shown when navigating elsewhere within your angular app;\r\n // when navigating away from your angular app, the browser will show a generic warning message\r\n // see http://stackoverflow.com/a/42207299/7307355\r\n confirm('WARNING: You have unsaved changes. Press Cancel to go back and save these changes, or OK to lose these changes.');\r\n }\r\n}","\r\nimport { Injectable } from '@angular/core';\r\nimport { RouterModule, Routes, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, Router } from \"@angular/router\";\r\nimport { Observable } from 'rxjs';\r\nimport { AuthorisationService } from '../shared/oauth/authorisation.service';\r\nimport { Organization } from '../classes/organization.class';\r\nimport { MsalGuard, MsalService } from '@azure/msal-angular';\r\nimport { InteractionRequiredAuthError, AuthError } from 'msal';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class OauthGuard implements CanActivate {\r\n constructor(private oauthService: AuthorisationService, private authService: MsalService, private msalGuard: MsalGuard, private organization: Organization, private router: Router) {\r\n }\r\n\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean | Promise {\r\n if (this.oauthService.isSelfSignUp) {\r\n return false;\r\n }\r\n let currentUser = this.oauthService.getCurrentUser();\r\n\r\n if (this.router.url.endsWith('/proeflicentie/advies') || this.router.url.endsWith('/welkom') ) {\r\n if (currentUser != undefined) {\r\n this.router.navigate(['/start']);\r\n return false;\r\n }\r\n return true;\r\n }\r\n else {\r\n let currentUser = this.oauthService.getCurrentUser();\r\n\r\n if (currentUser != undefined) {\r\n var consentScopes = [\r\n \"api://\"+environment.apiApplicationId+\"/access_as_user\"\r\n ];\r\n \r\n let result = this.authService.acquireTokenSilent({\r\n scopes: consentScopes\r\n })\r\n .then(() => true)\r\n .catch((error: AuthError) => {\r\n if (InteractionRequiredAuthError.isInteractionRequiredError(error.errorCode)) {\r\n this.authService.getLogger().info(`Interaction required error in OauthGuard, prompting for interaction.`);\r\n this.authService.loginPopup({scopes: consentScopes}).then(() => this.router.navigate([this.router.url]));\r\n }\r\n\r\n this.authService.getLogger().error(`Non-interaction error in OauthGuard: ${error.errorMessage}`);\r\n throw error;\r\n });\r\n\r\n return result;\r\n } else {\r\n this.router.navigate([`/welkom`]);\r\n return false;\r\n }\r\n\r\n }\r\n }\r\n}\r\n","\r\nimport { Injectable } from '@angular/core';\r\nimport { RouterModule, Routes, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, Router } from \"@angular/router\";\r\nimport { Observable } from 'rxjs';\r\nimport { AuthorisationService } from '../shared/oauth/authorisation.service';\r\nimport { Organization } from '../classes/organization.class';\r\nimport { MsalGuard, MsalService } from '@azure/msal-angular';\r\nimport { InteractionRequiredAuthError, AuthError } from 'msal';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable()\r\nexport class SelfSignUpGuard implements CanActivate {\r\n constructor(private oauthService: AuthorisationService, private authService: MsalService, private msalGuard: MsalGuard, private organization: Organization, private router: Router) {\r\n }\r\n\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean | Promise {\r\n if (this.oauthService.isSelfSignUp) {\r\n return false;\r\n }\r\n let currentUser = this.oauthService.getCurrentUser();\r\n\r\n if (currentUser != undefined) {\r\n this.router.navigate(['/start']);\r\n return false;\r\n }\r\n return true;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n HttpInterceptor,\r\n HttpRequest,\r\n HttpResponse,\r\n HttpHandler,\r\n HttpEvent,\r\n HttpErrorResponse\r\n} from '@angular/common/http';\r\n\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { map, catchError } from 'rxjs/operators';\r\nimport { AuthorisationService } from '../shared/oauth/authorisation.service';\r\nimport { Organization } from '../classes/organization.class';\r\nimport { Organisation } from '../welcome/self-signup/self-signup.class';\r\n\r\n@Injectable()\r\nexport class HttpOrganizationInterceptor implements HttpInterceptor {\r\n\r\n constructor(private authorisationService: AuthorisationService, private organization: Organization) {\r\n }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n\r\n if (!request.url.endsWith('/organizations')) { \r\n this.organization.isOrganisationSelected.subscribe(isSelected => {\r\n if (!isSelected) {\r\n this.organization.selectOrganization();\r\n }\r\n });\r\n \r\n var currentOrganizationId: string = localStorage.getItem('currentOrganizationId');\r\n \r\n if (currentOrganizationId) {\r\n request = request.clone({ headers: request.headers.set('OrganizationId', currentOrganizationId) });\r\n }\r\n }\r\n\r\n return next.handle(request).pipe(\r\n map((event: HttpEvent) => {\r\n if (event instanceof HttpResponse) {\r\n console.log('event--->>>', event);\r\n }\r\n return event;\r\n }));\r\n }\r\n}","import { NgModule } from '@angular/core';\r\n\r\nimport { LocalStorage } from \"./local-storage\";\r\nexport { LocalStorage } from \"./local-storage\";\r\nimport { SessionStorage } from \"./session-storage\";\r\nexport { SessionStorage } from \"./session-storage\";\r\n\r\n@NgModule({\r\n providers: [LocalStorage, SessionStorage]\r\n})\r\nexport class StorageModule {}","import { Injectable } from '@angular/core';\r\nimport { StorageBase } from './storage-base';\r\n\r\n@Injectable()\r\nexport class LocalStorage extends StorageBase {\r\n constructor() {\r\n super(window.localStorage, 'LocalStorage');\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { StorageBase } from './storage-base';\r\n\r\n@Injectable()\r\nexport class SessionStorage extends StorageBase {\r\n constructor() {\r\n super(window.sessionStorage, 'SessionStorage');\r\n }\r\n}","export abstract class StorageBase {\r\n private storageObject: any;\r\n\r\n constructor(storageObject: any, storageObjectName: string) {\r\n if (!storageObject) {\r\n throw new Error(`Current browser does not support ${ storageObjectName }`);\r\n }\r\n\r\n this.storageObject = storageObject;\r\n }\r\n\r\n getItem(key: string): string {\r\n return this.storageObject.getItem(key) || null;\r\n }\r\n\r\n setItem(key: string, value: string): void {\r\n this.storageObject.setItem(key, value);\r\n }\r\n\r\n removeItem(key: string): void {\r\n this.storageObject.removeItem(key);\r\n }\r\n\r\n key(index: number): string {\r\n return this.storageObject.key(index);\r\n }\r\n\r\n clear(): void {\r\n this.storageObject.clear();\r\n }\r\n\r\n get length(): number {\r\n return this.storageObject.length;\r\n }\r\n\r\n getObject(key: string): any {\r\n let jsonInStorage = this.getItem(key);\r\n\r\n if (jsonInStorage === null) {\r\n return null;\r\n }\r\n\r\n return JSON.parse(jsonInStorage);\r\n }\r\n\r\n setObject(key: string, value: any): void {\r\n this.setItem(key, JSON.stringify(value));\r\n }\r\n}","import { Component, OnInit, EventEmitter, Output, Input } from '@angular/core';\r\nimport { CommunicationService } from '../../shared/services/communication.service';\r\n\r\n@Component({\r\n selector: 'app-dbcheck',\r\n templateUrl: './dbcheck.component.html',\r\n styleUrls: ['./dbcheck.component.scss']\r\n})\r\nexport class DbcheckComponent implements OnInit {\r\n @Output() dbcheckChange: EventEmitter = new EventEmitter();\r\n @Input()\r\n public dbcheck: boolean;\r\n @Input()\r\n public isDisabled: boolean;\r\n @Input()\r\n public defaultcheck: boolean = null;\r\n public noDatabase: boolean;\r\n public yesDatabase: boolean;\r\n public isDataLoaded: boolean;\r\n\r\n constructor(private communicationService: CommunicationService) {\r\n\r\n }\r\n\r\n async ngOnInit() {\r\n await this.communicationService.isDatabaseUploaded().then(result => {\r\n this.isDataLoaded = true;\r\n if (result) {\r\n this.isDisabled = true;\r\n this.yesDatabase = true;\r\n this.chkChange(true, null)\r\n }\r\n });\r\n }\r\n\r\n public chkChange(b, e) {\r\n // if b = true user has database \"yes\"\r\n if (b && this.yesDatabase) {\r\n this.noDatabase = false;\r\n this.dbcheck = true;\r\n } else if (!b && this.noDatabase) {\r\n this.yesDatabase = false;\r\n this.dbcheck = false;\r\n } else {\r\n this.dbcheck = null;\r\n }\r\n this.dbcheckChange.emit(this.dbcheck);\r\n }\r\n}\r\n","Wilt u uw bestaande DIAS Advies database gebruiken in Dias Advies Cloud?
\r\nJa
\r\nNee
","import { Component, OnInit,Input } from '@angular/core';\r\nimport { LocalStorage } from '../../modules/browser-storage';\r\n@Component({\r\n selector: 'app-envprocess',\r\n templateUrl: './envprocess.component.html',\r\n styleUrls: ['./envprocess.component.scss']\r\n})\r\nexport class EnvprocessComponent implements OnInit {\r\n \r\n @Input()\r\n public status ={\"value\":{\"state\":\"3\",\"stateDescription\":\"U heeft nog geen omgeving\",\"stateChangedOn\":\"9/18/2017 12:06:28 PM\"}};\r\n constructor( private localStorage: LocalStorage) { }\r\n\r\n ngOnInit() {\r\n //Check for owner the status of the system \r\n if (this.localStorage.getObject('status') != null) {\r\n this.status = this.localStorage.getObject('status');\r\n }\r\n }\r\n public get environmentStatus() {\r\n return (Number(this.status.value.state));\r\n }\r\n}\r\n","
\r\nWe gaan onderstaande stappen uitvoeren om uw omgeving gereed te maken.
\r\nNa de laatste stap ontvangt u een e-mail om de software te downloaden.\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
1,'active':environmentStatus == 1,'disabled':environmentStatus < 1}\"\r\n class=\"bs-wizard-step complete\">\r\n
Stap 1
\r\n
\r\n
\r\n
\r\n \r\n
Uw nieuwe omgeving wordt aangemaakt.
\r\n
\r\n\r\n
2 ,'disabled':environmentStatus < 2}\"\r\n class=\" bs-wizard-step \">\r\n \r\n
Stap 2
\r\n
\r\n
\r\n
\r\n \r\n
Uw nieuwe omgeving is aangemaakt, maar moet nog worden ingericht.
\r\n
\r\n\r\n
3 ,'disabled':environmentStatus < 3}\"\r\n class=\" bs-wizard-step \">\r\n \r\n
Stap 3
\r\n
\r\n
\r\n
\r\n \r\n
Uw nieuwe omgeving wordt ingericht.
\r\n
\r\n\r\n
\r\n \r\n
Stap 4
\r\n
\r\n
\r\n
\r\n \r\n
Uw nieuwe omgeving is gereed.
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
We maken uw omgeving aan. Dit kan een aantal minuten duren.
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { AuthorisationService } from '../../shared/oauth/authorisation.service';\r\nimport { Router, ActivatedRoute, NavigationEnd } from '@angular/router';\r\nimport { MsalService } from '@azure/msal-angular';\r\n\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss']\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n public pageTitle = \"Start\";\r\n public loggedIn = false;\r\n\r\n constructor(private authService: MsalService, private router: Router, private activatedRoute: ActivatedRoute) { }\r\n\r\n ngOnInit() {\r\n this.router.events.subscribe(e => {\r\n if (e instanceof NavigationEnd && this.activatedRoute.firstChild.snapshot.data) {\r\n let params: any = this.activatedRoute.firstChild.snapshot.data;\r\n if (params.title) {\r\n this.pageTitle = params.title;\r\n }\r\n }\r\n });\r\n\r\n this.checkoutAccount();\r\n }\r\n\r\n checkoutAccount() {\r\n this.loggedIn = !!this.authService.getAccount();\r\n }\r\n \r\n logout() {\r\n this.authService.logout();\r\n }\r\n}\r\n\r\n","
\r\n \r\n

{{pageTitle}}

\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
","import { Component, ViewEncapsulation, OnInit } from '@angular/core';\r\nimport { CommunicationService } from '../shared/services/communication.service';\r\nimport { LocalStorage } from '../modules/browser-storage/local-storage';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { MsalService } from '@azure/msal-angular';\r\nimport { AuthorisationService } from '../shared/oauth/authorisation.service';\r\nimport { Organization } from '../classes/organization.class';\r\n\r\n@Component({\r\n selector: 'app-main',\r\n templateUrl: './main.component.html',\r\n styleUrls: ['./main.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class MainComponent implements OnInit {\r\n public isNavToggled = false;\r\n\r\n public routerMain: Array = [\r\n { routerLink: '/start', 'name': 'Start', icon: 'fa-home' }\r\n ];\r\n constructor(private communicationService: CommunicationService, private authService: AuthorisationService,\r\n private localStorage: LocalStorage, private organization: Organization) { }\r\n\r\n ngOnInit() {\r\n if (this.authService.getCurrentUser() != null && this.organization.hasOrganization()) {\r\n this.communicationService.environmentStatus().subscribe(result => {\r\n this.localStorage.setObject('status', result);\r\n });\r\n }\r\n }\r\n\r\n public GetMenuToggleIcon(): string {\r\n if (!this.isNavToggled) {\r\n return 'keyboard_arrow_right';\r\n }\r\n return 'keyboard_arrow_left';\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
{{route.name}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n
","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { FormsModule, ReactiveFormsModule} from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { HttpClientModule } from '@angular/common/http';\r\n\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { PendingChangesGuard } from '../guards/PendingChanges.guard';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { SharedModule } from '../shared/shared.module';\r\nimport { MainComponent } from './main.component';\r\nimport { MainRoutes } from './main.routing';\r\nimport { HeaderComponent } from './header/header.component';\r\nimport { StartComponent, ResetDatabaseDialog } from './start/start.component';\r\nimport { OauthGuard } from '../guards/oauth.guard';\r\nimport { NgxUploaderModule } from 'ngx-uploader';\r\nimport { StorageModule } from '../modules/browser-storage';\r\nimport { UploadComponent } from './upload/upload.component';\r\nimport { DbcheckComponent } from './dbcheck/dbcheck.component';\r\nimport { EnvprocessComponent } from './envprocess/envprocess.component';\r\nimport { TrialEnvironmentComponent } from './trial-environment/trial-environment.component';\r\nimport { TrialEnvironmentGuard } from './trial-environment/trial-environment.guard';\r\nimport { StartGuard } from './start/start.guard';\r\nimport { SelfSignUpGuard } from '../guards/selfsignup.guard.';\r\n\r\n@NgModule({\r\n imports: [\r\n BrowserModule,\r\n FormsModule,\r\n CommonModule,\r\n FormsModule,\r\n FlexLayoutModule,\r\n ReactiveFormsModule,\r\n // MaterialModule,\r\n BrowserAnimationsModule,\r\n FlexLayoutModule,\r\n SharedModule,\r\n StorageModule,\r\n NgxUploaderModule,\r\n HttpClientModule,\r\n MatInputModule,\r\n MatAutocompleteModule,\r\n MainRoutes\r\n ],\r\n declarations: [\r\n MainComponent,\r\n HeaderComponent,\r\n StartComponent,\r\n UploadComponent,\r\n DbcheckComponent,\r\n EnvprocessComponent,\r\n ResetDatabaseDialog,\r\n TrialEnvironmentComponent\r\n ],\r\n entryComponents: [StartComponent, ResetDatabaseDialog, TrialEnvironmentComponent],\r\n providers: [\r\n OauthGuard,\r\n PendingChangesGuard,\r\n StartGuard,\r\n TrialEnvironmentGuard,\r\n SelfSignUpGuard\r\n ],\r\n bootstrap: [MainComponent]\r\n})\r\nexport class MainModule { }\r\n","import { Routes, RouterModule } from '@angular/router';\r\nimport { MainComponent } from './main.component';\r\nimport { StartComponent } from './start/start.component';\r\nimport { OauthGuard } from '../guards/oauth.guard';\r\nimport { TrialEnvironmentComponent } from './trial-environment/trial-environment.component';\r\nimport { StartGuard } from './start/start.guard';\r\nimport { TrialEnvironmentGuard } from './trial-environment/trial-environment.guard';\r\n\r\nconst mainRoutes: Routes = [\r\n {\r\n path: '', canActivate: [OauthGuard], component: MainComponent,\r\n children: [\r\n { path: 'start', component: StartComponent, canActivate: [StartGuard] },\r\n { path: 'advies/trialenvironment', component: TrialEnvironmentComponent, canActivate: [TrialEnvironmentGuard] }\r\n ]\r\n }\r\n];\r\nexport const MainRoutes = RouterModule.forChild(mainRoutes);","import { Component, OnInit } from '@angular/core';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { AuthorisationService } from '../../shared/oauth/authorisation.service';\r\nimport { CommunicationService } from '../../shared/services/communication.service';\r\nimport { LocalStorage } from '../../modules/browser-storage';\r\nimport { Subscription } from 'rxjs';\r\nimport { LoaderComponent } from '../../shared/loader/loader.component';\r\nimport { MatDialog } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-start',\r\n templateUrl: './start.component.html',\r\n styleUrls: ['./start.component.scss']\r\n})\r\n\r\nexport class StartComponent implements OnInit {\r\n private subscription: Subscription;\r\n public isDataLoaded = false;\r\n public isOwner = false;\r\n public isUploading = false;\r\n public isUploaded = false;\r\n public currentState = 0;\r\n public initialdbcheck = null;\r\n public initialstatus = { 'value': { \"state\": \"0\", \"stateDescription\": \"U heeft nog geen omgeving\", \"stateChangedOn\": \"9/18/2017 12:06:28 PM\" } };\r\n\r\n constructor(private loader: LoaderComponent, private as: AuthorisationService,\r\n private communicationService: CommunicationService, private localStorage: LocalStorage, public dialog: MatDialog) {\r\n }\r\n\r\n ngOnInit() {\r\n // Check if the user is an owner by claims\r\n this.as.isOrganizationAdmin().then(result => {\r\n this.isOwner = result\r\n });\r\n\r\n // Check for status in localstorage to show correct html\r\n if (this.localStorage.getObject('status') != null) {\r\n this.initialstatus = this.localStorage.getObject('status');\r\n }\r\n\r\n this.communicationService.environmentStatus().subscribe(result => {\r\n this.initialstatus = result;\r\n });\r\n\r\n this.communicationService.isDatabaseUploaded().then(result => {\r\n this.isDataLoaded = true;\r\n this.isUploaded = result;\r\n if (result)\r\n this.initialdbcheck = false;\r\n });\r\n }\r\n\r\n public checkEnvironmentStatus() {\r\n this.communicationService.environmentStatus().subscribe(result => {\r\n this.initialstatus = result;\r\n this.loader.done();\r\n });\r\n }\r\n\r\n public checkEnvironmentStatusLoop() {\r\n\r\n this.subscription = this.communicationService.environmentStatusLoop().subscribe(result => {\r\n this.initialstatus = result;\r\n this.localStorage.setObject('status', this.initialstatus);\r\n if (this.initialstatus.value.state >= '4') {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n console.log('Status is:' + result);\r\n\r\n }, fault => {\r\n console.log(fault);\r\n this.subscription.unsubscribe();\r\n });\r\n }\r\n\r\n public get environmentStatus() {\r\n return (Number(this.initialstatus.value.state));\r\n }\r\n\r\n public get name() {\r\n return this.as.name != null ? this.as.name : '';\r\n }\r\n\r\n public handleUploadStarted(started): void {\r\n this.isUploading = started;\r\n }\r\n\r\n public handleUploaded(uploadStatus): void {\r\n this.isUploaded = uploadStatus;\r\n this.isUploading = false;\r\n }\r\n\r\n public startProcess(): void {\r\n this.isUploaded = false;\r\n this.loader.show();\r\n this.initialstatus = { 'value': { 'state': '1', 'stateDescription': 'U heeft nog geen omgeving', 'stateChangedOn': '9/18/2017 12:06:28 PM' } };\r\n this.createOrUpdateEnvironment();\r\n }\r\n\r\n private onResetDatabase(): void {\r\n\r\n let dialogRef = this.dialog.open(ResetDatabaseDialog, {\r\n width: '500px'\r\n });\r\n dialogRef.afterClosed().subscribe(result => {\r\n if (result) {\r\n this.resetDatabase();\r\n }\r\n });\r\n }\r\n \r\n private resetDatabase() {\r\n this.loader.show();\r\n this.communicationService.resetEnvironment().subscribe(result => {\r\n this.checkEnvironmentStatus();\r\n this.isUploading = false;\r\n this.isUploaded = false;\r\n this.initialdbcheck = null;\r\n console.log('Deleted database');\r\n }, fault => {\r\n console.log(fault);\r\n });\r\n }\r\n\r\n private createOrUpdateEnvironment(): void {\r\n this.communicationService.createOrUpdateEnvironment().subscribe(\r\n result => {\r\n this.checkEnvironmentStatusLoop();\r\n console.log('Created or updated environment!');\r\n this.loader.done();\r\n }, fault => {\r\n this.loader.done();\r\n console.log(fault);\r\n });\r\n }\r\n}\r\n@Component({\r\n selector: 'app-reset-database.dialog',\r\n templateUrl: 'reset-database.dialog.html',\r\n})\r\nexport class ResetDatabaseDialog { }","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

Beste {{ name.trim()}},

\r\n
\r\n
\r\n
Welkom bij DIAS Advies Cloud.
\r\n\r\n
\r\n\r\n Uw registratie als gebruiker van DIAS Advies Cloud is succesvol afgerond.\r\n \r\n

\r\n Wilt u een extra gebruiker toegang geven tot DIAS Advies Cloud?\r\n
Vraag uw beheerder van DIAS Advies Cloud om een extra gebruiker uit te nodigen.\r\n
Uw beheerder doet dit vanuit DIAS Advies Cloud in het menu\r\n Systeem > Autorisatie.\r\n\r\n

\r\n

\r\n Wilt u uw lokale DIAS Advies database gebruiken in DIAS Advies Cloud?\r\n
Vraag uw beheerder om in te loggen op\r\n mijn.dias.nl en een export van de lokale database te uploaden naar DIAS Advies Cloud.\r\n

\r\n
\r\n
\r\n\r\n\r\n U kunt in DIAS Advies Cloud gebruik maken van uw adviezen en klantgegevens die u in uw lokale DIAS Advies applicatie\r\n gemaakt heeft.\r\n
U maakt hiervoor een export van uw lokale database.\r\n\r\n

\r\n \r\n

\r\n\r\n Let op: als u uw lokale DIAS Advies database niet uploadt naar DIAS Advies Cloud zal\r\n een nieuwe database voor de cloud-versie worden aangemaakt.\r\n
Als u op een later moment uw lokale DIAS Advies database alsnog wilt uploaden naar de cloud-versie\r\n dan zullen alle relatiegegevens en adviezen, gemaakt in DIAS Advies Cloud, overschreven worden.\r\n\r\n
\r\n
0 && environmentStatus < 4 \" class=\"box-body\">\r\n \r\n
\r\n\r\n
= 4\" class=\"box-body\">\r\n Uw registratie als gebruiker van DIAS Advies Cloud is succesvol afgerond.\r\n \r\n

\r\n Wilt u een extra gebruiker toegang geven tot DIAS Advies Cloud?\r\n
U kunt, door in te loggen op DIAS Advies Cloud, zelf een gebruiker uitnodigen.\r\n
Kies in het menu\r\n Systeem > Autorisatie voor de optie Gebruikers.\r\n
Voer de gegevens en het e-mailadres in van de gebruiker die u wilt uitnodigen voor DIAS\r\n Advies Cloud.\r\n
Kies in het menu voor Opslaan en sluiten.\r\n
De gebruiker wordt toegevoegd en ontvangt een e-mail.\r\n
In de e-mail wordt een link vermeld waarmee de gebruiker zijn aanmelding moet bevestigen. Daarna\r\n ontvangt hij een 2de e-mail.\r\n
Deze bevat een link waarmee de client-software kan worden gedownload.\r\n
Daarna kan de gebruiker direct aan de slag.\r\n

\r\n
\r\n Wilt u uw huidige database van DIAS Advies Cloud resetten of wilt u uw lokale DIAS Advies database gebruiken in DIAS\r\n Advies Cloud? Klik dan op Reset Database\r\n
\r\n

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

\r\n
\r\n
\r\n ss\r\n \r\n
\r\n
\r\n
\r\n

\r\n Klik op Afronden om uw aanmelding voor DIAS Advies Cloud te voltooien.\r\n
Wij activeren dan uw licentie en maken uw omgeving gereed om direct aan de slag te kunnen.\r\n

\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
","

Weet u het zeker?

\r\n\r\n

Uw bestaande adviezen en relaties in Dias Advies Cloud worden verwijderd.

\r\n

Deze actie kan niet ongedaan worden gemaakt.

\r\n

Na het resetten van uw database krijgt u de mogelijkheid een nieuwe database aan te maken of uw bestaande lokale Dias Advies database te uploaden.

\r\n \r\n
\r\n\r\n \r\n \r\n\r\n","\r\nimport { Injectable } from '@angular/core';\r\nimport { RouterModule, Routes, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, Router, ActivatedRoute } from \"@angular/router\";\r\nimport { Observable } from 'rxjs';\r\nimport { MsalGuard, MsalService } from '@azure/msal-angular';\r\nimport { InteractionRequiredAuthError, AuthError } from 'msal';\r\nimport { Organization } from '../../classes/organization.class';\r\nimport { OauthGuard } from '../../guards/oauth.guard';\r\n\r\n@Injectable()\r\nexport class StartGuard implements CanActivate {\r\n constructor(private oauthGuard: OauthGuard, private organization: Organization, private router: Router, private route: ActivatedRoute) {\r\n }\r\n\r\n async canActivate(next: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise {\r\n\r\n var canActivate = this.oauthGuard.canActivate(next, state);\r\n\r\n if (!canActivate) {\r\n return false;\r\n } \r\n\r\n let currentOrganization = await this.organization.hasOrganization();\r\n if (!currentOrganization) {\r\n this.router.navigate([`/advies/trialenvironment`]);\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n}","
\r\n
\r\n

Welkom bij DIAS Advies

\r\n

\r\n Hier kunt u een DIAS Advies Cloud omgeving gratis en vrijblijvend aanmaken voor 30 dagen.
\r\n Vul hieronder uw gegevens in om direct aan de slag te gaan.
\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n Inlognaam is ongeldig\r\n \r\n \r\n Inlognaam is een verplicht veld.\r\n \r\n \r\n \r\n \r\n \r\n Voornaam is een verplicht veld.\r\n \r\n \r\n \r\n \r\n \r\n Achternaam is een verplicht veld.\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Laden...\r\n \r\n \r\n
\r\n {{cocSearchResult.handelsnaam}} - KVK-nummer: {{cocSearchResult.dossiernummer}} - ({{cocSearchResult.plaats}})\r\n
\r\n
\r\n
\r\n
\r\n \r\n Bedrijfsnaam is een verplicht veld.\r\n \r\n
\r\n\r\n \r\n \r\n \r\n KVK-nummer bestaat altijd uit 8 cijfers.\r\n \r\n \r\n\r\n \r\n \r\n \r\n Telefoonnummer is een verplicht veld.\r\n \r\n \r\n \r\n \r\n \r\n Correspondentie e-mailadres is ongeldig\r\n \r\n \r\n Correspondentie e-mailadres is een verplicht veld.\r\n \r\n \r\n\r\n Bent u een relatie van DIAS Software en heeft u een licentie voor Efdece of DIAS Advies?\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n Relatienummer is een verplicht veld.\r\n \r\n \r\n
\r\n info_outline\r\n U kunt uw relatienummer bij DIAS Software als volgt vinden:
\r\n - Als u Efdece gebruikt dan kunt u uw relatienummer vinden door in het menu Bestand te kiezen voor\r\n Gemeenschappelijke instellingen en vervolgens voor het tabblad Overige.
\r\n - Als u DIAS Advies gebruikt dan vindt u het relatienummer door in het menu Systeem te kiezen voor\r\n Licentiegegevens tonen.\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n Wachtwoord is een verplicht veld.\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n Ik ben me ervan bewust dat ik een overeenkomst aanga voor 30 dagen voor dit proefabonnement met DIAS Software. Op deze overeenkomst zijn de algemene leveringsvoorwaarden van toepassing. Deze kunnen worden geraadpleegd op www.dias.nl. Het doel van dit proefabonnement is kennis te nemen van de mogelijkheden en werking van DIAS Advies en niet voor het operationeel gebruik. Ik zal dan ook geen gegevens van reële personen verwerken in de software gedurende deze proefperiode. Zonder actieve licentie worden deze gegevens door DIAS Software binnen 3 maanden weer verwijderd. \r\n Ik geef DIAS Software toestemming om mijn bovenstaande persoonsgegevens te verwerken voor het kunnen aanmaken van het proefabonnement en om gedurende de overeenkomst enkele e-mails te sturen om het product beter te leren kennen. DIAS Software verwerkt de contactgegevens om contact met mij op te nemen voor een evaluatiegesprek.\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 { FormControl, NgForm, Validators, FormGroup, RequiredValidator, AbstractControl } from '@angular/forms';\r\nimport { CommunicationService } from '../../shared/services/communication.service';\r\nimport { MsalService } from '@azure/msal-angular';\r\nimport { Account } from 'msal';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { GraphProfile, GraphOrganization, GraphService } from '../../shared/services/graph.service';\r\nimport { RequiredIfValidator } from '../../shared/validators/requiredif.validator';\r\nimport { delay, debounceTime, tap, switchMap, finalize } from 'rxjs/operators';\r\nimport { Organization } from '../../classes/organization.class';\r\nimport { environment } from '../../../environments/environment';\r\nimport { KvkResult } from '../../classes/kvkResult.class';\r\n\r\n@Component({\r\n selector: 'app-trial-environment',\r\n templateUrl: './trial-environment.component.html',\r\n styleUrls: ['./trial-environment.component.scss']\r\n})\r\nexport class TrialEnvironmentComponent implements OnInit {\r\n private EMAIL_REGEX = '^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*$';\r\n public account: Account;\r\n public profile: GraphProfile;\r\n public organization: GraphOrganization;\r\n public isExistingCustomer: boolean;\r\n\r\n public trialForm;\r\n\r\n get firstName() { return this.trialForm.get('firstName'); }\r\n get lastName() { return this.trialForm.get('lastName'); }\r\n// get organizationName() { return this.trialForm.get('organizationName'); }\r\n get userName() { return this.trialForm.get('userName'); }\r\n get email() { return this.trialForm.get('email'); }\r\n get phoneNumber() { return this.trialForm.get('phoneNumber'); }\r\n get customerNumber() { return this.trialForm.get('customerNumber'); }\r\n get customerPassword() { return this.trialForm.get('customerPassword'); }\r\n get cocNumber() { return this.trialForm.get('cocNumber'); }\r\n\r\n constructor(private http: HttpClient, private communicationService: CommunicationService, private authService: MsalService, private route: ActivatedRoute, private router: Router, private graphService: GraphService, private cOrganization: Organization) { }\r\n\r\n cocIsLoading = false;\r\n cocSearchResults: KvkResult[];\r\n\r\n async ngOnInit() {\r\n\r\n this.account = this.authService.getAccount();\r\n \r\n this.profile = await this.graphService.getProfile();\r\n this.organization = await this.graphService.getOrganization();\r\n\r\n let phoneNumber = this.profile.businessPhones.length > 0 ? this.profile.businessPhones[0] : this.profile.mobilePhone ? this.profile.mobilePhone : '';\r\n\r\n var userNameCtrl = new FormControl(this.profile.userPrincipalName.toLowerCase(), Validators.required);\r\n userNameCtrl.disable();\r\n\r\n var cocNumberCtrl = new FormControl();\r\n\r\n var organizationNameCtrl = new FormControl(\"\", Validators.required);\r\n organizationNameCtrl.valueChanges\r\n .pipe(\r\n debounceTime(500),\r\n tap((value: string) => {\r\n if (value != \"\" && this.cocSearchResults != undefined && this.cocSearchResults.length > 0) {\r\n var item = this.cocSearchResults.find(x => x.handelsnaam == value);\r\n if (item != undefined){ \r\n cocNumberCtrl.setValue(item.dossiernummer);\r\n }\r\n }\r\n this.cocSearchResults = [];\r\n this.cocIsLoading = true;\r\n }),\r\n switchMap((value: string) => this.communicationService.searchKvk(value)\r\n .pipe(\r\n finalize(() => {\r\n this.cocIsLoading = false;\r\n })\r\n )\r\n )\r\n )\r\n .subscribe(data => {\r\n this.cocSearchResults = data;\r\n console.log(this.cocSearchResults); \r\n })\r\n\r\n var emailCtrl = new FormControl(this.profile.userPrincipalName.toLowerCase(), Validators.required);\r\n\r\n this.trialForm = new FormGroup({\r\n userName: userNameCtrl,\r\n firstName: new FormControl(this.profile.givenName, Validators.required),\r\n lastName: new FormControl(this.profile.surname, Validators.required),\r\n gender: new FormControl(),\r\n organizationName: organizationNameCtrl,\r\n cocNumber: cocNumberCtrl,\r\n phoneNumber: new FormControl(phoneNumber, Validators.required),\r\n email: emailCtrl,\r\n isExistingCustomer: new FormControl(false),\r\n customerNumber: new FormControl(null, RequiredIfValidator(() => this.trialForm.get('isExistingCustomer').value)),\r\n customerPassword: new FormControl(null, RequiredIfValidator(() => this.trialForm.get('isExistingCustomer').value)),\r\n isTermsAccepted: new FormControl(false, Validators.requiredTrue)\r\n });\r\n\r\n this.trialForm.get('isExistingCustomer').valueChanges\r\n .subscribe(value => {\r\n this.trialForm.get('customerNumber').updateValueAndValidity();\r\n this.trialForm.get('customerPassword').updateValueAndValidity();\r\n this.isExistingCustomer = value;\r\n });\r\n }\r\n\r\n async onSubmit() {\r\n if (!this.trialForm.isExistingCustomer) {\r\n this.trialForm.customerNumber = null;\r\n this.trialForm.customerPassword = null;\r\n }\r\n\r\n let formObj = this.trialForm.getRawValue();\r\n let json = JSON.stringify(formObj);\r\n\r\n try {\r\n let newOrganizationId = await this.communicationService.createTrialEnvironment(json); \r\n await this.cOrganization.reset();\r\n console.log('redirecting');\r\n window.location.replace(environment.redirectUri); \r\n }\r\n catch {\r\n\r\n }\r\n }\r\n\r\n}","\r\nimport { Injectable } from '@angular/core';\r\nimport { RouterModule, Routes, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, Router } from \"@angular/router\";\r\nimport { Observable } from 'rxjs';\r\nimport { MsalGuard, MsalService } from '@azure/msal-angular';\r\nimport { InteractionRequiredAuthError, AuthError } from 'msal';\r\nimport { Organization } from '../../classes/organization.class';\r\nimport { OauthGuard } from '../..//guards/oauth.guard';\r\n\r\n@Injectable()\r\nexport class TrialEnvironmentGuard implements CanActivate {\r\n constructor(private oauthGuard: OauthGuard, private organization: Organization) {\r\n }\r\n\r\n async canActivate(next: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise {\r\n\r\n let canActivate = this.oauthGuard.canActivate(next, state);\r\n let hasOrganization = await this.organization.hasOrganization()\r\n\r\n if (canActivate && !hasOrganization) {\r\n return true;\r\n }\r\n \r\n return false; \r\n } \r\n}\r\n","
\r\n
\r\n\r\n U wilt uw bestaande adviezen en klantgegevens gebruiken in DIAS Advies Cloud.\r\n
Dit kan door het maken van een export van uw database en deze hier te uploaden.\r\n
Het maken van een export van uw database is stap voor stap in deze\r\n handleiding uitgelegd.\r\n\r\n\r\n

\r\n Na het maken van de export van uw database kunt u het bestand hieronder uploaden. Is uw database groter dan 2 GB dan is uploaden niet mogelijk. Neem contact op met de Servicedesk van DIAS Software om u verder te helpen.\r\n
Selecteer het exportbestand van uw database en start het uploaden.\r\n
Het uploaden van uw database kan afhankelijk van de grootte van de database en uw internetverbinding enige tijd duren.\r\n

\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\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, Output, Input, OnInit, EventEmitter, ViewContainerRef, HostListener } from '@angular/core';\r\nimport { UploadOutput, UploadInput, UploadFile, humanizeBytes, UploaderOptions } from 'ngx-uploader';\r\nimport { AuthorisationService } from '../../shared/oauth/authorisation.service';\r\nimport { CommunicationService } from '../../shared/services/communication.service';\r\nimport { environment } from '../../../environments/environment';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { ComponentCanDeactivate } from '../../guards/PendingChanges.guard';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http'\r\nimport { promise } from \"protractor\";\r\nimport \"rxjs/add/operator/map\"\r\nimport { MsalService } from '@azure/msal-angular';\r\nimport { AuthResponse, ServerHashParamKeys } from 'msal';\r\n\r\n@Component({\r\n selector: 'app-upload',\r\n templateUrl: './upload.component.html',\r\n styleUrls: ['./upload.component.scss']\r\n})\r\nexport class UploadComponent implements ComponentCanDeactivate, OnInit {\r\n options: UploaderOptions;\r\n formData: FormData;\r\n files: UploadFile[];\r\n uploadInput: EventEmitter;\r\n humanizeBytes: Function;\r\n dragOver: boolean;\r\n canLeave = true;\r\n sizeLimit = 2147483647; // 2 gb is the limit for a streaming upload by hosting in Azure Website (IIS restriction)\r\n @Output() uploadChange: EventEmitter = new EventEmitter();\r\n @Output() uploadStarted: EventEmitter = new EventEmitter();\r\n @Input() public uploadSucces: boolean = false;\r\n public isDataLoaded: boolean = false;\r\n public isUploading: boolean = false;\r\n public color = 'primary';\r\n public mode = 'determinate';\r\n public value = 0;\r\n private baseUrl = environment.apiUrl;\r\n private headers: { Authorization: string; OrganizationId: string };\r\n\r\n constructor(private authorisationService: AuthorisationService, private communicationService: CommunicationService, public toastr: ToastrService, private httpClient: HttpClient, containerRef: ViewContainerRef, private auth: MsalService) {\r\n this.files = []; // local uploading files array\r\n this.uploadInput = new EventEmitter(); // input events, we use this to emit data to ngx-uploader\r\n this.humanizeBytes = humanizeBytes;\r\n \r\n // this.options.concurrency = 1;\r\n //this.options = { allowedContentTypes: ['.bacpac'] } as UploaderOptions;\r\n }\r\n @HostListener('window:beforeunload')\r\n canDeactivate(): Observable | boolean {\r\n // insert logic to check if there are pending changes here;\r\n // returning true will navigate without confirmation\r\n // returning false will show a confirm dialog before navigating away\r\n return this.canLeave;\r\n }\r\n\r\n showSuccess() {\r\n this.toastr.success('Database upload compleet!', 'Upload process');\r\n this.uploadChange.emit(this.uploadSucces);\r\n this.canLeave = true;\r\n }\r\n\r\n showError(title: string, body: string) {\r\n this.toastr.error(body, title);\r\n this.uploadChange.emit(this.uploadSucces);\r\n this.canLeave = true;\r\n }\r\n\r\n async ngOnInit() {\r\n await this.communicationService.isDatabaseUploaded().then(result => {\r\n this.isDataLoaded = true\r\n this.uploadSucces = result;\r\n });\r\n\r\n const scopes = this.auth.getScopesForEndpoint(environment.apiUrl);\r\n this.auth.getLogger().verbose(\"Url: \" + environment.apiUrl + \" maps to scopes: \" + scopes);\r\n\r\n var currentOrganizationId: string = localStorage.getItem('currentOrganizationId');\r\n\r\n let token: string;\r\n this.auth.acquireTokenSilent({ scopes })\r\n .then((response: AuthResponse) => {\r\n token = response.tokenType === ServerHashParamKeys.ID_TOKEN ? response.idToken.rawIdToken : response.accessToken;\r\n this.headers = { Authorization: `Bearer ${token}`, OrganizationId: currentOrganizationId }; \r\n })\r\n }\r\n\r\n onUploadOutput(output: UploadOutput): void {\r\n if (output.type === 'allAddedToQueue') { // when all files added in queue\r\n // uncomment this if you want to auto upload files when added\r\n // const event: UploadInput = {\r\n // type: 'uploadAll',\r\n // url: '/upload',\r\n // method: 'POST',\r\n // data: { foo: 'bar' }\r\n // };\r\n // this.uploadInput.emit(event);\r\n } else if (output.type === 'addedToQueue' && typeof output.file !== 'undefined') { // add file to array when added \r\n let fileExtension;\r\n if (output.file.name.lastIndexOf('.') > 0) {\r\n fileExtension = output.file.name.substring(output.file.name.lastIndexOf('.') + 1, output.file.name.length);\r\n }\r\n\r\n if (output.file.size > this.sizeLimit) {\r\n this.showError('Upload melding', 'Uw database is groter dan 2GB en kan daardoor niet worden geupload');\r\n this.removeAllFiles();\r\n } else if (fileExtension.toLowerCase() == 'bacpac') {\r\n this.files.push(output.file);\r\n } else {\r\n this.showError('Upload melding', 'Huidige bestandstype wordt niet ondersteund');\r\n this.removeAllFiles();\r\n } \r\n } else if (output.type === 'uploading' && typeof output.file !== 'undefined') {\r\n this.isUploading = true;\r\n this.uploadStarted.emit(true);\r\n this.canLeave = false;\r\n // update current data in files array for uploading file\r\n const index = this.files.findIndex(file => typeof output.file !== 'undefined' && file.id === output.file.id);\r\n this.files[index] = output.file;\r\n } else if (output.type === 'removed') {\r\n // remove file from array when removed\r\n this.uploadStarted.emit(false);\r\n this.files = this.files.filter((file: UploadFile) => file !== output.file);\r\n } else if (output.type === 'dragOver') {\r\n this.dragOver = true;\r\n } else if (output.type === 'dragOut') {\r\n this.dragOver = false;\r\n } else if (output.type === 'drop') {\r\n this.dragOver = false;\r\n } else if (output.type === 'done') {\r\n if (output.file.responseStatus === 200) {\r\n this.isUploading = false;\r\n this.uploadSucces = true;\r\n this.showSuccess();\r\n this.removeAllFiles();\r\n } else if (output.file.responseStatus === 0) {\r\n this.showError('Server offline', 'Probeer het later opnieuw?');\r\n\r\n } else {\r\n this.showError('Server foutmelding', \"Probeer het later opnieuw\");\r\n }\r\n }\r\n }\r\n\r\n\r\n startUpload(): void {\r\n const event: UploadInput = {\r\n type: 'uploadFile',\r\n url: environment.apiUrl + '/uploaddatabasebacpac',\r\n method: 'POST',\r\n file: this.files[0],\r\n withCredentials: true,\r\n headers: this.headers\r\n };\r\n\r\n this.uploadInput.emit(event);\r\n }\r\n\r\n cancelUpload(id: string): void {\r\n this.uploadInput.emit({ type: 'cancel', id: id });\r\n }\r\n\r\n removeFile(id: string): void {\r\n this.uploadInput.emit({ type: 'remove', id: id });\r\n }\r\n\r\n removeAllFiles(): void {\r\n this.uploadInput.emit({ type: 'removeAll' });\r\n }\r\n}\r\n","import { Component, Injectable, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TimerObservable } from 'rxjs/observable/TimerObservable';\r\n@Component({\r\n selector: 'app-loader',\r\n templateUrl: './loader.component.html',\r\n styleUrls: ['./loader.component.scss']\r\n})\r\n\r\n@Injectable()\r\nexport class LoaderComponent implements OnInit {\r\n static loaders= 0;\r\n static globalLoader: LoaderComponent = null;\r\n hidden = true;\r\n\r\n @Input() loader: LoaderComponent;\r\n ngOnInit() {\r\n if (this.loader) {\r\n LoaderComponent.globalLoader = this.loader;\r\n }\r\n }\r\n\r\n done() {\r\n LoaderComponent.loaders--;\r\n if (LoaderComponent.loaders <= 0) {\r\n LoaderComponent.globalLoader.hidden = true;\r\n LoaderComponent.loaders = 0;\r\n }\r\n }\r\n\r\n show() {\r\n LoaderComponent.loaders++;\r\n let timer = TimerObservable.create(200);\r\n timer.subscribe(t => {\r\n if (LoaderComponent.loaders > 0) {\r\n LoaderComponent.globalLoader.hidden = false;\r\n }\r\n });\r\n }\r\n}","
\r\n
\r\n \r\n
\r\n
","import { Component, Injectable, EventEmitter, OnInit, Input} from '@angular/core';\r\nimport { trigger, state, style, animate, transition} from '@angular/animations';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { Router } from '@angular/router';\r\n// import { Observable } from 'rxjs/Observable';\r\nimport { TimerObservable } from 'rxjs/observable/TimerObservable';\r\n\r\n@Component({\r\n selector: 'app-message',\r\n templateUrl: './message.component.html',\r\n styleUrls: ['./message.component.scss'],\r\n animations: [\r\n trigger('messageTrigger', [\r\n state('open', style({ display: 'block', opacity: 1, top: 0 })),\r\n state('closed', style({ display: 'none', opacity: 0, top: '-50px'})),\r\n transition('open => closed', animate('300ms ease-in')),\r\n transition('closed => open', animate('300ms ease-in-out'))\r\n ])]\r\n})\r\n\r\n@Injectable()\r\nexport class MessageComponent implements OnInit {\r\n statusMessage: Message;\r\n messageState = 'closed';\r\n static globalMessage: MessageComponent = null;\r\n static eventEmitter: EventEmitter = new EventEmitter();\r\n @Input() message: MessageComponent;\r\n\r\n ngOnInit() {\r\n if (this.message) {\r\n MessageComponent.globalMessage = this.message;\r\n }\r\n }\r\n\r\n show(message: Message) {\r\n MessageComponent.globalMessage.statusMessage = message;\r\n MessageComponent.globalMessage.messageState = \"open\";\r\n\r\n let timer = TimerObservable.create(7000);\r\n\r\n timer.subscribe(t => {\r\n MessageComponent.globalMessage.messageState = \"closed\";\r\n });\r\n }\r\n}\r\n\r\nexport class Message\r\n{\r\n constructor(\r\n public status: MessageStatus,\r\n public statusText: string\r\n ) { }\r\n}\r\n\r\nexport class MessageStatus {\r\n constructor(\r\n private result: string\r\n ) { }\r\n\r\n get text(): string {\r\n return this.result;\r\n }\r\n\r\n static Info: MessageStatus = new MessageStatus(\"info\");\r\n static Error: MessageStatus = new MessageStatus(\"error\");\r\n static Success: MessageStatus = new MessageStatus(\"success\");\r\n static Warning: MessageStatus = new MessageStatus(\"warning\");\r\n}\r\n\r\n","
\r\n
\r\n
\r\n {{statusMessage.statusText}}\r\n
\r\n
\r\n
","\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Observable } from \"rxjs\";\r\nimport { environment } from '../../../environments/environment';\r\nimport { Router, CanActivate } from \"@angular/router\";\r\n// import { CommunicationService } from \"../_services/index\";\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http'\r\nimport \"rxjs/add/operator/map\"\r\nimport 'rxjs/add/operator/toPromise';\r\n\r\nimport { AuthorizedUserModel } from \"../../classes/index\";\r\nimport { promise } from \"protractor\";\r\nimport { timeout } from \"q\";\r\nimport { MsalService } from '@azure/msal-angular';\r\nimport { Account } from 'msal';\r\nimport { Organization } from '../../classes/organization.class';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n })\r\n\r\nexport class AuthorisationService {\r\n private baseUrl = environment.apiUrl;\r\n public isSelfSignUp = false;\r\n\r\n // get httpOptions() {\r\n // return { 'headers': new HttpHeaders({ }), withCredentials : true };\r\n // };\r\n\r\n get httpOptions() {\r\n return { \"headers\": new HttpHeaders({ 'Content-Type': 'application/json', 'Accept': 'application/json'}),\r\n withCredentials : true\r\n };\r\n };\r\n \r\n \r\n constructor(private httpClient: HttpClient, private authService : MsalService, private router: Router) { \r\n }\r\n\r\n public getCurrentUser(): Promise {\r\n var account = this.authService.getAccount();\r\n if (account != null) {\r\n return new Promise(() => account);\r\n }\r\n }\r\n\r\n get name() {\r\n var account = this.authService.getAccount();\r\n if (account != null) {\r\n return account.name;\r\n }\r\n } \r\n\r\n public async isOrganizationAdmin() {\r\n const url = `${this.baseUrl + '/isOrganizationAdmin'}`;\r\n return await this.httpClient\r\n .get(url, this.httpOptions)\r\n .toPromise();\r\n }\r\n\r\n public async getOrganizations() : Promise {\r\n const url = `${this.baseUrl + '/organizations'}`;\r\n return await this.httpClient\r\n .get(url, this.httpOptions)\r\n .toPromise();\r\n }\r\n}\r\n","\r\nimport {interval as observableInterval, Observable } from 'rxjs';\r\n\r\nimport {catchError, switchMap, map} from 'rxjs/operators';\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpErrorResponse } from '@angular/common/http'\r\nimport { Router } from '@angular/router';\r\nimport { AuthorisationService } from '../../shared/oauth/authorisation.service';\r\nimport 'rxjs/Rx';\r\nimport { environment } from '../../../environments/environment';\r\nimport { LoaderComponent } from '../loader/loader.component';\r\nimport { MessageComponent, Message, MessageStatus } from '../message/message.component';\r\nimport { MsalService } from '@azure/msal-angular';\r\nimport { Organization } from '../../classes/organization.class';\r\nimport { KvkResult } from '../../classes/kvkResult.class';\r\n\r\n@Injectable()\r\n\r\nexport class CommunicationService {\r\n private headers = new Headers({ 'Content-Type': 'application/json' , 'Accept': 'application/json'});\r\n private headersIdToken = new Headers({ 'Content-Type': 'application/json' });\r\n private baseUrl = environment.apiUrl;\r\n\r\n constructor(private httpClient: HttpClient, \r\n private router: Router,\r\n private messageComponent: MessageComponent,\r\n private authService : MsalService,\r\n private loader: LoaderComponent,\r\n private organization: Organization) { }\r\n\r\n get httpOptions() {\r\n return { \"headers\": new HttpHeaders({ 'Content-Type': 'application/json', 'Accept': 'application/json'}),\r\n withCredentials : true\r\n };\r\n };\r\n \r\n private readCookie(name) {\r\n name += '=';\r\n for (var ca = document.cookie.split(/;\\s*/), i = ca.length - 1; i >= 0; i--)\r\n if (!ca[i].indexOf(name))\r\n return ca[i].replace(name, '');\r\n return '';\r\n }\r\n\r\n async sendContact(singup) {\r\n const url = `${this.baseUrl + '/contact'}`;\r\n let body = JSON.stringify(singup);\r\n this.loader.show();\r\n var response = await this.httpClient\r\n .post(url, body, this.httpOptions)\r\n .pipe(catchError(err => this.handleError(err)))\r\n .toPromise();\r\n this.loader.done();\r\n window.location.replace(environment.apiUrl + '/welkom/signedup');\r\n }\r\n\r\n async createTrialEnvironment(json: string) {\r\n const url = `${this.baseUrl + '/createTrialEnvironment'}`;\r\n this.loader.show();\r\n await this.httpClient\r\n .post(url, json, this.httpOptions)\r\n .pipe(catchError(err => this.handleError(err)))\r\n .toPromise(); \r\n this.loader.done();\r\n }\r\n\r\n async getTenants(): Promise<[string, string[]][]> {\r\n const url = `${this.baseUrl + \"/tenants\"}`;\r\n return await this.httpClient \r\n .get(url, this.httpOptions)\r\n .pipe(catchError(err => this.handleError(err)))\r\n .toPromise<[string, string[]][]>();\r\n }\r\n\r\n createOrUpdateEnvironment() {\r\n const url = `${this.baseUrl + '/createOrUpdateEnvironment'}`;\r\n\r\n return this.httpClient\r\n .post(url, null, this.httpOptions)\r\n .map((res: Response) => { \r\n console.log(\"Created environment\");\r\n })\r\n .pipe(catchError(err => this.handleError(err)));\r\n }\r\n \r\n resetEnvironment () : Observable {\r\n const url = `${this.baseUrl + '/resetEnvironment '}`;\r\n return this.httpClient \r\n .post(url, null, this.httpOptions)\r\n .pipe(catchError(err => this.handleError(err)))\r\n }\r\n\r\n environmentStatus () : Observable {\r\n const url = `${this.baseUrl + '/environmentStatus '}`;\r\n return this.httpClient\r\n .get(url, this.httpOptions) \r\n .pipe(catchError(err => this.handleError(err)))\r\n }\r\n\r\n environmentStatusLoop () : Observable {\r\n const url = `${this.baseUrl + '/environmentStatus '}`;\r\n return observableInterval(5000)\r\n .pipe(switchMap(() => this.httpClient\r\n .get(url, this.httpOptions) \r\n .pipe(catchError(err => this.handleError(err)))\r\n ));\r\n }\r\n \r\n async isDatabaseUploaded(): Promise {\r\n const url = `${this.baseUrl + \"/isDatabaseUploaded\"}`;\r\n return await this.httpClient \r\n .get(url, this.httpOptions)\r\n .pipe(catchError(err => this.handleError(err)))\r\n .toPromise();\r\n }\r\n\r\n async isOrganizationAdmin(): Promise {\r\n const url = `${this.baseUrl + \"/isOrganizationAdmin\"}`;\r\n return await this.httpClient \r\n .get(url, this.httpOptions)\r\n .pipe(catchError(err => this.handleError(err)))\r\n .toPromise();\r\n }\r\n\r\n searchKvk(name: string): Observable {\r\n const url = `${this.baseUrl + \"/CoC/search?searchValue=\"+name}`;\r\n return this.httpClient\r\n .get(url, this.httpOptions)\r\n .pipe(catchError(err => this.handleError(err)));\r\n }\r\n\r\n private handleError(error: any): Promise {\r\n this.loader.done();\r\n\r\n if (error instanceof Response) {\r\n let errMsg;\r\n if (error.status === 401) {\r\n //window.location.href = `${this.baseUrl + '/authenticate'}`;\r\n this.router.navigate([`/welcome`]);\r\n return Promise.resolve();\r\n }\r\n if (error.status === 419) { // DuplicateSubscription\r\n errMsg = 'Er is al een account met dit e-mailadres aanwezig';\r\n } else if (error.status === 420) { // DuplicateCustomer\r\n errMsg = 'Uw relatienummer is al geregistreerd. Neem binnen uw organisatie contact op met de beheerder van DIAS Advies om u als gebruiker toe te voegen';\r\n } else if (error.status === 421) { // DuplicateEmail\r\n errMsg = 'Uw e-mailadres is al geregistreerd onder een andere organisatie. Wilt u een kantoor toevoegen in DIAS Advies dan kunt u, nadat u bent ingelogd als beheerder, dit doen in het menu Systeem - Kantoren';\r\n } else if (error.status === 422) { // DuplicateOrganisation\r\n errMsg = 'Uw bedrijf heeft al een licentie voor DIAS Advies. Vraag binnen uw organisatie aan de beheerder van DIAS Advies om u als gebruiker toe te voegen';\r\n } else if (error.status === 423) { // InvalidCustomerCredentials\r\n errMsg = 'Het klantnummer en wachtwoord combinatie is onjuist';\r\n } else if (error.status === 424) { // RegistratieNotFound\r\n errMsg = 'U bent niet gevonden als beheerder van een cloud omgeving';\r\n } else if (error.status === 425) {\r\n errMsg = '...';\r\n } else if (error.status === 426) {\r\n errMsg = '...';\r\n } else if (error.status === 502) {\r\n return;\r\n }else {\r\n errMsg = 'Er heeft zich een fout voorgedaan';\r\n }\r\n\r\n this.messageComponent.show(new Message(MessageStatus.Error, errMsg));\r\n }\r\n\r\n console.error('An error occurred', error);\r\n console.log('ERROR');\r\n return Promise.reject(error.message || error);\r\n }\r\n\r\n private extractData(res: Response) {\r\n let body = res.json();\r\n return body || {};\r\n }\r\n\r\n private redirect(res: Response) {\r\n this.loader.done();\r\n window.location.href = res.toString();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Client } from '@microsoft/microsoft-graph-client';\r\nimport { MsalService } from '@azure/msal-angular';\r\n\r\n\r\nexport class GraphProfile {\r\n givenName: string;\r\n surname: string;\r\n userPrincipalName: string;\r\n email: string;\r\n businessPhones: string[];\r\n mobilePhone: string;\r\n}\r\n\r\nexport class GraphOrganization {\r\n displayName: string;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class GraphService {\r\n private graphClient: Client;\r\n private headers: { Authorization: string; OrganizationId: string; };\r\n\r\n constructor(private auth: MsalService) {\r\n this.initClient();\r\n }\r\n\r\n async getProfile(): Promise {\r\n try {\r\n let result = await this.graphClient\r\n .api('/me')\r\n .select('givenName, surName, userPrincipalName, email, businessPhones, mobilePhone')\r\n .get();\r\n\r\n return result;\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n }\r\n\r\n async getOrganization(): Promise {\r\n try {\r\n let graphOrganization = await this.graphClient\r\n .api('/organization')\r\n .select('displayName')\r\n .get(); \r\n\r\n let result = new GraphOrganization();\r\n if (graphOrganization.value.length > 0) { \r\n result.displayName = graphOrganization.value[0].displayName;\r\n }\r\n return result;\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n }\r\n\r\n private async getAccessToken(): Promise {\r\n var scopes = [\"user.read\", \"profile\"]\r\n\r\n let result = await this.auth.acquireTokenSilent({ scopes })\r\n .catch(() => {\r\n throw new Error('could not get access token');\r\n });\r\n\r\n if (result) {\r\n return result.accessToken;\r\n }\r\n return null;\r\n }\r\n\r\n private initClient(): void {\r\n this.graphClient = Client.init({\r\n authProvider: async (done: (reason: string, token: string) => void): Promise => {\r\n const token: string | void = await this.getAccessToken()\r\n .catch((reason: string) => {\r\n done(reason, '');\r\n });\r\n\r\n if (token) {\r\n done('', token);\r\n } else {\r\n done('Could not get an access token', '');\r\n }\r\n },\r\n });\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Injectable()\r\nexport class TitleService {\r\n\r\n private separator = ' - ';\r\n private suffix = 'DIAS Advies';\r\n\r\n constructor(private title: Title) {\r\n this.set('');\r\n }\r\n\r\n set(title: string): void {\r\n this.title.setTitle(title ? title + this.separator + this.suffix : this.suffix);\r\n }\r\n\r\n get(): string {\r\n return this.title.getTitle();\r\n }\r\n}","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { LoaderComponent } from './loader/loader.component';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { MessageComponent } from './message/message.component';\r\nimport { AuthorisationService } from './oauth/authorisation.service';\r\nimport { CommunicationService } from './services/communication.service';\r\nimport { HttpClientModule } from '@angular/common/http'\r\nimport { TitleService } from './services/title.service';\r\n\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { MatSidenavModule } from '@angular/material/sidenav';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport { MatToolbarModule, MatToolbar } from '@angular/material/toolbar';\r\n\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@NgModule({\r\n imports: [\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n FormsModule,\r\n HttpClientModule,\r\n MatSlideToggleModule ,\r\n MatButtonModule,\r\n MatCheckboxModule,\r\n MatSidenavModule,\r\n MatListModule,\r\n MatToolbarModule,\r\n MatDialogModule\r\n ],\r\n declarations: [\r\n LoaderComponent,\r\n MessageComponent\r\n ],\r\n providers: [LoaderComponent, MessageComponent, AuthorisationService, CommunicationService, TitleService],\r\n exports: [LoaderComponent, MessageComponent, MatProgressBarModule , MatCardModule, MatListModule,MatSlideToggleModule,MatIconModule,MatInputModule, MatButtonModule, MatCheckboxModule,MatSidenavModule,MatToolbarModule,MatDialogModule]\r\n})\r\nexport class SharedModule { }","import { Validators } from \"@angular/forms\";\r\n\r\nexport function RequiredIfValidator(predicate) {\r\n return (formControl => {\r\n if (!formControl.parent) {\r\n return null;\r\n }\r\n if (predicate()) {\r\n return Validators.required(formControl);\r\n }\r\n return null;\r\n })\r\n}","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthorisationService } from '../../shared/oauth/authorisation.service';\r\nimport { CommunicationService } from '../../shared/services/communication.service';\r\nimport { MsalService } from '@azure/msal-angular';\r\nimport { environment } from '../../../environments/environment';\r\nimport { Organization } from '../../classes/organization.class';\r\n\r\n@Component({\r\n selector: 'app-introduction',\r\n templateUrl: './introduction.component.html',\r\n styleUrls: ['./introduction.component.scss']\r\n})\r\nexport class IntroductionComponent implements OnInit {\r\n\r\n constructor(private router: Router,\r\n private AuthorisationService: AuthorisationService,\r\n private communicationService: CommunicationService,\r\n private authService: MsalService,\r\n private organization: Organization) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n gotoContact() {\r\n this.router.navigate(['/welkom/proeflicentie/advies/contact']);\r\n }\r\n\r\n login() {\r\n const isIE = window.navigator.userAgent.indexOf('MSIE ') > -1 || window.navigator.userAgent.indexOf('Trident/') > -1 || window.navigator.userAgent.indexOf('Edge') > -1;\r\n const loginRequest = {\r\n scopes: [\r\n \"user.read\",\r\n \"openid\",\r\n \"profile\",\r\n \"email\"\r\n ],\r\n additionalScopesToConsent: ['user.read'],\r\n prompt: 'select_account'\r\n };\r\n\r\n if (isIE) {\r\n this.authService.loginRedirect(loginRequest);\r\n } else {\r\n this.authService.loginPopup(loginRequest).then(\r\n (loginResponse) => {\r\n this.organization.reset();\r\n window.location.replace(environment.redirectUri);\r\n }).catch(function (error) {\r\n console.log(error);\r\n });\r\n }\r\n }\r\n\r\n gotoCreateLiveAccount() {\r\n var win = window.open('https://signup.live.com/signup', '_blank');\r\n win.focus(); \r\n }\r\n\r\n gotoCreateAzureAccount() {\r\n var win = window.open('https://signup.azure.com/signup', '_blank');\r\n win.focus(); \r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

\r\n Welkom bij DIAS Advies\r\n

\r\n
\r\n \r\n
\r\n Alle tools voor een compleet en transparant financieel advies.
\r\n Probeer DIAS Advies nu 30 dagen gratis en vrijblijvend.\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n Heeft u een Office 365 of Microsoft account, ga direct verder met het aanvragen van een proeflicentie\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n Heeft u geen Office 365 account? Maak deze dan eerst gratis aan.\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n Wilt u liever uw huidige e-mailadres gebruiken? Maak dan gratis een Microsoft Azure AD aan.\r\n
\r\n info_outline\r\n Voor het maken van een Azure AD heeft u een credit card en wellicht de hulp van uw systeembeheerder nodig. \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n Wilt u liever samen met een medewerker van DIAS Software een proeflicentie aanvragen?\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-invited',\r\n templateUrl: './invited.component.html',\r\n styleUrls: ['./invited.component.scss']\r\n})\r\nexport class InvitedComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Uitnodiging afgerond

\r\n

\r\n De uitnodiging is succesvol afgerond, u kunt nu uw browser sluiten en inloggen in de client software van DIAS Advies Cloud.\r\n

\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, NgForm, Validators } from '@angular/forms';\r\nimport { CommunicationService } from '../../shared/services/communication.service';\r\n\r\n@Component({\r\n selector: 'app-self-signup',\r\n templateUrl: './self-signup.component.html',\r\n styleUrls: ['./self-signup.component.scss']\r\n})\r\nexport class SelfSignupComponent implements OnInit {\r\n private EMAIL_REGEX = '^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*$';\r\n public isRelation = false;\r\n public firstName = new FormControl('', Validators.required);\r\n public lastName = new FormControl('', Validators.required);\r\n public organizationName = new FormControl('', Validators.required);\r\n public phoneNumber = new FormControl('', Validators.required);\r\n public email = new FormControl('');\r\n\r\n constructor(private communicationService: CommunicationService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n onSubmit(f: NgForm) {\r\n if (f.valid) {\r\n this.communicationService.sendContact(f.value);\r\n }\r\n }\r\n\r\n}\r\n","
\r\n \r\n
\r\n
\r\n

Contactformulier proeflicentie

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

\r\n U heeft gekozen om liever samen met een medewerker van DIAS Software een proeflicentie aan te vragen.\r\n Vul hier uw gegevens in waarop u bereikbaar bent.\r\n

\r\n \r\n \r\n \r\n Voornaam is een verplicht veld.\r\n \r\n \r\n \r\n \r\n \r\n Achternaam is een verplicht veld.\r\n \r\n \r\n \r\n \r\n \r\n Bedrijfsnaam is een verplicht veld.\r\n \r\n \r\n \r\n \r\n \r\n Telefoonnummer is een verplicht veld.\r\n \r\n \r\n \r\n \r\n \r\n E-mailadres is ongeldig\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-signedup',\r\n templateUrl: './signedup.component.html',\r\n styleUrls: ['./signedup.component.scss']\r\n})\r\nexport class SignedupComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n

Contactformulier proeflicentie

\r\n

\r\n Uw aanvraag is succesvol verzonden. Wij zullen zo spoedig mogelijk contact met u opnemen.\r\n

\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthorisationService } from '../shared/oauth/authorisation.service';\r\nimport { CommunicationService } from '../shared/services/communication.service';\r\nimport { MsalService } from '@azure/msal-angular';\r\nimport { environment } from '../../environments/environment';\r\nimport { Organization } from '../classes/organization.class';\r\n\r\n@Component({\r\n selector: 'app-welcome',\r\n templateUrl: './welcome.component.html',\r\n styleUrls: ['./welcome.component.scss']\r\n})\r\nexport class WelcomeComponent implements OnInit {\r\n\r\n constructor(private authService: MsalService,\r\n private organization: Organization) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n login() {\r\n const isIE = window.navigator.userAgent.indexOf('MSIE ') > -1 || window.navigator.userAgent.indexOf('Trident/') > -1 || window.navigator.userAgent.indexOf('Edge') > -1;\r\n const loginRequest = {\r\n scopes: [\r\n \"user.read\",\r\n \"openid\",\r\n \"profile\",\r\n \"email\"\r\n ],\r\n additionalScopesToConsent: ['user.read'],\r\n prompt: 'select_account'\r\n } \r\n\r\n if (isIE) {\r\n this.authService.loginRedirect(loginRequest);\r\n } else {\r\n this.authService.loginPopup(loginRequest).then(\r\n (loginResponse) => {\r\n this.organization.reset();\r\n window.location.replace(environment.redirectUri);\r\n }).catch(function (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","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { FormsModule, ReactiveFormsModule} from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\n// import { MaterialModule } from '@angular/material';\r\nimport { SelfSignupComponent } from './self-signup/self-signup.component';\r\nimport { IntroductionComponent } from './introduction/introduction.component';\r\nimport { WelcomeComponent } from './welcome.component';\r\n// import { CommunicationService } from '../services/communication.service';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { WelcomeRoutes } from './welcome.routing';\r\nimport { SharedModule } from '../shared/shared.module';\r\n@NgModule({\r\n imports: [\r\n BrowserModule,\r\n FormsModule,\r\n CommonModule,\r\n FormsModule,\r\n WelcomeRoutes,\r\n FlexLayoutModule,\r\n ReactiveFormsModule,\r\n // MaterialModule,\r\n BrowserAnimationsModule,\r\n FlexLayoutModule,\r\n SharedModule,\r\n ],\r\n declarations: [\r\n SelfSignupComponent,\r\n IntroductionComponent,\r\n WelcomeComponent,\r\n\r\n ],\r\n providers: [\r\n // CommunicationService\r\n ],\r\n exports:[ WelcomeComponent ]\r\n})\r\nexport class WelcomeModule { }\r\n","import { Routes, RouterModule } from '@angular/router';\r\nimport { SelfSignupComponent } from './self-signup/self-signup.component';\r\nimport { IntroductionComponent } from './introduction/introduction.component';\r\nimport { WelcomeComponent } from './welcome.component';\r\nimport { InvitedComponent } from './invited/invited.component';\r\n\r\nconst welcomeRoutes: Routes = [\r\n {path: '', redirectTo: '/start', pathMatch: 'full'},\r\n {\r\n path: 'welcome', component: WelcomeComponent,\r\n children: [\r\n { path: 'introduction', component: IntroductionComponent },\r\n { path: 'invited', component: InvitedComponent },\r\n { path: 'selfsignup', component: SelfSignupComponent }\r\n ]\r\n }\r\n];\r\n\r\nexport const WelcomeRoutes = RouterModule.forChild(welcomeRoutes);\r\n","export const environment = {\r\n envName: 'dev',\r\n apiUrl: window.location.origin,\r\n redirectUri: 'https://dev.mijn.dias.nl',\r\n postLogoutRedirectUri: 'https://mijn.dev.dias.nl',\r\n domain: 'dias.nl',\r\n GoogleAnalyticsId: '',\r\n production: false,\r\n apiApplicationId: '13751274-5c6e-4125-ae1a-4673c36b8379',\r\n clientId: '9690aa6a-cf36-468f-9b48-dbddda19ff0e'\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"]}