| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- <!DOCTYPE html>
- <html lang="fr">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Map Generator</title>
- <?php AssetLoader::loadCSS(['/assets/bootstrap.min.css', '/assets/bootstrap-icons.min.css', '/assets/styles.css']); ?>
- </head>
- <body>
- <?php
- // Démarrer la session si nécessaire pour les messages flash
- if (session_status() === PHP_SESSION_NONE) {
- session_start();
- }
- ?>
- <header id="global-header">
- <nav class="navbar navbar-expand-lg navbar-dark bg-dark">
- <div class="container-fluid">
- <a class="navbar-brand" href="#">
- <i class="bi bi-geo-alt-fill me-2"></i>
- Map Generator
- </a>
- <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
- <span class="navbar-toggler-icon"></span>
- </button>
- <div class="collapse navbar-collapse" id="navbarNav">
- <ul class="navbar-nav ms-auto">
- <li class="nav-item dropdown">
- <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
- <i class="bi bi-gear me-1"></i>Paramètres
- </a>
- <ul class="dropdown-menu" aria-labelledby="navbarDropdown">
- <li><a class="dropdown-item" href="/projects/new">
- <i class="bi bi-plus-circle me-1"></i>Nouveau projet
- </a></li>
- <li><a class="dropdown-item" href="#" id="loadBtn">
- <i class="bi bi-folder2-open me-1"></i>Charger
- </a></li>
- <li><a class="dropdown-item" href="#" id="saveBtn">
- <i class="bi bi-save me-1"></i>Sauvegarder
- </a></li>
- <li>
- <hr class="dropdown-divider">
- </li>
- <li><a class="dropdown-item" href="#">À propos</a></li>
- </ul>
- </li>
- </ul>
- </div>
- </div>
- </nav>
- </header>
- <?php include __DIR__ . '/tools-sidebar.php'; ?>
- <div class="main-content">
- <!-- Affichage des messages flash (succès / erreur) -->
- <div class="container mt-3">
- <?php if (!empty($_SESSION['flash']) && is_array($_SESSION['flash'])): ?>
- <?php foreach ($_SESSION['flash'] as $flash): ?>
- <?php $type = $flash['type'] ?? 'info'; $message = $flash['message'] ?? ''; ?>
- <div class="alert alert-<?php echo $type === 'error' ? 'danger' : ($type === 'success' ? 'success' : 'info'); ?> alert-dismissible fade show" role="alert">
- <?php echo htmlspecialchars($message); ?>
- <button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Fermer"></button>
- </div>
- <?php endforeach; ?>
- <?php unset($_SESSION['flash']); ?>
- <?php endif; ?>
- </div>
- <!-- Contenu principal de l'application -->
- </div>
- <?php AssetLoader::loadJS(['/assets/bootstrap.bundle.min.js', '/assets/js/loader.js']); ?>
|