diff options
Diffstat (limited to 'src/app/about-us/aboutus.component.ts')
-rw-r--r-- | src/app/about-us/aboutus.component.ts | 57 |
1 files changed, 38 insertions, 19 deletions
diff --git a/src/app/about-us/aboutus.component.ts b/src/app/about-us/aboutus.component.ts index 53b8a94..04eee0d 100644 --- a/src/app/about-us/aboutus.component.ts +++ b/src/app/about-us/aboutus.component.ts @@ -21,13 +21,16 @@ limitations under the License. ============LICENSE_END============================================ */ -import { Component, OnInit } from '@angular/core'; + +import { Component, OnInit, OnDestroy } from '@angular/core'; import { Http } from '@angular/http'; import { Subscription } from 'rxjs/Subscription'; import { Observable } from 'rxjs/Observable'; import { NotificationsService } from 'angular2-notifications'; import { saveAs } from 'file-saver'; -import { ModalDismissReasons, NgbModal } from '@ng-bootstrap/ng-bootstrap'; +import { DialogService } from 'ng2-bootstrap-modal'; +import { ConfirmComponent } from '../shared/confirmModal/confirm.component'; +import { appConstants } from '../../constants/app-constants'; import {UtilityService} from '../shared/services/utilityService/utility.service'; @Component({ @@ -35,13 +38,11 @@ import {UtilityService} from '../shared/services/utilityService/utility.service' templateUrl: './aboutus.component.html', styleUrls: ['./aboutus.component.css'] }) -export class AboutUsComponent implements OnInit { - +export class AboutUsComponent implements OnInit, OnDestroy { clName= "AboutUsComponent"; public releaseName: any; public versionNo: any; public contactUsMail: any; - public data: any; closeResult: string; versionLogSubscription: Subscription; @@ -54,30 +55,48 @@ export class AboutUsComponent implements OnInit { }; constructor( - private http: Http, private modalService: NgbModal, + private http: Http, private dialogService: DialogService, private notificationsService: NotificationsService, private utilSvc: UtilityService ) { } ngOnInit() { this.versionNo = require('./appVersion.json').versionNo; this.releaseName = require('./appVersion.json').releaseName; - this.contactUsMail = require('../../cdt.application.properties.json').CONTACT_US; + this.contactUsMail = require('../cdt.application.properties.json').CONTACT_US; + } + + ngOnDestroy() { + if (this.versionLogSubscription) { + this.versionLogSubscription.unsubscribe(); + } } - versionLogFile() { - this.http.get('app/about-us/versionLog.txt') - .subscribe(res => this.data = res.text()); + versionLogFile(): Observable<any> { + return this.http.get('app/about-us/versionLog.txt'); } - // open(content) { - // this.modalService.open(content).result.then((result) => { - // console.log('result', result) - // this.closeResult = `Closed with: ${ result }`; - // }, (reason) => { - // console.log('reson', reason) - // this.closeResult = `Dismissed ${ this.getDismissReason(reason) }`; - // }); - // } + open(content) { + this.versionLogSubscription = this.versionLogFile() + .subscribe((res) => { + this.data = res.text(); + this.dialogService.addDialog(ConfirmComponent, { + title: 'VERSION CHANGE LOG', + message: this.data, + cancelButtonText: 'CLOSE', + confirmButtonText: 'DOWNLOAD' + }).subscribe(isConfirmed => { + if (isConfirmed) { + this.downloadLogFile() + } else { + // do nothing + } + }); + + }, + (error)=>{ + this.notificationsService.error(appConstants.errors.error, 'unable to fetch change log details'); + }); + } downloadLogFile() { var blob = new Blob([this.data], { |