diff --git a/templates/components/targeting_selector_simple.html b/templates/components/targeting_selector_simple.html index bb84f4cce..4fc026bf4 100644 --- a/templates/components/targeting_selector_simple.html +++ b/templates/components/targeting_selector_simple.html @@ -123,7 +123,7 @@

🎯 Custom Targeting

document.addEventListener('DOMContentLoaded', async function() { try { const tenantId = '{{ tenant_id }}'; - const response = await fetch(`/api/tenant/${tenantId}/targeting/all`, { + const response = await fetch(`{{ script_name }}/api/tenant/${tenantId}/targeting/all`, { credentials: 'same-origin' }); const data = await response.json(); @@ -171,7 +171,7 @@

🎯 Custom Targeting

try { const tenantId = '{{ tenant_id }}'; - const response = await fetch(`/api/tenant/${tenantId}/targeting/values/${keyId}`, { + const response = await fetch(`{{ script_name }}/api/tenant/${tenantId}/targeting/values/${keyId}`, { credentials: 'same-origin' }); const data = await response.json(); diff --git a/templates/targeting_browser.html b/templates/targeting_browser.html index 24485aa6b..2dc2ead81 100644 --- a/templates/targeting_browser.html +++ b/templates/targeting_browser.html @@ -277,7 +277,12 @@

Values for Selected Key

} const data = await response.json(); - targetingData = data; + + // Merge data instead of replacing to preserve customValues cache + targetingData.customKeys = data.customKeys || []; + targetingData.audiences = data.audiences || []; + targetingData.labels = data.labels || []; + // Don't overwrite customValues - it's populated on-demand by loadCustomValues() // Update UI updateSyncInfo(data.last_sync);