<!DOCTYPE html><html lang="fr"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>{% block title %}Administration{% endblock %} - ActuFake</title> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> <style> .sidebar { min-height: 100vh; background: #212529; } .sidebar .nav-link { color: #adb5bd; padding: 10px 20px; } .sidebar .nav-link:hover, .sidebar .nav-link.active { color: #fff; background: #343a40; } .main-content { min-height: 100vh; background: #f8f9fa; } .stat-card { border-left: 4px solid #0d6efd; } .stat-card.success { border-left-color: #198754; } .stat-card.warning { border-left-color: #ffc107; } .stat-card.danger { border-left-color: #dc3545; } </style> {% block stylesheets %}{% endblock %}</head><body> <div class="container-fluid"> <div class="row"> <nav class="col-md-2 d-md-block sidebar"> <div class="position-sticky pt-3"> <div class="text-center mb-4"> <a href="{{ path('admin_dashboard') }}" class="text-white text-decoration-none"> <h4><i class="fas fa-newspaper"></i> ActuFake</h4> <small class="text-muted">Administration</small> </a> </div> <ul class="nav flex-column"> <li class="nav-item"> <a class="nav-link {% if app.request.get('_route') starts with 'admin_dashboard' %}active{% endif %}" href="{{ path('admin_dashboard') }}"> <i class="fas fa-chart-line"></i> Tableau de bord </a> </li> <li class="nav-item"> <a class="nav-link {% if app.request.get('_route') starts with 'admin_article' %}active{% endif %}" href="{{ path('admin_articles') }}"> <i class="fas fa-newspaper"></i> Articles </a> </li> <li class="nav-item"> <a class="nav-link {% if app.request.get('_route') starts with 'admin_generation' %}active{% endif %}" href="{{ path('admin_generation') }}"> <i class="fas fa-robot"></i> Génération IA </a> </li> <li class="nav-item"> <a class="nav-link {% if app.request.get('_route') starts with 'admin_prompt' %}active{% endif %}" href="{{ path('admin_prompts') }}"> <i class="fas fa-comments"></i> Prompts </a> </li> <li class="nav-item"> <a class="nav-link {% if app.request.get('_route') starts with 'admin_categor' %}active{% endif %}" href="{{ path('admin_categories') }}"> <i class="fas fa-folder"></i> Catégories </a> </li> <li class="nav-item"> <a class="nav-link {% if app.request.get('_route') starts with 'admin_contact' %}active{% endif %}" href="{{ path('admin_contact_index') }}"> <i class="fas fa-inbox"></i> Messages de contact <span id="unread-contact-badge" class="badge bg-danger ms-1" style="display: none;">0</span> </a> </li> <li class="nav-item"> <a class="nav-link {% if app.request.get('_route') starts with 'admin_social' %}active{% endif %}" href="{{ path('admin_social') }}"> <i class="fas fa-share-alt"></i> Réseaux sociaux </a> </li> <li class="nav-item"> <a class="nav-link {% if app.request.get('_route') starts with 'admin_settings' %}active{% endif %}" href="{{ path('admin_settings') }}"> <i class="fas fa-cog"></i> Paramètres du site </a> </li> <li class="nav-item"> <a class="nav-link {% if app.request.get('_route') starts with 'admin_console' %}active{% endif %}" href="{{ path('admin_console') }}"> <i class="fas fa-terminal"></i> Console Symfony </a> </li> <li class="nav-item mt-4"> <a class="nav-link" href="{{ path('home') }}" target="_blank"> <i class="fas fa-external-link-alt"></i> Voir le site </a> </li> </ul> </div> </nav> <main class="col-md-10 ms-sm-auto main-content"> <div class="p-4"> {% for type, messages in app.flashes %} {% for message in messages %} <div class="alert alert-{{ type == 'error' ? 'danger' : type }} alert-dismissible fade show"> {{ message }} <button type="button" class="btn-close" data-bs-dismiss="alert"></button> </div> {% endfor %} {% endfor %} {% block body %}{% endblock %} </div> </main> </div> </div> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script> {% block javascripts %}{% endblock %}</body></html>