{{-- ====== Styles (enhanced) ====== --}} {{-- ====== Toast Handler (enhanced) ====== --}} {{-- ====== Header (subscription summary) ====== --}}
Website Templates
@if($period) Period: {{ $period }} @endif Status: {{ $badgeLbl }} Clinics: {{ (int)$countClinics }} Amount: ${{ number_format((float)$amountPaid,2) }} @if($renewOn) Renew: {{ $renewOn }} @endif
{{-- ====== Templates Grid ====== --}}
Choose Your Template
@foreach($websiteTemplates as $tpl) @php $isActive = (int)$selectedWebsiteId === (int)$tpl['id']; @endphp @endforeach
@php $schema = is_array($featuresSchema ?? null) ? $featuresSchema : []; $grouped = ['basic'=>[], 'home'=>[], 'about'=>[], 'media'=>[], 'other'=>[]]; $internalDefs = []; $externalDefs = []; foreach ($schema as $key => $def) { $def = is_array($def) ? $def : []; $type = $def['type'] ?? 'text'; if ($type === 'internal_collection') { $internalDefs[$key] = $def; continue; } if ($type === 'external_collection') { $externalDefs[$key] = $def; continue; } if (str_starts_with($key,'home_')) { $grouped['home'][$key]=$def; continue; } if (str_starts_with($key,'about_')){ $grouped['about'][$key]=$def; continue; } if (in_array($key,['about_image','images','videos','logo','hero_image'],true)) { $grouped['media'][$key]=$def; continue; } if (in_array($key,['doctor_name','email','phone'],true)) { $grouped['basic'][$key]=$def; continue; } $grouped['other'][$key]=$def; } @endphp
{{-- ====== Validation Errors Banner (above tabs) ====== --}} @php $hasFormErrors = isset($formErrorsCount) && (int)$formErrorsCount > 0; @endphp @if($hasFormErrors || ($errors->any()))
There are {{ $hasFormErrors ? $formErrorsCount : $errors->count() }} form errors
    @if($hasFormErrors) @foreach($formErrors as $error)
  • {{ $error }}
  • @endforeach @else @foreach($errors->all() as $error)
  • {{ $error }}
  • @endforeach @endif
@endif {{-- ====== Alert Banner for invalid tabs (counts) ====== --}} @if(!empty($invalidTabs))
Please review the required fields
@foreach($invalidTabs as $t => $count) {{ ucfirst($t) }}: {{ $count }} @endforeach
@if($firstInvalidTab) @endif
@endif {{-- شريط التابات --}}
{{-- Basic Tab --}}
Basic Information
@foreach($grouped['basic'] as $k => $d) @include('livewire.client.setting.addons.partials.field', ['key'=>$k, 'def'=>$d, 'values'=>$values]) @endforeach
{{-- Home Tab --}}
Home Page
@foreach($grouped['home'] as $k => $d) @include('livewire.client.setting.addons.partials.field', ['key'=>$k, 'def'=>$d, 'values'=>$values]) @endforeach
{{-- About Tab --}}
About
@foreach($grouped['about'] as $k => $d) @include('livewire.client.setting.addons.partials.field', ['key'=>$k, 'def'=>$d, 'values'=>$values]) @endforeach
{{-- Media Tab --}}
Media & Assets
@foreach($grouped['media'] as $k => $d) @include('livewire.client.setting.addons.partials.field', ['key'=>$k, 'def'=>$d, 'values'=>$values]) @endforeach
{{-- Other Tab --}}
Other Settings
@foreach($grouped['other'] as $k => $d) @include('livewire.client.setting.addons.partials.field', ['key'=>$k, 'def'=>$d, 'values'=>$values]) @endforeach
{{-- Collections cards --}} @if(count($internalDefs) || count($externalDefs))
Collections
@foreach($internalDefs as $key => $def) @php $rows = $internalCollections[$key] ?? []; @endphp
{{ $def['label'] ?? \Illuminate\Support\Str::title(str_replace(['_','-'],' ',$key)) }}
{{ count($rows) }} items • Read-only
Read-only
@endforeach @foreach($externalDefs as $key => $def) @php $rows = $externalCollections[$key] ?? []; @endphp
{{ $def['label'] ?? \Illuminate\Support\Str::title(str_replace(['_','-'],' ',$key)) }}
{{ count($rows) }} items • Editable
Editable
@endforeach
@endif
{{-- Footer --}}
{{ count($internalDefs)+count($externalDefs) }} collections available
{{-- ====== Collection Modals (محسّنة) ====== --}} @foreach(array_merge($internalDefs,$externalDefs) as $key => $def) @php $isInternal = isset($internalDefs[$key]); $rows = $isInternal ? ($internalCollections[$key] ?? []) : ($externalCollections[$key] ?? []); $fields = $def['fields'] ?? []; @endphp @endforeach
@push("js") @endpush