2018-07-30 16:04:20 +02:00
|
|
|
import { Angulartics2 } from 'angulartics2';
|
|
|
|
|
|
|
|
import { OnInit } from '@angular/core';
|
|
|
|
|
|
|
|
import { CipherService } from '../../abstractions/cipher.service';
|
|
|
|
import { I18nService } from '../../abstractions/i18n.service';
|
|
|
|
import { PlatformUtilsService } from '../../abstractions/platformUtils.service';
|
|
|
|
|
|
|
|
import { PasswordHistoryView } from '../../models/view/passwordHistoryView';
|
|
|
|
|
|
|
|
export class PasswordHistoryComponent implements OnInit {
|
|
|
|
cipherId: string;
|
|
|
|
history: PasswordHistoryView[] = [];
|
|
|
|
|
|
|
|
constructor(protected cipherService: CipherService, protected analytics: Angulartics2,
|
|
|
|
protected platformUtilsService: PlatformUtilsService, protected i18nService: I18nService,
|
2018-10-03 05:09:19 +02:00
|
|
|
private win: Window) { }
|
2018-07-30 16:04:20 +02:00
|
|
|
|
|
|
|
async ngOnInit() {
|
|
|
|
const cipher = await this.cipherService.get(this.cipherId);
|
|
|
|
const decCipher = await cipher.decrypt();
|
|
|
|
this.history = decCipher.passwordHistory == null ? [] : decCipher.passwordHistory;
|
|
|
|
}
|
|
|
|
|
|
|
|
copy(password: string) {
|
|
|
|
this.analytics.eventTrack.next({ action: 'Copied Password History' });
|
2018-08-17 18:24:56 +02:00
|
|
|
const copyOptions = this.win != null ? { window: this.win } : null;
|
2018-07-30 16:04:20 +02:00
|
|
|
this.platformUtilsService.copyToClipboard(password, copyOptions);
|
2018-10-03 05:09:19 +02:00
|
|
|
this.platformUtilsService.showToast('info', null,
|
|
|
|
this.i18nService.t('valueCopied', this.i18nService.t('password')));
|
2018-07-30 16:04:20 +02:00
|
|
|
}
|
|
|
|
}
|