@extends('layouts.app') @section('title', 'Website CMS') @section('nav_website', 'bg-teal-50 text-teal-700 font-semibold') @section('content')
{{-- Header --}}

Website Content

Manage what guests see on the public-facing website.

Preview Site
@if(session('success'))
{{ session('success') }}
@endif @if($errors->any())
{{ $errors->first() }}
@endif {{-- Maintenance Mode Toggle --}}
Website Maintenance Mode @if($maintenanceOn) ON — Guests see maintenance page @else LIVE @endif

{{ $maintenanceOn ? 'Public website is hidden. Logged-in staff can still browse normally.' : 'Public website is visible to all visitors.' }}

@csrf
{{-- Tabs --}}
@foreach([ 'homepage' => 'Homepage', 'about' => 'About', 'contact' => 'Contact', 'gallery' => 'Gallery', 'rooms' => 'Room Photos', 'booking' => 'Booking Settings', 'seo' => 'SEO', ] as $key => $label) @endforeach
{{-- ── HOMEPAGE ─────────────────────────────────── --}}
@csrf
{{-- Hero Slider --}}

Hero Slider

3 slides · auto-advances every 5 seconds
@foreach([1, 2, 3] as $n)
{{ $n }} Slide {{ $n }} @if(!empty($homepage["slide_{$n}_image"])) Image uploaded @else Using gradient placeholder @endif
@if(!empty($homepage["slide_{$n}_image"])) @else
Gradient placeholder
@endif

Recommended: 1920×1080px. Leave empty to keep gradient.

@endforeach
{{-- About snippet --}}

About Snippet (Homepage)

@if(!empty($homepage['about_image'])) @endif
{{-- Amenities --}}

Amenities Section

{{-- ── ABOUT ─────────────────────────────────── --}}
@csrf
@if(!empty($about['image'])) @endif
{{-- ── CONTACT ─────────────────────────────────── --}}
@csrf
{{-- ── GALLERY ─────────────────────────────────── --}}
{{-- Upload form --}}

Upload Gallery Photo

@csrf
{{-- Gallery grid --}} @if($galleryPhotos->count())
@foreach($galleryPhotos as $photo)
{{ $photo->caption }} @if($photo->caption)
{{ $photo->caption }}
@endif
@csrf @method('DELETE')
@endforeach
@else
No gallery photos yet. Upload one above.
@endif
{{-- ── ROOM PHOTOS ─────────────────────────────── --}}
@foreach($roomTypes as $roomType) @php $typeRoomNos = \App\Models\Room::where('type', $roomType)->pluck('no')->all(); $typePhotos = collect($typeRoomNos)->flatMap(fn($no) => $roomPhotos->get($no, collect())->all()); $firstRoomNo = $typeRoomNos[0] ?? null; @endphp

{{ $roomType }}

{{ $typePhotos->count() }} photo{{ $typePhotos->count() !== 1 ? 's' : '' }}
{{-- Upload for first room of this type --}} @if($firstRoomNo)
@csrf
@endif {{-- Photos grid --}} @if($typePhotos->count())
@foreach($typePhotos as $photo)
@csrf @method('DELETE')
@endforeach
@else

No photos yet for this room type.

@endif
@endforeach
{{-- ── BOOKING SETTINGS ─────────────────────────── --}}
@csrf

Enable Online Booking

Allow guests to submit booking requests from the website.

{{-- ── SEO ─────────────────────────────────── --}}
@csrf

Recommended: 50–70 characters.

Recommended: 120–160 characters.

{{-- /x-data tabs --}}
@endsection