@extends('backend.layouts.master') @section('title') Campagne : {{ $campaign->title }} @endsection @section('body') @endsection @section('content')
Campagne : {{ $campaign->title }}
@csrf
Exporter @if (in_array($campaign->status, ['draft', 'partial'])) Modifier Aperçu @endif
{{-- Infos campagne --}}

Informations

@if ($campaign->reply_to) @endif @if ($campaign->daily_limit) @endif @if ($campaign->cc) @endif @if ($campaign->bcc) @endif @if (!empty($campaign->attachments)) @endif
Statut @switch($campaign->status) @case('draft') Brouillon @break @case('partial') Envoi partiel @break @case('sending') En cours @break @case('sent') Envoyée @break @case('cancelled') Annulée @break @default {{ $campaign->status }} @endswitch
Template {{ $campaign->template->name ?? 'N/A' }}
Événement {{ $campaign->event->title ?? 'Aucun' }}
Expéditeur {{ $campaign->from_name }} <{{ $campaign->from_email }}>
Reply-To {{ $campaign->reply_to }}
Limite envoi {{ $campaign->daily_limit }}
CC {{ $campaign->cc }}
BCC {{ $campaign->bcc }}
Pièces jointes @foreach ($campaign->attachments as $attachment) {{ is_array($attachment) ? $attachment['name'] : basename($attachment) }} @endforeach
Créée le {{ $campaign->created_at->format('d/m/Y H:i') }}
{{-- Ciblage configuré --}} @if ($campaign->email_list)

Liste de mails

@php $emailCount = count(array_filter(preg_split('/[\r\n,;]+/', $campaign->email_list), fn($l) => filter_var(trim($l), FILTER_VALIDATE_EMAIL))); @endphp

{{ $emailCount }} adresse(s)

{{ $campaign->email_list }}
@elseif ($campaign->diffusion_list_id && $campaign->diffusionList)

Liste de diffusion

{{ $campaign->diffusionList->name }}

@elseif ($campaign->filters)

Filtres configurés

    @foreach ($campaign->filters as $key => $value)
  • {{ ucfirst(str_replace('_', ' ', $key)) }} : @if (is_array($value)) {{ implode(', ', $value) }} @elseif (is_bool($value) || $value === true) Oui @else {{ $value }} @endif
  • @endforeach
@endif
{{-- Statistiques Brevo --}}
{{-- Envoyés --}}

Envoyés

{{ $stats['sent'] }}

{{ $stats['pending'] }} en attente · {{ $stats['failed'] }} échecs
{{-- Délivrés --}}

Délivrés

{{ $stats['delivered'] }}

confirmés par Brevo
{{-- Ouvertures --}}

Ouvertures

{{ $stats['opened'] }}

{{ $stats['open_rate'] }}% taux d'ouverture
{{-- Clics --}}

Clics

{{ $stats['clicked'] }}

{{ $stats['click_rate'] }}% taux de clic
{{-- Hard bounce --}}

Hard bounce

{{ $stats['hard_bounce'] }}

adresses invalides
{{-- Soft bounce --}}

Soft bounce

{{ $stats['soft_bounce'] }}

dont {{ $stats['mailbox_full'] }} boîtes pleines
{{-- Invalid --}}

Invalid

{{ $stats['invalid'] }}

adresses rejetées
{{-- Bloqués --}}

Bloqués

{{ $stats['blocked'] }}

liste noire Brevo
{{-- Désinscriptions --}}

Désinscrits

{{ $stats['unsubscribed'] }}

suite à cette campagne
{{-- Plaintes --}}

Plaintes

{{ $stats['complaint'] }}

signalements spam
{{-- Lancer / Reprendre l'envoi --}} @if (in_array($campaign->status, ['draft', 'partial']))

{{ $campaign->status === 'partial' ? 'Reprendre l\'envoi' : 'Lancer l\'envoi' }}

Pool total
{{ $poolTotal }}
Déjà envoyés
{{ $stats['total'] }}
Restants
{{ $remaining }}
@if ($remaining > 0)
@csrf
Max : {{ $remaining }} restants
sec
~12 emails/min
@else
Tous les destinataires ont été traités.
@endif
@endif {{-- Historique des envois --}} @if ($stats['total'] > 0)

Historique des envois

Voir les logs détaillés
@foreach ($campaign->recipients->take(100) as $recipient) @endforeach
Destinataire Email Envoi Brevo Envoyé le Ouvert Cliqué
{{ optional($recipient->user)->firstname }} {{ optional($recipient->user)->name }} {{ $recipient->email }} @switch($recipient->status) @case('sent') Envoyé @break @case('failed') Échec @break @case('pending') En attente @break @default {{ $recipient->status }} @endswitch @if ($recipient->brevo_status) @switch($recipient->brevo_status) @case('delivered') Délivré @break @case('hard_bounce') Hard bounce @break @case('soft_bounce') Soft bounce @break @case('mailbox_full') Boîte pleine @break @case('invalid') Invalid @break @case('blocked') Bloqué @break @case('unsubscribed') Désinscrit @break @case('complaint') Plainte @break @default {{ $recipient->brevo_status }} @endswitch @else @endif @if ($recipient->complained_at) Plainte @endif {{ $recipient->sent_at?->format('d/m/Y H:i') ?? '-' }} @if ($recipient->opened_at) {{ $recipient->opened_at->format('d/m/Y H:i') }} @else @endif @if ($recipient->clicked_at) {{ $recipient->clicked_at->format('d/m/Y H:i') }} @else @endif
@if ($campaign->recipients->count() > 100)

Affichage des 100 premiers résultats sur {{ $campaign->recipients->count() }} total.

@endif
@endif
@endsection