]>
Commit | Line | Data |
---|---|---|
43d0ea7f C |
1 | import { Component, ElementRef, ViewChild } from '@angular/core' |
2 | import { Notifier } from '@app/core' | |
3 | import { NgbModal } from '@ng-bootstrap/ng-bootstrap' | |
4 | import { UserService } from '@app/shared' | |
5 | ||
6 | @Component({ | |
7 | selector: 'my-welcome-modal', | |
8 | templateUrl: './welcome-modal.component.html', | |
9 | styleUrls: [ './welcome-modal.component.scss' ] | |
10 | }) | |
11 | export class WelcomeModalComponent { | |
12 | @ViewChild('modal', { static: true }) modal: ElementRef | |
13 | ||
14 | constructor ( | |
15 | private userService: UserService, | |
16 | private modalService: NgbModal, | |
17 | private notifier: Notifier | |
18 | ) { } | |
19 | ||
20 | show () { | |
21 | const ref = this.modalService.open(this.modal,{ | |
22 | backdrop: 'static', | |
23 | keyboard: false, | |
24 | size: 'lg' | |
25 | }) | |
26 | ||
27 | ref.result.finally(() => this.doNotOpenAgain()) | |
28 | } | |
29 | ||
30 | private doNotOpenAgain () { | |
31 | this.userService.updateMyProfile({ noWelcomeModal: true }) | |
32 | .subscribe( | |
33 | () => console.log('We will not open the welcome modal again.'), | |
34 | ||
35 | err => this.notifier.error(err.message) | |
36 | ) | |
43d0ea7f C |
37 | } |
38 | } |