<?php
header('Content-Type: application/json; charset=utf-8');
require 'db.php';

$adminKey = 'titoue-2026';
$key = isset($_GET['key']) ? $_GET['key'] : '';
if (!hash_equals($adminKey, (string)$key)) {
    http_response_code(403);
    echo json_encode(array('message' => 'Cle admin invalide'), JSON_UNESCAPED_UNICODE);
    exit;
}

$pdo->exec("CREATE TABLE IF NOT EXISTS quiz_questions (
    id INT AUTO_INCREMENT PRIMARY KEY,
    category VARCHAR(80) NOT NULL,
    question TEXT NOT NULL,
    options LONGTEXT NOT NULL,
    answer VARCHAR(500) NOT NULL,
    explanation TEXT,
    difficulty VARCHAR(40) DEFAULT 'standard',
    active TINYINT(1) NOT NULL DEFAULT 1,
    source_hash CHAR(40) DEFAULT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    UNIQUE KEY uq_quiz_source_hash (source_hash),
    KEY idx_quiz_category_active (category, active),
    KEY idx_quiz_active (active)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;");

$questions = array(
    array('category'=>'alcool','question'=>'Quelle contenance correspond le plus souvent a une bouteille de vin standard ?','options'=>array('37,5 cl','75 cl','1,5 L','3 L'),'answer'=>'75 cl','explanation'=>"La bouteille standard de vin contient generalement 75 cl. C'est le format le plus courant en restauration et en cave.",'difficulty'=>'facile','active'=>1),
    array('category'=>'alcool','question'=>'Comment appelle-t-on une bouteille de champagne de 1,5 litre ?','options'=>array('Magnum','Jeroboam','Mathusalem','Balthazar'),'answer'=>'Magnum','explanation'=>"Un magnum contient 1,5 L, soit l'equivalent de deux bouteilles standard.",'difficulty'=>'facile','active'=>1),
    array('category'=>'alcool','question'=>'En champagne, quelle contenance correspond le plus souvent a un Jeroboam ?','options'=>array('1,5 L','3 L','6 L','12 L'),'answer'=>'3 L','explanation'=>'En Champagne, le Jeroboam fait generalement 3 L. Attention, les noms peuvent varier selon les regions viticoles.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Quelle grande bouteille de champagne contient environ 6 litres ?','options'=>array('Magnum','Mathusalem','Balthazar','Nabuchodonosor'),'answer'=>'Mathusalem','explanation'=>'Le Mathusalem contient environ 6 L, soit huit bouteilles standard.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Quelle grande bouteille contient environ 12 litres ?','options'=>array('Balthazar','Magnum','Jeroboam','Piccolo'),'answer'=>'Balthazar','explanation'=>'Le Balthazar contient environ 12 L, soit seize bouteilles standard.','difficulty'=>'difficile','active'=>1),
    array('category'=>'alcool','question'=>'Quel type de whisky doit venir d Ecosse pour porter le nom de Scotch whisky ?','options'=>array('Un whisky japonais','Un whisky ecossais','Un bourbon americain','Un whisky irlandais'),'answer'=>'Un whisky ecossais','explanation'=>'Le Scotch whisky est produit en Ecosse selon des regles precises, dont un vieillissement minimal en fut.','difficulty'=>'facile','active'=>1),
    array('category'=>'alcool','question'=>'Quelle cereale doit representer au moins 51 % de la recette d un bourbon ?','options'=>array('Le seigle','L orge','Le mais','Le riz'),'answer'=>'Le mais','explanation'=>'Le bourbon americain doit etre produit avec au moins 51 % de mais dans le mash bill.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Que signifie l expression single malt pour un whisky ?','options'=>array('Un whisky d une seule distillerie a base d orge maltee','Un whisky sans alcool','Un whisky melange avec du rhum','Un whisky vieilli un seul an'),'answer'=>'Un whisky d une seule distillerie a base d orge maltee','explanation'=>'Single malt signifie qu il vient d une seule distillerie et qu il est produit a partir d orge maltee.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Dans le whisky, quel ingredient ou procede donne souvent des notes fumees et medicinales ?','options'=>array('La tourbe','Le sucre glace','La vanille synthetique','Le houblon'),'answer'=>'La tourbe','explanation'=>'La tourbe peut etre utilisee pour secher l orge maltee. Elle donne des aromes fumes, iodes ou medicinaux.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Comment appelle-t-on la part d alcool qui s evapore pendant le vieillissement en fut ?','options'=>array('La part des anges','Le col de cygne','Le premier jus','La lie'),'answer'=>'La part des anges','explanation'=>'La part des anges designe l evaporation naturelle d une partie du contenu pendant le vieillissement.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Que veut dire IPA dans le monde de la biere ?','options'=>array('India Pale Ale','Irish Pure Ale','Imperial Pilsner Amber','Italian Pale Aroma'),'answer'=>'India Pale Ale','explanation'=>'IPA signifie India Pale Ale. Ce style est souvent associe a une amertume marquee et a des aromes de houblon.','difficulty'=>'facile','active'=>1),
    array('category'=>'alcool','question'=>'Quel indicateur mesure surtout l amertume d une biere ?','options'=>array('IBU','AOC','ABV','DOCG'),'answer'=>'IBU','explanation'=>'L IBU mesure l amertume percue ou theorique d une biere. Plus il est eleve, plus la biere peut paraitre amere.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Quel style de biere est generalement sombre avec des notes de cafe ou de cacao ?','options'=>array('Stout','Pils','Saison','Blanche'),'answer'=>'Stout','explanation'=>'La stout utilise souvent des malts tres torrefies, ce qui donne des notes de cafe, cacao ou pain grille.','difficulty'=>'facile','active'=>1),
    array('category'=>'alcool','question'=>'Quelle famille de bieres est associee a une fermentation basse et a des temperatures fraiches ?','options'=>array('Lager','Lambic','Porter','IPA'),'answer'=>'Lager','explanation'=>'Les lagers fermentent a basse temperature avec des levures adaptees. Les pils sont un exemple tres connu.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Quelle biere belge est connue pour sa fermentation spontanee ?','options'=>array('Lambic','Pils','Stout','Bitter'),'answer'=>'Lambic','explanation'=>'Le lambic fermente grace a des levures et bacteries naturellement presentes dans l environnement.','difficulty'=>'difficile','active'=>1),
    array('category'=>'alcool','question'=>'Dans le vin rouge, quel element donne une sensation d astringence et de structure ?','options'=>array('Les tanins','Les bulles','Le houblon','La glycerine seule'),'answer'=>'Les tanins','explanation'=>'Les tanins viennent notamment des peaux, pepins et parfois du bois. Ils donnent de la structure au vin rouge.','difficulty'=>'facile','active'=>1),
    array('category'=>'alcool','question'=>'Que designe l AOC sur une bouteille francaise ?','options'=>array('Une appellation d origine controlee','Un taux d alcool officiel','Une capsule de degustation','Une methode de distillation'),'answer'=>'Une appellation d origine controlee','explanation'=>'L AOC protege un produit lie a une zone geographique et a un cahier des charges.','difficulty'=>'facile','active'=>1),
    array('category'=>'alcool','question'=>'Quelle methode donne les bulles du champagne traditionnel ?','options'=>array('Une seconde fermentation en bouteille','L ajout direct de soda','La congelation du vin','Une distillation du raisin'),'answer'=>'Une seconde fermentation en bouteille','explanation'=>'La methode traditionnelle provoque une seconde fermentation en bouteille, ce qui cree naturellement les bulles.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Que regroupe l idee de terroir dans le vin ?','options'=>array('Sol, climat, cepage et savoir-faire','Uniquement la couleur de l etiquette','Le prix de la bouteille','Le nombre de bouteilles produites'),'answer'=>'Sol, climat, cepage et savoir-faire','explanation'=>'Le terroir combine des facteurs naturels et humains qui influencent le style du vin.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Comment obtient-on le plus souvent un vin rose tranquille ?','options'=>array('Par une maceration courte de raisins noirs','En melangeant toujours vin rouge et vin blanc','En ajoutant du colorant','En distillant le vin'),'answer'=>'Par une maceration courte de raisins noirs','explanation'=>'La couleur vient souvent d un contact court avec les peaux de raisins noirs. Il existe des exceptions, notamment pour certains champagnes roses.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Quels ingredients sont classiques dans un mojito ?','options'=>array('Rhum, menthe, citron vert, sucre et eau gazeuse','Gin, tonic et concombre','Vodka, tomate et celeri','Whisky, sucre et bitters'),'answer'=>'Rhum, menthe, citron vert, sucre et eau gazeuse','explanation'=>'Le mojito classique associe rhum, menthe, citron vert, sucre et eau gazeuse.','difficulty'=>'facile','active'=>1),
    array('category'=>'alcool','question'=>'Quel alcool sert de base a une margarita classique ?','options'=>array('Tequila','Gin','Cognac','Rhum brun'),'answer'=>'Tequila','explanation'=>'La margarita classique se prepare avec tequila, triple sec et jus de citron vert.','difficulty'=>'facile','active'=>1),
    array('category'=>'alcool','question'=>'Quel cocktail melange gin, vermouth rouge et Campari a parts proches ?','options'=>array('Negroni','Mojito','Daiquiri','Pina colada'),'answer'=>'Negroni','explanation'=>'Le Negroni est un classique italien a base de gin, vermouth rouge et Campari.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Quel cocktail classique se prepare souvent avec whisky, sucre, bitters et zeste d orange ?','options'=>array('Old Fashioned','Spritz','Cosmopolitan','Margarita'),'answer'=>'Old Fashioned','explanation'=>'L Old Fashioned est un cocktail court et aromatique, souvent servi avec bourbon ou rye whiskey.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Quel ingredient donne sa couleur orange a l Aperol Spritz ?','options'=>array('Aperol','Tequila','Creme de menthe','Absinthe'),'answer'=>'Aperol','explanation'=>'Le Spritz le plus connu melange Aperol, prosecco et eau gazeuse.','difficulty'=>'facile','active'=>1),
    array('category'=>'alcool','question'=>'Que signifie ABV sur une etiquette de boisson ?','options'=>array('Alcohol by volume','Age before vintage','Aroma balance value','Ale brewing vessel'),'answer'=>'Alcohol by volume','explanation'=>'ABV signifie Alcohol by volume, c est-a-dire le pourcentage d alcool par volume.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Quel procede transforme les sucres en alcool et en dioxyde de carbone ?','options'=>array('La fermentation','La pasteurisation','La filtration','La maceration a froid uniquement'),'answer'=>'La fermentation','explanation'=>'Pendant la fermentation, les levures transforment les sucres en alcool et CO2.','difficulty'=>'facile','active'=>1),
    array('category'=>'alcool','question'=>'Quel procede concentre l alcool en separant les vapeurs selon leur volatilite ?','options'=>array('La distillation','La decantation','La carbonatation','Le remuage'),'answer'=>'La distillation','explanation'=>'La distillation permet de produire des spiritueux en concentrant l alcool d un liquide fermente.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Quelle boisson est un spiritueux francais produit a partir de vin distille dans la region de Cognac ?','options'=>array('Cognac','Calvados','Pastis','Chartreuse'),'answer'=>'Cognac','explanation'=>'Le cognac est une eau-de-vie de vin produite dans une zone delimitee autour de Cognac.','difficulty'=>'facile','active'=>1),
    array('category'=>'alcool','question'=>'Quel spiritueux francais est produit a partir de pommes, surtout associe a la Normandie ?','options'=>array('Calvados','Armagnac','Pastis','Kirsch'),'answer'=>'Calvados','explanation'=>'Le calvados est une eau-de-vie de cidre ou de poire, tres liee a la Normandie.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Quelle difference generale existe entre une liqueur et un spiritueux sec ?','options'=>array('Une liqueur est sucree et aromatisee','Une liqueur est toujours sans alcool','Une liqueur est toujours une biere','Une liqueur est uniquement du vin rouge'),'answer'=>'Une liqueur est sucree et aromatisee','explanation'=>'Une liqueur contient generalement du sucre et des aromes, avec un degre variable selon les recettes.','difficulty'=>'standard','active'=>1),
    array('category'=>'alcool','question'=>'Quel alcool anise francais se trouble souvent quand on ajoute de l eau ?','options'=>array('Pastis','Porto','Bourbon','Prosecco'),'answer'=>'Pastis','explanation'=>'Le pastis devient trouble avec l eau a cause des huiles essentielles d anis peu solubles.','difficulty'=>'facile','active'=>1),
    array('category'=>'alcool','question'=>'Quel vin fortifie portugais est souvent servi a l aperitif ou au dessert ?','options'=>array('Porto','Chianti','Sancerre','Chablis'),'answer'=>'Porto','explanation'=>'Le porto est un vin fortifie de la vallee du Douro, souvent doux et plus alcoolise qu un vin classique.','difficulty'=>'facile','active'=>1),
    array('category'=>'alcool','question'=>'Quelle boisson japonaise est souvent appelee vin de riz, meme si elle est brassee ?','options'=>array('Sake','Soju','Mezcal','Vermouth'),'answer'=>'Sake','explanation'=>'Le sake est produit par fermentation du riz. Techniquement, son procede se rapproche davantage du brassage que du vin.','difficulty'=>'standard','active'=>1)
);

$stmt = $pdo->prepare("INSERT INTO quiz_questions
    (category, question, options, answer, explanation, difficulty, active, source_hash)
    VALUES (?, ?, ?, ?, ?, ?, ?, ?)
    ON DUPLICATE KEY UPDATE
      options = VALUES(options),
      explanation = VALUES(explanation),
      difficulty = VALUES(difficulty),
      active = VALUES(active),
      updated_at = CURRENT_TIMESTAMP");

$imported = 0;
foreach ($questions as $q) {
    $hashBase = strtolower(trim($q['category']) . '|' . trim($q['question']) . '|' . trim($q['answer']));
    $stmt->execute(array(
        $q['category'],
        $q['question'],
        json_encode($q['options'], JSON_UNESCAPED_UNICODE),
        $q['answer'],
        $q['explanation'],
        $q['difficulty'],
        $q['active'],
        sha1($hashBase)
    ));
    $imported++;
}

$enum = "ENUM('blitz','memory','imposteur','geo','sondage','juste_prix','timeline','popcorn','alcool_order') NOT NULL";
try { $pdo->exec("ALTER TABLE group_games MODIFY game_type $enum"); } catch (Throwable $e) {}
try { $pdo->exec("ALTER TABLE game_questions MODIFY game_type $enum"); } catch (Throwable $e) {}

$pdo->exec("CREATE TABLE IF NOT EXISTS game_questions (
    id INT AUTO_INCREMENT PRIMARY KEY,
    game_type $enum,
    question TEXT NOT NULL,
    options TEXT NOT NULL,
    answer VARCHAR(255) NOT NULL,
    explanation TEXT,
    date_event VARCHAR(100) DEFAULT NULL,
    hints TEXT DEFAULT NULL,
    active TINYINT(1) DEFAULT 1,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    KEY idx_game_type_active (game_type, active)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;");

$pdo->exec("DELETE FROM game_questions WHERE game_type = 'alcool_order'");

$alcoolOrder = array(
    array('Biere sans alcool', '0.5', '0,5% vol.', 'Une biere dite sans alcool peut contenir jusqu a 1,2% vol. en France, mais beaucoup tournent autour de 0,5%.'),
    array('Panache', '1.5', '1,5% vol.', 'Le panache melange biere et limonade : son degre est generalement tres faible.'),
    array('Biere legere', '3.5', '3,5% vol.', 'Une biere legere se situe souvent autour de 3 a 4% vol.'),
    array('Biere blonde classique', '5', '5% vol.', 'Beaucoup de lagers et blondes classiques sont proches de 5% vol.'),
    array('Cidre brut', '5.5', '5,5% vol.', 'Le cidre brut varie selon les maisons, souvent autour de 4,5 a 6% vol.'),
    array('IPA', '6.5', '6,5% vol.', 'Les IPA modernes sont souvent plus fortes qu une lager classique, autour de 6 a 7% vol.'),
    array('Prosecco', '11', '11% vol.', 'Le prosecco tourne souvent autour de 11% vol., selon les cuvees.'),
    array('Champagne brut', '12', '12% vol.', 'Le champagne est generalement autour de 12% vol.'),
    array('Vin blanc sec', '12.5', '12,5% vol.', 'Un vin blanc sec est souvent entre 11,5 et 13,5% vol.'),
    array('Vin rouge classique', '13.5', '13,5% vol.', 'Beaucoup de rouges modernes se situent autour de 13 a 14,5% vol.'),
    array('Vermouth', '16', '16% vol.', 'Le vermouth est un vin aromatise et fortifie, souvent autour de 15 a 18% vol.'),
    array('Liqueur cremeuse', '17', '17% vol.', 'Certaines liqueurs cremeuses sont autour de 17% vol., mais les recettes varient.'),
    array('Porto', '20', '20% vol.', 'Le porto est un vin fortifie, souvent proche de 19 a 22% vol.'),
    array('Rhum blanc', '37.5', '37,5% vol.', 'Beaucoup de rhums blancs de grande distribution commencent autour de 37,5% vol.'),
    array('Vodka', '40', '40% vol.', 'La vodka classique est tres souvent embouteillee a 40% vol.'),
    array('Whisky', '43', '43% vol.', 'Le whisky existe souvent a 40% vol., mais beaucoup de single malts sont embouteilles autour de 43% vol.'),
    array('Pastis', '45', '45% vol.', 'Le pastis est souvent a 45% vol. avant dilution avec de l eau.'),
    array('Absinthe', '60', '60% vol.', 'L absinthe peut etre tres forte, souvent entre 45 et 70% vol. selon les bouteilles.')
);

$gameStmt = $pdo->prepare("INSERT INTO game_questions
    (game_type, question, options, answer, explanation, date_event, hints, active)
    VALUES ('alcool_order', ?, '[]', ?, ?, ?, '[]', 1)");
$gameImported = 0;
foreach ($alcoolOrder as $item) {
    $gameStmt->execute(array($item[0], $item[1], $item[3], $item[2]));
    $gameImported++;
}

echo json_encode(array(
    'message' => 'Questions Alcools importees',
    'category' => 'alcool',
    'imported' => $imported,
    'game_type' => 'alcool_order',
    'game_imported' => $gameImported
), JSON_UNESCAPED_UNICODE);
