<?php
// On affiche les erreurs pour comprendre si ça plante encore
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

// 1. Création du dossier de stockage
if (!is_dir('data')) {
    if (!mkdir('data', 0755, true)) {
        die("<h1>❌ Erreur Permissions</h1><p>Impossible de créer le dossier <b>/data/</b>.<br>Créez-le manuellement via votre FTP à la racine du wiki.</p>");
    }
}

// 2. Création des fichiers un par un (Méthode sécurisée sans Heredoc)

// --- PAGE 1 : PRESENTATION ---
$content1 = "# 1. Présentation Générale\n\n";
$content1 .= "## 1.1. Accueil et Mission\n";
$content1 .= "Cette page est la porte d'entrée de votre application MyParcs. Elle sert de vitrine pour présenter les fonctionnalités.\n\n";
$content1 .= "| Fonctionnalité | Rôle (Pro) |\n| :--- | :--- |\n| **Génie Optimiseur** | Calcule le chemin le plus court. |\n| **Radar** | Analyse l'historique d'affluence. |\n\n";
$content1 .= "## 1.2. Guide de l'Interface\n";
$content1 .= "L'interface est conçue autour d'un système de **Dark Mode** par défaut pour économiser la batterie en parc.\n";

file_put_contents('data/1_Presentation.md', $content1);


// --- PAGE 2 : COMPTE ---
$content2 = "# 2. Compte & Accès\n\n";
$content2 .= "## 2.1. Créer un Compte\n";
$content2 .= "La page d'inscription (`register.php`) vérifie la majorité de l'utilisateur (+18 ans).\n\n";
$content2 .= "> **Note :** Par défaut, un nouveau compte a le statut `is_active = 0` et doit être validé par un admin.\n\n";
$content2 .= "## 2.2. Connexion\n";
$content2 .= "La page de connexion crée la SESSION utilisateur si le mot de passe est correct.";

file_put_contents('data/2_Compte_Acces.md', $content2);


// --- PAGE 3 : FONCTIONNALITES ---
$content3 = "# 3. Fonctionnalités de Base\n\n";
$content3 .= "## 3.1. Tableau de Bord\n";
$content3 .= "Le tableau de bord (`dashboard.php`) affiche la grille des parcs. Une pastille colorée indique si le parc est ouvert.\n\n";
$content3 .= "## 3.2. Liste des Attractions (Live)\n";
$content3 .= "Cette page interroge l'API pour afficher les temps d'attente. En mode mobile (`?view=mobile`), l'affichage devient compact.";

file_put_contents('data/3_Fonctionnalites.md', $content3);


// --- PAGE 4 : PLANIFICATION ---
$content4 = "# 4. Outils Premium\n\n";
$content4 .= "## 4.1. Mes Séjours\n";
$content4 .= "Permet de créer des voyages. Seul le créateur peut supprimer un voyage.\n\n";
$content4 .= "## 4.6. Génie Optimiseur (IA)\n";
$content4 .= "Le script `optimizer.php` utilise un algorithme glouton (Greedy) pour choisir la prochaine attraction en fonction de la distance GPS et du temps d'attente actuel.";

file_put_contents('data/4_Planification.md', $content4);


// --- PAGE 5 : ADMINISTRATION ---
$content5 = "# 5. Administration\n\n";
$content5 .= "## 5.1. Dashboard Admin\n";
$content5 .= "Accessible uniquement si le rôle de l'utilisateur est `admin`.\n\n";
$content5 .= "## 5.7. Outils Système\n";
$content5 .= "* **Vider le Cache** : Relance l'OPcache PHP.\n";
$content5 .= "* **Audit** : Vérifie l'intégrité de la BDD.\n";
$content5 .= "* **Backup** : Télécharge un ZIP complet du site.";

file_put_contents('data/5_Administration.md', $content5);

// 3. Message de succès
echo "<div style='font-family:sans-serif; text-align:center; padding:50px;'>";
echo "<h1 style='color:green'>✅ Installation Réussie !</h1>";
echo "<p>Les 5 fichiers de documentation ont été créés dans le dossier <code>/data/</code>.</p>";
echo "<p>Aucune base de données SQL n'est requise pour ce Wiki.</p>";
echo "<br><a href='index.php' style='background:#38bdf8; color:white; padding:15px 30px; text-decoration:none; border-radius:5px; font-weight:bold;'>Accéder au Wiki</a>";
echo "</div>";
?>