Load template button in new template modal
[vid.git] / vid-webpack-master / src / app / shared / components / genericFormPopup / instantiationTemplatesModal / instantiation.templates.modal.component.ts
1 import {Component, OnDestroy, OnInit} from "@angular/core";
2 import {DialogComponent, DialogService} from "ng2-bootstrap-modal";
3 import {IframeService} from "../../../utils/iframe.service";
4 import {ActivatedRoute} from "@angular/router";
5 import {ServiceInfoService} from "../../../server/serviceInfo/serviceInfo.service";
6 import {InstantiationTemplatesModalService} from "./instantiation.templates.modal.service";
7 import {InstantiationTemplatesRowModel} from "./instantiation.templates.row.model";
8 import {DrawingBoardModes} from "../../../../drawingBoard/service-planning/drawing-board.modes";
9 import {InstantiationStatusComponentService} from "../../../../instantiationStatus/instantiationStatus.component.service";
10
11 @Component({
12   selector: 'template-modal',
13   templateUrl: 'instantiation.templates.modal.component.html',
14   styleUrls: ['instantiation.templates.modal.component.scss']
15 })
16
17 export class InstantiationTemplatesModalComponent extends DialogComponent<string, boolean> implements OnInit, OnDestroy {
18
19   selectedInstantiation: InstantiationTemplatesRowModel = null;
20   templateModalComponentService: InstantiationTemplatesModalService;
21   originalTableData: InstantiationTemplatesRowModel[] = [];
22   filterTableData : InstantiationTemplatesRowModel[] = [];
23   filterText: string;
24
25   constructor(dialogService: DialogService,
26               private _iframeService: IframeService,
27               private _serviceInfoService: ServiceInfoService,
28               private _templateModalComponentService: InstantiationTemplatesModalService,
29               private _instantiationStatusComponentService: InstantiationStatusComponentService,
30               private _route: ActivatedRoute) {
31     super(dialogService);
32     this.templateModalComponentService = _templateModalComponentService;
33   }
34
35   ngOnInit(): void {
36     this.filterText = '';
37     this._route
38       .queryParams
39       .subscribe(params => {
40         this._serviceInfoService.getServicesJobInfo(true, params['serviceModelId']).subscribe((jobs) => {
41           this.originalTableData = this._templateModalComponentService.convertResponseToUI(jobs);
42           this.filterTableData = this.originalTableData;
43         });
44       });
45   }
46
47   loadTemplate = () => {
48     this._instantiationStatusComponentService.navigateToNewViewEdit(this.selectedInstantiation, DrawingBoardModes.RECREATE)
49
50   };
51
52
53   closeModal(): void {
54     this._iframeService.removeClassCloseModal('content');
55     this.dialogService.removeDialog(this);
56     setTimeout(() => {
57       window.parent.postMessage("closeIframe", "*");
58     }, 15);
59
60   }
61 }