<?php

namespace Database\Seeders;

use App\Models\Setting;
use Illuminate\Database\Seeder;

class SettingSeeder extends Seeder
{
    /**
     * Run the database seeds.
     */
    public function run(): void
    {
        $settings = [
            // ==========================================
            // GENEL AYARLAR (general)
            // ==========================================
            [
                'key' => 'site_name',
                'value' => 'Citrus Platform',
                'type' => 'string',
                'group' => 'general',
                'label' => 'Site Adı',
                'description' => 'Web sitesinin başlığı',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'site_description',
                'value' => 'Modern ve güvenilir web platformu',
                'type' => 'text',
                'group' => 'general',
                'label' => 'Site Açıklaması',
                'description' => 'Web sitesinin kısa açıklaması',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'site_keywords',
                'value' => json_encode(['citrus', 'platform', 'web', 'modern']),
                'type' => 'tags_input',
                'group' => 'general',
                'label' => 'Site Anahtar Kelimeleri',
                'description' => 'SEO için anahtar kelimeler (virgülle ayrılmış)',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'site_logo',
                'value' => '',
                'type' => 'file',
                'group' => 'general',
                'label' => 'Site Logosu',
                'description' => 'Üst kısımda görünecek logo dosyası',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'site_favicon',
                'value' => '',
                'type' => 'file',
                'group' => 'general',
                'label' => 'Site Favicon',
                'description' => 'Tarayıcı sekmesinde görünecek favicon',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'site_version',
                'value' => '1.0.0',
                'type' => 'string',
                'group' => 'general',
                'label' => 'Site Versiyonu',
                'description' => 'Uygulama versiyon numarası',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'site_url',
                'value' => 'https://citrus.truncgil.com',
                'type' => 'string',
                'group' => 'general',
                'label' => 'Site URL',
                'description' => 'Web sitesinin tam adresi',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'default_language',
                'value' => 'tr',
                'type' => 'toggle_buttons',
                'group' => 'general',
                'label' => 'Varsayılan Dil',
                'description' => 'Site varsayılan dili',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'available_languages',
                'value' => json_encode(['tr', 'en']),
                'type' => 'checkbox_list',
                'group' => 'general',
                'label' => 'Aktif Diller',
                'description' => 'Sitede kullanılacak diller',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'maintenance_mode',
                'value' => '0',
                'type' => 'boolean',
                'group' => 'general',
                'label' => 'Bakım Modu',
                'description' => 'Site bakım modunda mı?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'maintenance_message',
                'value' => '<h1>Site Bakımda</h1><p>Yakında döneceğiz...</p>',
                'type' => 'rich_editor',
                'group' => 'general',
                'label' => 'Bakım Modu Mesajı',
                'description' => 'Bakım modundayken gösterilecek mesaj',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'copyright_text',
                'value' => '© 2024 Citrus Platform. Tüm hakları saklıdır.',
                'type' => 'text',
                'group' => 'general',
                'label' => 'Telif Hakkı Metni',
                'description' => 'Alt kısımda görünecek telif hakkı metni',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'contact_phone',
                'value' => '+90 555 555 55 55',
                'type' => 'string',
                'group' => 'general',
                'label' => 'İletişim Telefonu',
                'description' => 'İletişim telefon numarası',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'contact_email',
                'value' => 'info@citrus.truncgil.com',
                'type' => 'string',
                'group' => 'general',
                'label' => 'İletişim E-posta',
                'description' => 'İletişim e-posta adresi',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'contact_address',
                'value' => 'İstanbul, Türkiye',
                'type' => 'text',
                'group' => 'general',
                'label' => 'İletişim Adresi',
                'description' => 'İletişim fiziksel adresi',
                'is_public' => true,
                'is_active' => true,
            ],

            // ==========================================
            // TEMA VE RENK AYARLARI (theme)
            // ==========================================
            [
                'key' => 'theme_primary_color',
                'value' => '#3b82f6',
                'type' => 'color_picker',
                'group' => 'theme',
                'label' => 'Primary Color',
                'description' => 'Ana tema rengi (Tailwind/Bootstrap primary)',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'theme_secondary_color',
                'value' => '#6b7280',
                'type' => 'color_picker',
                'group' => 'theme',
                'label' => 'Secondary Color',
                'description' => 'İkincil tema rengi',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'theme_success_color',
                'value' => '#10b981',
                'type' => 'color_picker',
                'group' => 'theme',
                'label' => 'Success Color',
                'description' => 'Başarı mesajları için renk',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'theme_danger_color',
                'value' => '#ef4444',
                'type' => 'color_picker',
                'group' => 'theme',
                'label' => 'Danger Color',
                'description' => 'Hata ve uyarı mesajları için renk',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'theme_warning_color',
                'value' => '#f59e0b',
                'type' => 'color_picker',
                'group' => 'theme',
                'label' => 'Warning Color',
                'description' => 'Uyarı mesajları için renk',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'theme_info_color',
                'value' => '#06b6d4',
                'type' => 'color_picker',
                'group' => 'theme',
                'label' => 'Info Color',
                'description' => 'Bilgi mesajları için renk',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'theme_light_color',
                'value' => '#f9fafb',
                'type' => 'color_picker',
                'group' => 'theme',
                'label' => 'Light Color',
                'description' => 'Açık renk',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'theme_dark_color',
                'value' => '#1f2937',
                'type' => 'color_picker',
                'group' => 'theme',
                'label' => 'Dark Color',
                'description' => 'Koyu renk',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'theme_body_background',
                'value' => '#ffffff',
                'type' => 'color_picker',
                'group' => 'theme',
                'label' => 'Body Background Color',
                'description' => 'Sayfa arka plan rengi',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'theme_text_color',
                'value' => '#111827',
                'type' => 'color_picker',
                'group' => 'theme',
                'label' => 'Text Color',
                'description' => 'Varsayılan metin rengi',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'theme_mode',
                'value' => 'light',
                'type' => 'toggle_buttons',
                'group' => 'theme',
                'label' => 'Tema Modu',
                'description' => 'Açık, koyu veya otomatik tema',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'theme_border_radius',
                'value' => '8',
                'type' => 'slider',
                'group' => 'theme',
                'label' => 'Border Radius (px)',
                'description' => 'Öğelerin köşe yuvarlaklığı (0-20 arası)',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'custom_css',
                'value' => '/* Özel CSS kodlarınızı buraya ekleyin */',
                'type' => 'code_editor',
                'group' => 'theme',
                'label' => 'Özel CSS',
                'description' => 'Site genelinde uygulanacak özel CSS kodları',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'custom_js',
                'value' => '// Özel JavaScript kodlarınızı buraya ekleyin',
                'type' => 'code_editor',
                'group' => 'theme',
                'label' => 'Özel JavaScript',
                'description' => 'Site genelinde uygulanacak özel JavaScript kodları',
                'is_public' => false,
                'is_active' => true,
            ],

            // ==========================================
            // LOKALİZASYON AYARLARI (localization)
            // ==========================================
            [
                'key' => 'timezone',
                'value' => 'Europe/Istanbul',
                'type' => 'string',
                'group' => 'localization',
                'label' => 'Zaman Dilimi',
                'description' => 'Sunucu zaman dilimi (Europe/Istanbul, UTC, vb.)',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'date_format',
                'value' => 'd/m/Y',
                'type' => 'radio',
                'group' => 'localization',
                'label' => 'Tarih Formatı',
                'description' => 'Tarih gösterim formatı',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'time_format',
                'value' => '24',
                'type' => 'toggle_buttons',
                'group' => 'localization',
                'label' => 'Saat Formatı',
                'description' => '12 veya 24 saatlik format',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'currency',
                'value' => 'TRY',
                'type' => 'string',
                'group' => 'localization',
                'label' => 'Para Birimi',
                'description' => 'Varsayılan para birimi kodu (TRY, USD, EUR)',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'currency_symbol',
                'value' => '₺',
                'type' => 'string',
                'group' => 'localization',
                'label' => 'Para Birimi Sembolü',
                'description' => 'Para birimi sembolü',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'currency_position',
                'value' => 'after',
                'type' => 'radio',
                'group' => 'localization',
                'label' => 'Para Birimi Konumu',
                'description' => 'Sembolün fiyatın önünde mi arkasında mı olacağı',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'thousands_separator',
                'value' => '.',
                'type' => 'string',
                'group' => 'localization',
                'label' => 'Binlik Ayırıcı',
                'description' => 'Sayılarda binlik ayırıcı karakter',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'decimal_separator',
                'value' => ',',
                'type' => 'string',
                'group' => 'localization',
                'label' => 'Ondalık Ayırıcı',
                'description' => 'Sayılarda ondalık ayırıcı karakter',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'decimal_places',
                'value' => '2',
                'type' => 'integer',
                'group' => 'localization',
                'label' => 'Ondalık Basamak Sayısı',
                'description' => 'Para birimi için ondalık basamak sayısı',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'week_start_day',
                'value' => 'Monday',
                'type' => 'radio',
                'group' => 'localization',
                'label' => 'Haftanın İlk Günü',
                'description' => 'Haftanın başlangıç günü',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'calendar_type',
                'value' => 'Gregorian',
                'type' => 'toggle_buttons',
                'group' => 'localization',
                'label' => 'Takvim Tipi',
                'description' => 'Gregorian veya Miladi takvim',
                'is_public' => true,
                'is_active' => true,
            ],

            // ==========================================
            // E-POSTA AYARLARI (email)
            // ==========================================
            [
                'key' => 'mail_driver',
                'value' => 'smtp',
                'type' => 'radio',
                'group' => 'email',
                'label' => 'Mail Driver',
                'description' => 'E-posta gönderim yöntemi',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'mail_host',
                'value' => 'smtp.gmail.com',
                'type' => 'string',
                'group' => 'email',
                'label' => 'SMTP Host',
                'description' => 'SMTP sunucu adresi',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'mail_port',
                'value' => '587',
                'type' => 'integer',
                'group' => 'email',
                'label' => 'SMTP Port',
                'description' => 'SMTP port numarası',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'mail_username',
                'value' => '',
                'type' => 'string',
                'group' => 'email',
                'label' => 'SMTP Kullanıcı Adı',
                'description' => 'SMTP kullanıcı adı',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'mail_password',
                'value' => '',
                'type' => 'string',
                'group' => 'email',
                'label' => 'SMTP Şifre',
                'description' => 'SMTP şifresi',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'mail_encryption',
                'value' => 'tls',
                'type' => 'toggle_buttons',
                'group' => 'email',
                'label' => 'SMTP Şifreleme',
                'description' => 'TLS veya SSL şifreleme',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'mail_from_address',
                'value' => 'noreply@citrus.truncgil.com',
                'type' => 'string',
                'group' => 'email',
                'label' => 'Gönderen E-posta Adresi',
                'description' => 'Sistem e-postalarının gönderileceği adres',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'mail_from_name',
                'value' => 'Citrus Platform',
                'type' => 'string',
                'group' => 'email',
                'label' => 'Gönderen İsim',
                'description' => 'Sistem e-postalarının gönderen adı',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'mail_notifications_enabled',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'email',
                'label' => 'E-posta Bildirimleri Aktif',
                'description' => 'E-posta bildirimleri gönderilsin mi?',
                'is_public' => false,
                'is_active' => true,
            ],
            
            // ==========================================
            // SOSYAL MEDYA AYARLARI (social)
            // ==========================================
            [
                'key' => 'social_links',
                'value' => json_encode([
                    'facebook' => 'https://facebook.com/',
                    'twitter' => 'https://twitter.com/',
                    'instagram' => 'https://instagram.com/',
                    'linkedin' => 'https://linkedin.com/',
                    'youtube' => '',
                    'tiktok' => '',
                    'github' => '',
                    'discord' => '',
                ]),
                'type' => 'key_value',
                'group' => 'social',
                'label' => 'Sosyal Medya Linkleri',
                'description' => 'Sosyal medya platformlarının URL\'leri',
                'is_public' => true,
                'is_active' => true,
            ],
            
            // ==========================================
            // FRONTEND LAYOUT AYARLARI (layout)
            // ==========================================
            [
                'key' => 'default_meta_title',
                'value' => 'Truncgil Citrus - Modern Web Çözümleri',
                'type' => 'string',
                'group' => 'layout',
                'label' => 'Varsayılan Meta Başlık',
                'description' => 'Sayfalarda özel meta başlık yoksa kullanılacak',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'default_meta_description',
                'value' => 'Yenilikçi teknoloji çözümleri ile geleceği şekillendiriyoruz',
                'type' => 'text',
                'group' => 'layout',
                'label' => 'Varsayılan Meta Açıklama',
                'description' => 'Sayfalarda özel meta açıklama yoksa kullanılacak',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'default_meta_image',
                'value' => 'assets/img/demos/f1.png',
                'type' => 'string',
                'group' => 'layout',
                'label' => 'Varsayılan Meta Görsel',
                'description' => 'Open Graph için varsayılan görsel',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'logo_path',
                'value' => 'assets/img/truncgil-yatay.svg',
                'type' => 'string',
                'group' => 'layout',
                'label' => 'Logo Yolu',
                'description' => 'Header\'da görünecek logo',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'favicon_path',
                'value' => 'assets/img/favicon.ico',
                'type' => 'string',
                'group' => 'layout',
                'label' => 'Favicon Yolu',
                'description' => 'Tarayıcı favicon',
                'is_public' => true,
                'is_active' => true,
            ],

            // ==========================================
            // SEO AYARLARI (seo)
            // ==========================================
            [
                'key' => 'seo_meta_title',
                'value' => 'Citrus Platform - Modern Web Platformu',
                'type' => 'string',
                'group' => 'seo',
                'label' => 'SEO Meta Başlık',
                'description' => 'Varsayılan SEO meta başlığı',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'seo_meta_description',
                'value' => 'Modern ve güvenilir web platformu',
                'type' => 'text',
                'group' => 'seo',
                'label' => 'SEO Meta Açıklama',
                'description' => 'Varsayılan SEO meta açıklaması',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'seo_meta_keywords',
                'value' => json_encode(['citrus', 'platform', 'web', 'modern', 'laravel']),
                'type' => 'tags_input',
                'group' => 'seo',
                'label' => 'SEO Meta Anahtar Kelimeler',
                'description' => 'Varsayılan SEO meta anahtar kelimeler',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'seo_google_analytics_id',
                'value' => '',
                'type' => 'string',
                'group' => 'seo',
                'label' => 'Google Analytics ID',
                'description' => 'Google Analytics takip kodu',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'seo_google_tag_manager_id',
                'value' => '',
                'type' => 'string',
                'group' => 'seo',
                'label' => 'Google Tag Manager ID',
                'description' => 'Google Tag Manager takip kodu',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'seo_bing_webmaster',
                'value' => '',
                'type' => 'string',
                'group' => 'seo',
                'label' => 'Bing Webmaster Tools',
                'description' => 'Bing Webmaster doğrulama kodu',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'seo_robots_txt',
                'value' => "User-agent: *\nAllow: /",
                'type' => 'code_editor',
                'group' => 'seo',
                'label' => 'Robots.txt İçeriği',
                'description' => 'Robots.txt dosyası içeriği',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'seo_sitemap_url',
                'value' => '/sitemap.xml',
                'type' => 'string',
                'group' => 'seo',
                'label' => 'Sitemap URL',
                'description' => 'XML sitemap dosyasının adresi',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'seo_canonical_url',
                'value' => 'https://citrus.truncgil.com',
                'type' => 'string',
                'group' => 'seo',
                'label' => 'Canonical URL',
                'description' => 'Varsayılan canonical URL',
                'is_public' => true,
                'is_active' => true,
            ],
            [
                'key' => 'seo_opengraph_enabled',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'seo',
                'label' => 'Open Graph Etiketleri',
                'description' => 'Open Graph meta etiketleri aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],

            // ==========================================
            // GÜVENLİK AYARLARI (security)
            // ==========================================
            [
                'key' => 'security_max_login_attempts',
                'value' => '5',
                'type' => 'slider',
                'group' => 'security',
                'label' => 'Maksimum Giriş Denemesi',
                'description' => 'Kullanıcı hesabının kilitlenmesi için maksimum giriş denemesi (3-10 arası)',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'security_session_timeout',
                'value' => '120',
                'type' => 'integer',
                'group' => 'security',
                'label' => 'Oturum Zaman Aşımı (dakika)',
                'description' => 'Kullanıcı oturumunun zaman aşımına uğrayacağı süre',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'security_2fa_enabled',
                'value' => '0',
                'type' => 'boolean',
                'group' => 'security',
                'label' => 'İki Faktörlü Doğrulama',
                'description' => 'İki faktörlü doğrulama aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'security_password_min_length',
                'value' => '8',
                'type' => 'slider',
                'group' => 'security',
                'label' => 'Şifre Minimum Uzunluk',
                'description' => 'Şifre için minimum karakter sayısı (6-20 arası)',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'security_password_require_uppercase',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'security',
                'label' => 'Şifrede Büyük Harf Zorunlu',
                'description' => 'Şifrede en az bir büyük harf olmalı mı?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'security_password_require_lowercase',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'security',
                'label' => 'Şifrede Küçük Harf Zorunlu',
                'description' => 'Şifrede en az bir küçük harf olmalı mı?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'security_password_require_numbers',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'security',
                'label' => 'Şifrede Rakam Zorunlu',
                'description' => 'Şifrede en az bir rakam olmalı mı?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'security_password_require_symbols',
                'value' => '0',
                'type' => 'boolean',
                'group' => 'security',
                'label' => 'Şifrede Özel Karakter Zorunlu',
                'description' => 'Şifrede en az bir özel karakter olmalı mı?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'security_api_rate_limit',
                'value' => '60',
                'type' => 'integer',
                'group' => 'security',
                'label' => 'API Rate Limit',
                'description' => 'Dakikada maksimum API isteği sayısı',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'security_ip_whitelist',
                'value' => json_encode([]),
                'type' => 'tags_input',
                'group' => 'security',
                'label' => 'IP Whitelist',
                'description' => 'Yönetim paneline erişebilecek IP adresleri (boş = tüm IP\'ler)',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'security_csrf_protection',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'security',
                'label' => 'CSRF Koruması',
                'description' => 'CSRF koruması aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],

            // ==========================================
            // DOSYA YÜKLEME AYARLARI (upload)
            // ==========================================
            [
                'key' => 'upload_max_size',
                'value' => '10',
                'type' => 'slider',
                'group' => 'upload',
                'label' => 'Maksimum Yükleme Boyutu (MB)',
                'description' => 'Dosya yükleme için maksimum boyut (1-100 MB arası)',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'upload_allowed_image_types',
                'value' => json_encode(['jpg', 'jpeg', 'png', 'gif', 'webp', 'svg']),
                'type' => 'tags_input',
                'group' => 'upload',
                'label' => 'İzin Verilen Resim Formatları',
                'description' => 'Yüklenebilecek resim dosya türleri',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'upload_allowed_document_types',
                'value' => json_encode(['pdf', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'txt']),
                'type' => 'tags_input',
                'group' => 'upload',
                'label' => 'İzin Verilen Belge Formatları',
                'description' => 'Yüklenebilecek belge dosya türleri',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'upload_allowed_video_types',
                'value' => json_encode(['mp4', 'avi', 'mov', 'wmv', 'flv', 'webm']),
                'type' => 'tags_input',
                'group' => 'upload',
                'label' => 'İzin Verilen Video Formatları',
                'description' => 'Yüklenebilecek video dosya türleri',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'upload_image_quality',
                'value' => '85',
                'type' => 'slider',
                'group' => 'upload',
                'label' => 'Resim Kalitesi (%)',
                'description' => 'Yüklenen resimlerin sıkıştırma kalitesi (1-100 arası)',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'upload_storage_driver',
                'value' => 'local',
                'type' => 'radio',
                'group' => 'upload',
                'label' => 'Storage Driver',
                'description' => 'Dosya saklama yöntemi',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'upload_cdn_url',
                'value' => '',
                'type' => 'string',
                'group' => 'upload',
                'label' => 'CDN URL',
                'description' => 'CDN sunucusu adresi (boş bırakılabilir)',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'upload_folder_structure',
                'value' => 'date',
                'type' => 'radio',
                'group' => 'upload',
                'label' => 'Klasör Yapısı',
                'description' => 'Dosyaların saklanma klasör yapısı',
                'is_public' => false,
                'is_active' => true,
            ],

            // ==========================================
            // BİLDİRİM AYARLARI (notification)
            // ==========================================
            [
                'key' => 'notification_email_enabled',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'notification',
                'label' => 'E-posta Bildirimleri',
                'description' => 'E-posta bildirimleri aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'notification_sms_enabled',
                'value' => '0',
                'type' => 'boolean',
                'group' => 'notification',
                'label' => 'SMS Bildirimleri',
                'description' => 'SMS bildirimleri aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'notification_push_enabled',
                'value' => '0',
                'type' => 'boolean',
                'group' => 'notification',
                'label' => 'Push Bildirimleri',
                'description' => 'Push bildirimleri aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'notification_in_app_enabled',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'notification',
                'label' => 'İn-App Bildirimleri',
                'description' => 'Uygulama içi bildirimler aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'notification_channels',
                'value' => json_encode(['email', 'in_app']),
                'type' => 'checkbox_list',
                'group' => 'notification',
                'label' => 'Aktif Bildirim Kanalları',
                'description' => 'Aktif olacak bildirim kanalları',
                'is_public' => false,
                'is_active' => true,
            ],

            // ==========================================
            // CACHE AYARLARI (cache)
            // ==========================================
            [
                'key' => 'cache_driver',
                'value' => 'file',
                'type' => 'radio',
                'group' => 'cache',
                'label' => 'Cache Driver',
                'description' => 'Cache saklama yöntemi',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'cache_duration',
                'value' => '60',
                'type' => 'integer',
                'group' => 'cache',
                'label' => 'Cache Süresi (dakika)',
                'description' => 'Cache\'in geçerlilik süresi',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'cache_enabled',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'cache',
                'label' => 'Cache Aktif',
                'description' => 'Cache sistemi aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'cache_prefix',
                'value' => 'citrus_',
                'type' => 'string',
                'group' => 'cache',
                'label' => 'Cache Prefix',
                'description' => 'Cache anahtarları için önek',
                'is_public' => false,
                'is_active' => true,
            ],

            // ==========================================
            // ÖDEME AYARLARI (payment)
            // ==========================================
            [
                'key' => 'payment_default_gateway',
                'value' => 'stripe',
                'type' => 'radio',
                'group' => 'payment',
                'label' => 'Varsayılan Ödeme Gateway\'i',
                'description' => 'Varsayılan ödeme servisi',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'payment_test_mode',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'payment',
                'label' => 'Test Modu',
                'description' => 'Ödeme test modunda mı?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'payment_currency',
                'value' => 'TRY',
                'type' => 'string',
                'group' => 'payment',
                'label' => 'Ödeme Para Birimi',
                'description' => 'Ödemeler için para birimi',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'payment_tax_rate',
                'value' => '20',
                'type' => 'float',
                'group' => 'payment',
                'label' => 'Vergi Oranı (%)',
                'description' => 'Varsayılan vergi oranı',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'payment_methods',
                'value' => json_encode(['credit_card', 'bank_transfer']),
                'type' => 'checkbox_list',
                'group' => 'payment',
                'label' => 'Ödeme Yöntemleri',
                'description' => 'Aktif ödeme yöntemleri',
                'is_public' => false,
                'is_active' => true,
            ],

            // ==========================================
            // API AYARLARI (api)
            // ==========================================
            [
                'key' => 'api_rate_limit',
                'value' => '60',
                'type' => 'integer',
                'group' => 'api',
                'label' => 'API Rate Limit',
                'description' => 'Dakikada maksimum API isteği sayısı',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'api_auth_method',
                'value' => 'jwt',
                'type' => 'radio',
                'group' => 'api',
                'label' => 'API Kimlik Doğrulama Yöntemi',
                'description' => 'API için kimlik doğrulama yöntemi',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'api_key_expiration',
                'value' => '30',
                'type' => 'integer',
                'group' => 'api',
                'label' => 'API Key Geçerlilik Süresi (gün)',
                'description' => 'API anahtarının geçerlilik süresi',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'api_versioning_enabled',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'api',
                'label' => 'API Versiyonlama',
                'description' => 'API versiyonlama aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],

            // ==========================================
            // LOGGING AYARLARI (logging)
            // ==========================================
            [
                'key' => 'log_level',
                'value' => 'info',
                'type' => 'radio',
                'group' => 'logging',
                'label' => 'Log Seviyesi',
                'description' => 'Kaydedilecek log seviyesi',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'log_driver',
                'value' => 'daily',
                'type' => 'radio',
                'group' => 'logging',
                'label' => 'Log Driver',
                'description' => 'Log saklama yöntemi',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'log_retention_days',
                'value' => '30',
                'type' => 'integer',
                'group' => 'logging',
                'label' => 'Log Saklama Süresi (gün)',
                'description' => 'Log dosyalarının saklanma süresi',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'log_error_reporting',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'logging',
                'label' => 'Hata Raporlama',
                'description' => 'Hata raporlama aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],

            // ==========================================
            // PERFORMANS AYARLARI (performance)
            // ==========================================
            [
                'key' => 'performance_query_cache_enabled',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'performance',
                'label' => 'Query Cache Aktif',
                'description' => 'Veritabanı sorgu cache\'i aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'performance_asset_minification',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'performance',
                'label' => 'Asset Minification',
                'description' => 'CSS/JS dosyalarının küçültülmesi aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'performance_cdn_enabled',
                'value' => '0',
                'type' => 'boolean',
                'group' => 'performance',
                'label' => 'CDN Aktif',
                'description' => 'CDN kullanımı aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'performance_lazy_loading_enabled',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'performance',
                'label' => 'Lazy Loading Aktif',
                'description' => 'Resimler için lazy loading aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'performance_image_optimization',
                'value' => '1',
                'type' => 'boolean',
                'group' => 'performance',
                'label' => 'Resim Optimizasyonu',
                'description' => 'Otomatik resim optimizasyonu aktif mi?',
                'is_public' => false,
                'is_active' => true,
            ],

            // ==========================================
            // ENTEGRASYON AYARLARI (integration)
            // ==========================================
            [
                'key' => 'integration_recaptcha_site_key',
                'value' => '',
                'type' => 'string',
                'group' => 'integration',
                'label' => 'reCAPTCHA Site Key',
                'description' => 'Google reCAPTCHA site anahtarı',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'integration_recaptcha_secret_key',
                'value' => '',
                'type' => 'string',
                'group' => 'integration',
                'label' => 'reCAPTCHA Secret Key',
                'description' => 'Google reCAPTCHA gizli anahtarı',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'integration_google_maps_api_key',
                'value' => '',
                'type' => 'string',
                'group' => 'integration',
                'label' => 'Google Maps API Key',
                'description' => 'Google Maps API anahtarı',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'integration_stripe_public_key',
                'value' => '',
                'type' => 'string',
                'group' => 'integration',
                'label' => 'Stripe Public Key',
                'description' => 'Stripe public anahtarı',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'integration_stripe_secret_key',
                'value' => '',
                'type' => 'string',
                'group' => 'integration',
                'label' => 'Stripe Secret Key',
                'description' => 'Stripe gizli anahtarı',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'integration_paypal_client_id',
                'value' => '',
                'type' => 'string',
                'group' => 'integration',
                'label' => 'PayPal Client ID',
                'description' => 'PayPal client ID',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'integration_paypal_secret',
                'value' => '',
                'type' => 'string',
                'group' => 'integration',
                'label' => 'PayPal Secret',
                'description' => 'PayPal secret anahtarı',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'integration_aws_access_key',
                'value' => '',
                'type' => 'string',
                'group' => 'integration',
                'label' => 'AWS Access Key',
                'description' => 'Amazon Web Services erişim anahtarı',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'integration_aws_secret_key',
                'value' => '',
                'type' => 'string',
                'group' => 'integration',
                'label' => 'AWS Secret Key',
                'description' => 'Amazon Web Services gizli anahtarı',
                'is_public' => false,
                'is_active' => true,
            ],
            [
                'key' => 'integration_aws_region',
                'value' => 'us-east-1',
                'type' => 'string',
                'group' => 'integration',
                'label' => 'AWS Region',
                'description' => 'Amazon Web Services bölgesi',
                'is_public' => false,
                'is_active' => true,
            ],
        ];

        foreach ($settings as $setting) {
            Setting::updateOrCreate(
                ['key' => $setting['key']],
                $setting
            );
        }
    }
}
