diff --git a/appinfo/database.xml b/appinfo/database.xml
index 88cd1ad0..c4c18fb5 100644
--- a/appinfo/database.xml
+++ b/appinfo/database.xml
@@ -229,6 +229,10 @@
boolean
false
+
+ compromised
+ clob
+
shared_key
clob
diff --git a/appinfo/info.xml b/appinfo/info.xml
index b5041a01..1f23ff1b 100644
--- a/appinfo/info.xml
+++ b/appinfo/info.xml
@@ -19,7 +19,7 @@ Features:
- Import from various password managers (KeePass, LastPass, DashLane, ZOHO, Clipperz.is )
For an demo of this app visit [https://demo.passman.cc](https://demo.passman.cc)
]]>
- 2.2.1
+ 2.2.7
agpl
Sander Brand
Marcos Zuriaga
@@ -42,8 +42,8 @@ For an demo of this app visit [https://demo.passman.cc](https://demo.passman.cc)
pgsql
mysql
openssl
-
-
+
+
diff --git a/controller/credentialcontroller.php b/controller/credentialcontroller.php
index cb3a3265..96e5accc 100644
--- a/controller/credentialcontroller.php
+++ b/controller/credentialcontroller.php
@@ -70,7 +70,7 @@ class CredentialController extends ApiController {
$credential_id, $custom_fields, $delete_time,
$description, $email, $expire_time, $favicon, $files, $guid,
$hidden, $label, $otp, $password, $renew_interval,
- $tags, $url, $username, $vault_id) {
+ $tags, $url, $username, $vault_id, $compromised) {
$credential = array(
'credential_id' => $credential_id,
'guid' => $guid,
@@ -93,6 +93,7 @@ class CredentialController extends ApiController {
'custom_fields' => $custom_fields,
'otp' => $otp,
'hidden' => $hidden,
+ 'compromised' => $compromised
);
@@ -125,7 +126,7 @@ class CredentialController extends ApiController {
$credential_id, $custom_fields, $delete_time, $credential_guid,
$description, $email, $expire_time, $icon, $files, $guid,
$hidden, $label, $otp, $password, $renew_interval,
- $tags, $url, $username, $vault_id, $revision_created, $shared_key, $acl, $unshare_action, $set_share_key, $skip_revision) {
+ $tags, $url, $username, $vault_id, $revision_created, $shared_key, $acl, $unshare_action, $set_share_key, $skip_revision, $compromised) {
$storedCredential = $this->credentialService->getCredentialByGUID($credential_guid);
@@ -151,7 +152,8 @@ class CredentialController extends ApiController {
'delete_time' => $delete_time,
'hidden' => $hidden,
'otp' => $otp,
- 'user_id' => $storedCredential->getUserId()
+ 'user_id' => $storedCredential->getUserId(),
+ 'compromised' => $compromised
);
diff --git a/js/app/controllers/credential.js b/js/app/controllers/credential.js
index 0ad511aa..be6f41fc 100644
--- a/js/app/controllers/credential.js
+++ b/js/app/controllers/credential.js
@@ -105,6 +105,9 @@
}
angular.merge($scope.active_vault.credentials, _credentials);
$scope.show_spinner = false;
+
+ console.log($scope.active_vault.credentials)
+
$rootScope.$broadcast('credentials_loaded');
$rootScope.vaultCache[$scope.active_vault.guid] = angular.copy($scope.active_vault);
if(!vault.private_sharing_key){
diff --git a/js/app/services/credentialservice.js b/js/app/services/credentialservice.js
index 4c5d5f3b..b2859cfa 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,8 +141,14 @@
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) {
+ console.log(fieldValue)
+ console.log(e)
throw e;
}
try {
diff --git a/lib/Db/Credential.php b/lib/Db/Credential.php
index 02187e0b..d99b2511 100644
--- a/lib/Db/Credential.php
+++ b/lib/Db/Credential.php
@@ -70,6 +70,8 @@ use \OCP\AppFramework\Db\Entity;
* @method string getHidden()
* @method void setSharedKey(string $value)
* @method string getSharedKey()
+ * @method void setCompromised(bool $value)
+ * @method bool getCompromised()
@@ -101,6 +103,7 @@ class Credential extends Entity implements \JsonSerializable{
protected $otp;
protected $hidden;
protected $sharedKey;
+ protected $compromised;
public function __construct() {
// add types in constructor
@@ -142,6 +145,7 @@ class Credential extends Entity implements \JsonSerializable{
'otp' => $this->getOtp(),
'hidden' => $this->getHidden(),
'shared_key' => $this->getSharedKey(),
+ 'compromised' => $this->getCompromised()
];
}
}
\ No newline at end of file
diff --git a/lib/Db/CredentialMapper.php b/lib/Db/CredentialMapper.php
index 46cbe073..2ae6e8e3 100644
--- a/lib/Db/CredentialMapper.php
+++ b/lib/Db/CredentialMapper.php
@@ -138,6 +138,7 @@ class CredentialMapper extends Mapper {
$credential->setCustomFields($raw_credential['custom_fields']);
$credential->setOtp($raw_credential['otp']);
$credential->setHidden($raw_credential['hidden']);
+ $credential->setCompromised($raw_credential['compromised']);
if (isset($raw_credential['shared_key'])) {
$credential->setSharedKey($raw_credential['shared_key']);
}
@@ -177,6 +178,7 @@ class CredentialMapper extends Mapper {
$credential->setOtp($raw_credential['otp']);
$credential->setHidden($raw_credential['hidden']);
$credential->setDeleteTime($raw_credential['delete_time']);
+ $credential->setCompromised($raw_credential['compromised']);
if (isset($raw_credential['shared_key'])) {
$credential->setSharedKey($raw_credential['shared_key']);