diff --git a/openidm-core/src/main/java/org/forgerock/openidm/sync/impl/ReconTypeBase.java b/openidm-core/src/main/java/org/forgerock/openidm/sync/impl/ReconTypeBase.java
index 7146f73b00..bcdc8d390e 100644
--- a/openidm-core/src/main/java/org/forgerock/openidm/sync/impl/ReconTypeBase.java
+++ b/openidm-core/src/main/java/org/forgerock/openidm/sync/impl/ReconTypeBase.java
@@ -290,7 +290,7 @@ private boolean hasFullEntry(JsonValue entry, QuerySide querySide) {
if (entry != null) {
- short ignoreFields = 0;
+ int ignoreFields = 0;
if (entry.isDefined("_id")) {
ignoreFields++;
}
diff --git a/openidm-ui/openidm-ui-admin/src/main/js/org/forgerock/openidm/ui/admin/mapping/behaviors/PoliciesDialogView.js b/openidm-ui/openidm-ui-admin/src/main/js/org/forgerock/openidm/ui/admin/mapping/behaviors/PoliciesDialogView.js
index 0c583b2fba..dc8cbd7bad 100644
--- a/openidm-ui/openidm-ui-admin/src/main/js/org/forgerock/openidm/ui/admin/mapping/behaviors/PoliciesDialogView.js
+++ b/openidm-ui/openidm-ui-admin/src/main/js/org/forgerock/openidm/ui/admin/mapping/behaviors/PoliciesDialogView.js
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015-2016 ForgeRock AS.
+ * Portions Copyright 2026 3A Systems, LLC.
*/
define([
@@ -47,8 +48,8 @@ define([
title = "";
this.data = {
- star: "★",
- hollowStar: "☆",
+ star: "★",
+ hollowStar: "☆",
situation: args.situation,
edit: args.edit,
defaultAction: false,
@@ -119,12 +120,12 @@ define([
// Set viable options stars
_.each(this.model.basePolicy.options, function(action) {
tempSelector = $("#defaultActionPane select option[value='"+action+"']");
- tempSelector.html(tempSelector.text() + " " + this.data.hollowStar);
+ tempSelector.text(tempSelector.text() + " " + this.data.hollowStar);
}, this);
// Set default option star
tempSelector = $("#defaultActionPane select option[value='"+this.model.basePolicy.action+"']");
- tempSelector.html(tempSelector.text() + " " + this.data.star);
+ tempSelector.text(tempSelector.text() + " " + this.data.star);
this.$el.find("#defaultActionPane select").val(this.model.basePolicy.action);
diff --git a/openidm-ui/openidm-ui-admin/src/main/js/org/forgerock/openidm/ui/admin/mapping/util/LinkQualifierFilterEditor.js b/openidm-ui/openidm-ui-admin/src/main/js/org/forgerock/openidm/ui/admin/mapping/util/LinkQualifierFilterEditor.js
index 36d86a7b62..3ad93da0a9 100644
--- a/openidm-ui/openidm-ui-admin/src/main/js/org/forgerock/openidm/ui/admin/mapping/util/LinkQualifierFilterEditor.js
+++ b/openidm-ui/openidm-ui-admin/src/main/js/org/forgerock/openidm/ui/admin/mapping/util/LinkQualifierFilterEditor.js
@@ -12,6 +12,7 @@
* information: "Portions copyright [year] [name of copyright owner]".
*
* Copyright 2015-2016 ForgeRock AS.
+ * Portions Copyright 2026 3A Systems, LLC.
*/
define([
@@ -152,9 +153,11 @@ define([
tempValue,
displayValue;
+ // Options are built through the DOM API, never by string concatenation: the names come
+ // from the stored condition and must be treated as text, not markup.
_.each(this.model.sourceProps, function(source) {
if(source !== undefined) {
- baseElement.append('');
+ baseElement.append($("');
+ appendElement.append($("');
+ baseElement.append($("');
- }
+ if(baseElement.find("option").filter(function() { return this.value === pointer; }).length === 0) {
+ baseElement.append($("