base.html 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <!DOCTYPE html>
  2. <html lang="fr" class="h-full bg-gray-50">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>{% block title %}Backup Manager{% endblock %} — {{ instance_name }}</title>
  7. <script src="https://cdn.tailwindcss.com"></script>
  8. </head>
  9. <body class="h-full flex flex-col">
  10. <nav class="bg-gray-900 text-white shadow-lg">
  11. <div class="max-w-7xl mx-auto px-6 py-3 flex items-center justify-between">
  12. <div class="flex items-center gap-3">
  13. <svg class="w-6 h-6 text-blue-400" fill="none" stroke="currentColor" viewBox="0 0 24 24">
  14. <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
  15. d="M5 12h14M5 12l4-4m-4 4l4 4M19 12l-4-4m4 4l-4 4"/>
  16. </svg>
  17. <a href="{{ url_for('index') }}" class="text-lg font-bold tracking-tight">Backup Manager</a>
  18. <span class="bg-blue-600 text-xs font-medium px-2 py-0.5 rounded">{{ instance_name }}</span>
  19. </div>
  20. <div class="flex items-center gap-4 text-sm">
  21. <a href="{{ url_for('index') }}" class="text-gray-300 hover:text-white transition">Dashboard</a>
  22. <a href="{{ url_for('remote_instances_list') }}" class="text-gray-300 hover:text-white transition">Instances</a>
  23. <a href="{{ url_for('destinations_list') }}" class="text-gray-300 hover:text-white transition">Destinations</a>
  24. <a href="{{ url_for('settings') }}" class="text-gray-300 hover:text-white transition">Paramètres</a>
  25. <a href="{{ url_for('job_new') }}"
  26. class="bg-blue-600 hover:bg-blue-700 text-white px-3 py-1.5 rounded font-medium transition">
  27. + Nouveau job
  28. </a>
  29. </div>
  30. </div>
  31. </nav>
  32. <main class="flex-1 max-w-7xl mx-auto w-full px-6 py-8">
  33. {% with messages = get_flashed_messages(with_categories=true) %}
  34. {% if messages %}
  35. <div class="mb-6 space-y-2">
  36. {% for category, message in messages %}
  37. <div class="px-4 py-3 rounded-lg text-sm font-medium
  38. {% if category == 'error' %}bg-red-50 text-red-800 border border-red-200
  39. {% elif category == 'info' %}bg-blue-50 text-blue-800 border border-blue-200
  40. {% else %}bg-green-50 text-green-800 border border-green-200{% endif %}">
  41. {{ message }}
  42. </div>
  43. {% endfor %}
  44. </div>
  45. {% endif %}
  46. {% endwith %}
  47. {% block content %}{% endblock %}
  48. </main>
  49. <footer class="text-center text-xs text-gray-400 py-4">
  50. Backup Manager — instance <strong>{{ instance_name }}</strong>
  51. </footer>
  52. </body>
  53. </html>