@php $brand = $brand ?? '#2A86DE'; $badge = match ($kind) { 'cancel' => ['Réunion annulée', '#c0392b', '#fdecea'], 'reminder' => ['Rappel — commence bientôt', '#8a6d1a', '#fff6e5'], 'update' => ['Réunion modifiée', '#6d4fc2', '#efeafc'], 'nudge' => ['Confirmez votre présence', '#1d6fd0', '#e9f2fd'], default => ['Invitation à une réunion', '#1d6fd0', '#e9f2fd'], }; $intro = match ($kind) { 'cancel' => 'Cette réunion a été annulée. Vous pouvez supprimer l’événement correspondant de votre agenda.', 'reminder' => 'Votre réunion commence bientôt. Rejoignez-la en un clic.', // Le .ics joint porte une SEQUENCE incrémentée → l'agenda remplace l'événement existant. 'update' => 'Les détails de cette réunion ont changé. Votre agenda se met à jour avec la pièce jointe ci-dessous.', 'nudge' => ($organizerName ? $organizerName . ' attend votre réponse : ' : 'Merci de nous indiquer si vous ') . 'participerez-vous à cette réunion ?', default => ($organizerName ? $organizerName . ' vous invite à une réunion en ligne.' : 'Vous êtes invité(e) à une réunion en ligne.'), }; $rsvpLabels = ['accepted' => 'Accepté', 'tentative' => 'Peut-être', 'declined' => 'Refusé']; $rsvpVerbs = ['accepted' => 'Accepter', 'tentative' => 'Peut-être', 'declined' => 'Refuser']; $rsvpColors = ['accepted' => '#1e9e5a', 'tentative' => '#c47f12', 'declined' => '#c0392b']; $current = (!empty($currentRsvp) && $currentRsvp !== 'pending') ? $currentRsvp : null; // Logo de l'application (front, par tenant) : pièce inline (CID) quand le contenu a pu être récupéré et qu'on // est dans un vrai envoi ; sinon URL distante (repli / aperçu). $logoSrc = (isset($message) && !empty($logoData['bytes'])) ? $message->embedData($logoData['bytes'], 'logo.png', $logoData['mime'] ?? 'image/png') : ($logoUrl ?? null); $facts = array_values(array_filter([ !empty($dayLabel) ? ['Quand', $dayLabel, null] : null, !empty($timeLabel) ? ['Heure', $timeLabel, $tzLabel ?? null] : null, !empty($durationLabel) ? ['Durée', $durationLabel, null] : null, !empty($organizerName) ? ['Organisateur', $organizerName, null] : null, ])); @endphp
{{-- Logo BY+ au-dessus de la carte (comme la page de réponse) --}} {{-- Pied --}}