{{ __('Order Logs') }}

{{ __('Every order you have placed.') }}

{{ __('New Order') }}
{{-- Status pills + search + export buttons in one row --}}
@foreach ($this->statuses() as $st) @endforeach
{{-- Export buttons --}}
@php // keyword → network slug (longer/more-specific first to avoid false positives) $netKwMap = [ 'soundcloud' => 'soundcloud', 'instagram' => 'instagram', 'facebook' => 'facebook', 'linkedin' => 'linkedin', 'snapchat' => 'snapchat', 'telegram' => 'telegram', 'whatsapp' => 'whatsapp', 'pinterest' => 'pinterest', 'youtube' => 'youtube', 'tiktok' => 'tiktok', 'discord' => 'discord', 'threads' => 'threads', 'twitter' => 'x', 'twitch' => 'twitch', 'spotify' => 'spotify', 'reddit' => 'reddit', 'triller' => 'triller', 'vimeo' => 'vimeo', 'tweet' => 'x', 'kick' => 'kick', ]; // Slugs with a Simple Icons sprite (partials/social-icons.blade.php) $hasSprite = ['instagram','tiktok','youtube','facebook','telegram','x','whatsapp','linkedin','spotify','snapchat','discord','twitch']; @endphp
{{ __('ID') }}{{ __('Charge') }} @forelse ($orders as $order) @php $stMap = [ 'awaiting' => ['warning', __('Awaiting')], 'pending' => ['warning', __('Pending')], 'processing' => ['info', __('Processing')], 'in_progress' => ['info', __('In progress')], 'active' => ['active', __('Active')], 'completed' => ['success', __('Completed')], 'partial' => ['partial', __('Partial')], 'canceled' => ['danger', __('Canceled')], 'refunded' => ['refund', __('Refunded')], 'error' => ['danger', __('Error')], 'simulated' => ['danger', __('Simulated')], 'fail' => ['danger', __('Fail')], ]; [$stTone, $stLabel] = $stMap[$order->status] ?? ['neutral', ucfirst(str_replace('_', ' ', (string) $order->status))]; // Detect social network from service name $svcLower = strtolower($order->serviceName()); $netSlug = 'web'; foreach ($netKwMap as $kw => $slug) { if (str_contains($svcLower, $kw)) { $netSlug = $slug; break; } } $useSprite = in_array($netSlug, $hasSprite); // Progress bar $qty = max(1, $order->quantity); $remains = $order->remains ?? 0; $startCounter = $order->start_counter ?? 0; $pct = match($order->status) { 'completed' => 100, 'in_progress' => min(100, (int) round($startCounter / $qty * 100)), 'partial' => min(100, (int) round(($qty - $remains) / $qty * 100)), default => 0, }; $barColor = match($order->status) { 'completed' => '#22c55e', 'in_progress' => 'var(--color-primary)', 'partial' => '#f59e0b', default => 'var(--color-border)', }; $detailPayload = [ 'id' => $order->id, 'status_tone' => $stTone, 'status_label' => $stLabel, 'service' => $order->serviceName(), 'link' => $order->link, 'quantity' => number_format($order->quantity), 'charge' => client_money($order->charge), 'start_count' => number_format($order->start_counter ?? 0), 'remains' => number_format($order->remains ?? 0), 'created' => rf_datetime($order->created_at), 'is_drip_feed' => (bool) $order->is_drip_feed, 'runs' => (int) ($order->runs ?? 0), 'interval_minutes'=> (int) ($order->interval_minutes ?? 0), 'drip_quantity' => (int) ($order->drip_quantity ?? 0), ]; @endphp {{-- ID + date + copy --}} {{-- Network icon --}} {{-- Service + link --}} {{-- Status --}} {{-- Functions: Cancel / Refill buttons + request status badges --}} @php $latestCancel = $order->latestCancel; $latestRefill = $order->latestRefill; $cancelActiveStatuses = ['pending', 'in_progress']; $cancelActive = $latestCancel && in_array($latestCancel->status, $cancelActiveStatuses); $refillActive = $latestRefill && in_array($latestRefill->status, $cancelActiveStatuses); $canCancel = $order->cancel_enabled && in_array($order->status, ['awaiting', 'pending', 'processing', 'in_progress']) && ! $cancelActive; $canRefill = $order->refill_enabled && in_array($order->status, ['completed', 'partial']) && ! $refillActive; $cancelBadgeMap = [ 'pending' => ['warning', __('Cancel pending')], 'in_progress' => ['info', __('Cancel in progress')], 'completed' => ['success', __('Canceled')], 'rejected' => ['neutral', __('Cancel rejected')], 'failed' => ['danger', __('Cancel failed')], ]; $refillBadgeMap = [ 'pending' => ['warning', __('Refill pending')], 'in_progress' => ['info', __('Refill in progress')], 'completed' => ['success', __('Refill completed')], 'rejected' => ['neutral', __('Refill rejected')], 'failed' => ['danger', __('Refill failed')], ]; $showCancelBadge = $latestCancel && isset($cancelBadgeMap[$latestCancel->status]); $showRefillBadge = $latestRefill && isset($refillBadgeMap[$latestRefill->status]); @endphp {{-- Charge + time --}} {{-- Quantity + Start + progress bar --}} {{-- Report: opens support ticket pre-filled with order ID --}} {{-- Repeat: pre-loads same service + link + quantity in new-order --}} {{-- Details: eye only --}} @empty @endforelse
{{ __('Service') }} {{ __('Status') }} {{ __('Functions') }} {{ __('Qty / Start') }} {{ __('Report') }} {{ __('Repeat') }} {{ __('Details') }}
{{ $order->id }}
{{ rf_date($order->created_at) }}
@if($useSprite) @else {{ strtoupper(substr($netSlug, 0, 2)) }} @endif
@if($order->service_id) {{ $order->service_id }} — @endif {{ \Illuminate\Support\Str::limit($order->serviceName(), 50) }} @if($order->is_drip_feed) Drip-feed @endif
@if($order->link) @endif
{{-- Cancel request status badge --}} @if ($showCancelBadge) @php [$cbTone, $cbLabel] = $cancelBadgeMap[$latestCancel->status]; @endphp {{ $cbLabel }} @endif {{-- Refill request status badge --}} @if ($showRefillBadge) @php [$rbTone, $rbLabel] = $refillBadgeMap[$latestRefill->status]; @endphp {{ $rbLabel }} @endif {{-- Cancel button --}} @if ($canCancel) @endif {{-- Refill button --}} @if ($canRefill) @endif {{-- Nothing eligible --}} @if (! $canCancel && ! $canRefill && ! $showCancelBadge && ! $showRefillBadge) — @endif
{{ client_money($order->charge) }}
{{ rf_date($order->created_at, 'H:i:s') }}
{{ number_format($order->quantity) }}
Start: {{ number_format($startCounter) }}
@if ($order->service_id) @else — @endif
@if ($orders->hasPages())
{{ $orders->links() }}
@endif
{{-- Order-details modal — fully client-side, instant open/close. --}}

{{ __('Order details') }}

{{ __('Order ID') }}
#
{{ __('Status') }}
{{ __('Service') }}
{{ __('Link') }}
{{ __('Quantity') }}
{{ __('Charge') }}
{{ __('Start count') }}
{{ __('Remains') }}
{{ __('Created') }}