@extends('layouts.app') @php $service = $subscription->service; $plan = $subscription->servicePlan; $logo = marketplaceImageUrl($service?->logo ?: $service?->category?->image_url); $serviceName = $service?->name ?? 'Subscription'; $planName = $plan?->name ?? 'Plan'; $planCurrency = strtoupper((string) ($plan?->currency ?? 'USD')); $currencySymbol = [ 'USD' => '$', 'EUR' => '€', 'GBP' => '£', ][$planCurrency] ?? '$'; $chatUrl = route('messages.index', ['subscription_id' => $subscription->id, 'tab' => 'messages']); $chatLabel = (int) auth()->id() === (int) $subscription->owner_id ? 'Open subscriber chats' : 'Chat with owner'; $currentUserPhone = trim((string) (auth()->user()->phone ?? '')); $phoneCountryPresets = [ 'United Kingdom' => ['code' => '+44', 'flag_class' => 'fi fi-gb', 'example' => '07400 123456'], 'Albania' => ['code' => '+355', 'flag_class' => 'fi fi-al', 'example' => '067 212 3456'], 'Austria' => ['code' => '+43', 'flag_class' => 'fi fi-at', 'example' => '0664 1234567'], 'Belgium' => ['code' => '+32', 'flag_class' => 'fi fi-be', 'example' => '0470 12 34 56'], 'Bulgaria' => ['code' => '+359', 'flag_class' => 'fi fi-bg', 'example' => '088 123 4567'], 'Croatia' => ['code' => '+385', 'flag_class' => 'fi fi-hr', 'example' => '091 234 5678'], 'Cyprus' => ['code' => '+357', 'flag_class' => 'fi fi-cy', 'example' => '96 123456'], 'Czechia' => ['code' => '+420', 'flag_class' => 'fi fi-cz', 'example' => '601 123 456'], 'Denmark' => ['code' => '+45', 'flag_class' => 'fi fi-dk', 'example' => '20 12 34 56'], 'Estonia' => ['code' => '+372', 'flag_class' => 'fi fi-ee', 'example' => '5123 4567'], 'Finland' => ['code' => '+358', 'flag_class' => 'fi fi-fi', 'example' => '040 123 4567'], 'France' => ['code' => '+33', 'flag_class' => 'fi fi-fr', 'example' => '06 12 34 56 78'], 'Germany' => ['code' => '+49', 'flag_class' => 'fi fi-de', 'example' => '01512 3456789'], 'Greece' => ['code' => '+30', 'flag_class' => 'fi fi-gr', 'example' => '0694 123 4567'], 'Hungary' => ['code' => '+36', 'flag_class' => 'fi fi-hu', 'example' => '20 123 4567'], 'Ireland' => ['code' => '+353', 'flag_class' => 'fi fi-ie', 'example' => '085 123 4567'], 'Italy' => ['code' => '+39', 'flag_class' => 'fi fi-it', 'example' => '312 345 6789'], 'Japan' => ['code' => '+81', 'flag_class' => 'fi fi-jp', 'example' => '090 1234 5678'], 'Latvia' => ['code' => '+371', 'flag_class' => 'fi fi-lv', 'example' => '21 234 567'], 'Lithuania' => ['code' => '+370', 'flag_class' => 'fi fi-lt', 'example' => '0612 34567'], 'Luxembourg' => ['code' => '+352', 'flag_class' => 'fi fi-lu', 'example' => '621 123 456'], 'Malta' => ['code' => '+356', 'flag_class' => 'fi fi-mt', 'example' => '9912 3456'], 'Netherlands' => ['code' => '+31', 'flag_class' => 'fi fi-nl', 'example' => '06 12345678'], 'Pakistan' => ['code' => '+92', 'flag_class' => 'fi fi-pk', 'example' => '0300 1234567'], 'Poland' => ['code' => '+48', 'flag_class' => 'fi fi-pl', 'example' => '512 345 678'], 'Portugal' => ['code' => '+351', 'flag_class' => 'fi fi-pt', 'example' => '912 345 678'], 'Romania' => ['code' => '+40', 'flag_class' => 'fi fi-ro', 'example' => '0712 345 678'], 'Saudi Arabia' => ['code' => '+966', 'flag_class' => 'fi fi-sa', 'example' => '050 123 4567'], 'Serbia' => ['code' => '+381', 'flag_class' => 'fi fi-rs', 'example' => '061 234 5678'], 'Slovakia' => ['code' => '+421', 'flag_class' => 'fi fi-sk', 'example' => '0912 345 678'], 'Slovenia' => ['code' => '+386', 'flag_class' => 'fi fi-si', 'example' => '031 234 567'], 'Spain' => ['code' => '+34', 'flag_class' => 'fi fi-es', 'example' => '612 34 56 78'], 'Sweden' => ['code' => '+46', 'flag_class' => 'fi fi-se', 'example' => '070 123 45 67'], 'Switzerland' => ['code' => '+41', 'flag_class' => 'fi fi-ch', 'example' => '078 123 45 67'], 'United Arab Emirates' => ['code' => '+971', 'flag_class' => 'fi fi-ae', 'example' => '050 123 4567'], 'United States' => ['code' => '+1', 'flag_class' => 'fi fi-us', 'example' => '(201) 555-0123'], ]; $defaultPhonePreset = $phoneCountryPresets[$selectedCountry] ?? $phoneCountryPresets['United Kingdom']; $defaultPhoneCountryCode = $defaultPhonePreset['code']; $defaultPhoneNumber = ''; if ($currentUserPhone !== '' && preg_match('/^(\+\d{1,4})\s*(.+)$/', $currentUserPhone, $matches)) { $defaultPhoneCountryCode = $matches[1]; $defaultPhoneNumber = trim($matches[2]); } elseif ($currentUserPhone !== '') { $defaultPhoneNumber = $currentUserPhone; } $prefilledPhoneCountryCode = old('phone_country_code', $defaultPhoneCountryCode); $prefilledPhoneNumber = old('phone_number', $defaultPhoneNumber); $pendingVisibilityOtp = is_array($pendingPublicVisibilityVerification ?? null) ? $pendingPublicVisibilityVerification : null; if ($pendingVisibilityOtp) { $prefilledPhoneCountryCode = (string) ($pendingVisibilityOtp['phone_country_code'] ?? $prefilledPhoneCountryCode); $prefilledPhoneNumber = (string) ($pendingVisibilityOtp['phone_number'] ?? $prefilledPhoneNumber); } $shouldOpenHumanVerification = $errors->has('human_verification_passed'); $shouldOpenOtpVerification = $pendingVisibilityOtp !== null || (bool) session('subscription_public_otp_step') || $errors->has('otp_code'); $shouldOpenPublicModal = $errors->has('phone_country_code') || $errors->has('phone_number') || $errors->has('otp_code') || $shouldOpenHumanVerification || $shouldOpenOtpVerification; $phoneCountryOptions = []; foreach ($phoneCountryPresets as $countryLabel => $preset) { $phoneCountryOptions[$preset['code']] = [ 'flag_class' => $preset['flag_class'], 'label' => $countryLabel, 'example' => $preset['example'], ]; } $selectedPhoneCountry = $phoneCountryOptions[$prefilledPhoneCountryCode] ?? [ 'flag_class' => $defaultPhonePreset['flag_class'], 'label' => $selectedCountry, 'example' => $defaultPhonePreset['example'], ]; $selectedPhoneExample = $selectedPhoneCountry['example'] ?? '07400 123456'; $selectedPhoneDigits = strlen(preg_replace('/\D+/', '', $selectedPhoneExample)); $otpDestinationPhone = trim((string) ($pendingVisibilityOtp['normalized_phone'] ?? '')); @endphp @push('style') @endpush @section('content')
@if(session('status'))
{{ session('status') }}
@endif

{{ $managementHeadline }}

@php $isYouTubeService = str_contains(strtolower($serviceName), 'youtube'); $isConfirmedMember = $viewerMembership !== null && ! in_array((string) $viewerMembership->status, ['cancelled', 'expired'], true); $isOwnerUser = (int) auth()->id() === (int) $subscription->owner_id || auth()->user()->hasRole('super admin'); $canSeeCredentials = ($isConfirmedMember || $isOwnerUser) && ! $isArchivedManagement; @endphp @if($canSeeCredentials) @if(! $isYouTubeService && (filled($subscription->subscription_email) || filled($subscription->subscription_password)))

Subscription Login Credentials

Use these account credentials to log in to {{ $serviceName }}
@if($isConfirmedMember) Paid & Verified @else Owner Credentials @endif
Please keep these credentials safe and do not alter the account password or profile settings.
@elseif($isYouTubeService && $isConfirmedMember)

YouTube Family Access

Invitation-based access via Google Family group

YouTube packages work through Google Family invitations. The owner will invite your Google email directly to their YouTube family group. You can chat with the owner using the chat button on the right to coordinate access.

@endif @endif @unless($isArchivedManagement)
@if($canUpdateVisibility)
@csrf @method('PATCH')
@if($subscription->is_public) Displayed publicly @else @endif @else Keep hidden Displayed publicly @endif
@endunless

{{ $visibilityDescription }} @if(! $isArchivedManagement && ! $subscription->is_public) You can adjust the status of the shared group to public by clicking the button above. @endif

...
Income from sharing: {{ number_format($incomeFromSharing, 2) }} {{ $currencySymbol }}
Subscription price per slot: {{ number_format((float) $subscription->price_per_slot, 2) }} {{ $currencySymbol }} / month
Slot sales status: {{ $slotSalesFilled }}/{{ $slotSalesTotal }} Co-subscribers
@foreach($slotRows as $row) @php $avatar = trim((string) ($row['avatar'] ?? '')); $avatarSrc = $avatar !== '' ? (preg_match('/^https?:\/\//', $avatar) ? $avatar : asset($avatar)) : ''; @endphp
@if(in_array($row['kind'], ['owner', 'member'], true)) @if($avatarSrc !== '') {{ $row['name'] }} {{ $row['initials'] ?? 'U' }} @else {{ $row['initials'] ?? 'U' }} @endif @elseif($row['kind'] === 'free') @else @endif
{{ $row['name'] }} @if(! empty($row['flag_class'])) @endif
@if($row['status'] !== '' || ! empty($row['badge']))
@if($row['status'] !== '') {{ $row['status'] }} @endif @if(! empty($row['badge'])) {{ $row['badge'] }} @endif
@endif
@endforeach
{{ $serviceName }} {{ $planName }}
{{ $accessNote }}
@if($isArchivedManagement) @if($canManageListing)
@csrf @method('PATCH')
@else @endif @elseif($chatUrl) {{ $chatLabel }} @else @endif @if($isArchivedManagement) @if($canManageListing) @else @endif @elseif($canManageListing) @else @endif

Verify invoice

Verify your invoice to increase your trust score and receive a verified invoice label, thereby attracting potential co-subscribers more quickly.

What is a valid invoice
+ Upload invoice or transaction details
@if($canUpdateVisibility && ! $subscription->is_public && ! $isArchivedManagement) @endif @if($canManageListing && ! $isArchivedManagement) @endif @if($canManageListing && $isArchivedManagement) @endif @endsection @push('script') @endpush