@php $bride = $invitation->bride ?? [ 'name' => 'Citra Maharani', 'nickname' => 'Citra', 'parents' => 'Bapak Nama Ayah & Ibu Nama Ibu', 'photo' => $invitation->bride_photo_url ?? ($invitation->bride_photo ?? asset('templates/vip/exclusive03/images/bride.jpg')), 'instagram' => $invitation->bride_instagram ?? '@citramaharani', ]; $groom = $invitation->groom ?? [ 'name' => 'Adit Pratama', 'nickname' => 'Adit', 'parents' => 'Bapak Nama Ayah & Ibu Nama Ibu', 'photo' => $invitation->groom_photo_url ?? ($invitation->groom_photo ?? asset('templates/vip/exclusive03/images/groom.jpg')), 'instagram' => $invitation->groom_instagram ?? '@aditpratama', ]; $coverPhoto = $invitation->cover_photo ?? ($invitation->hero_photo_url ?? asset('templates/vip/exclusive03/images/cover.jpg')); $events = $invitation->events ?? [ [ 'title' => 'Akad Nikah', 'date' => '2026-12-20', 'start_time' => '08:00', 'end_time' => '10:00', 'timezone' => 'WIB', 'venue' => 'Gedung Serbaguna Melati', 'address' => 'Jakarta', 'maps_url' => 'https://maps.google.com', ], [ 'title' => 'Resepsi Pernikahan', 'date' => '2026-12-20', 'start_time' => '11:00', 'end_time' => '14:00', 'timezone' => 'WIB', 'venue' => 'Gedung Serbaguna Melati', 'address' => 'Jakarta', '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 ?? [ asset('templates/vip/exclusive03/images/gallery-01.jpg'), asset('templates/vip/exclusive03/images/gallery-02.jpg'), asset('templates/vip/exclusive03/images/gallery-03.jpg'), asset('templates/vip/exclusive03/images/gallery-04.jpg'), asset('templates/vip/exclusive03/images/gallery-05.jpg'), asset('templates/vip/exclusive03/images/gallery-06.jpg'), ]); $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' => 'BCA', 'bank' => 'BCA', 'account_number' => '1234567890', 'number' => '1234567890', 'account_holder' => 'Adit Pratama', 'name' => 'Adit Pratama', ], [ 'bank_name' => 'MANDIRI', 'bank' => 'MANDIRI', 'account_number' => '9876543210', 'number' => '9876543210', 'account_holder' => 'Citra Maharani', 'name' => 'Citra Maharani', ], ]; $hasGifts = !empty($gifts) || !empty($invitation->qris_image_url) || !empty($invitation->qris_image); $stories = $invitation->stories ?? [ [ 'year' => '2018', 'title' => 'First Chapter', 'story' => 'Berawal dari sebuah pertemuan sederhana yang menjadi awal cerita panjang kami.', ], [ 'year' => '2020', 'title' => 'Growing Together', 'story' => 'Kami belajar mengenal, memahami, dan tumbuh bersama mengarungi waktu.', ], [ 'year' => '2024', 'title' => 'The Promise', 'story' => 'Dengan keyakinan yang semakin kuat, kami memutuskan melangkah bersama menuju masa depan.', ], [ 'year' => '2026', 'title' => 'Forever Starts Here', 'story' => 'Dua perjalanan dipertemukan menjadi satu ikatan suci yang penuh berkah.', ], [ 'year' => '2026', 'title' => 'Hari Bahagia', 'story' => 'Dengan memohon ridho Illahi dan restu keluarga besar, kami memulai babak baru pernikahan.', ], ]; $defaultQuoteText = 'Dan di antara tanda-tanda kekuasaan-Nya ialah Dia menciptakan untukmu pasangan hidup dari jenismu sendiri supaya kamu mendapat ketenangan hati dan dijadikan-Nya kasih sayang di antara kamu.'; $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', 'attendance' => 'hadir', 'message' => 'Selamat menempuh hidup baru Adit & Citra! Semoga menjadi keluarga yang sakinah, mawaddah, warahmah.', 'created_at' => now()->subHours(2), ], (object)[ 'name' => 'Bagus & Rina', 'attendance' => 'hadir', 'message' => 'Barakallah Adit & Citra. Semoga senantiasa rukun dan bahagia selalu hingga akhir hayat.', 'created_at' => now()->subDay(), ] ]; $isDemoMode = request()->routeIs('template.demo') || request()->is('demo/*') || !empty($invitation->is_demo); $liveUrl = $isDemoMode ? route('template.demo.live', $template->slug ?? 'exclusive03') : (!empty($invitation->slug) ? route('invitation.live', $invitation->slug) : '#'); if ($guestName ?? null) { $liveUrl .= (str_contains($liveUrl, '?') ? '&' : '?') . 'to=' . urlencode($guestName); } @endphp {{ $groom['nickname'] ?? 'Adit' }} & {{ $bride['nickname'] ?? 'Citra' }} — Janoer Koening @include('templates.partials.preview-banner')

THE WEDDING OF

{{ substr($groom['nickname'] ?? 'A', 0, 1) }} & {{ substr($bride['nickname'] ?? 'C', 0, 1) }}
{{ $groom['nickname'] ?? 'Adit' }} & {{ $bride['nickname'] ?? 'Citra' }}
{{ $groom['nickname'] ?? 'Adit' }} & {{ $bride['nickname'] ?? 'Citra' }}

{{ $carbonDate->format('d · m · Y') }}

Kepada Yth.
{{ $guestName ?? 'Bapak/Ibu/Saudara/i' }}

Janoer Koening
@if(!empty($invitation->audio_url)) @endif
@if(!method_exists($invitation, 'isSectionVisible') || $invitation->isSectionVisible('countdown'))

A MOMENT TO REMEMBER

Menuju Hari Bahagia

Dengan penuh syukur, kami mengundang Anda untuk menjadi bagian dari hari istimewa kami.

00Hari 00Jam 00Menit 00Detik
@endif @if(!method_exists($invitation, 'isSectionVisible') || $invitation->isSectionVisible('quote'))
❦

وَمِنْ آيَاتِهِ أَنْ خَلَقَ لَكُم مِّنْ أَنفُسِكُمْ أَزْوَاجًا لِّتَسْكُنُوا إِلَيْهَا وَجَعَلَ بَيْنَكُم مَّوَدَّةً وَرَحْمَةً

“{{ $quoteText }}”

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

THE BRIDE & GROOM

Two Souls, One Story

{{ $groom['name'] }} THE GROOM

{{ $groom['name'] }}

Putra dari
{{ $groom['parents'] }}

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

{{ $groom['instagram'] }}

@endif
&
{{ $bride['name'] }} THE BRIDE

{{ $bride['name'] }}

Putri dari
{{ $bride['parents'] }}

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

{{ $bride['instagram'] }}

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

SAVE THE DATE

A Day to Celebrate

@foreach($events as $index => $ev) @php $evDate = \Carbon\Carbon::parse($ev['date'] ?? $eventDate); $roman = ['Ⅰ', 'Ⅱ', 'Ⅲ', 'Ⅳ'][$index] ?? ($index + 1); @endphp
{{ $roman }} {{ strtoupper($ev['title'] ?? 'Acara') }}

{{ $evDate->locale('id')->isoFormat('dddd, D MMMM Y') }}

{{ $ev['start_time'] ?? '' }} – {{ $ev['end_time'] ?? 'selesai' }} {{ $ev['timezone'] ?? 'WIB' }}

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

@if(!empty($ev['maps_url'])) Lihat Lokasi ↗ @endif
@endforeach
@endif @if(!method_exists($invitation, 'isSectionVisible') || $invitation->isSectionVisible('story')) @if(!empty($stories) && count($stories) > 0)

OUR JOURNEY

Kisah Cinta Kami

@foreach($stories as $st)

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

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

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

WATCH US LIVE

Saksikan Hari Bahagia Kami

● LIVE STREAMING

{{ $groom['nickname'] ?? 'Adit' }} & {{ $bride['nickname'] ?? 'Citra' }}

{{ $carbonDate->locale('id')->isoFormat('dddd, D MMMM Y') }}

Tonton Live
Buka halaman Live Streaming ↗
@endif @if(!method_exists($invitation, 'isSectionVisible') || $invitation->isSectionVisible('gift')) @if($hasGifts)

A TOKEN OF LOVE

Tanda Kasih

Doa dan kehadiran Anda adalah hadiah terindah. Bila berkenan memberi tanda kasih, silakan klik tombol di bawah:

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

YOUR PRESENCE MEANS A LOT

RSVP & Ucapan

@if(session('wish_success'))
{{ session('wish_success') }}
@endif @if(session('wish_error'))
{{ session('wish_error') }}
@endif
@csrf
@foreach($wishes as $w)
{{ $w->name }} · {{ ucfirst($w->attendance ?? 'hadir') }} {{ $w->message }}
@endforeach
@endif
Tersalin ✓