@extends('agency.layouts.app') @section('title', 'Site Yönetimi') @section('page_title', 'Site Yönetimi') @push('styles') @endpush @php $pageMeta = [ 'home' => ['Ana Sayfa', 'fa-house'], 'contact' => ['İletişim', 'fa-envelope-open-text'], 'tours' => ['Tur Listesi', 'fa-compass'], 'tour_detail' => ['Tur Detayı', 'fa-map-location-dot'], 'custom' => ['Özel Sayfa', 'fa-file-lines'], ]; $sectionCount = $site->pages->sum(fn ($page) => $page->sections->count()); // preserveKeys: bölüm tipi anahtarı (hero, tour_showcase…) önizleme adresinde gerekiyor $library = collect($availableSections)->groupBy(fn ($definition) => $definition['category'] ?? 'Diğer', true); $doneCount = collect($checklist)->where('ok', true)->count(); @endphp @section('content') @if($site->isPublished()) @endif {{-- Sayaç şeridi: modülün tek bakışta özeti --}}
Sayfa {{ $site->pages->count() }} {{ $site->pages->where('show_in_nav', true)->count() }} tanesi menüde
Bölüm {{ $sectionCount }} {{ count($availableSections) }} bölüm tipi kullanılabilir
Bekleyen Talep {{ $newSubmissionCount }} Form gönderimleri Açık Sohbet {{ $studio['chatCount'] }} Ziyaretçi canlı desteği
@if($hasDraftChanges && $site->isPublished())
Yayınlanmamış değişiklikleriniz var. Taslakta yaptığınız düzenlemeleri ziyaretçilerin görmesi için yukarıdaki Değişiklikleri Yayınla düğmesine basın.
@endif
{{-- ── Sol: sayfalar + bölüm kütüphanesi ── --}}
@foreach($site->pages as $sitePage) @php [$typeLabel, $typeIcon] = $pageMeta[$sitePage->type] ?? ['Sayfa', 'fa-file']; $previewKey = $sitePage->type === 'custom' ? $sitePage->slug : $sitePage->type; @endphp
{{ $sitePage->title }} {{ $typeLabel }} @unless($sitePage->is_active) Pasif @endunless {{ $sitePage->type === 'home' ? '/' : '/' . ($sitePage->slug ?? $sitePage->type) }} · {{ $sitePage->sections->count() }} bölüm @unless($sitePage->show_in_nav) · menüde gizli @endunless
@endforeach
Tur listesi ve tur detay sayfaları otomatik oluşur; içerikleri tur kayıtlarınızdan gelir. Düzenlemeleriniz taslakta birikir, yayınlayana kadar ziyaretçiler eski hâli görür.
Bölüm Kütüphanesi örneğini görmek için tıklayın
@foreach($library as $category => $definitions)
{{ $category }}
@foreach($definitions as $key => $definition) @endforeach
@endforeach
Kütüphane, acentenizin ürün tipi yetkilerine göre filtrelenir; yetkisi olmayan bölümler hiç listelenmez.
{{-- ── Sağ: site sağlığı + yayın geçmişi ── --}}
Site Sağlığı {{ $doneCount }}/{{ count($checklist) }}
@foreach($checklist as $item)
{{ $item['label'] }} @unless($item['ok']) {{ $item['hint'] }} @endunless @unless($item['ok']) {{ $item['cta'] }} @endunless
@endforeach
Yayın Geçmişi
@if($revisions->isEmpty())
Henüz yayın yapılmadı Siteniz hazır olduğunda "Yayına Al" düğmesiyle ziyaretçilere açın. Her yayın, o anki içeriğin tam bir kopyasını saklar.
@else
@foreach($revisions as $revision) @php $isLiveRevision = $site->published_revision_id === $revision->id; @endphp
{{ $revision->change_summary ?: 'Yayın' }} @if($isLiveRevision)Yayında@endif {{ $revision->created_at->format('d.m.Y H:i') }} · {{ $revision->created_at->diffForHumans() }}
@endforeach
@endif
{{-- Bölüm örneği: kütüphaneden seçilen bölüm gerçek şablonla çizilir --}}
@endsection @push('scripts') @include('agency.site.partials._section-sources') @endpush