@php $bride = $invitation->bride ?? [ 'name' => 'Valerie Anindita, S.H', 'nickname' => 'Valerie', 'parents' => 'Bapak Hartono Wijaya & Ibu Lestari Dewi', 'photo' => $invitation->bride_photo_url ?? ($invitation->bride_photo ?? 'https://images.unsplash.com/photo-1534528741775-53994a69daeb?auto=format&fit=crop&w=600&q=80'), 'instagram' => $invitation->bride_instagram ?? '@valerieanindita', ]; $groom = $invitation->groom ?? [ 'name' => 'Nathan Alvaro, S.E', 'nickname' => 'Nathan', 'parents' => 'Bapak Gunawan Saputra & Ibu Sari Wulandari', 'photo' => $invitation->groom_photo_url ?? ($invitation->groom_photo ?? 'https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d?auto=format&fit=crop&w=600&q=80'), 'instagram' => $invitation->groom_instagram ?? '@nathanalvaro', ]; $coverPhoto = $invitation->cover_photo ?? ($invitation->hero_photo_url ?? 'https://images.unsplash.com/photo-1519741497674-611481863552?auto=format&fit=crop&w=800&q=80'); $events = $invitation->events ?? [ [ 'title' => 'Akad Nikah', 'date' => '2026-12-20', 'start_time' => '08:00', 'end_time' => '10:00', 'timezone' => 'WIB', 'venue' => 'Masjid Agung Baitul Mal', 'address' => 'Jl. Diponegoro No. 15, Surabaya', 'maps_url' => 'https://maps.google.com', ], [ 'title' => 'Resepsi Kerajaan', 'date' => '2026-12-20', 'start_time' => '11:00', 'end_time' => '14:00', 'timezone' => 'WIB', 'venue' => 'The Royal Heritage Grand Ballroom', 'address' => 'Jl. Basuki Rahmat No. 8, Surabaya', 'maps_url' => 'https://maps.google.com', ], ]; $primaryEvent = $events[0] ?? null; $eventDate = $primaryEvent['date'] ?? '2026-12-20'; $eventTime = $primaryEvent['start_time'] ?? '08:00'; $carbonDate = \Carbon\Carbon::parse($eventDate); $formattedDate = $carbonDate->locale('id')->isoFormat('dddd · D · MMMM · Y'); $galleries = $invitation->gallery ?? ($invitation->gallery_photos ?? [ 'https://images.unsplash.com/photo-1519741497674-611481863552?auto=format&fit=crop&w=600&q=80', 'https://images.unsplash.com/photo-1583939003579-730e3918a45a?auto=format&fit=crop&w=600&q=80', 'https://images.unsplash.com/photo-1511285560929-80b456fea0bc?auto=format&fit=crop&w=600&q=80', 'https://images.unsplash.com/photo-1522673607200-164d1b6ce486?auto=format&fit=crop&w=600&q=80', 'https://images.unsplash.com/photo-1519225421980-715cb0215aed?auto=format&fit=crop&w=600&q=80', 'https://images.unsplash.com/photo-1465495976277-4387d4b0b4c6?auto=format&fit=crop&w=600&q=80', ]); $rawBankAccounts = !empty($invitation->bank_accounts) ? $invitation->bank_accounts : (!empty($invitation->gifts) ? $invitation->gifts : null); if (empty($rawBankAccounts) && !empty($invitation->bank_name)) { $rawBankAccounts = [ [ 'bank_name' => $invitation->bank_name, 'bank' => $invitation->bank_name, 'account_number' => $invitation->bank_account ?? '', 'number' => $invitation->bank_account ?? '', 'account_holder' => $invitation->bank_holder ?? 'Mempelai', 'name' => $invitation->bank_holder ?? 'Mempelai', ] ]; } $gifts = !empty($rawBankAccounts) ? $rawBankAccounts : [ [ 'bank_name' => 'Bank BCA', 'bank' => 'Bank BCA', 'account_number' => '1234 5678 90', 'number' => '1234 5678 90', 'account_holder' => 'Valerie Anindita', 'name' => 'Valerie Anindita', ], [ 'bank_name' => 'Bank Mandiri', 'bank' => 'Bank Mandiri', 'account_number' => '9876 5432 10', 'number' => '9876 5432 10', 'account_holder' => 'Nathan Alvaro', 'name' => 'Nathan Alvaro', ], ]; $hasGifts = !empty($gifts) || !empty($invitation->qris_image_url) || !empty($invitation->qris_image); $stories = $invitation->stories ?? [ [ 'year' => '2019', 'title' => 'Pertama Bertemu', 'story' => 'Kami bertemu di sebuah acara kampus. Awalnya hanya saling sapa, tanpa tahu cerita ini baru dimulai.', ], [ 'year' => '2021', 'title' => 'Mulai Dekat', 'story' => 'Obrolan demi obrolan membuat kami saling mengerti, dan perlahan tumbuh rasa nyaman di antara kami.', ], [ 'year' => '2025', 'title' => 'Lamaran', 'story' => 'Dengan restu kedua keluarga, Nathan melamar Valerie dalam suasana khidmat yang penuh keharuan.', ], [ 'year' => '2026', 'title' => 'Hari Bahagia', 'story' => 'Dengan niat tulus, kami melangkah ke jenjang pernikahan suci dan memohon doa restu Anda.', ], ]; $defaultQuoteText = 'Dan di antara tanda-tanda kekuasaan-Nya ialah Dia menciptakan untukmu pasangan-pasangan dari jenismu sendiri, supaya kamu merasa tenteram kepadanya, dan dijadikan-Nya di antaramu rasa kasih dan sayang.'; $defaultQuoteSource = 'QS. Ar-Rum : 21'; $quoteText = !empty($invitation->quote) ? $invitation->quote : $defaultQuoteText; $quoteSource = !empty($invitation->quote_author) ? $invitation->quote_author : $defaultQuoteSource; $wishes = $invitation->wishes ?? [ (object)[ 'name' => 'Keluarga Besar Wijaya & Saputra', 'attendance' => 'Hadir', 'message' => 'Barakallahu lakuma wa baraka alaikuma wa jama\'a bainakuma fii khoir. Selamat Valerie & Nathan!', 'created_at' => now()->subHours(3), ], ]; $isDemoMode = request()->routeIs('template.demo*') || request()->is('demo/*') || !empty($invitation->is_demo); $liveUrl = $isDemoMode ? route('template.demo.live', $template->slug ?? 'exclusive08') : (!empty($invitation->slug) ? route('invitation.live', $invitation->slug) : '#'); if ($guestName ?? null) { $liveUrl .= (str_contains($liveUrl, '?') ? '&' : '?') . 'to=' . urlencode($guestName); } @endphp Undangan Pernikahan | {{ $bride['nickname'] ?? 'Valerie' }} & {{ $groom['nickname'] ?? 'Nathan' }} @include('templates.partials.preview-banner')
{{ substr($bride['nickname'] ?? 'V', 0, 1) }}&{{ substr($groom['nickname'] ?? 'N', 0, 1) }}

The Royal Wedding Celebration Of

Foto Mempelai

{{ $bride['nickname'] ?? 'Valerie' }}&{{ $groom['nickname'] ?? 'Nathan' }}

Kepada Yth. {{ $guestName ?? 'Bapak/Ibu/Saudara/i' }} Mohon maaf apabila ada kesalahan penulisan nama dan gelar
{{ substr($bride['nickname'] ?? 'V', 0, 1) }}&{{ substr($groom['nickname'] ?? 'N', 0, 1) }}

The Wedding Of

Foto Mempelai

{{ $bride['nickname'] ?? 'Valerie' }}&{{ $groom['nickname'] ?? 'Nathan' }}

Kepada Yth. {{ $guestName ?? 'Bapak/Ibu/Saudara/i' }} Mohon maaf apabila ada kesalahan penulisan nama dan gelar
Menuju Acara
@if(!method_exists($invitation, 'isSectionVisible') || $invitation->isSectionVisible('countdown'))

Save The Date

Menghitung Hari

00Hari
00Jam
00Menit
00Detik

{{ $formattedDate }}

@endif @if(!method_exists($invitation, 'isSectionVisible') || $invitation->isSectionVisible('quote'))

Assalamu'alaikum Warahmatullahi Wabarakatuh

“{{ $quoteText }}”

{{ $quoteSource }}

@endif @if(!method_exists($invitation, 'isSectionVisible') || $invitation->isSectionVisible('couple'))

Bismillahirrahmanirrahim

Sang Mempelai

{{ $bride['name'] }}

{{ $bride['name'] }}

Mempelai Wanita

{{ $bride['parents'] }}

@if(!empty($bride['instagram']))

{{ $bride['instagram'] }}

@endif
{{ $groom['name'] }}

{{ $groom['name'] }}

Mempelai Pria

{{ $groom['parents'] }}

@if(!empty($groom['instagram']))

{{ $groom['instagram'] }}

@endif
@endif @if(!method_exists($invitation, 'isSectionVisible') || $invitation->isSectionVisible('event'))

Rangkaian Acara

Jadwal Acara

@foreach($events as $ev) @php $evCarbon = !empty($ev['date']) ? \Carbon\Carbon::parse($ev['date']) : $carbonDate; @endphp
{{ $evCarbon->format('d') }} {{ $evCarbon->locale('id')->isoFormat('MMM Y') }}

{{ $ev['title'] ?? 'Acara' }}

Pukul {{ $ev['start_time'] ?? '08:00' }} – {{ $ev['end_time'] ?? 'Selesai' }} {{ $ev['timezone'] ?? 'WIB' }}

{{ $ev['venue'] ?? '' }}
{{ $ev['address'] ?? '' }}

@if(!empty($ev['maps_url'])) Petunjuk Lokasi @endif
@endforeach
@if(!method_exists($invitation, 'isSectionVisible') || $invitation->isSectionVisible('streaming'))

Live Streaming Kerajaan

Saksikan siaran langsung sakral pernikahan kami dari mana saja.

Tonton Live
@endif
@endif @if((!method_exists($invitation, 'isSectionVisible') || $invitation->isSectionVisible('story')) && !empty($stories) && count($stories) > 0)

Our Story

Kisah Cinta

@foreach($stories as $st)
{{ $st['year'] ?? '' }}

{{ $st['title'] ?? 'Kisah Cinta' }}

{{ $st['story'] ?? ($st['description'] ?? '') }}

@endforeach
@endif @if((!method_exists($invitation, 'isSectionVisible') || $invitation->isSectionVisible('gallery')) && !empty($galleries) && count($galleries) > 0)

Moments

Galeri Foto

@endif @if((!method_exists($invitation, 'isSectionVisible') || $invitation->isSectionVisible('gift')) && $hasGifts)

Wedding Gift

Tanda Kasih

Doa restu Anda adalah hadiah terindah bagi kami. Bila berkenan memberi tanda kasih, dapat melalui:

@endif @if((!method_exists($invitation, 'isSectionVisible') || $invitation->isSectionVisible('wishes')) && ($invitation->is_rsvp_active ?? true))

Konfirmasi

RSVP & Ucapan

@csrf
Kehadiran
@foreach($wishes as $w)
{{ $w->name }} {{ ucfirst($w->attendance ?? 'Hadir') }}

{{ $w->message }}

@endforeach
@endif
Tersalin ✓
@if(!empty($invitation->audio_url)) @endif