Non définie'; } // S'assurer que c'est un tableau if (!is_array($langue_ids)) { $langue_ids = [$langue_ids]; } $langue_names = []; foreach ($langue_ids as $langue_id) { $term = get_term($langue_id, 'langue'); if ($term && !is_wp_error($term)) { $langue_names[] = esc_html($term->name); } } if (empty($langue_names)) { return 'Non définie'; } // Si plusieurs langues, les afficher avec des badges if (count($langue_names) > 1) { $output = '
'; foreach ($langue_names as $name) { $output .= '' . $name . ''; } $output .= '
'; return $output; } return $langue_names[0]; } // Helper pour récupérer les exceptions d'une capacité function get_exceptions_info($post_id) { $ajouter_exception = get_field('ajouter_exception', $post_id); if (!$ajouter_exception) { return null; } $exceptions = get_field('exceptions_disponibilites', $post_id); if (empty($exceptions)) { return null; } return $exceptions; } // Helper pour formater l'affichage de l'exception function format_exception_display($exceptions) { if (empty($exceptions)) { return ''; } $frequence = isset($exceptions['frequence']) ? $exceptions['frequence'] : ''; $frequence_periode = isset($exceptions['frequence_periode']) ? $exceptions['frequence_periode'] : ''; $periode = isset($exceptions['periode']) ? $exceptions['periode'] : ''; if (empty($frequence) || empty($frequence_periode) || empty($periode)) { return ''; } $periode_label = $periode === 'matin' ? 'Matin' : ($periode === 'apres_midi' ? 'Après-midi' : 'Journée'); $frequence_periode_label = $frequence_periode === 'semaine' ? 'semaine' : 'mois'; return sprintf('%d × %s / %s', $frequence, $periode_label, $frequence_periode_label); } // Helper pour vérifier si la capacité a des événements function has_events_badge($post_id) { $has_events = ESI_CRVI_AGENDA\controllers\CRVI_TraductionLangue_Controller::check_events_for_capacite($post_id); if ($has_events) { return '🔒 Événements'; } return ''; } ?>

Capacités de traduction

Ajouter une capacité

Aucune capacité de traduction trouvée. Créer la première capacité

ID); $jour = get_field('jour', $parent->ID); $periode = get_field('periode', $parent->ID); $limite = get_field('limite', $parent->ID); $limite_par = get_field('limite_par', $parent->ID); $actif = get_field('actif', $parent->ID); $has_events = has_events_badge($parent->ID); // Récupérer les exceptions $exceptions = get_exceptions_info($parent->ID); $exception_display = format_exception_display($exceptions); // Calculer le nombre de créneaux utilisés $model = ESI_CRVI_AGENDA\models\CRVI_TraductionLangue_Model::load($parent->ID); $used = $model ? ESI_CRVI_AGENDA\models\CRVI_TraductionLangue_Model::countUsed($parent->ID, null, $model) : 0; $percentage = $limite > 0 ? round(($used / $limite) * 100) : 0; $is_full = $percentage >= 100; ?>

post_title); ?>

Inactif
Langue
Jour
Période
Limite /
Exception
Utilisation / (%)