correction affichage

This commit is contained in:
theShlavuk 2026-01-21 21:29:28 +01:00
parent 587646aca8
commit c647a5082c
2 changed files with 28 additions and 8 deletions

View File

@ -31,6 +31,12 @@ export function fillFormWithDate(data) {
const heureFin = data?.endStr?.split('T')[1]?.substring(0, 5) || '09:15'; const heureFin = data?.endStr?.split('T')[1]?.substring(0, 5) || '09:15';
safeSetValue('heure_fin', heureFin); safeSetValue('heure_fin', heureFin);
// S'assurer que le champ langue est visible par défaut (pour création)
const langueContainer = document.getElementById('langue-container');
if (langueContainer) {
langueContainer.style.display = '';
}
} }
/** /**
@ -119,6 +125,11 @@ export function fillFormWithEvent(event, filterTraducteursByLangue = null) {
// Gérer les champs conditionnels selon le type // Gérer les champs conditionnels selon le type
const type = extendedProps.type || event.type || ''; const type = extendedProps.type || event.type || '';
// S'assurer que le champ langue est visible par défaut avant d'appeler handleTypeConditionalFields
const langueContainer = document.getElementById('langue-container');
if (langueContainer && type !== 'permanence') {
langueContainer.style.display = '';
}
handleTypeConditionalFields(type, event, extendedProps); handleTypeConditionalFields(type, event, extendedProps);
// Charger le statut liste rouge si bénéficiaire sélectionné // Charger le statut liste rouge si bénéficiaire sélectionné
@ -215,16 +226,11 @@ function handleTraducteurExistingCheckbox(traducteurId) {
* @param {Object} extendedProps - Propriétés étendues * @param {Object} extendedProps - Propriétés étendues
*/ */
function handleTypeConditionalFields(type, event, extendedProps) { function handleTypeConditionalFields(type, event, extendedProps) {
const groupeFields = document.getElementById('groupeFields'); // Gérer le champ langue selon le type (AVANT le return pour ne pas être bloqué)
const nbParticipantsField = document.getElementById('nb_participants');
const beneficiaireContainer = document.getElementById('id_beneficiaire')?.closest('.col-md-6');
const beneficiaireField = document.getElementById('id_beneficiaire');
const langueContainer = document.getElementById('langue-container'); const langueContainer = document.getElementById('langue-container');
const langueField = document.getElementById('langue'); const langueField = document.getElementById('langue');
if (!groupeFields || !nbParticipantsField || !beneficiaireContainer || !beneficiaireField) return; // Par défaut, afficher le champ langue (sauf pour les permanences)
// Gérer le champ langue selon le type
if (type === 'permanence') { if (type === 'permanence') {
// Cacher le champ langue pour les permanences (les langues sont dans langues_disponibles) // Cacher le champ langue pour les permanences (les langues sont dans langues_disponibles)
if (langueContainer) { if (langueContainer) {
@ -234,7 +240,7 @@ function handleTypeConditionalFields(type, event, extendedProps) {
langueField.removeAttribute('required'); langueField.removeAttribute('required');
} }
} else { } else {
// Afficher le champ langue pour les autres types // Afficher le champ langue pour les autres types (individuel, groupe) ou si type non défini
if (langueContainer) { if (langueContainer) {
langueContainer.style.display = ''; langueContainer.style.display = '';
} }
@ -243,6 +249,14 @@ function handleTypeConditionalFields(type, event, extendedProps) {
} }
} }
// Gérer les autres champs conditionnels
const groupeFields = document.getElementById('groupeFields');
const nbParticipantsField = document.getElementById('nb_participants');
const beneficiaireContainer = document.getElementById('id_beneficiaire')?.closest('.col-md-6');
const beneficiaireField = document.getElementById('id_beneficiaire');
if (!groupeFields || !nbParticipantsField || !beneficiaireContainer || !beneficiaireField) return;
if (type === 'groupe') { if (type === 'groupe') {
// Afficher les champs de groupe // Afficher les champs de groupe
groupeFields.style.display = ''; groupeFields.style.display = '';

View File

@ -284,6 +284,12 @@ export function openModal(mode, eventData = null) {
initializeLangueFilter(); initializeLangueFilter();
initializeBeneficiaireListeRougeAlert(); initializeBeneficiaireListeRougeAlert();
// S'assurer que le champ langue est visible par défaut (sauf pour les permanences)
const langueContainer = document.getElementById('langue-container');
if (langueContainer && (!eventData || (eventData.extendedProps?.type !== 'permanence' && eventData.type !== 'permanence'))) {
langueContainer.style.display = '';
}
// Initialiser les boutons (une seule fois) // Initialiser les boutons (une seule fois)
initializeModalButtons({ initializeModalButtons({
getCurrentEventData: () => currentEventData, getCurrentEventData: () => currentEventData,