<?php
use App\Core\Auth;
use function App\Core\{e, logo_asset, url};

$section = $section ?? 'dashboard';
$zpanelLogo = logo_asset('zpanel');
$isTestMode = !empty(($GLOBALS['zalorox_config'] ?? [])['FEATURE_TEST_MODE']) && (($GLOBALS['zalorox_config']['APP_ENV'] ?? '') !== 'production');
$groups = [
    'GENEL' => [
        ['id' => 'dashboard', 'label' => 'Dashboard', 'href' => '/zpanel'],
        ['id' => 'settings', 'label' => 'Site Ayarlari', 'href' => '/zpanel/settings', 'aliases' => ['ayarlar']],
        ['id' => 'media', 'label' => 'Medya / Logo Yonetimi', 'href' => '/zpanel/media'],
        ['id' => 'sayfalar', 'label' => 'Sayfa Yonetimi', 'href' => '/zpanel/sayfalar', 'aliases' => ['sayfa-ekle', 'sayfa-duzenle']],
        ['id' => 'menu-footer', 'label' => 'Menu / Footer Linkleri', 'href' => '/zpanel/sayfalar?menu=1', 'aliases' => ['sayfalar']],
    ],
    'ICERIK' => [
        ['id' => 'modlar', 'label' => 'Modlar', 'href' => '/zpanel/modlar'],
        ['id' => 'mod-kategorileri', 'label' => 'Mod Kategorileri', 'href' => '/zpanel/mod-kategorileri'],
        ['id' => 'muzikler', 'label' => 'Muzikler', 'href' => '/zpanel/muzikler'],
        ['id' => 'muzik-turleri', 'label' => 'Muzik Turleri', 'href' => '/zpanel/muzik-turleri'],
        ['id' => 'artist-basvurulari', 'label' => 'Sanatci Basvurulari', 'href' => '/zpanel/artist-basvurulari'],
        ['id' => 'community', 'label' => 'Topluluk Yonetimi', 'href' => '/zpanel/community'],
        ['id' => 'yorumlar', 'label' => 'Yorumlar', 'href' => '/zpanel/yorumlar'],
    ],
    'KULLANICILAR' => [
        ['id' => 'kullanicilar', 'label' => 'Kullanicilar', 'href' => '/zpanel/kullanicilar'],
        ['id' => 'sosyal-kayitlar', 'label' => 'Arkadaslik / Engel Kayitlari', 'href' => '/zpanel/sosyal-kayitlar'],
        ['id' => 'mesaj-raporlari', 'label' => 'Mesaj Raporlari', 'href' => '/zpanel/mesaj-raporlari'],
        ['id' => 'bildirimler', 'label' => 'Bildirimler', 'href' => '/zpanel/bildirimler'],
    ],
    'ABONELIK / ODEME' => [
        ['id' => 'abonelikler', 'label' => 'Paketler', 'href' => '/zpanel/abonelikler'],
        ['id' => 'abonelikler-alt', 'label' => 'Abonelikler', 'href' => '/zpanel/abonelikler#abonelikler', 'aliases' => ['abonelikler']],
        ['id' => 'odemeler', 'label' => 'Odemeler', 'href' => '/zpanel/odemeler'],
        ['id' => 'payment-providers', 'label' => 'Sanal POS Ayarlari', 'href' => '/zpanel/payment-providers', 'aliases' => ['sanal-pos']],
    ],
    'FINANS' => [
        ['id' => 'kazanclar', 'label' => 'Kazanclar', 'href' => '/zpanel/kazanclar'],
        ['id' => 'para-cekme-talepleri', 'label' => 'Para Cekme Talepleri', 'href' => '/zpanel/para-cekme-talepleri'],
        ['id' => 'site-banka-hesaplari', 'label' => 'Site Banka Hesaplari', 'href' => '/zpanel/site-banka-hesaplari'],
        ['id' => 'finans-ayarlari', 'label' => 'Finans Ayarlari', 'href' => '/zpanel/finans-ayarlari'],
    ],
    'GUVENLIK' => [
        ['id' => 'guvenlik-botu', 'label' => 'Zalorox Shield', 'href' => '/zpanel/guvenlik-botu'],
        ['id' => 'link-denetimi', 'label' => 'Link Denetimi', 'href' => '/zpanel/link-denetimi'],
        ['id' => 'yasakli-kelimeler', 'label' => 'Yasakli Kelimeler', 'href' => '/zpanel/yasakli-kelimeler'],
        ['id' => 'domain-listeleri', 'label' => 'Domain Whitelist / Blacklist', 'href' => '/zpanel/domain-listeleri'],
        ['id' => 'muzik-telif', 'label' => 'Muzik Telif Inceleme', 'href' => '/zpanel/muzik-telif'],
        ['id' => 'guvenlik-loglari', 'label' => 'Guvenlik Loglari', 'href' => '/zpanel/link-denetimi', 'aliases' => ['link-denetimi']],
    ],
    'SISTEM' => [
        ['id' => 'dosya-yoneticisi', 'label' => 'Dosya Yoneticisi', 'href' => '/zpanel/dosya-yoneticisi'],
        ['id' => 'raporlar', 'label' => 'Raporlar', 'href' => '/zpanel/raporlar'],
        ['id' => 'loglar', 'label' => 'Admin Loglari', 'href' => '/zpanel/loglar'],
    ],
];

if ($isTestMode) {
    $groups['SISTEM'][] = ['id' => 'test-araclari', 'label' => 'Test Araclari', 'href' => '/zpanel/test-araclari'];
}

$isActive = static function (array $item) use ($section): bool {
    $ids = array_merge([(string) ($item['id'] ?? '')], $item['aliases'] ?? []);

    return in_array((string) $section, $ids, true);
};
?>
<aside class="side zpanel-sidebar" data-zpanel-sidebar>
    <div class="zpanel-sidebar-head">
        <a class="side-logo" href="<?= e(url('/zpanel')) ?>">
            <?php if ($zpanelLogo): ?>
                <img src="<?= e(url($zpanelLogo)) ?>" alt="Zalorox" loading="eager">
            <?php else: ?>
                <span>ZPanel</span>
            <?php endif; ?>
        </a>
        <button class="zpanel-menu-toggle" type="button" data-zpanel-menu-toggle aria-label="ZPanel menu" aria-expanded="false">
            <span></span><span></span><span></span>
        </button>
    </div>

    <nav class="zpanel-menu" data-zpanel-menu>
        <?php foreach ($groups as $group => $items): ?>
            <div class="zpanel-menu-group">
                <strong><?= e($group) ?></strong>
                <?php foreach ($items as $item): ?>
                    <a class="<?= $isActive($item) ? 'is-active' : '' ?>" href="<?= e(url($item['href'])) ?>"><?= e($item['label']) ?></a>
                <?php endforeach; ?>
            </div>
        <?php endforeach; ?>
    </nav>

    <div class="zpanel-quick-links">
        <a class="side-return-link" href="<?= e(url('/')) ?>">Siteye Don</a>
        <?php if (Auth::check()): ?><a class="side-studio-link" href="<?= e(url('/studyo')) ?>">Studio'ya Git</a><?php endif; ?>
    </div>
</aside>
