timeout for digest on sync and cipher view

This commit is contained in:
Kyle Spearrin 2018-01-13 22:30:38 -05:00
parent 64e2debb77
commit 00b2c47aae
2 changed files with 39 additions and 35 deletions

View File

@ -8,7 +8,7 @@ export class SyncController {
loading = false; loading = false;
constructor(private syncService: SyncService, private toastr: any, private $analytics: any, constructor(private syncService: SyncService, private toastr: any, private $analytics: any,
private i18nService: any) { private i18nService: any, private $timeout: ng.ITimeoutService) {
this.i18n = i18nService; this.i18n = i18nService;
this.setLastSync(); this.setLastSync();
} }
@ -20,20 +20,22 @@ export class SyncController {
if (success) { if (success) {
this.setLastSync(); this.setLastSync();
this.$analytics.eventTrack('Synced Full'); this.$analytics.eventTrack('Synced Full');
this.toastr.success(this.i18nService.syncingComplete); this.toastr.success(this.i18n.syncingComplete);
} else { } else {
this.toastr.error(this.i18nService.syncingFailed); this.toastr.error(this.i18n.syncingFailed);
} }
}); });
} }
setLastSync() { setLastSync() {
this.syncService.getLastSync().then((lastSync: any) => { this.syncService.getLastSync().then((last: Date) => {
if (lastSync) { this.$timeout(() => {
this.lastSync = lastSync.toLocaleDateString() + ' ' + lastSync.toLocaleTimeString(); if (last) {
} else { this.lastSync = last.toLocaleDateString() + ' ' + last.toLocaleTimeString();
this.lastSync = this.i18nService.never; } else {
} this.lastSync = this.i18n.never;
}
});
}); });
} }
} }

View File

@ -21,40 +21,42 @@ angular
cipherObj = cipher; cipherObj = cipher;
return cipher.decrypt(); return cipher.decrypt();
}).then(function (model) { }).then(function (model) {
$scope.cipher = model; $timeout(function() {
$scope.cipher = model;
if (model.type == constantsService.cipherType.login && model.login) { if (model.type == constantsService.cipherType.login && model.login) {
if (model.login.password) { if (model.login.password) {
$scope.cipher.maskedPassword = $scope.maskValue(model.login.password); $scope.cipher.maskedPassword = $scope.maskValue(model.login.password);
} }
if (model.login.uri) { if (model.login.uri) {
$scope.cipher.showLaunch = model.login.uri.startsWith('http://') || model.login.uri.startsWith('https://'); $scope.cipher.showLaunch = model.login.uri.startsWith('http://') || model.login.uri.startsWith('https://');
var domain = platformUtilsService.getDomain(model.login.uri); var domain = platformUtilsService.getDomain(model.login.uri);
if (domain) { if (domain) {
$scope.cipher.login.website = domain; $scope.cipher.login.website = domain;
}
else {
$scope.cipher.login.website = model.login.uri;
}
} }
else { else {
$scope.cipher.login.website = model.login.uri; $scope.cipher.showLaunch = false;
} }
} }
else {
$scope.cipher.showLaunch = false;
}
}
if (model.login && model.login.totp && (cipherObj.organizationUseTotp || tokenService.getPremium())) { if (model.login && model.login.totp && (cipherObj.organizationUseTotp || tokenService.getPremium())) {
totpUpdateCode(); totpUpdateCode();
totpTick();
if (totpInterval) {
clearInterval(totpInterval);
}
totpInterval = setInterval(function () {
totpTick(); totpTick();
}, 1000);
} if (totpInterval) {
clearInterval(totpInterval);
}
totpInterval = setInterval(function () {
totpTick();
}, 1000);
}
});
}); });
$scope.edit = function (cipher) { $scope.edit = function (cipher) {