@extends('layouts.app') @section('title', $prestataire->business_name ?? $prestataire->user->name . ' - TaPrestation') @push('styles') @endpush @php $user = $prestataire->user; // Utiliser les variables passées par le contrôleur $services = $allServices ?? $prestataire->services ?? collect(); $equipments = $allEquipments ?? $prestataire->equipments ?? collect(); $products = $allUrgentSales ?? $prestataire->urgentSales ?? collect(); $foods = $foodProducts ?? collect(); $reviews = $allReviews ?? $prestataire->reviews ?? collect(); $totalReviews = $reviews->count(); $averageRating = $totalReviews > 0 ? round($reviews->avg('rating'), 1) : 0; $hasServices = $services->count() > 0; $hasEquipments = $equipments->count() > 0; $hasProducts = $products->count() > 0; $hasFoods = $foods->count() > 0; $hasReviews = $totalReviews > 0; $isOnline = $prestataire->last_seen_at && $prestataire->last_seen_at->diffInMinutes(now()) < 15; $lastSeen = $prestataire->last_seen_at ? $prestataire->last_seen_at->diffForHumans() : null; // Variables passées par le contrôleur pour les reviews $existingReview = $existingReview ?? null; $hasInteracted = $hasInteracted ?? false; @endphp @section('content')
{{-- ==================== HEADER COMPACT ==================== --}}
{{-- Bouton retour --}} {{-- Avatar + Infos principales --}}
@if($user->profile_photo_url) {{ $user->name }} @else
{{ strtoupper(substr($user->name, 0, 1)) }}
@endif @if($prestataire->is_verified) @endif

{{ $prestataire->business_name ?? $user->name }}

{{-- Statut en ligne --}} {{ $isOnline ? 'En ligne' : ($lastSeen ? 'Vu '.$lastSeen : 'Hors ligne') }} {{-- Note --}} @if($hasReviews) @endif
{{-- Tags rapides --}}
@if($hasServices) {{ $services->count() }} service{{ $services->count() > 1 ? 's' : '' }} @endif @if($hasProducts) Boutique @endif @if($hasFoods) Restaurant @endif
{{-- ==================== NAVIGATION PAR ONGLETS ==================== --}} {{-- ==================== CONTENU PRINCIPAL ==================== --}}
{{-- Description (si existe) --}} @if($prestataire->description)

{{ $prestataire->description }}

@endif {{-- ===== SECTION SERVICES ===== --}} @if($hasServices)

Services proposés

{{ $services->count() }}
@if($services->count() > 6) Voir les {{ $services->count() }} services @endif
@endif {{-- ===== SECTION ÉQUIPEMENTS ===== --}} @if($hasEquipments)

Matériel à louer

{{ $equipments->count() }}
@if($equipments->count() > 6) Voir les {{ $equipments->count() }} équipements @endif
@endif {{-- ===== SECTION BOUTIQUE ===== --}} @if($hasProducts)

Boutique

{{ $products->count() }}
@if($products->count() > 8) Voir les {{ $products->count() }} produits @endif
@endif {{-- ===== SECTION FOOD / MENU ===== --}} @if($hasFoods)
Commander en ligne
@endif {{-- ===== SECTION AVIS ===== --}}

Avis clients

@if($hasReviews)
{{ $averageRating }}
@for($i = 1; $i <= 5; $i++) @endfor
{{ $totalReviews }} avis
@endif
{{-- Formulaire d'avis (si connecté) --}} @auth @if(!$existingReview && $hasInteracted)
@elseif($existingReview)
Vous avez déjà évalué ce prestataire
@elseif(!$hasInteracted)
Réservez un service pour pouvoir laisser un avis
@endif @else
Connectez-vous pour laisser un avis
@endauth {{-- Liste des avis --}} @if($hasReviews)
@foreach($reviews->take(5) as $review)
{{ strtoupper(substr($review->client->name ?? 'A', 0, 1)) }}
{{ $review->client->name ?? 'Client' }} {{ $review->created_at->diffForHumans() }}
@for($i = 1; $i <= 5; $i++) @endfor
@if($review->comment)

{{ $review->comment }}

@endif
@endforeach
@if($totalReviews > 5) @endif @else

Pas encore d'avis

Soyez le premier à donner votre avis !
@endif
{{-- ==================== BARRE D'ACTION FIXE (MOBILE) ==================== --}}
Message @if($hasServices) Réserver @elseif($hasFoods) Commander @else Contacter @endif
@endsection