diff --git a/client/src/pages/FormateurEmargement.tsx b/client/src/pages/FormateurEmargement.tsx
index 0b76b34..0b54af9 100644
--- a/client/src/pages/FormateurEmargement.tsx
+++ b/client/src/pages/FormateurEmargement.tsx
@@ -316,17 +316,6 @@ export default function FormateurEmargement() {
- {/* Statistiques Matin */}
-
@@ -387,17 +376,6 @@ export default function FormateurEmargement() {
)}
- {/* Statistiques Après-midi */}
-
- 🌆 Après-midi
-
- {(() => {
- const stats = getPresenceStats(date.id, "apres_midi");
- return `${stats.present}/${stats.total} présents (${stats.percentage}%)`;
- })()}
-
-
-
{/* Après-midi */}
diff --git a/server/presenceDb.ts b/server/presenceDb.ts
index d952acd..3b231db 100644
--- a/server/presenceDb.ts
+++ b/server/presenceDb.ts
@@ -18,6 +18,29 @@ export async function validerPresence(params: {
const db = await getDb();
if (!db) throw new Error("Database not available");
+ // Récupérer la date de formation
+ const dateFormation = await db
+ .select()
+ .from(datesFormation)
+ .where(eq(datesFormation.id, params.dateFormationId))
+ .limit(1);
+
+ if (dateFormation.length === 0) {
+ throw new Error("Date de formation introuvable");
+ }
+
+ // Vérifier que la date actuelle est le jour de la formation ou après
+ const now = new Date();
+ const dateDebut = new Date(dateFormation[0].dateDebut);
+
+ // Réinitialiser les heures pour comparer uniquement les dates
+ now.setHours(0, 0, 0, 0);
+ dateDebut.setHours(0, 0, 0, 0);
+
+ if (now < dateDebut) {
+ throw new Error("Vous ne pouvez pas émarger avant la date de formation");
+ }
+
// Vérifier si la présence existe déjà pour cette période
const presenceExistante = await db
.select()
diff --git a/todo.md b/todo.md
index 8b4f017..7652368 100644
--- a/todo.md
+++ b/todo.md
@@ -1496,3 +1496,7 @@
- [x] Ajouter un indicateur visuel de rafraîchissement avec badge "Mis à jour il y a X secondes"
- [x] Ajouter des statistiques en temps réel du taux de présence par période
+
+- [x] Retirer les compteurs dynamiques de taux de présence de la page d'émargement numérique
+
+- [x] Empêcher l'émargement avant la date de formation concernée (vérification backend)