-- Zeus TV 2026 Yılbaşı Çekiliş Sistemi - Veritabanı Şeması
-- MySQL Veritabanı Oluşturma Scripti
-- cPanel üzerinden phpMyAdmin'de çalıştırın

-- Veritabanı oluşturma (opsiyonel - cPanel'den de oluşturabilirsiniz)
-- CREATE DATABASE IF NOT EXISTS zeus_raffle CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

-- Tablo: settings (Çekiliş ayarları)
CREATE TABLE IF NOT EXISTS settings (
    id INT PRIMARY KEY DEFAULT 1,
    raffle_active TINYINT(1) DEFAULT 1 COMMENT 'Çekiliş aktif mi',
    show_winners TINYINT(1) DEFAULT 0 COMMENT 'Kazananlar gösterilsin mi',
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- Varsayılan ayarı ekle
INSERT INTO settings (id, raffle_active, show_winners) VALUES (1, 1, 0)
ON DUPLICATE KEY UPDATE raffle_active = VALUES(raffle_active), show_winners = VALUES(show_winners);

-- Tablo: admins (Admin kullanıcıları)
CREATE TABLE IF NOT EXISTS admins (
    id INT AUTO_INCREMENT PRIMARY KEY,
    username VARCHAR(100) NOT NULL UNIQUE COMMENT 'Admin kullanıcı adı',
    password VARCHAR(255) NOT NULL COMMENT 'Şifre (bcrypt hash)',
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- Örnek admin kullanıcısı (şifre: admin123 - DEĞİŞTİRİN!)
-- Şifre: $2b$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi
INSERT INTO admins (username, password) VALUES 
('admin', '$2b$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi')
ON DUPLICATE KEY UPDATE username = VALUES(username);

-- Tablo: participants (Katılımcılar)
CREATE TABLE IF NOT EXISTS participants (
    id INT AUTO_INCREMENT PRIMARY KEY,
    username VARCHAR(50) NOT NULL COMMENT 'Forum kullanıcı adı',
    ip_address VARCHAR(45) NOT NULL COMMENT 'Katılımcı IP adresi',
    is_winner TINYINT(1) DEFAULT 0 COMMENT 'Kazanan mı',
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    INDEX idx_username (username),
    INDEX idx_ip (ip_address),
    INDEX idx_winner (is_winner),
    INDEX idx_created (created_at)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- NOT: Admin şifresini değiştirmek için aşağıdaki sorguyu kullanabilirsiniz:
-- UPDATE admins SET password = '$2b$10$YENİ ŞİFRE BURAYA' WHERE username = 'admin';

-- Şifre oluşturmak için Node.js'de bcrypt kullanabilirsiniz:
-- const bcrypt = require('bcrypt');
-- bcrypt.hash('yeni_sifre', 10).then(hash => console.log(hash));
