@extends('admin.layouts.admin') @section('title', __('Affilix::affiliation.admin.manage_affiliates')) @section('content')
{{-- Header --}}

{{ __('Affilix::affiliation.admin.manage_affiliates') }}

{{ __('Suivez les performances et gérez vos affiliés') }}

{{-- Stats --}}

{{ number_format($stats['total_affiliates']) }}

{{ __('Total') }}

{{ number_format($stats['active_affiliates']) }}

{{ __('Actifs') }}

{{ number_format($stats['total_commissions'], 2) }} {{ setting('currency_symbol', '€') }}

{{ __('Commissions') }}

{{ number_format($stats['pending_commissions'], 2) }} {{ setting('currency_symbol', '€') }}

{{ __('En attente') }}

{{-- Tableau --}}
{{-- Conserver le tri actif lors d'une recherche --}} @if(request('sort'))@endif @if(request('direction'))@endif

{{ __('Affilix::affiliation.admin.affiliates') }}

{{-- Bulk actions --}}
{{-- Export CSV --}} {{ __('Export CSV') }}
@foreach(['' => __('Tous'), 'active' => __('Affilix::affiliation.active'), 'inactive' => __('Affilix::affiliation.inactive'), 'suspended' => __('Affilix::affiliation.suspended')] as $val => $label) @php $active = request('status', '') === $val; @endphp @endforeach
@if(request('search') || request('status')) {{ __('Réinitialiser') }} @endif
@php $sortUrl = fn(string $col) => request()->fullUrlWithQuery([ 'sort' => $col, 'direction' => ($sort === $col && $direction === 'asc') ? 'desc' : 'asc', 'page' => 1, ]); $sortIcon = fn(string $col) => $sort !== $col ? 'bi-arrow-down-up text-gray-300 dark:text-gray-600' : ($direction === 'asc' ? 'bi-arrow-up text-primary' : 'bi-arrow-down text-primary'); @endphp
@csrf
@forelse($affiliates as $affiliate) @empty @endforelse
{{ __('Client') }} {{ __('Code') }} {{ __('Taux') }} {{ __('Clics') }} {{ __('Parrainages') }} {{ __('Gains') }} {{ __('Statut') }} {{ __('Depuis') }}
{{ strtoupper(substr($affiliate->customer->firstname ?? $affiliate->customer->name ?? '?', 0, 1)) }}
{{ $affiliate->referral_code }} {{ number_format($affiliate->commission_rate, ($affiliate->commission_type ?? 'percent') === 'fixed' ? 2 : 0) }}{{ ($affiliate->commission_type ?? 'percent') === 'fixed' ? ' ' . setting('currency_symbol', '€') : '%' }} {{ number_format($affiliate->unique_clicks) }} {{ number_format($affiliate->total_referrals) }} @if($affiliate->successful_referrals > 0) {{ number_format($affiliate->successful_referrals) }} conv. @endif {{ number_format($affiliate->total_earnings, 2) }} {{ setting('currency_symbol', '€') }} {{ number_format($affiliate->pending_earnings, 2) }} {{ __('att.') }} · {{ number_format($affiliate->paid_earnings, 2) }} {{ __('payé') }} @if($affiliate->status === 'active') {{ __('Affilix::affiliation.active') }} @elseif($affiliate->status === 'inactive') {{ __('Affilix::affiliation.inactive') }} @else {{ __('Affilix::affiliation.suspended') }} @endif {{ $affiliate->created_at->format('d/m/Y') }}

{{ __('Aucun affilié trouvé') }}

@if(request('search') || request('status'))

{{ __('Essayez de modifier vos filtres.') }}

@endif
@if($affiliates->hasPages())
{{ $affiliates->links('admin.shared.layouts.pagination') }}
@endif
{{-- Modal confirmation suppression --}} @endsection