-- Crear base de datos para tienda sexshop
CREATE DATABASE IF NOT EXISTS sexshop_db;
USE sexshop_db;

-- Tabla de administradores
CREATE TABLE IF NOT EXISTS admins (
  id INT AUTO_INCREMENT PRIMARY KEY,
  username VARCHAR(50) UNIQUE NOT NULL,
  password VARCHAR(255) NOT NULL,
  email VARCHAR(100) UNIQUE NOT NULL,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

-- Tabla de categorías para productos sexuales
CREATE TABLE IF NOT EXISTS categories (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(100) NOT NULL,
  description TEXT,
  icon VARCHAR(50),
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

-- Tabla de productos
CREATE TABLE IF NOT EXISTS products (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(200) NOT NULL,
  description TEXT,
  price DECIMAL(10,2) NOT NULL,
  category_id INT,
  image_url VARCHAR(500),
  images JSON,
  available BOOLEAN DEFAULT true,
  stock INT DEFAULT 0,
  featured BOOLEAN DEFAULT false,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  FOREIGN KEY (category_id) REFERENCES categories(id)
);

-- Tabla de configuración del sitio
CREATE TABLE IF NOT EXISTS site_settings (
  id INT AUTO_INCREMENT PRIMARY KEY,
  site_name VARCHAR(100) DEFAULT 'Maxi Sex Shop',
  logo_url VARCHAR(500),
  primary_color VARCHAR(7) DEFAULT '#FF3396',
  contact_phone VARCHAR(20),
  whatsapp_number VARCHAR(20),
  address TEXT,
  email VARCHAR(100),
  description TEXT,
  schedule JSON,
  social_media JSON,
  is_open BOOLEAN DEFAULT true,
  updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);

-- Tabla de banners
CREATE TABLE IF NOT EXISTS banners (
  id INT AUTO_INCREMENT PRIMARY KEY,
  title VARCHAR(200),
  image_url VARCHAR(500) NOT NULL,
  link VARCHAR(500),
  position INT DEFAULT 0,
  active BOOLEAN DEFAULT true,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

-- Tabla de pedidos
CREATE TABLE IF NOT EXISTS orders (
  id INT AUTO_INCREMENT PRIMARY KEY,
  customer_name VARCHAR(100) NOT NULL,
  customer_phone VARCHAR(20) NOT NULL,
  customer_email VARCHAR(100),
  items JSON NOT NULL,
  total DECIMAL(10,2) NOT NULL,
  status ENUM('pending', 'confirmed', 'delivered', 'cancelled') DEFAULT 'pending',
  notes TEXT,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);

-- Insertar administrador por defecto
INSERT INTO admins (username, password, email) VALUES 
('admin', '$2b$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', 'admin@maxisexshop.com');

-- Insertar categorías para tienda sexshop
INSERT INTO categories (name, description, icon) VALUES
('Juguetes Sexuales', 'Consoladores, vibradores y juguetes para adultos', 'Heart'),
('Lencería Sexy', 'Ropa interior sensual y lencería erótica', 'Eye'),
('Lubricantes y Geles', 'Lubricantes de alta calidad para mayor placer', 'Droplets'),
('BDSM y Fetiche', 'Productos para prácticas BDSM y fetiches', 'Zap'),
('Accesorios', 'Anillos, esposas y otros accesorios', 'Sparkles'),
('Para Ellas', 'Productos específicos para mujeres', 'Venus'),
('Para Ellos', 'Productos específicos para hombres', 'Mars'),
('Para Parejas', 'Juegos y productos para disfrutar en pareja', 'Users');

-- No se incluyen productos de ejemplo
-- Los productos deben ser agregados manualmente desde el panel de administración

-- Insertar configuración del sitio
INSERT INTO site_settings (site_name, logo_url, primary_color, contact_phone, whatsapp_number, address, email, description, schedule, social_media, is_open) VALUES
('Maxi Sex Shop', '/images/maxisexshop-logo.png', '#FF3396', '+584125086634', '+584125086634', 'Av. Principal #456, Ciudad', 'contacto@maxisexshop.com', 'Tu mundo de fantasía. Productos de calidad para mejorar tus experiencias íntimas.', '{"monday":"10:00 AM - 8:00 PM","tuesday":"10:00 AM - 8:00 PM","wednesday":"10:00 AM - 8:00 PM","thursday":"10:00 AM - 8:00 PM","friday":"10:00 AM - 9:00 PM","saturday":"11:00 AM - 9:00 PM","sunday":"11:00 AM - 6:00 PM"}', '{"facebook":"https://facebook.com/maxisexshop","instagram":"https://instagram.com/maxisexshop","x":"https://x.com/maxisexshop","tiktok":""}', true);

-- Insertar banners
INSERT INTO banners (title, image_url, link, position, active) VALUES
('Promoción Especial', 'https://via.placeholder.com/1200x400/FF3396/FFFFFF?text=Promocion+Especial', '/products', 1, true),
('Nueva Colección', 'https://via.placeholder.com/1200x400/FF0066/FFFFFF?text=Nueva+Coleccion', '/categories', 2, true),
('Envíos Gratis', 'https://via.placeholder.com/1200x400/9900FF/FFFFFF?text=Envios+Gratis', '/shipping', 3, true);

-- Verificar instalación
SELECT 'Base de datos configurada correctamente' as status;