diff --git a/themes/src/main/resources/theme/base/admin/resources/js/controllers/realm.js b/themes/src/main/resources/theme/base/admin/resources/js/controllers/realm.js
index b56bcc9..bcb0d0c 100644
--- a/themes/src/main/resources/theme/base/admin/resources/js/controllers/realm.js
+++ b/themes/src/main/resources/theme/base/admin/resources/js/controllers/realm.js
@@ -468,12 +468,14 @@ module.controller('RealmPasswordPolicyCtrl', function($scope, Realm, realm, $htt
value = null;
} else {
id = policyToken.substring(0, policyToken.indexOf('('));
- value = policyToken.substring(policyToken.indexOf('(') + 1, policyToken.indexOf(')')).trim();
+ value = policyToken.substring(policyToken.indexOf('(') + 1, policyToken.lastIndexOf(')')).trim();
}
for (var j = 0; j < serverInfo.passwordPolicies.length; j++) {
if (serverInfo.passwordPolicies[j].id == id) {
- var p = serverInfo.passwordPolicies[j];
+ // clone
+ var p = JSON.parse(JSON.stringify(serverInfo.passwordPolicies[j]));
+
p.value = value && value || p.defaultValue;
policies.push(p);
}
@@ -502,6 +504,7 @@ module.controller('RealmPasswordPolicyCtrl', function($scope, Realm, realm, $htt
$scope.serverInfo = serverInfo;
$scope.changed = false;
+ console.log(JSON.stringify(parse(realm.passwordPolicy)));
$scope.policy = parse(realm.passwordPolicy);
var oldCopy = angular.copy($scope.policy);