AdminJO Front - Documentation API - v0.1.0
    Preparing search index...

    Function getEventStatus

    • Calcule le statut d'un événement basé sur sa date et son horaire

      Cette fonction détermine automatiquement le statut d'un événement sportif en comparant la date/heure actuelle avec la période de l'événement. Elle utilise une durée standard de 2 heures pour calculer la fin de l'événement.

      1. À venir : L'heure actuelle est antérieure au début de l'événement
      2. En cours : L'événement a commencé mais n'est pas encore terminé
      3. Terminé : L'heure actuelle dépasse la fin calculée de l'événement

      La fonction utilise l'heure locale du navigateur pour les comparaisons. Pour une application internationale, il serait recommandé d'utiliser des timestamps UTC avec conversion appropriée.

      Cette fonction est optimisée pour être appelée fréquemment :

      • Calculs en millisecondes pour la précision
      • Pas de dépendances externes lourdes
      • Logique conditionnelle simple

      Parameters

      • eventDate: string

        Date de l'événement au format ISO (YYYY-MM-DD)

      • eventTime: string

        Heure de début au format HH:MM

      Returns StatutEvenement | undefined

      Le statut calculé de l'événement

      // Événement futur
      const status1 = getEventStatus('2024-08-01', '20:30');
      console.log(status1); // 'à venir'

      // Événement en cours (si on est le 2024-08-01 à 21:00)
      const status2 = getEventStatus('2024-08-01', '20:30');
      console.log(status2); // 'en cours'

      // Événement terminé
      const status3 = getEventStatus('2024-07-26', '09:00');
      console.log(status3); // 'terminé'
      // Utilisation dans un composant React
      function EventCard({ event }: { event: Evenement }) {
      const status = getEventStatus(event.date, event.horraire);
      const colorClass = getStatusColor(status);

      return (
      <div className="event-card">
      <h3>{event.description}</h3>
      <span className={`badge ${colorClass}`}>
      {status}
      </span>
      </div>
      );
      }

      1.0.0