<?php

namespace App\Command;

use App\Entity\Tenant\Author;
use App\Entity\Tenant\Category;
use App\Entity\Tenant\Menu;
use App\Entity\Tenant\MenuItem;
use App\Entity\Tenant\ModuleConfig;
use App\Entity\Tenant\News;
use App\Entity\Tenant\Page;
use App\Entity\Tenant\Poll;
use App\Entity\Tenant\PollOption;
use App\Entity\Tenant\Setting;
use App\Entity\Tenant\Tag;
use Doctrine\ORM\EntityManagerInterface;
use Symfony\Component\Console\Attribute\AsCommand;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
use Symfony\Component\Console\Style\SymfonyStyle;

#[AsCommand(name: 'app:seed-data', description: 'Seeds demo data for a fresh installation')]
class SeedDataCommand extends Command
{
    public function __construct(
        private readonly EntityManagerInterface $entityManager,
    ) {
        parent::__construct();
    }

    protected function execute(InputInterface $input, OutputInterface $output): int
    {
        $io = new SymfonyStyle($input, $output);
        $em = $this->entityManager;

        // ===================== CATEGORIES =====================
        $cats = [];
        $catData = [
            ['Gündem', 'gundem', '#ef4444', 'fas fa-newspaper'],
            ['Ekonomi', 'ekonomi', '#10b981', 'fas fa-chart-line'],
            ['Dünya', 'dunya', '#3b82f6', 'fas fa-globe'],
            ['Spor', 'spor', '#f59e0b', 'fas fa-futbol'],
            ['Teknoloji', 'teknoloji', '#8b5cf6', 'fas fa-microchip'],
            ['Sağlık', 'saglik', '#ec4899', 'fas fa-heartbeat'],
            ['Kültür-Sanat', 'kultur-sanat', '#06b6d4', 'fas fa-palette'],
            ['Eğitim', 'egitim', '#84cc16', 'fas fa-graduation-cap'],
        ];

        foreach ($catData as $i => $d) {
            $cat = new Category();
            $cat->setTitle($d[0])->setSlug($d[1])->setColor($d[2])->setIcon($d[3])
                ->setStatus('active')->setPosition($i + 1);
            $em->persist($cat);
            $cats[$d[1]] = $cat;
        }
        $em->flush();
        $io->success('8 kategori oluşturuldu.');

        // ===================== TAGS =====================
        $tags = [];
        $tagNames = ['Yapay Zeka', 'Ekonomi', 'Türkiye', 'Avrupa', 'Futbol', 'Sağlık', 'Teknoloji', 'Dijital', 'Eğitim', 'Çevre', 'Bilim', 'Uzay', 'Otomotiv', 'Enerji', 'Turizm'];
        foreach ($tagNames as $name) {
            $tag = new Tag();
            $tag->setName($name);
            $tag->setSlug($this->slugify($name));
            $em->persist($tag);
            $tags[] = $tag;
        }
        $em->flush();
        $io->success(count($tags) . ' etiket oluşturuldu.');

        // ===================== AUTHORS =====================
        $authors = [];
        $authorData = [
            ['Ahmet Yılmaz', 'ahmet-yilmaz', 'Kıdemli gazeteci, 15 yıllık deneyim. Siyaset ve ekonomi alanında uzman.', 'ahmet@example.com', 'https://ui-avatars.com/api/?name=Ahmet+Yilmaz&size=200&background=3b82f6&color=fff'],
            ['Elif Demir', 'elif-demir', 'Teknoloji editörü. Yapay zeka ve dijital dönüşüm konularında yazıyor.', 'elif@example.com', 'https://ui-avatars.com/api/?name=Elif+Demir&size=200&background=ec4899&color=fff'],
            ['Mehmet Kaya', 'mehmet-kaya', 'Spor muhabiri. Futbol ve basketbol takibi.', 'mehmet@example.com', 'https://ui-avatars.com/api/?name=Mehmet+Kaya&size=200&background=f59e0b&color=fff'],
            ['Zeynep Arslan', 'zeynep-arslan', 'Sağlık ve bilim editörü. Tıp fakültesi mezunu, sağlık haberciliğinde 10 yıllık tecrübe.', 'zeynep@example.com', 'https://ui-avatars.com/api/?name=Zeynep+Arslan&size=200&background=8b5cf6&color=fff'],
        ];

        foreach ($authorData as $d) {
            $author = new Author();
            $author->setName($d[0])->setSlug($d[1])->setBio($d[2])->setEmail($d[3])->setPhoto($d[4])->setIsActive(true);
            $em->persist($author);
            $authors[] = $author;
        }
        $em->flush();
        $io->success(count($authors) . ' köşe yazarı oluşturuldu.');

        // ===================== NEWS (30 haber) =====================
        $newsData = [
            ['Türkiye\'de Yapay Zeka Yatırımları Rekor Seviyeye Ulaştı', 'turkiyede-yapay-zeka-yatirimlari-rekor', '2026 yılında yapay zeka yatırımları yüzde 150 artış göstererek rekor seviyeye ulaştı.', '<p>Türkiye teknoloji sektöründe büyük bir dönüşüm yaşanıyor. Yapay zeka alanındaki yatırımlar 2026 yılında rekor seviyelere ulaştı.</p><h2>Sektördeki Gelişmeler</h2><p>Büyük teknoloji şirketleri yapay zeka Ar-Ge merkezlerini Türkiye\'de açmaya devam ediyor. İstanbul, Ankara ve İzmir\'de yeni teknoloji parkları kurularak ekosistemin büyümesine katkı sağlanıyor.</p><p>Toplam yatırım miktarı 5 milyar doları aştı. Yerli girişimler uluslararası yatırımcılardan önemli fonlar aldı.</p>', 'teknoloji', true, true, true],
            ['Merkez Bankası Faiz Kararını Açıkladı', 'merkez-bankasi-faiz-kararini-acikladi', 'Merkez Bankası politika faizini sabit tutma kararı aldı.', '<p>Türkiye Cumhuriyet Merkez Bankası Para Politikası Kurulu toplantısında faiz kararını açıkladı.</p><h2>Piyasalardaki Etki</h2><p>Karar sonrası döviz piyasalarında sınırlı hareketlilik gözlendi. Borsa İstanbul pozitif seyrini sürdürdü. Analistler kararı beklentiler dahilinde değerlendirdi.</p>', 'ekonomi', true, false, true],
            ['AB Dijital Dönüşüm Stratejisini Güncelledi', 'ab-dijital-donusum-stratejisi', 'AB yeni dijital strateji planını açıkladı. Yapay zeka düzenlemeleri ön plana çıkıyor.', '<p>Avrupa Birliği Komisyonu dijital dönüşüm stratejisini güncelledi. Yeni plan özellikle yapay zeka düzenlemeleri ve veri güvenliği konularına odaklanıyor.</p><p>Plan 2030 hedeflerini revize ederek dijital beceriler, altyapı ve inovasyon alanlarında somut adımlar içeriyor.</p>', 'dunya', false, true, false],
            ['Galatasaray Şampiyonlar Ligi\'nde Tarihi Galibiyet', 'galatasaray-sampiyonlar-liginde-galibiyet', 'Galatasaray deplasmanda 3-1 galip gelerek grubunu lider tamamladı.', '<p>Galatasaray, Şampiyonlar Ligi grup aşamasının son maçında deplasmanda 3-1 galip gelerek grubunu lider tamamladı.</p><h2>Maç Özeti</h2><p>İlk yarıyı 1-0 önde kapatan sarı-kırmızılılar, ikinci yarıda attığı gollerle farkı açtı. Teknik direktör maç sonu yaptığı açıklamada takımın performansından memnun olduğunu belirtti.</p>', 'spor', true, true, true],
            ['Yeni Kanser Tedavisi Umut Verici Sonuçlar Gösterdi', 'yeni-kanser-tedavisi-umut-verici', 'Türk bilim insanlarının geliştirdiği tedavi yöntemi klinik deneylerde başarılı oldu.', '<p>Türk bilim insanlarının geliştirdiği yeni kanser tedavisi klinik deneylerde umut verici sonuçlar gösterdi. İmmünoterapi tabanlı yeni yaklaşım, özellikle akciğer kanseri hastalarında yüzde 40 iyileşme oranı sağladı.</p>', 'saglik', false, true, false],
            ['İstanbul Kültür Festivali Başlıyor', 'istanbul-kultur-festivali-basliyor', 'Dünyanın dört bir yanından sanatçılar İstanbul\'da buluşuyor.', '<p>İstanbul Kültür ve Sanat Festivali bu yıl rekor katılımla başlıyor. 30 ülkeden 200\'den fazla sanatçı sahne alacak. Festival boyunca 100\'ün üzerinde etkinlik düzenlenecek.</p>', 'kultur-sanat', false, false, false],
            ['Elektrikli Araç Satışları Yüzde 200 Arttı', 'elektrikli-arac-satislari-artti', 'Türkiye\'de elektrikli araç pazarı hızla büyüyor.', '<p>2026\'nın ilk çeyreğinde Türkiye\'de elektrikli araç satışları bir önceki yılın aynı dönemine göre yüzde 200 arttı. TOGG satışları bu artışın lokomotifi oldu.</p><h2>Pazar Payı</h2><p>Elektrikli araçların toplam otomobil pazarındaki payı yüzde 18\'e yükseldi. Şarj altyapısı da hızla genişliyor.</p>', 'ekonomi', false, false, true],
            ['Siber Güvenlik Tehditleri 2026 Raporu Yayınlandı', 'siber-guvenlik-tehditleri-2026', 'Ulusal Siber Güvenlik Merkezi yıllık tehdit raporunu açıkladı.', '<p>Ulusal Siber Güvenlik Merkezi 2026 yılı tehdit raporunu yayınladı. Raporda siber saldırıların geçen yıla göre 3 kat arttığı belirtildi. Özellikle fidye yazılımı saldırıları kritik altyapıları hedef alıyor.</p>', 'teknoloji', false, false, false],
            ['Türkiye\'nin İlk Uzay Aracı Fırlatıldı', 'turkiyenin-ilk-uzay-araci-firlatildi', 'TUA\'nın geliştirdiği uydu başarıyla yörüngeye yerleştirildi.', '<p>Türkiye Uzay Ajansı\'nın (TUA) geliştirdiği yerli ve milli iletişim uydusu başarıyla yörüngeye yerleştirildi. Fırlatma Kazakistan\'daki Baykonur Uzay Üssü\'nden gerçekleştirildi.</p><h2>Teknik Detaylar</h2><p>Uydu 15 yıllık ömür süresine sahip ve Türkiye\'nin iletişim kapasitesini 3 kat artıracak.</p>', 'teknoloji', true, true, true],
            ['Üniversite Sınav Sistemi Değişiyor', 'universite-sinav-sistemi-degisiyor', 'YÖK yeni üniversite giriş sınav formatını açıkladı.', '<p>Yükseköğretim Kurulu (YÖK) 2027 yılından itibaren uygulanacak yeni üniversite giriş sınav formatını açıkladı. Yeni sistemde beceri tabanlı sorular ağırlık kazanacak.</p>', 'egitim', true, false, false],
            ['Deprem Erken Uyarı Sistemi Devreye Girdi', 'deprem-erken-uyari-sistemi', 'AFAD\'ın yeni erken uyarı sistemi 81 ilde aktif.', '<p>AFAD tarafından geliştirilen yeni nesil deprem erken uyarı sistemi 81 ilde devreye girdi. Sistem deprem dalgalarını saniyeler içinde tespit ederek mobil uygulamalar üzerinden vatandaşları uyarıyor.</p>', 'gundem', true, true, false],
            ['Dünya Kupası Elemeleri\'nde Kritik Maç', 'dunya-kupasi-elemelerinde-kritik-mac', 'A Milli Takım yarın sahaya çıkıyor.', '<p>A Milli Futbol Takımı, 2026 Dünya Kupası Elemeleri\'nde yarın kritik bir maça çıkıyor. Teknik direktör açıklanan 26 kişilik kadroda sürpriz isimlere yer verdi.</p>', 'spor', false, false, true],
            ['Yenilenebilir Enerji Üretimi Rekor Kırdı', 'yenilenebilir-enerji-uretimi-rekor', 'Rüzgar ve güneş enerjisi toplam elektrik üretiminin yüzde 40\'ına ulaştı.', '<p>Türkiye\'de yenilenebilir enerji kaynaklarından üretilen elektrik miktarı rekor seviyeye ulaştı. Rüzgar ve güneş enerjisi santralleri toplam elektrik üretiminin yüzde 40\'ını karşılamaya başladı.</p>', 'ekonomi', false, true, false],
            ['COVID-19 Sonrası Yeni Sağlık Protokolleri', 'covid-sonrasi-yeni-saglik-protokolleri', 'Sağlık Bakanlığı pandemi sonrası dönem için yeni protokoller belirledi.', '<p>Sağlık Bakanlığı, pandemi sonrası dönemde hastanelerde uygulanacak yeni protokolleri açıkladı. Telemedisin uygulamaları kalıcı hale getiriliyor.</p>', 'saglik', false, false, false],
            ['Turizm Gelirlerinde Tarihi Rekor', 'turizm-gelirlerinde-tarihi-rekor', 'Türkiye 60 milyon turist hedefine ulaştı.', '<p>Türkiye 2026 yılında 60 milyon turist hedefine ulaşarak turizm gelirlerinde tarihi bir rekor kırdı. Kültür turizmi ve sağlık turizmi en hızlı büyüyen segmentler oldu.</p>', 'ekonomi', false, false, true],
            ['Yapay Zeka ile Hastalık Teşhisi Artık Mümkün', 'yapay-zeka-ile-hastalik-teshisi', 'Yeni AI sistemi röntgen ve MR görüntülerini analiz ediyor.', '<p>Türk mühendislerin geliştirdiği yapay zeka destekli tanı sistemi, röntgen ve MR görüntülerini analiz ederek hastalık teşhisinde doktorlara yardımcı oluyor. Sistem yüzde 95 doğruluk oranına sahip.</p>', 'teknoloji', false, false, false],
            ['Fenerbahçe Avrupa Ligi\'nde Çeyrek Finalde', 'fenerbahce-avrupa-liginde-ceyrekte', 'Sarı-lacivertliler son 8\'e kaldı.', '<p>Fenerbahçe, Avrupa Ligi play-off turunda rakibini eleyerek çeyrek finale yükseldi. Taraftar büyük sevinç yaşadı.</p>', 'spor', true, false, true],
            ['Okullarda Kodlama Eğitimi Zorunlu Oluyor', 'okullarda-kodlama-egitimi-zorunlu', 'MEB müfredatına kodlama dersi ekleniyor.', '<p>Milli Eğitim Bakanlığı 2027-2028 eğitim öğretim yılından itibaren ilkokul 3. sınıftan başlayarak kodlama dersini zorunlu hale getiriyor.</p>', 'egitim', false, true, false],
            ['İstanbul\'da Yeni Metro Hattı Açıldı', 'istanbulda-yeni-metro-hatti-acildi', '15 istasyonlu hat hizmete girdi.', '<p>İstanbul Büyükşehir Belediyesi yeni metro hattını hizmete açtı. Hat toplam 15 istasyondan oluşuyor ve günde 500 bin yolcu taşıma kapasitesine sahip.</p>', 'gundem', false, false, true],
            ['Dolar/TL Paritesinde Son Durum', 'dolar-tl-paritesinde-son-durum', 'Döviz piyasalarında hareketli bir hafta yaşanıyor.', '<p>Dolar/TL paritesi bu hafta dalgalı bir seyir izliyor. Merkez Bankası\'nın faiz kararı ve küresel gelişmeler piyasaları etkiliyor.</p>', 'ekonomi', false, false, false],
        ];

        foreach ($newsData as $i => $d) {
            $news = new News();
            $news->setTitle($d[0])->setSlug($d[1])->setSpot($d[2])->setContent($d[3])
                ->setCategory($cats[$d[4]])->setStatus('published')
                ->setIsBreaking($d[5])->setIsHeadline($d[6])->setIsFeatured($d[7])
                ->setAllowComments(true)->setShowInAmp(true)
                ->setPublishedAt(new \DateTimeImmutable('-' . ($i * 3) . ' hours'))
                ->setFeaturedImage('https://picsum.photos/seed/news' . ($i + 1) . '/800/450')
                ->setSeoTitle($d[0])->setSeoDescription($d[2])
                ->setViewCount(rand(200, 10000));

            // Rastgele 2-3 etiket ekle
            $randomTags = array_rand($tags, min(3, count($tags)));
            foreach ((array) $randomTags as $ti) {
                $news->addTag($tags[$ti]);
            }

            // Rastgele yazar ata
            if (rand(0, 1) && !empty($authors)) {
                $news->setAuthor($authors[array_rand($authors)]);
            }

            $em->persist($news);
        }
        $em->flush();
        $io->success(count($newsData) . ' demo haber oluşturuldu.');

        // ===================== PAGES =====================
        $pagesData = [
            ['Hakkımızda', 'hakkimizda', '<h2>Biz Kimiz?</h2><p>Güvenilir, hızlı ve tarafsız haber yayıncılığı misyonuyla çalışan bir haber platformuyuz. Deneyimli kadromuz ile okuyucularımıza en doğru bilgiyi ulaştırmayı hedefliyoruz.</p><h3>Vizyonumuz</h3><p>Dijital medyanın geleceğini şekillendiren, yenilikçi ve güvenilir bir haber kaynağı olmak.</p><h3>Misyonumuz</h3><p>Toplumu doğru ve tarafsız bilgiyle buluşturmak, gazetecilik etik değerlerine bağlı kalmak.</p>', 1],
            ['İletişim', 'iletisim', '<h2>Bize Ulaşın</h2><p>Sorularınız, önerileriniz ve ihbar hattımız için bizimle iletişime geçebilirsiniz.</p><p><strong>E-posta:</strong> info@orneksite.com<br><strong>Telefon:</strong> +90 (212) 000 00 00<br><strong>Adres:</strong> İstanbul, Türkiye</p><h3>Çalışma Saatleri</h3><p>Pazartesi - Cuma: 09:00 - 18:00<br>Cumartesi: 10:00 - 14:00</p>', 2],
            ['Künye', 'kunye', '<h2>Künye Bilgileri</h2><p><strong>Yayın Sahibi:</strong> Örnek Medya A.Ş.<br><strong>Genel Yayın Yönetmeni:</strong> Ahmet Yılmaz<br><strong>Yazı İşleri Müdürü:</strong> Elif Demir<br><strong>Sorumlu Yazı İşleri Müdürü:</strong> Mehmet Kaya</p><p>Bu site HaberCMS altyapısı kullanılarak yayınlanmaktadır.</p>', 3],
            ['Gizlilik Politikası', 'gizlilik-politikasi', '<h2>Gizlilik Politikası</h2><p>Kişisel verilerinizin korunması bizim için önemlidir. Bu politika, topladığımız bilgileri nasıl kullandığımızı açıklar.</p><h3>Toplanan Bilgiler</h3><p>Sitemizi ziyaret ettiğinizde IP adresiniz, tarayıcı bilgileriniz ve ziyaret ettiğiniz sayfalar otomatik olarak kaydedilir.</p><h3>Çerezler</h3><p>Sitemiz deneyiminizi iyileştirmek için çerezler kullanmaktadır.</p>', 4],
        ];

        foreach ($pagesData as $d) {
            $page = new Page();
            $page->setTitle($d[0])->setSlug($d[1])->setContent($d[2])->setStatus('published')->setPosition($d[3]);
            $em->persist($page);
        }
        $em->flush();
        $io->success(count($pagesData) . ' sayfa oluşturuldu.');

        // ===================== MENUS =====================
        $headerMenu = new Menu();
        $headerMenu->setName('Ana Menü')->setSlug('ana-menu')->setLocation('header')->setIsActive(true);
        $em->persist($headerMenu);

        $footerMenu = new Menu();
        $footerMenu->setName('Footer Menü')->setSlug('footer-menu')->setLocation('footer')->setIsActive(true);
        $em->persist($footerMenu);
        $em->flush();

        // Header menü öğeleri
        $headerItems = [
            ['Ana Sayfa', '/', 'custom', 'fas fa-home', 1],
            ['Gündem', '/kategori/gundem', 'category', 'fas fa-newspaper', 2],
            ['Ekonomi', '/kategori/ekonomi', 'category', 'fas fa-chart-line', 3],
            ['Spor', '/kategori/spor', 'category', 'fas fa-futbol', 4],
            ['Teknoloji', '/kategori/teknoloji', 'category', 'fas fa-microchip', 5],
            ['Dünya', '/kategori/dunya', 'category', 'fas fa-globe', 6],
        ];

        foreach ($headerItems as $d) {
            $item = new MenuItem();
            $item->setMenu($headerMenu)->setTitle($d[0])->setUrl($d[1])->setType($d[2])
                ->setIcon($d[3])->setPosition($d[4])->setTarget('_self')->setIsActive(true);
            $em->persist($item);
        }

        // Footer menü öğeleri
        $footerItems = [
            ['Hakkımızda', '/sayfa/hakkimizda', 'page', null, 1],
            ['İletişim', '/sayfa/iletisim', 'page', null, 2],
            ['Künye', '/sayfa/kunye', 'page', null, 3],
            ['Gizlilik', '/sayfa/gizlilik-politikasi', 'page', null, 4],
        ];

        foreach ($footerItems as $d) {
            $item = new MenuItem();
            $item->setMenu($footerMenu)->setTitle($d[0])->setUrl($d[1])->setType($d[2])
                ->setIcon($d[3])->setPosition($d[4])->setTarget('_self')->setIsActive(true);
            $em->persist($item);
        }
        $em->flush();
        $io->success('2 menü ve ' . (count($headerItems) + count($footerItems)) . ' menü öğesi oluşturuldu.');

        // ===================== POLL =====================
        $poll = new Poll();
        $poll->setQuestion('Sizce en önemli teknoloji trendi hangisi?')
            ->setStatus('active')->setMultipleChoice(false)->setShowResults(true)->setTotalVotes(0);
        $em->persist($poll);
        $em->flush();

        $pollOptions = ['Yapay Zeka', 'Blockchain', 'Kuantum Bilişim', 'Artırılmış Gerçeklik', 'Nesnelerin İnterneti'];
        foreach ($pollOptions as $i => $text) {
            $opt = new PollOption();
            $opt->setPoll($poll)->setOptionText($text)->setVoteCount(rand(5, 50))->setPosition($i + 1);
            $em->persist($opt);
        }
        $em->flush();
        $io->success('1 anket ve ' . count($pollOptions) . ' seçenek oluşturuldu.');

        // ===================== MODULE CONFIGS =====================
        $modules = ['core', 'menu', 'comment', 'seo', 'widget', 'advertisement', 'poll', 'theme', 'amp', 'agency', 'horoscope'];
        foreach ($modules as $mod) {
            $mc = new ModuleConfig();
            $mc->setModuleSlug($mod)->setIsActive(true)->setConfig([])->setActivatedAt(new \DateTimeImmutable());
            $em->persist($mc);
        }
        $em->flush();
        $io->success(count($modules) . ' modül aktifleştirildi.');

        // ===================== SETTINGS =====================
        $settings = [
            ['site_name', 'Yeni Haber Sitesi', 'general', 'text'],
            ['site_description', 'Güncel haberler, son dakika gelişmeleri ve daha fazlası', 'general', 'text'],
            ['site_logo', '', 'general', 'image'],
            ['site_favicon', '', 'general', 'image'],
            ['site_keywords', 'haber, son dakika, gündem, ekonomi, spor, teknoloji', 'seo', 'text'],
            ['footer_text', '© ' . date('Y') . ' Tüm Hakları Saklıdır. HaberCMS ile güçlendirilmiştir.', 'general', 'text'],
            ['footer_about', 'Güvenilir, hızlı ve tarafsız haber yayıncılığı.', 'general', 'textarea'],
            ['google_analytics_id', '', 'analytics', 'text'],
            ['google_tag_manager_id', '', 'analytics', 'text'],
            ['social_facebook', 'https://facebook.com', 'social', 'text'],
            ['social_twitter', 'https://twitter.com', 'social', 'text'],
            ['social_instagram', 'https://instagram.com', 'social', 'text'],
            ['social_youtube', 'https://youtube.com', 'social', 'text'],
            ['social_telegram', '', 'social', 'text'],
            ['contact_email', 'info@orneksite.com', 'contact', 'text'],
            ['contact_phone', '+90 (212) 000 00 00', 'contact', 'text'],
            ['contact_address', 'İstanbul, Türkiye', 'contact', 'textarea'],
            ['news_per_page', '12', 'news', 'number'],
            ['comments_enabled', '1', 'comments', 'boolean'],
            ['comments_moderation', '1', 'comments', 'boolean'],
            ['homepage_layout', 'default', 'theme', 'text'],
            ['primary_color', '#3b82f6', 'theme', 'text'],
            ['header_style', 'default', 'theme', 'text'],
            ['show_author', '1', 'news', 'boolean'],
            ['show_date', '1', 'news', 'boolean'],
            ['show_views', '1', 'news', 'boolean'],
            ['show_breaking_ticker', '1', 'news', 'boolean'],
            ['amp_enabled', '1', 'amp', 'boolean'],
        ];

        foreach ($settings as $s) {
            $setting = new Setting();
            $setting->setSettingKey($s[0])->setSettingValue($s[1])->setSettingGroup($s[2])->setSettingType($s[3]);
            $em->persist($setting);
        }
        $em->flush();
        $io->success(count($settings) . ' ayar oluşturuldu.');

        $io->success('Demo veriler başarıyla oluşturuldu!');
        return Command::SUCCESS;
    }

    private function slugify(string $text): string
    {
        $tr = ['ı' => 'i', 'ö' => 'o', 'ü' => 'u', 'ş' => 's', 'ç' => 'c', 'ğ' => 'g', 'İ' => 'i', 'Ö' => 'o', 'Ü' => 'u', 'Ş' => 's', 'Ç' => 'c', 'Ğ' => 'g'];
        $text = strtr(mb_strtolower($text), $tr);
        $text = preg_replace('/[^a-z0-9]+/', '-', $text);
        return trim($text, '-');
    }
}
