<?php
/**
 * Installation/Configuration Admin Users - SERVICES-AE
 */

// Configuration et démarrage de la session
require_once __DIR__ . '/admin/session-config.php';
session_start();

$message = '';
$message_type = 'info';

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    try {
        // Inclure les classes nécessaires
        require_once 'config/config.php';
        require_once 'config/db.php';
        require_once 'admin/AdminUser.php';
        
        // Initialiser la classe AdminUser
        $adminUser = new AdminUser($pdo);
        
        // Créer la table
        if ($adminUser->createTable()) {
            $message = 'Table admin_users créée avec succès ! Utilisateur par défaut : admin / admin123';
            $message_type = 'success';
            
            // Log de l'installation
            error_log("Admin users table created at " . date('Y-m-d H:i:s') . " from IP: " . ($_SERVER['REMOTE_ADDR'] ?? 'unknown'));
        } else {
            $message = 'Erreur lors de la création de la table admin_users.';
            $message_type = 'danger';
        }
    } catch (Exception $e) {
        $message = 'Erreur : ' . $e->getMessage();
        $message_type = 'danger';
        error_log("Admin installation error: " . $e->getMessage());
    }
}

// Vérifier si la table existe déjà
$tableExists = false;
$userCount = 0;
try {
    require_once 'config/config.php';
    require_once 'config/db.php';
    require_once 'admin/AdminUser.php';
    
    $adminUser = new AdminUser($pdo);
    $tableExists = $adminUser->tableExists();
    
    if ($tableExists) {
        // Compter les utilisateurs
        $stmt = $pdo->query("SELECT COUNT(*) FROM admin_users");
        $userCount = $stmt->fetchColumn();
    }
} catch (Exception $e) {
    // Ignorer l'erreur pour l'affichage
}
?>
<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Installation Admin - SERVICES-AE</title>
    <link rel="icon" type="image/x-icon" href="images/fevicon/fevicon.png" />
    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" rel="stylesheet" />
    <link rel="stylesheet" href="admin/pages/assets/vendor/fonts/iconify-icons.css" />
    <link rel="stylesheet" href="admin/pages/assets/vendor/css/core.css" />
    <link rel="stylesheet" href="admin/pages/assets/css/demo.css" />
    
    <style>
        body {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            min-height: 100vh;
            font-family: 'Inter', sans-serif;
        }
        
        .install-card {
            background: rgba(255, 255, 255, 0.95);
            backdrop-filter: blur(10px);
            border-radius: 15px;
            border: 2px solid #696cff;
        }
        
        .services-brand {
            color: #696cff;
            font-weight: bold;
        }
    </style>
</head>
<body>
    <div class="container-xxl">
        <div class="authentication-wrapper authentication-basic container-p-y">
            <div class="authentication-inner py-4">
                
                <!-- Install Card -->
                <div class="card install-card">
                    <div class="card-body">
                        <!-- Logo -->
                        <div class="app-brand justify-content-center mb-4">
                            <div class="app-brand-link gap-2">
                                <span class="app-brand-logo demo">
                                    <i class="ri-settings-3-line" style="font-size: 2rem; color: #696cff;"></i>
                                </span>
                                <span class="app-brand-text demo text-body fw-bold services-brand">SERVICES-AE</span>
                            </div>
                        </div>
                        
                        <!-- Titre -->
                        <h4 class="mb-1 text-center">Installation Admin 🚀</h4>
                        <p class="mb-4 text-center">Configuration de la base de données administrateur</p>

                        <!-- Messages système -->
                        <?php if (!empty($message)): ?>
                        <div class="alert alert-<?php echo $message_type; ?>" role="alert">
                            <i class="ri ri-information-line me-2"></i>
                            <?php echo htmlspecialchars($message); ?>
                        </div>
                        <?php endif; ?>

                        <!-- Status Cards -->
                        <div class="row mb-4">
                            <div class="col-md-6">
                                <div class="card <?php echo $tableExists ? 'border-success' : 'border-warning'; ?> text-center">
                                    <div class="card-body">
                                        <i class="ri <?php echo $tableExists ? 'ri-check-circle-line text-success' : 'ri-alert-line text-warning'; ?>" style="font-size: 2rem;"></i>
                                        <h6 class="mt-2 mb-0">Table admin_users</h6>
                                        <small class="text-muted"><?php echo $tableExists ? 'Existe' : 'Non créée'; ?></small>
                                    </div>
                                </div>
                            </div>
                            <div class="col-md-6">
                                <div class="card border-info text-center">
                                    <div class="card-body">
                                        <i class="ri ri-user-3-line text-info" style="font-size: 2rem;"></i>
                                        <h6 class="mt-2 mb-0">Utilisateurs</h6>
                                        <small class="text-muted"><?php echo $userCount; ?> enregistré(s)</small>
                                    </div>
                                </div>
                            </div>
                        </div>

                        <?php if (!$tableExists): ?>
                        <!-- Install Form -->
                        <form method="POST" class="mb-3">
                            <div class="alert alert-info">
                                <h6><i class="ri ri-information-line me-2"></i>Création de la table admin_users</h6>
                                <p class="mb-0">Cette opération va créer la table pour stocker les utilisateurs administrateurs avec support des avatars.</p>
                            </div>
                            
                            <button class="btn btn-primary d-grid w-100" type="submit">
                                <i class="ri ri-download-line me-2"></i>
                                Installer la Base de Données
                            </button>
                        </form>
                        <?php else: ?>
                        <!-- Already Installed -->
                        <div class="alert alert-success text-center">
                            <i class="ri ri-check-circle-line me-2"></i>
                            <strong>Installation terminée !</strong><br>
                            La table admin_users est prête à l'utilisation.
                        </div>
                        
                        <div class="d-grid gap-2">
                            <a href="admin-login.php" class="btn btn-primary">
                                <i class="ri ri-login-box-line me-2"></i>
                                Accéder à l'Administration
                            </a>
                            <a href="admin/admin-profile.php" class="btn btn-outline-secondary">
                                <i class="ri ri-user-3-line me-2"></i>
                                Gestion du Profil
                            </a>
                        </div>
                        <?php endif; ?>

                        <!-- Info technique -->
                        <div class="mt-4 text-center">
                            <small class="text-muted">
                                <strong>Informations par défaut :</strong><br>
                                Utilisateur : <code>admin</code> | Mot de passe : <code>admin123</code><br>
                                <em>Changez le mot de passe après la première connexion</em>
                            </small>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>

    <!-- Core JS -->
    <script src="admin/pages/assets/vendor/libs/jquery/jquery.js"></script>
    <script src="admin/pages/assets/vendor/js/bootstrap.js"></script>
</body>
</html>