@extends('layouts.app') @section('title', __('campaigns.index_title')) @section('content')
{{-- Header Row: Title, Add Buttons, View Toggle --}}

{{ __('campaigns.header') }}

{{-- Package Limit Message --}} @if (isset($packageLimits) && Auth::user()->role !== 'campaign_manager')

You are using {{ $campaignCount }} of {{ $packageLimits['campaigns'] }} campaigns.

{{-- Upgrade button appears when at or over the limit --}} @if (!$canCreateCampaign) Upgrade your Mindful Giving Package @endif
@endif
@if ($canCreateCampaign) {{ __('campaigns.create_new') }} @else {{-- Disabled button that opens the modal --}} @endif
{{ __('campaigns.clear') }}
@csrf @method('DELETE')
@forelse ($campaigns as $campaign) @empty @endforelse
{{ __('campaigns.table_image') }} {{ __('campaigns.table_title_template') }} {{ __('campaigns.table_type') }} {{ __('campaigns.table_status') }} {{ __('campaigns.table_created') }} {{ __('campaigns.table_actions') }}
@if ($campaign->image_path) {{ $campaign->title }} @else
@endif
{{ $campaign->title }}
@if ($campaign->po_number)
{{ __('campaigns.po_number_prefix') }} {{ $campaign->po_number }}
@endif @if ($campaign->selectedEmailTemplate)
{{ __('campaigns.email_prefix') }} {{ $campaign->selectedEmailTemplate->name }}
@else
{{ __('campaigns.default_email') }}
@endif {{-- Quantity Limits Quick Info --}} @if ($campaign->products->isNotEmpty()) @php $productsWithLimits = $campaign->products ->filter(fn($p) => $p->pivot->quantity_limit !== null) ->count(); $limitedOutProducts = $campaign->products ->filter( fn($p) => $p->pivot->quantity_limit !== null && $p->pivot->quantity_donated >= $p->pivot->quantity_limit, ) ->count(); @endphp @if ($productsWithLimits > 0)
Limits: {{ $productsWithLimits }} products @if ($limitedOutProducts > 0) ({{ $limitedOutProducts }} reached) @endif
@endif @endif
{{ $campaign->type }} @if ($campaign->enabled) {{ __('campaigns.status_enabled') }} @else {{ __('campaigns.status_disabled') }} @endif {{ $campaign->created_at->format('Y-m-d') }}
{{ __('campaigns.no_campaigns_found') }} {{ __('campaigns.create_one') }}
@forelse ($campaigns as $campaign)
@if ($campaign->image_path) {{ $campaign->title }} @else
@endif

{{ $campaign->title }}

@if ($campaign->enabled) {{ __('campaigns.status_enabled') }} @else {{ __('campaigns.status_disabled') }} @endif {{ $campaign->type }}

{{ __('campaigns.created_at', ['time' => $campaign->created_at->diffForHumans()]) }}

@if ($campaign->po_number)
{{ __('campaigns.po_number_prefix') }} {{ Str::limit($campaign->po_number, 20) }}
@endif
{{ __('campaigns.products_associated', ['count' => $campaign->products_count]) }}
@if ($campaign->shippingAddress) {{ __('campaigns.ships_to', ['location' => $campaign->shippingAddress->city . ', ' . $campaign->shippingAddress->state]) }} @else {{ __('campaigns.no_address_set') }} @endif
@if ($campaign->selectedEmailTemplate) {{ __('campaigns.email_template_subject', ['subject' => '']) }}{{ Str::limit($campaign->selectedEmailTemplate->name, 20) }} @else {{ __('campaigns.email_template_default') }} @endif
{{-- Quantity Limits Info for Grid View --}} @if ($campaign->products->isNotEmpty()) @php $productsWithLimits = $campaign->products ->filter(fn($p) => $p->pivot->quantity_limit !== null) ->count(); $limitedOutProducts = $campaign->products ->filter( fn($p) => $p->pivot->quantity_limit !== null && $p->pivot->quantity_donated >= $p->pivot->quantity_limit, ) ->count(); $totalDonated = $campaign->products->sum('pivot.quantity_donated'); @endphp @if ($productsWithLimits > 0)
{{ $productsWithLimits }} with limits @if ($limitedOutProducts > 0) ({{ $limitedOutProducts }} complete) @endif
@endif @if ($totalDonated > 0)
{{ $totalDonated }} donated
@endif @endif
@empty

{{ __('campaigns.no_campaigns_found') }}

{{ __('campaigns.create_one') }}
@endforelse
@if (isset($campaigns) && $campaigns instanceof \Illuminate\Pagination\LengthAwarePaginator) {{ $campaigns->appends(request()->query())->links() }} @endif
@endsection