Make sure fqdn generation works with single values
All checks were successful
Tests / test (push) Successful in 27s

This commit is contained in:
Tobias Kunze 2025-11-14 16:52:14 +01:00
parent 4097261efe
commit 3f9fdd0e48

View file

@ -1,9 +1,21 @@
const initializeFqdnGeneration = (prefix) => {
const nameField = document.querySelector(`input#id_${prefix}-name`);
if (!nameField) return
// Try to find array input first (DynamicArrayWidget), then fallback to regular text input
const fqdnFieldContainer = document.getElementById(`${prefix}-spec.parameters.service.fqdn_container`)
if (!nameField || !fqdnFieldContainer) return
const fqdnField = fqdnFieldContainer.querySelector('input.array-item-input');
let fqdnField = null;
let isArrayField = true;
if (fqdnFieldContainer) {
let fqdnField = fqdnFieldContainer.querySelector('input.array-item-input');
} else {
fqdnField = document.getElementById(`id_${prefix}-spec.parameters.service.fqdn`);
isArrayField = false;
}
if (!fqdnField) return
if (nameField && fqdnField) {
const generateFqdn = (instanceName) => {
@ -14,9 +26,12 @@ const initializeFqdnGeneration = (prefix) => {
nameField.addEventListener('input', function() {
if (!fqdnField.dataset.manuallyEdited) {
fqdnField.value = generateFqdn(this.value);
const container = fqdnField.closest('.dynamic-array-widget');
if (container && window.updateHiddenInput) {
window.updateHiddenInput(container);
if (isArrayField) {
// Update hidden input for array fields
const container = fqdnField.closest('.dynamic-array-widget');
if (container && window.updateHiddenInput) {
window.updateHiddenInput(container);
}
}
}
});
@ -27,9 +42,12 @@ const initializeFqdnGeneration = (prefix) => {
if (nameField.value && !fqdnField.value) {
fqdnField.value = generateFqdn(nameField.value);
const container = fqdnField.closest('.dynamic-array-widget');
if (container && window.updateHiddenInput) {
window.updateHiddenInput(container);
if (isArrayField) {
// Update hidden input for array fields
const container = fqdnField.closest('.dynamic-array-widget');
if (container && window.updateHiddenInput) {
window.updateHiddenInput(container);
}
}
}
}