-- ============================================
-- QuizB Seed Data - Import via phpMyAdmin
-- Database: quic1934_upgrade
-- ============================================

SET FOREIGN_KEY_CHECKS = 0;

-- === CATEGORIES ===
INSERT INTO `Category` (`id`, `name`, `slug`, `icon`, `color`, `description`, `quizCount`) VALUES
('cat_pengetahuan', 'Pengetahuan Umum', 'pengetahuan-umum', '🌍', '#6366f1', 'Quiz pengetahuan umum', 1),
('cat_agama', 'Agama Islam', 'agama', '☪️', '#10b981', 'Quiz agama Islam', 0),
('cat_matematika', 'Matematika', 'matematika', '🔢', '#f59e0b', 'Quiz matematika', 0),
('cat_sains', 'Sains & IPA', 'sains', '🔬', '#3b82f6', 'Quiz sains dan IPA', 0),
('cat_sejarah', 'Sejarah Indonesia', 'sejarah', '📜', '#8b5cf6', 'Quiz sejarah Indonesia', 0),
('cat_teknologi', 'Teknologi', 'teknologi', '💻', '#06b6d4', 'Quiz teknologi', 0);

-- === ADMIN USER ===
-- Password: admin123 (bcrypt hash)
INSERT INTO `User` (`id`, `name`, `email`, `username`, `password`, `role`, `level`, `xp`, `streak`, `totalScore`, `quizzesPlayed`, `lastActive`, `createdAt`, `updatedAt`) VALUES
('user_admin_001', 'Admin QuizB', 'admin@quizb.my.id', 'admin', '$2a$10$rOzHPCEjsMPGWS3n.6DJQO7/FkH2xP.NjqFvBCo3vYFN0dxv5NNOG', 'ADMIN', 10, 5000, 0, 0, 0, NOW(), NOW(), NOW());

-- === SAMPLE QUIZ ===
INSERT INTO `Quiz` (`id`, `slug`, `title`, `description`, `difficulty`, `timeLimit`, `isPublished`, `isGuestAllowed`, `playCount`, `avgScore`, `authorId`, `categoryId`, `createdAt`, `updatedAt`) VALUES
('quiz_001', 'pengetahuan-umum-dasar', 'Pengetahuan Umum Dasar', 'Uji pengetahuan umummu dengan pertanyaan pilihan dari berbagai topik.', 'EASY', 30, true, true, 0, 0, 'user_admin_001', 'cat_pengetahuan', NOW(), NOW()),
('quiz_002', 'sejarah-indonesia-dasar', 'Sejarah Indonesia Dasar', 'Uji pengetahuan sejarah Indonesia dari masa kemerdekaan hingga era modern.', 'MEDIUM', 30, true, true, 0, 0, 'user_admin_001', 'cat_sejarah', NOW(), NOW()),
('quiz_003', 'matematika-dasar', 'Matematika Dasar', 'Latihan soal matematika dasar untuk semua tingkatan.', 'EASY', 30, true, true, 0, 0, 'user_admin_001', 'cat_matematika', NOW(), NOW()),
('quiz_004', 'agama-islam-dasar', 'Agama Islam Dasar', 'Quiz tentang rukun Islam, rukun iman, dan pengetahuan dasar agama Islam.', 'EASY', 30, true, true, 0, 0, 'user_admin_001', 'cat_agama', NOW(), NOW()),
('quiz_005', 'sains-ipa-dasar', 'Sains & IPA Dasar', 'Quiz tentang ilmu pengetahuan alam untuk siswa SD hingga SMP.', 'MEDIUM', 30, true, true, 0, 0, 'user_admin_001', 'cat_sains', NOW(), NOW());

-- === QUESTIONS - Quiz 1 (Pengetahuan Umum) ===
INSERT INTO `Question` (`id`, `content`, `explanation`, `order`, `points`, `quizId`) VALUES
('q1_001', 'Ibu kota Indonesia adalah?', 'Jakarta adalah ibu kota Indonesia sejak kemerdekaan 1945.', 1, 10, 'quiz_001'),
('q1_002', 'Planet terbesar di tata surya adalah?', 'Jupiter adalah planet terbesar dengan massa lebih besar dari semua planet lain digabungkan.', 2, 10, 'quiz_001'),
('q1_003', 'Siapakah presiden pertama Indonesia?', 'Ir. Soekarno adalah Presiden pertama Republik Indonesia (1945–1967).', 3, 10, 'quiz_001'),
('q1_004', 'Berapa jumlah provinsi di Indonesia saat ini?', 'Indonesia memiliki 38 provinsi setelah pemekaran beberapa provinsi baru.', 4, 10, 'quiz_001'),
('q1_005', 'Bahasa resmi PBB ada berapa?', 'PBB memiliki 6 bahasa resmi: Arab, Mandarin, Inggris, Prancis, Rusia, dan Spanyol.', 5, 10, 'quiz_001');

-- === OPTIONS - Quiz 1 ===
INSERT INTO `Option` (`id`, `content`, `isCorrect`, `order`, `questionId`) VALUES
('o1_001_1', 'Surabaya', false, 1, 'q1_001'),
('o1_001_2', 'Jakarta', true, 2, 'q1_001'),
('o1_001_3', 'Bandung', false, 3, 'q1_001'),
('o1_001_4', 'Medan', false, 4, 'q1_001'),
('o1_002_1', 'Saturn', false, 1, 'q1_002'),
('o1_002_2', 'Neptune', false, 2, 'q1_002'),
('o1_002_3', 'Jupiter', true, 3, 'q1_002'),
('o1_002_4', 'Mars', false, 4, 'q1_002'),
('o1_003_1', 'Soeharto', false, 1, 'q1_003'),
('o1_003_2', 'B.J. Habibie', false, 2, 'q1_003'),
('o1_003_3', 'Mohammad Hatta', false, 3, 'q1_003'),
('o1_003_4', 'Ir. Soekarno', true, 4, 'q1_003'),
('o1_004_1', '34', false, 1, 'q1_004'),
('o1_004_2', '36', false, 2, 'q1_004'),
('o1_004_3', '38', true, 3, 'q1_004'),
('o1_004_4', '40', false, 4, 'q1_004'),
('o1_005_1', '4', false, 1, 'q1_005'),
('o1_005_2', '5', false, 2, 'q1_005'),
('o1_005_3', '6', true, 3, 'q1_005'),
('o1_005_4', '7', false, 4, 'q1_005');

-- === QUESTIONS - Quiz 2 (Sejarah Indonesia) ===
INSERT INTO `Question` (`id`, `content`, `explanation`, `order`, `points`, `quizId`) VALUES
('q2_001', 'Kapan Indonesia memproklamasikan kemerdekaan?', 'Indonesia memproklamasikan kemerdekaan pada 17 Agustus 1945.', 1, 10, 'quiz_002'),
('q2_002', 'Siapakah yang membacakan teks proklamasi kemerdekaan Indonesia?', 'Ir. Soekarno membacakan teks proklamasi pada 17 Agustus 1945 di Jakarta.', 2, 10, 'quiz_002'),
('q2_003', 'Apa nama operasi militer yang berhasil membebaskan Irian Barat?', 'Operasi Trikora (Tri Komando Rakyat) dilancarkan untuk membebaskan Irian Barat dari Belanda.', 3, 10, 'quiz_002'),
('q2_004', 'Pada tahun berapa Indonesia pertama kali mengikuti Olimpiade?', 'Indonesia pertama kali mengikuti Olimpiade pada tahun 1952 di Helsinki, Finlandia.', 4, 10, 'quiz_002'),
('q2_005', 'Siapakah pahlawan nasional yang dijuluki Bapak Pendidikan Indonesia?', 'Ki Hajar Dewantara dikenal sebagai Bapak Pendidikan Nasional Indonesia.', 5, 10, 'quiz_002');

-- === OPTIONS - Quiz 2 ===
INSERT INTO `Option` (`id`, `content`, `isCorrect`, `order`, `questionId`) VALUES
('o2_001_1', '15 Agustus 1945', false, 1, 'q2_001'),
('o2_001_2', '16 Agustus 1945', false, 2, 'q2_001'),
('o2_001_3', '17 Agustus 1945', true, 3, 'q2_001'),
('o2_001_4', '18 Agustus 1945', false, 4, 'q2_001'),
('o2_002_1', 'Mohammad Hatta', false, 1, 'q2_002'),
('o2_002_2', 'Ir. Soekarno', true, 2, 'q2_002'),
('o2_002_3', 'Soeharto', false, 3, 'q2_002'),
('o2_002_4', 'Ahmad Subarjo', false, 4, 'q2_002'),
('o2_003_1', 'Operasi Mandala', false, 1, 'q2_003'),
('o2_003_2', 'Operasi Trikora', true, 2, 'q2_003'),
('o2_003_3', 'Operasi Dwikora', false, 3, 'q2_003'),
('o2_003_4', 'Operasi Seroja', false, 4, 'q2_003'),
('o2_004_1', '1948', false, 1, 'q2_004'),
('o2_004_2', '1950', false, 2, 'q2_004'),
('o2_004_3', '1952', true, 3, 'q2_004'),
('o2_004_4', '1956', false, 4, 'q2_004'),
('o2_005_1', 'Kartini', false, 1, 'q2_005'),
('o2_005_2', 'Ki Hajar Dewantara', true, 2, 'q2_005'),
('o2_005_3', 'M. Natsir', false, 3, 'q2_005'),
('o2_005_4', 'H. Agus Salim', false, 4, 'q2_005');

-- === QUESTIONS - Quiz 3 (Matematika) ===
INSERT INTO `Question` (`id`, `content`, `explanation`, `order`, `points`, `quizId`) VALUES
('q3_001', 'Berapa hasil dari 15 × 8?', '15 × 8 = 120. Perkalian sederhana.', 1, 10, 'quiz_003'),
('q3_002', 'Berapakah akar kuadrat dari 144?', '√144 = 12, karena 12 × 12 = 144.', 2, 10, 'quiz_003'),
('q3_003', 'Jika sebuah segitiga memiliki alas 10 cm dan tinggi 6 cm, berapakah luasnya?', 'Luas segitiga = ½ × alas × tinggi = ½ × 10 × 6 = 30 cm².', 3, 10, 'quiz_003'),
('q3_004', 'Berapa hasil dari 2³ + 3²?', '2³ = 8, 3² = 9, maka 8 + 9 = 17.', 4, 10, 'quiz_003'),
('q3_005', 'Berapa persen dari 75 adalah 15?', '15/75 × 100% = 20%.', 5, 10, 'quiz_003');

-- === OPTIONS - Quiz 3 ===
INSERT INTO `Option` (`id`, `content`, `isCorrect`, `order`, `questionId`) VALUES
('o3_001_1', '100', false, 1, 'q3_001'),
('o3_001_2', '110', false, 2, 'q3_001'),
('o3_001_3', '120', true, 3, 'q3_001'),
('o3_001_4', '130', false, 4, 'q3_001'),
('o3_002_1', '10', false, 1, 'q3_002'),
('o3_002_2', '11', false, 2, 'q3_002'),
('o3_002_3', '12', true, 3, 'q3_002'),
('o3_002_4', '13', false, 4, 'q3_002'),
('o3_003_1', '25 cm²', false, 1, 'q3_003'),
('o3_003_2', '30 cm²', true, 2, 'q3_003'),
('o3_003_3', '35 cm²', false, 3, 'q3_003'),
('o3_003_4', '60 cm²', false, 4, 'q3_003'),
('o3_004_1', '15', false, 1, 'q3_004'),
('o3_004_2', '16', false, 2, 'q3_004'),
('o3_004_3', '17', true, 3, 'q3_004'),
('o3_004_4', '18', false, 4, 'q3_004'),
('o3_005_1', '15%', false, 1, 'q3_005'),
('o3_005_2', '20%', true, 2, 'q3_005'),
('o3_005_3', '25%', false, 3, 'q3_005'),
('o3_005_4', '30%', false, 4, 'q3_005');

-- === QUESTIONS - Quiz 4 (Agama Islam) ===
INSERT INTO `Question` (`id`, `content`, `explanation`, `order`, `points`, `quizId`) VALUES
('q4_001', 'Berapa jumlah rukun Islam?', 'Rukun Islam ada 5: syahadat, salat, zakat, puasa, dan haji.', 1, 10, 'quiz_004'),
('q4_002', 'Berapa jumlah rukun iman?', 'Rukun iman ada 6: iman kepada Allah, malaikat, kitab, rasul, hari akhir, dan qada-qadar.', 2, 10, 'quiz_004'),
('q4_003', 'Kitab suci umat Islam adalah?', 'Al-Qur\'an adalah kitab suci umat Islam yang diturunkan kepada Nabi Muhammad SAW.', 3, 10, 'quiz_004'),
('q4_004', 'Nabi terakhir dalam Islam adalah?', 'Nabi Muhammad SAW adalah nabi dan rasul terakhir dalam Islam.', 4, 10, 'quiz_004'),
('q4_005', 'Berapa rakaat salat Subuh?', 'Salat Subuh terdiri dari 2 rakaat.', 5, 10, 'quiz_004');

-- === OPTIONS - Quiz 4 ===
INSERT INTO `Option` (`id`, `content`, `isCorrect`, `order`, `questionId`) VALUES
('o4_001_1', '4', false, 1, 'q4_001'),
('o4_001_2', '5', true, 2, 'q4_001'),
('o4_001_3', '6', false, 3, 'q4_001'),
('o4_001_4', '7', false, 4, 'q4_001'),
('o4_002_1', '5', false, 1, 'q4_002'),
('o4_002_2', '6', true, 2, 'q4_002'),
('o4_002_3', '7', false, 3, 'q4_002'),
('o4_002_4', '8', false, 4, 'q4_002'),
('o4_003_1', 'Injil', false, 1, 'q4_003'),
('o4_003_2', 'Taurat', false, 2, 'q4_003'),
('o4_003_3', 'Al-Qur\'an', true, 3, 'q4_003'),
('o4_003_4', 'Zabur', false, 4, 'q4_003'),
('o4_004_1', 'Nabi Isa AS', false, 1, 'q4_004'),
('o4_004_2', 'Nabi Ibrahim AS', false, 2, 'q4_004'),
('o4_004_3', 'Nabi Musa AS', false, 3, 'q4_004'),
('o4_004_4', 'Nabi Muhammad SAW', true, 4, 'q4_004'),
('o4_005_1', '2 rakaat', true, 1, 'q4_005'),
('o4_005_2', '3 rakaat', false, 2, 'q4_005'),
('o4_005_3', '4 rakaat', false, 3, 'q4_005'),
('o4_005_4', '5 rakaat', false, 4, 'q4_005');

-- === QUESTIONS - Quiz 5 (Sains IPA) ===
INSERT INTO `Question` (`id`, `content`, `explanation`, `order`, `points`, `quizId`) VALUES
('q5_001', 'Gas apa yang dibutuhkan manusia untuk bernapas?', 'Manusia membutuhkan oksigen (O₂) untuk proses pernapasan.', 1, 10, 'quiz_005'),
('q5_002', 'Berapa lapisan atmosfer bumi?', 'Atmosfer bumi terdiri dari 5 lapisan: troposfer, stratosfer, mesosfer, termosfer, dan eksosfer.', 2, 10, 'quiz_005'),
('q5_003', 'Apa rumus kimia air?', 'Air memiliki rumus kimia H₂O (dua atom hidrogen dan satu atom oksigen).', 3, 10, 'quiz_005'),
('q5_004', 'Organ manakah yang memompa darah ke seluruh tubuh?', 'Jantung adalah organ yang bertugas memompa darah ke seluruh tubuh.', 4, 10, 'quiz_005'),
('q5_005', 'Proses fotosintesis terjadi di bagian sel tumbuhan yang disebut?', 'Fotosintesis terjadi di kloroplas, organel yang mengandung klorofil.', 5, 10, 'quiz_005');

-- === OPTIONS - Quiz 5 ===
INSERT INTO `Option` (`id`, `content`, `isCorrect`, `order`, `questionId`) VALUES
('o5_001_1', 'Karbon dioksida (CO₂)', false, 1, 'q5_001'),
('o5_001_2', 'Oksigen (O₂)', true, 2, 'q5_001'),
('o5_001_3', 'Nitrogen (N₂)', false, 3, 'q5_001'),
('o5_001_4', 'Hidrogen (H₂)', false, 4, 'q5_001'),
('o5_002_1', '3 lapisan', false, 1, 'q5_002'),
('o5_002_2', '4 lapisan', false, 2, 'q5_002'),
('o5_002_3', '5 lapisan', true, 3, 'q5_002'),
('o5_002_4', '6 lapisan', false, 4, 'q5_002'),
('o5_003_1', 'CO₂', false, 1, 'q5_003'),
('o5_003_2', 'H₂O', true, 2, 'q5_003'),
('o5_003_3', 'NaCl', false, 3, 'q5_003'),
('o5_003_4', 'O₂', false, 4, 'q5_003'),
('o5_004_1', 'Paru-paru', false, 1, 'q5_004'),
('o5_004_2', 'Hati', false, 2, 'q5_004'),
('o5_004_3', 'Jantung', true, 3, 'q5_004'),
('o5_004_4', 'Ginjal', false, 4, 'q5_004'),
('o5_005_1', 'Mitokondria', false, 1, 'q5_005'),
('o5_005_2', 'Nukleus', false, 2, 'q5_005'),
('o5_005_3', 'Kloroplas', true, 3, 'q5_005'),
('o5_005_4', 'Ribosom', false, 4, 'q5_005');

-- Update category quiz counts
UPDATE `Category` SET `quizCount` = 1 WHERE `id` = 'cat_sejarah';
UPDATE `Category` SET `quizCount` = 1 WHERE `id` = 'cat_matematika';
UPDATE `Category` SET `quizCount` = 1 WHERE `id` = 'cat_agama';
UPDATE `Category` SET `quizCount` = 1 WHERE `id` = 'cat_sains';

-- === ACHIEVEMENTS ===
INSERT INTO `Achievement` (`id`, `name`, `description`, `icon`, `badgeColor`, `condition`, `xpReward`) VALUES
('ach_001', 'Pemula', 'Selesaikan quiz pertamamu', '🎯', '#6366f1', '{"type":"quiz_count","value":1}', 100),
('ach_002', 'Jenius', 'Raih skor sempurna 100%', '🏆', '#f59e0b', '{"type":"perfect_score","value":1}', 500),
('ach_003', 'Konsisten', 'Login 7 hari berturut-turut', '🔥', '#f97316', '{"type":"streak","value":7}', 300),
('ach_004', 'Rajin', 'Selesaikan 10 quiz', '📚', '#3b82f6', '{"type":"quiz_count","value":10}', 200),
('ach_005', 'Master', 'Selesaikan 50 quiz', '👑', '#8b5cf6', '{"type":"quiz_count","value":50}', 1000);

SET FOREIGN_KEY_CHECKS = 1;

-- ============================================
-- Seed selesai! Data yang diinsert:
-- - 6 Kategori
-- - 1 Admin user (admin@quizb.my.id / admin123)
-- - 5 Quiz dengan masing-masing 5 soal
-- - 5 Achievement
-- ============================================
