---
import Layout from '@layouts/Layout.astro';
import Slider from '@components/premium/Slider.astro';
import FeaturesSection from '@components/premium/FeaturesSection.astro';
import FleetShowcase from '@components/premium/FleetShowcase.astro';
import Toast from '@components/home/hero/Toast.astro';
import { authService } from '@/lib/authService';

// Получаем глобальные настройки сайта из PocketBase
const pb = authService.createClientFromRequest(Astro.request);
const siteSettings = await pb.collection('site_settings').getFirstListItem('');
const siteUrl = siteSettings.site_url;

// Получаем данные страницы из PocketBase
const pageData = await pb.collection('pages').getFirstListItem('slug = "premium-flotte"');

// Получаем слайды для премиум-флота из PocketBase
const sliderData = await pb.collection('premium_slider').getFullList({
    sort: 'order',
    filter: 'is_active = true'
});

const title = `${pageData.title} | ${pageData.meta_title}`;
const description = pageData.meta_description;
const canonicalLink = pageData.canonical_url ? pageData.canonical_url : `${siteUrl}/${pageData.slug}`;
---

<Layout {title} {description} {canonicalLink}>
    <main>
        <h1 class="sr-only">Entdecken Sie unsere Premium-Flotte in Berlin</h1>

        <!-- Слайдер -->
        <Slider slides={sliderData} />

        <!-- Преимущества (иконки чистоты, пунктуальности и т.д.) -->
        <FeaturesSection />

        <!-- Сетка автомобилей с модальным окном внутри -->
        <FleetShowcase />
    </main>

    <!-- Тосты для уведомлений -->
    <Toast />
</Layout>

<script>
    // Глобальная логика закрытия модалки и показа тостов
    // (Дублируем логику с главной, так как это новая страница)

    let successTimer = null;

    window.addEventListener('booking-success', (e) => {
        document.dispatchEvent(new CustomEvent('showToast', {
            detail: { message: e.detail?.message || 'Erfolg!', type: 'success' }
        }));

        if (successTimer) clearTimeout(successTimer);

        // Автозакрытие через 5 сек
        successTimer = window.setTimeout(() => {
            if (window.closeModal) {
                window.closeModal('fleet-booking-modal');
            }
        }, 5000);
    });

    window.addEventListener('booking-error', (e) => {
        document.dispatchEvent(new CustomEvent('showToast', {
            detail: { message: e.detail?.message || 'Fehler', type: 'error' }
        }));
    });

    // Обработка ручного закрытия из формы
    window.addEventListener('booking-close-modal', () => {
        if (window.closeModal) {
            window.closeModal('fleet-booking-modal');
        }
    });
</script>
