patrol-control-system / notifications.html
secutorpro's picture
en mes a jour se systeme pour l'instaler dans guhub et supabase
96d812c verified
Raw
History Blame Contribute Delete
11.6 kB
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Notifications - Contrôle de Patrouille</title>
<link rel="stylesheet" href="style.css">
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://unpkg.com/feather-icons"></script>
<script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
</head>
<body class="bg-gray-50 min-h-screen">
<!-- Sidebar -->
<custom-sidebar></custom-sidebar>
<!-- Header -->
<custom-header></custom-header>
<!-- Main Content -->
<main class="ml-64 mt-16 p-6">
<div class="flex justify-between items-center mb-6">
<div>
<h1 class="text-2xl font-bold text-gray-800">Centre de Notifications</h1>
<p class="text-gray-600">Gérez vos notifications et préférences d'alerte</p>
</div>
<div class="flex space-x-2">
<button class="bg-gray-100 hover:bg-gray-200 text-gray-800 font-medium py-2 px-4 rounded-lg flex items-center">
<i data-feather="check-square" class="mr-2 w-4 h-4"></i>
Tout marquer comme lu
</button>
<button class="bg-blue-600 hover:bg-blue-700 text-white font-medium py-2 px-4 rounded-lg flex items-center">
<i data-feather="settings" class="mr-2 w-4 h-4"></i>
Paramètres
</button>
</div>
</div>
<!-- Filters -->
<div class="bg-white rounded-xl shadow-sm p-6 mb-6">
<div class="grid grid-cols-1 md:grid-cols-4 gap-4">
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">Type</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent">
<option>Tous les types</option>
<option>Alertes de sécurité</option>
<option>Notifications de système</option>
<option>Mises à jour de rondes</option>
</select>
</div>
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">Statut</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent">
<option>Tous les statuts</option>
<option>Non lu</option>
<option>Lu</option>
<option>Archivé</option>
</select>
</div>
<div>
<label class="block text-sm font-medium text-gray-700 mb-1">Période</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent">
<option>Les 7 derniers jours</option>
<option>Aujourd'hui</option>
<option>Les 30 derniers jours</option>
<option>Ce mois-ci</option>
</select>
</div>
<div class="flex items-end">
<button class="w-full bg-gray-100 hover:bg-gray-200 text-gray-800 font-medium py-2 px-4 rounded-lg flex items-center justify-center">
<i data-feather="filter" class="w-4 h-4 mr-2"></i>
Filtrer
</button>
</div>
</div>
</div>
<!-- Notifications List -->
<div class="bg-white rounded-xl shadow-sm overflow-hidden">
<div class="divide-y divide-gray-200">
<div class="p-6 hover:bg-gray-50">
<div class="flex">
<div class="flex-shrink-0">
<div class="bg-red-100 p-2 rounded-lg">
<i data-feather="alert-triangle" class="text-red-600 w-5 h-5"></i>
</div>
</div>
<div class="ml-4 flex-1">
<div class="flex items-center justify-between">
<h3 class="text-sm font-medium text-gray-900">Alerte de sécurité critique</h3>
<span class="text-xs text-gray-500">Il y a 5 minutes</span>
</div>
<p class="mt-1 text-sm text-gray-600">
Accès non autorisé détecté à la porte principale du bâtiment A. Intervention requise immédiatement.
</p>
<div class="mt-3 flex items-center">
<span class="inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-red-100 text-red-800">
Haute priorité
</span>
<button class="ml-3 text-sm font-medium text-blue-600 hover:text-blue-800">
Marquer comme lu
</button>
</div>
</div>
</div>
</div>
<div class="p-6 hover:bg-gray-50">
<div class="flex">
<div class="flex-shrink-0">
<div class="bg-blue-100 p-2 rounded-lg">
<i data-feather="info" class="text-blue-600 w-5 h-5"></i>
</div>
</div>
<div class="ml-4 flex-1">
<div class="flex items-center justify-between">
<h3 class="text-sm font-medium text-gray-900">Nouvelle ronde terminée</h3>
<span class="text-xs text-gray-500">Il y a 2 heures</span>
</div>
<p class="mt-1 text-sm text-gray-600">
La ronde nocturne de la zone A a été complétée avec succès par Jean Dupont.
</p>
<div class="mt-3 flex items-center">
<span class="inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-green-100 text-green-800">
Information
</span>
<button class="ml-3 text-sm font-medium text-blue-600 hover:text-blue-800">
Marquer comme lu
</button>
</div>
</div>
</div>
</div>
<div class="p-6 hover:bg-gray-50">
<div class="flex">
<div class="flex-shrink-0">
<div class="bg-amber-100 p-2 rounded-lg">
<i data-feather="alert-circle" class="text-amber-600 w-5 h-5"></i>
</div>
</div>
<div class="ml-4 flex-1">
<div class="flex items-center justify-between">
<h3 class="text-sm font-medium text-gray-900">Point de contrôle manquant</h3>
<span class="text-xs text-gray-500">Hier à 22:15</span>
</div>
<p class="mt-1 text-sm text-gray-600">
Le point de contrôle #CP-15 n'a pas été visité lors de la ronde de nuit. Veuillez vérifier.
</p>
<div class="mt-3 flex items-center">
<span class="inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-amber-100 text-amber-800">
Moyenne priorité
</span>
<button class="ml-3 text-sm font-medium text-blue-600 hover:text-blue-800">
Marquer comme lu
</button>
</div>
</div>
</div>
</div>
<div class="p-6 hover:bg-gray-50">
<div class="flex">
<div class="flex-shrink-0">
<div class="bg-green-100 p-2 rounded-lg">
<i data-feather="check-circle" class="text-green-600 w-5 h-5"></i>
</div>
</div>
<div class="ml-4 flex-1">
<div class="flex items-center justify-between">
<h3 class="text-sm font-medium text-gray-900">Maintenance terminée</h3>
<span class="text-xs text-gray-500">Le 12 mars 2023</span>
</div>
<p class="mt-1 text-sm text-gray-600">
La maintenance du point de contrôle #CP-08 a été terminée avec succès.
</p>
<div class="mt-3 flex items-center">
<span class="inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-green-100 text-green-800">
Terminé
</span>
<button class="ml-3 text-sm font-medium text-blue-600 hover:text-blue-800">
Marquer comme lu
</button>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Pagination -->
<div class="mt-8 flex justify-between items-center">
<div class="text-sm text-gray-600">
Affichage de 1 à 4 sur 27 notifications
</div>
<nav class="flex items-center space-x-2">
<a href="#" class="px-3 py-1 rounded-lg bg-gray-100 hover:bg-gray-200 text-gray-700">Précédent</a>
<a href="#" class="px-3 py-1 rounded-lg bg-blue-600 text-white">1</a>
<a href="#" class="px-3 py-1 rounded-lg bg-gray-100 hover:bg-gray-200 text-gray-700">2</a>
<a href="#" class="px-3 py-1 rounded-lg bg-gray-100 hover:bg-gray-200 text-gray-700">3</a>
<span class="px-3 py-1 text-gray-500">...</span>
<a href="#" class="px-3 py-1 rounded-lg bg-gray-100 hover:bg-gray-200 text-gray-700">7</a>
<a href="#" class="px-3 py-1 rounded-lg bg-gray-100 hover:bg-gray-200 text-gray-700">Suivant</a>
</nav>
</div>
</main>
<script src="components/sidebar.js"></script>
<script src="components/header.js"></script>
<script type="module" src="script.js"></script>
<script>
feather.replace();
</script>
</body>
</html>