-- Database Schema for Montessori Interactive Classroom Experience
CREATE DATABASE IF NOT EXISTS `montessori_lab` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
USE `montessori_lab`;

-- Drop existing tables in reverse order of dependency
DROP TABLE IF EXISTS `game_results`;
DROP TABLE IF EXISTS `leads`;
DROP TABLE IF EXISTS `tools`;
DROP TABLE IF EXISTS `corners`;

-- 1. Table: corners
CREATE TABLE `corners` (
  `id` INT AUTO_INCREMENT PRIMARY KEY,
  `title_ar` VARCHAR(255) NOT NULL,
  `title_en` VARCHAR(255) NOT NULL,
  `slug` VARCHAR(255) NOT NULL UNIQUE,
  `description` TEXT NULL,
  `image` VARCHAR(255) NULL,
  `sort_order` INT DEFAULT 0,
  `is_active` TINYINT DEFAULT 1,
  `created_at` DATETIME NULL,
  `updated_at` DATETIME NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 2. Table: tools
CREATE TABLE `tools` (
  `id` INT AUTO_INCREMENT PRIMARY KEY,
  `corner_id` INT NOT NULL,
  `name_ar` VARCHAR(255) NOT NULL,
  `name_en` VARCHAR(255) NOT NULL,
  `slug` VARCHAR(255) NOT NULL UNIQUE,
  `tool_type` ENUM('webxr','marker','mediapipe','mixed') DEFAULT 'mixed',
  `age_group` VARCHAR(100) NULL,
  `educational_goal` TEXT NULL,
  `usage_steps` TEXT NULL,
  `common_mistakes` TEXT NULL,
  `preview_image` VARCHAR(255) NULL,
  `glb_path` VARCHAR(255) NULL,
  `usdz_path` VARCHAR(255) NULL,
  `related_course_title` VARCHAR(255) NULL,
  `related_course_url` VARCHAR(255) NULL,
  `whatsapp_url` VARCHAR(255) NULL,
  `is_active` TINYINT DEFAULT 1,
  `sort_order` INT DEFAULT 0,
  `created_at` DATETIME NULL,
  `updated_at` DATETIME NULL,
  FOREIGN KEY (`corner_id`) REFERENCES `corners`(`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 3. Table: leads
CREATE TABLE `leads` (
  `id` INT AUTO_INCREMENT PRIMARY KEY,
  `name` VARCHAR(150) NOT NULL,
  `phone` VARCHAR(50) NOT NULL,
  `user_type` VARCHAR(100) NULL,
  `child_age_group` VARCHAR(100) NULL,
  `selected_corner` VARCHAR(100) NULL,
  `selected_tool` VARCHAR(100) NULL,
  `recommended_course` VARCHAR(255) NULL,
  `source` VARCHAR(100) DEFAULT 'immersive_lab',
  `created_at` DATETIME NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- 4. Table: game_results
CREATE TABLE `game_results` (
  `id` INT AUTO_INCREMENT PRIMARY KEY,
  `game_type` VARCHAR(100) NOT NULL,
  `tool_slug` VARCHAR(100) NOT NULL,
  `score` INT DEFAULT 0,
  `total` INT DEFAULT 100,
  `duration_seconds` INT DEFAULT 0,
  `phone` VARCHAR(50) NULL,
  `created_at` DATETIME NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- Seed Data

-- 1. Insert Corners
INSERT INTO `corners` (`id`, `title_ar`, `title_en`, `slug`, `description`, `image`, `sort_order`, `is_active`, `created_at`, `updated_at`) VALUES
(1, 'ركن اللغة', 'Language Corner', 'language-corner', 'يحتوي على أنشطة حسية لتطوير مهارات القراءة والكتابة وتدريب عضلات اليد على إمساك القلم من خلال تتبع الحروف الخشبية وحروف الصنفرة.', 'assets/images/corners/language.jpg', 1, 1, NOW(), NOW()),
(2, 'ركن الألوان والتربية الحسية', 'Color & Sensory Corner', 'color-corner', 'يركز على تنمية التمييز البصري للألوان وتصنيفها ومطابقتها وتدريب الحواس المختلفة للطفل باستخدام بطاقات الألوان.', 'assets/images/corners/sensory.jpg', 2, 1, NOW(), NOW()),
(3, 'ركن الأرقام والرياضيات', 'Mathematics Corner', 'number-corner', 'يساعد الطفل على فهم الأرقام وربط الرقم الرمزي بالكمية الحسية الفعلية وتقدير الأوزان والأطوال باستخدام أدوات العد وصندوق الأرقام.', 'assets/images/corners/math.jpg', 3, 1, NOW(), NOW());

-- 2. Insert Tools
INSERT INTO `tools` (`id`, `corner_id`, `name_ar`, `name_en`, `slug`, `tool_type`, `age_group`, `educational_goal`, `usage_steps`, `common_mistakes`, `preview_image`, `glb_path`, `usdz_path`, `related_course_title`, `related_course_url`, `whatsapp_url`, `is_active`, `sort_order`, `created_at`, `updated_at`) VALUES
(1, 1, 'حروف الصنفرة', 'Sandpaper Letters', 'sandpaper-letters', 'mixed', '3-6 سنوات', 
'تهيئة الطفل للكتابة من خلال تدريب عضلات اليد وتكوين ذاكرة عضلية وبصرية لشكل الحروف، وربط رمز الحرف بصوته اللفظي.', 
'1. تتبع الحرف باستخدام إصبعين (السبابة والوسطى) بالاتجاه الصحيح للكتابة من الأعلى للأسفل.\n2. انطق صوت الحرف (وليس اسمه) بوضوح أثناء التتبع (مثال: أأأ بدلاً من ألف).', 
'تتبع الحرف بالاتجاه المعاكس (من الأسفل للأعلى)، أو التسرع دون لمس الملمس الخشن للحرف.', 
'assets/images/tools/sandpaper-letters.jpg', NULL, NULL, 'دبلومة منهج اللغة في مونتيسوري المتكاملة', 'https://example.com/language-diploma', 'https://wa.me/201234567890?text=أريد%20الاستفسار%20عن%20دبلومة%20منهج%20اللغة%20في%20مونتيسوري', 1, 1, NOW(), NOW()),

(2, 2, 'ألواح الألوان', 'Color Tablets', 'color-tablets', 'mixed', '3-6 سنوات', 
'تنمية التمييز البصري للألوان الأساسية والفرعية، وتدريب الطفل على المقارنة والترتيب والتدرج اللوني، وتطوير الملاحظة البصرية.', 
'1. خذ لوحين من كل لون وضعهما بشكل عشوائي.\n2. ابحث عن الألواح المتطابقة وضعها جنباً إلى جنب.\n3. قم بترتيب الألوان وتدرجها من الأغمق إلى الأفتح.', 
'مطابقة الألوان تحت إضاءة خافتة جداً، أو عدم التركيز على حواف الألواح مما يشتت الانتباه عن اللون نفسه.', 
'assets/images/tools/color-tablets.jpg', NULL, NULL, 'دبلومة التربية الحسية للأطفال بمرحلة الطفولة المبكرة', 'https://example.com/sensory-diploma', 'https://wa.me/201234567890?text=أريد%20الاستفسار%20عن%20دبلومة%20التربية%20الحسية%20في%20مونتيسوري', 1, 2, NOW(), NOW()),

(3, 3, 'صندوق المغازل والعد', 'Number Box & Spindles', 'number-box', 'mixed', '3-6 سنوات', 
'فهم مفهوم الكمية وربط الأرقام الرمزية (من 0 إلى 9) بالكميات الملموسة، واستيعاب مفهوم الرقم صفر (اللاشيء).', 
'1. اقرأ الرقم المكتوب على القسم الخاص بالصندوق.\n2. قم بعد المغازل الخشبية واحداً تلو الآخر وضع العدد المناسب في القسم.\n3. تأكد من أن القسم الخاص بالرقم صفر (0) يظل فارغاً تماماً.', 
'وضع المغازل دون عدها بصوت مرتفع، أو وضع مغازل في قسم الصفر نتيجة عدم فهم معناه الحسي.', 
'assets/images/tools/number-box.jpg', NULL, NULL, 'دبلومة الرياضيات والعد العملي بمنهج مونتيسوري', 'https://example.com/math-diploma', 'https://wa.me/201234567890?text=أريد%20الاستفسار%20عن%20دبلومة%20الرياضيات%20في%20مونتيسوري', 1, 3, NOW(), NOW());
