@extends('layouts/layoutMaster') @section('title', 'Mis anuncios') @section('vendor-style') @vite([ 'resources/assets/vendor/libs/datatables-bs5/datatables.bootstrap5.scss', 'resources/assets/vendor/libs/datatables-responsive-bs5/responsive.bootstrap5.scss', 'resources/assets/vendor/libs/datatables-buttons-bs5/buttons.bootstrap5.scss', ]) @endsection @section('page-script') @vite(['resources/assets/js/mariachi-listings-index.js']) @endsection @section('page-style') @endsection @section('content') @php $totalListingsCount = $listings->count(); $reviewMap = [ 'draft' => ['label' => 'Borrador de revisión', 'class' => 'secondary'], 'pending' => ['label' => 'En revisión', 'class' => 'warning'], 'approved' => ['label' => 'Aprobado', 'class' => 'success'], 'rejected' => ['label' => 'Rechazado', 'class' => 'danger'], ]; $paymentMap = [ \App\Models\MariachiListing::PAYMENT_NONE => ['label' => 'Sin pago', 'class' => 'secondary'], \App\Models\MariachiListing::PAYMENT_PENDING => ['label' => 'Pago en revisión', 'class' => 'warning'], \App\Models\MariachiListing::PAYMENT_APPROVED => ['label' => 'Pago aprobado', 'class' => 'success'], \App\Models\MariachiListing::PAYMENT_REJECTED => ['label' => 'Pago rechazado', 'class' => 'danger'], ]; $statusMap = [ \App\Models\MariachiListing::STATUS_DRAFT => ['label' => 'Borrador', 'class' => 'secondary'], \App\Models\MariachiListing::STATUS_AWAITING_PLAN => ['label' => 'Sin plan', 'class' => 'warning'], \App\Models\MariachiListing::STATUS_AWAITING_PAYMENT => ['label' => 'Esperando pago', 'class' => 'warning'], \App\Models\MariachiListing::STATUS_ACTIVE => ['label' => 'Activo', 'class' => 'success'], \App\Models\MariachiListing::STATUS_PAUSED => ['label' => 'Pausado', 'class' => 'danger'], ]; @endphp @if(session('status'))
{{ session('status') }}
@endif @if($errors->any())
{{ $errors->first() }}
@endif @if(! $canCreateListingDraft)
Tope de borradores alcanzado. Publica o elimina uno para liberar espacio antes de crear otro.
@endif @if($planIssues !== [])
Tu configuración actual requiere ajuste.
@endif
@if($canCreateListingDraft) Crear @else @endif
@csrf
@if($listings->isEmpty())

Aún no has creado anuncios. Empieza con un borrador, complétalo y activa el plan solo en el anuncio que quieras publicar.

@else
@foreach($listings as $listing) @php $photo = $listing->photos->firstWhere('is_featured', true) ?? $listing->photos->first(); $reviewMeta = $reviewMap[$listing->review_status] ?? ['label' => $listing->reviewStatusLabel(), 'class' => 'secondary']; $paymentMeta = $paymentMap[$listing->payment_status] ?? ['label' => $listing->paymentStatusLabel(), 'class' => 'secondary']; $statusMeta = $statusMap[$listing->status] ?? ['label' => \Illuminate\Support\Str::headline($listing->status), 'class' => 'secondary']; $canSubmit = $listing->canBeSubmittedForReview(); $submitLabel = $listing->review_status === \App\Models\MariachiListing::REVIEW_REJECTED ? 'Reenviar' : 'Enviar'; $currentListingIssues = $listingIssues->get($listing->id, []); @endphp @endforeach
Act. Campaña Estado Pago Plan Completitud Actualizado
@if($listing->canOwnerPause())
@csrf
@elseif($listing->canOwnerResume())
@csrf
@else @endif
@if($photo) {{ $listing->title }} @else @endif
{{ $listing->title }} {{ $listing->city_name ?: 'Sin ciudad definida' }}
@if($listing->isPendingReview() || $listing->isPaymentPending()) {{ $listing->isPaymentPending() ? 'Cobro' : 'Revisión' }} @else Editar @endif @if($canSubmit && $currentListingIssues === [])
@csrf
@elseif($canSubmit) Requiere ajuste @endif @if($listing->isApprovedForMarketplace() && $listing->slug) Ver @endif
@if($listing->submitted_for_review_at) Enviado {{ $listing->submitted_for_review_at->diffForHumans() }} @endif @if($listing->rejection_reason) {{ \Illuminate\Support\Str::limit($listing->rejection_reason, 110) }} @elseif($listing->isPaymentRejected() && $listing->latestPayment?->rejection_reason) {{ \Illuminate\Support\Str::limit($listing->latestPayment->rejection_reason, 110) }} @elseif($currentListingIssues !== []) {{ \Illuminate\Support\Str::limit(implode(' ', $currentListingIssues), 110) }} @endif
{{ $statusMeta['label'] }} {{ $reviewMeta['label'] }}
{{ $paymentMeta['label'] }}
Seleccionado: {{ \Illuminate\Support\Str::headline($listing->selected_plan_code ?: 'basic') }} Activo: {{ \Illuminate\Support\Str::headline($listing->effectivePlanCode() ?: 'basic') }} @if($listing->daysRemainingLabel()) {{ $listing->daysRemainingLabel() }} @endif
Progreso {{ (int) $listing->listing_completion }}%
{{ $listing->updated_at?->diffForHumans() ?: '-' }} {{ $listing->updated_at?->format('d/m/Y H:i') ?: '-' }}
@endif
@endsection