diff options
author | newhinton <felix.nuesse@t-online.de> | 2019-05-12 14:04:26 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-12 14:04:26 +0300 |
commit | 842d735216e6bf61d8a86e28109653fd75c451dc (patch) | |
tree | 34c7062dd17050030e206518a698d0f6e2cc8dcf /js/app | |
parent | 3b5c8e96dc8bddee0f4054021795247082898f99 (diff) | |
parent | 626897bdfa6d861848bb13ac6ae10c6c28e0e126 (diff) |
Merge pull request #542 from nextcloud/feature/540/markcredentialascompromised
Feature/540/markcredentialascompromised
Diffstat (limited to 'js/app')
-rw-r--r-- | js/app/controllers/edit_credential.js | 14 | ||||
-rw-r--r-- | js/app/services/credentialservice.js | 9 |
2 files changed, 21 insertions, 2 deletions
diff --git a/js/app/controllers/edit_credential.js b/js/app/controllers/edit_credential.js index a4d59214..40842a4a 100644 --- a/js/app/controllers/edit_credential.js +++ b/js/app/controllers/edit_credential.js @@ -113,6 +113,9 @@ $scope.storedCredential.expire_time = $scope.storedCredential.expire_time * 1000; } + //store password to check if it was changed if this credential has been compromised + $scope.oldPassword=$scope.storedCredential.password; + $scope.getTags = function ($query) { return TagService.searchTag($query); }; @@ -293,9 +296,20 @@ $scope.saving = false; + $scope.compromise = function () { + console.log("This password was compromised"); + $scope.storedCredential.compromised=true; + }; + $scope.saveCredential = function () { $scope.saving = true; + if($scope.storedCredential.compromised){ + if($scope.oldPassword !== $scope.storedCredential.password){ + $scope.storedCredential.compromised=false; + } + } + if ($scope.new_custom_field.label && $scope.new_custom_field.value) { $scope.storedCredential.custom_fields.push(angular.copy($scope.new_custom_field)); } diff --git a/js/app/services/credentialservice.js b/js/app/services/credentialservice.js index 4c5d5f3b..53fa67c0 100644 --- a/js/app/services/credentialservice.js +++ b/js/app/services/credentialservice.js @@ -55,9 +55,10 @@ 'files': [], 'custom_fields': [], 'otp': {}, + 'compromised': false, 'hidden': false }; - var _encryptedFields = ['description', 'username', 'password', 'files', 'custom_fields', 'otp', 'email', 'tags', 'url']; + var _encryptedFields = ['description', 'username', 'password', 'files', 'custom_fields', 'otp', 'email', 'tags', 'url', 'compromised']; return { @@ -140,7 +141,11 @@ var fieldValue = angular.copy(credential[field]); var field_decrypted_value; try { - field_decrypted_value = EncryptService.decryptString(fieldValue, key); + if(fieldValue!==null){ + field_decrypted_value = EncryptService.decryptString(fieldValue, key); + }else{ + field_decrypted_value=null; + } } catch (e) { throw e; } |