<?php

namespace Database\Seeders;

use App\Models\LibraryCategory;
use App\Models\LibraryContent;
use Illuminate\Database\Seeder;

class LibraryContentSeeder extends Seeder
{
    public function run(): void
    {
        $contents = [
            [
                'category_slug' => 'saglik-standartlari',
                'title'         => 'Askeri Sağlık Koşulları - Boy ve Kilo Standartları',
                'slug'          => 'askeri-saglik-kosullari-boy-kilo',
                'type'          => 'table',
                'content'       => [
                    'blocks' => [[
                        'type' => 'paragraph',
                        'data' => ['text' => '<h2>TSK Boy-Kilo Standartları</h2>
<p>Türk Silahlı Kuvvetleri\'ne katılım için belirlenen boy ve kilo koşulları aşağıdaki tabloda yer almaktadır.</p>
<table>
<thead><tr><th>Boy (cm)</th><th>Min. Kilo (kg)</th><th>Max. Kilo (kg)</th></tr></thead>
<tbody>
<tr><td>155</td><td>49</td><td>68</td></tr>
<tr><td>160</td><td>52</td><td>72</td></tr>
<tr><td>165</td><td>55</td><td>77</td></tr>
<tr><td>170</td><td>58</td><td>82</td></tr>
<tr><td>175</td><td>61</td><td>87</td></tr>
<tr><td>180</td><td>65</td><td>92</td></tr>
<tr><td>185</td><td>69</td><td>98</td></tr>
<tr><td>190</td><td>73</td><td>104</td></tr>
</tbody>
</table>
<p><strong>Not:</strong> Bu değerler kadro ve göreve göre farklılık gösterebilir. Güncel bilgi için resmi kaynaklara başvurun.</p>']
                    ]]
                ],
                'views' => 1450,
            ],
            [
                'category_slug' => 'rutbe-ve-kidem',
                'title'         => 'Türk Silahlı Kuvvetleri Rütbe Sıralaması',
                'slug'          => 'tsk-rutbe-siralamasi',
                'type'          => 'list',
                'content'       => [
                    'blocks' => [[
                        'type' => 'paragraph',
                        'data' => ['text' => '<h2>Subay Rütbeleri (Küçükten Büyüğe)</h2>
<ol>
<li><strong>Asteğmen</strong> - En alt subay rütbesi</li>
<li><strong>Teğmen</strong></li>
<li><strong>Üsteğmen</strong></li>
<li><strong>Yüzbaşı</strong></li>
<li><strong>Binbaşı</strong></li>
<li><strong>Yarbay</strong></li>
<li><strong>Albay</strong></li>
<li><strong>Tuğgeneral / Tuğamiral</strong></li>
<li><strong>Tümgeneral / Tümamiral</strong></li>
<li><strong>Korgeneral / Koramiral</strong></li>
<li><strong>Orgeneral / Oramiral</strong></li>
<li><strong>Mareşal</strong> - En üst rütbe (olağanüstü hallerde)</li>
</ol>
<h2>Astsubay Rütbeleri</h2>
<ol>
<li>Astsubay Çavuş</li>
<li>Kıdemli Çavuş</li>
<li>Üstçavuş</li>
<li>Kıdemli Üstçavuş</li>
<li>Başçavuş</li>
<li>Kıdemli Başçavuş</li>
<li>Astsubay Kıdemli Başçavuş</li>
</ol>']
                    ]]
                ],
                'views' => 2320,
            ],
            [
                'category_slug' => 'kpss-hazirlik',
                'title'         => 'KPSS Genel Kültür Konuları ve Ağırlıkları',
                'slug'          => 'kpss-genel-kultur-konulari',
                'type'          => 'article',
                'content'       => [
                    'blocks' => [[
                        'type' => 'paragraph',
                        'data' => ['text' => '<h2>KPSS Genel Kültür Konuları</h2>
<p>KPSS Genel Kültür testi 60 sorudan oluşmakta ve Türkçe/Matematik ile birlikte değerlendirilmektedir.</p>

<h3>Tarih Konuları (Yaklaşık 12-15 Soru)</h3>
<ul>
<li>Osmanlı Tarihi</li>
<li>Türk İnkılap Tarihi ve Atatürkçülük</li>
<li>Türkiye Cumhuriyeti Tarihi</li>
<li>Dünya Tarihi</li>
</ul>

<h3>Coğrafya Konuları (Yaklaşık 10-12 Soru)</h3>
<ul>
<li>Türkiye Fiziki Coğrafyası</li>
<li>Türkiye Beşeri Coğrafyası</li>
<li>Dünya Coğrafyası</li>
</ul>

<h3>Vatandaşlık/Anayasa (Yaklaşık 12-15 Soru)</h3>
<ul>
<li>TC Anayasası</li>
<li>Temel Hak ve Özgürlükler</li>
<li>Devlet Yapısı</li>
</ul>

<h3>Güncel Bilgiler (Yaklaşık 5-8 Soru)</h3>
<ul>
<li>Güncel olaylar</li>
<li>Türkiye ekonomisi</li>
<li>Uluslararası gelişmeler</li>
</ul>']
                    ]]
                ],
                'views' => 3150,
            ],
            [
                'category_slug' => 'maas-ve-ozluk',
                'title'         => 'Subay ve Astsubay Maaş Tablosu (2024)',
                'slug'          => 'subay-astsubay-maas-tablosu-2024',
                'type'          => 'table',
                'content'       => [
                    'blocks' => [[
                        'type' => 'paragraph',
                        'data' => ['text' => '<h2>2024 Yılı Askeri Personel Maaş Bilgisi</h2>
<p>Aşağıdaki tablo yaklaşık baz maaş değerlerini göstermektedir. Gerçek maaşlar çeşitli ödeneklerle değişebilir.</p>
<table>
<thead><tr><th>Rütbe</th><th>Kademe</th><th>Yaklaşık Maaş (TL)</th></tr></thead>
<tbody>
<tr><td>Asteğmen</td><td>1. Kademe</td><td>~25.000 - 30.000</td></tr>
<tr><td>Teğmen</td><td>1. Kademe</td><td>~27.000 - 33.000</td></tr>
<tr><td>Üsteğmen</td><td>1. Kademe</td><td>~30.000 - 38.000</td></tr>
<tr><td>Yüzbaşı</td><td>1. Kademe</td><td>~35.000 - 45.000</td></tr>
<tr><td>Binbaşı</td><td>1. Kademe</td><td>~42.000 - 55.000</td></tr>
<tr><td>Astsubay Çavuş</td><td>1. Kademe</td><td>~20.000 - 25.000</td></tr>
<tr><td>Başçavuş</td><td>1. Kademe</td><td>~28.000 - 35.000</td></tr>
</tbody>
</table>
<p><em>Not: Bu değerler yaklaşık olup güncel resmi verilere göre farklılık gösterebilir.</em></p>']
                    ]]
                ],
                'views' => 4200,
            ],
            [
                'category_slug' => 'msu-hazirlik',
                'title'         => 'MSÜ Sınavı Başvuru Koşulları ve Süreç',
                'slug'          => 'msu-sinavi-basvuru-kosullari',
                'type'          => 'article',
                'content'       => [
                    'blocks' => [[
                        'type' => 'paragraph',
                        'data' => ['text' => '<h2>Milli Savunma Üniversitesi (MSÜ) Giriş Sınavı</h2>
<p>MSÜ, Türk Silahlı Kuvvetleri bünyesindeki subay adaylarını yetiştiren yükseköğretim kurumudur.</p>

<h3>Başvuru Koşulları</h3>
<ul>
<li>Türk vatandaşı olmak</li>
<li>YKS sınavına girmiş olmak (TYT+AYT)</li>
<li>Belirli yaş sınırını aşmamak (genellikle 22 yaş)</li>
<li>Boy-kilo standartlarını karşılamak</li>
<li>Sağlık açısından uygun olmak</li>
<li>Sabıka kaydı bulunmamak</li>
</ul>

<h3>Sınav Aşamaları</h3>
<ol>
<li><strong>Ön Başvuru:</strong> Online başvuru formu doldurma</li>
<li><strong>YKS Ön Eleme:</strong> Belirlenen taban puanı geçme</li>
<li><strong>Sağlık Muayenesi:</strong> Fiziksel ve sağlık testleri</li>
<li><strong>Fiziki Yeterlilik Testi:</strong> Koşu, şınav, mekik vb.</li>
<li><strong>Mülakat:</strong> Komisyon önünde değerlendirme</li>
<li><strong>Güvenlik Soruşturması</strong></li>
<li><strong>Kesin Kayıt</strong></li>
</ol>']
                    ]]
                ],
                'views' => 2780,
            ],
        ];

        foreach ($contents as $data) {
            $category = LibraryCategory::where('slug', $data['category_slug'])->first();
            if (!$category) continue;

            LibraryContent::firstOrCreate(
                ['slug' => $data['slug']],
                [
                    'category_id'    => $category->id,
                    'title'          => $data['title'],
                    'slug'           => $data['slug'],
                    'type'           => $data['type'],
                    'content'        => $data['content'],
                    'views'          => $data['views'],
                ]
            );
        }
    }
}
