456
This commit is contained in:
parent
b18f5a874b
commit
af6953bcb8
@ -309,9 +309,6 @@ function preselectValues(eventData) {
|
|||||||
|
|
||||||
const extendedProps = eventData.extendedProps || {};
|
const extendedProps = eventData.extendedProps || {};
|
||||||
|
|
||||||
console.log('🔍 [PRESELECT] Données complètes de l\'événement:', eventData);
|
|
||||||
console.log('🔍 [PRESELECT] extendedProps:', extendedProps);
|
|
||||||
|
|
||||||
// Mapper les champs à présélectionner
|
// Mapper les champs à présélectionner
|
||||||
const fieldsToPreselect = {
|
const fieldsToPreselect = {
|
||||||
'id_beneficiaire': extendedProps.id_beneficiaire,
|
'id_beneficiaire': extendedProps.id_beneficiaire,
|
||||||
@ -323,57 +320,19 @@ function preselectValues(eventData) {
|
|||||||
'langue': extendedProps.langue
|
'langue': extendedProps.langue
|
||||||
};
|
};
|
||||||
|
|
||||||
console.log('🔍 [PRESELECT] Champs à présélectionner:', fieldsToPreselect);
|
|
||||||
|
|
||||||
Object.entries(fieldsToPreselect).forEach(([fieldId, value]) => {
|
Object.entries(fieldsToPreselect).forEach(([fieldId, value]) => {
|
||||||
if (value) {
|
if (!value) return;
|
||||||
const element = document.getElementById(fieldId);
|
|
||||||
console.log(`🔍 [PRESELECT] Champ ${fieldId}:`, {
|
const element = document.getElementById(fieldId);
|
||||||
value,
|
if (!element || element.tagName !== 'SELECT') return;
|
||||||
elementExists: !!element,
|
|
||||||
isSelect: element?.tagName === 'SELECT',
|
// Si Select2 est actif
|
||||||
hasSelect2: element && window.jQuery ? jQuery(element).hasClass('select2-hidden-accessible') : false
|
if (window.jQuery && jQuery(element).hasClass('select2-hidden-accessible')) {
|
||||||
});
|
// Définir la valeur et déclencher l'événement change.select2
|
||||||
|
jQuery(element).val(value).trigger('change.select2');
|
||||||
if (element && element.tagName === 'SELECT') {
|
|
||||||
// Pour le champ langue, vérifier les options disponibles
|
|
||||||
if (fieldId === 'langue') {
|
|
||||||
const options = Array.from(element.options).map(opt => ({
|
|
||||||
value: opt.value,
|
|
||||||
text: opt.text,
|
|
||||||
slug: opt.getAttribute('data-slug'),
|
|
||||||
disabled: opt.disabled,
|
|
||||||
hidden: opt.style.display === 'none'
|
|
||||||
}));
|
|
||||||
console.log(`🔍 [PRESELECT] Options disponibles pour langue:`, options);
|
|
||||||
|
|
||||||
// Vérifier si l'option avec cette valeur existe
|
|
||||||
const optionExists = Array.from(element.options).some(opt => opt.value === value.toString());
|
|
||||||
console.log(`🔍 [PRESELECT] L'option avec valeur "${value}" existe:`, optionExists);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Définir d'abord la valeur sur le select natif
|
|
||||||
element.value = value;
|
|
||||||
console.log(`🔍 [PRESELECT] Valeur définie sur select natif ${fieldId}:`, element.value);
|
|
||||||
|
|
||||||
// Si Select2 est actif, le notifier du changement
|
|
||||||
if (window.jQuery && jQuery(element).hasClass('select2-hidden-accessible')) {
|
|
||||||
console.log(`🔍 [PRESELECT] Notification Select2 pour ${fieldId}`);
|
|
||||||
jQuery(element).trigger('change');
|
|
||||||
|
|
||||||
// Vérifier si la valeur a bien été définie
|
|
||||||
const actualValue = jQuery(element).val();
|
|
||||||
console.log(`🔍 [PRESELECT] Valeur Select2 pour ${fieldId}:`, actualValue, 'attendue:', value);
|
|
||||||
|
|
||||||
if (actualValue !== value && actualValue !== value.toString()) {
|
|
||||||
console.warn(`⚠️ [PRESELECT] La valeur n'a pas été correctement définie pour ${fieldId}!`);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
console.warn(`⚠️ [PRESELECT] Élément ${fieldId} non trouvé ou pas un SELECT`);
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
console.log(`🔍 [PRESELECT] Pas de valeur pour ${fieldId}`);
|
// Select natif
|
||||||
|
element.value = value;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user