prepare(" INSERT INTO push_badge_counters (compte_id, msg_unread, rdv_unread, updated_at) VALUES (:cid, 0, 0, NOW()) ON DUPLICATE KEY UPDATE rdv_unread = 0, updated_at = NOW() ")->execute([':cid' => (int)$_SESSION['compte_id']]); $praticien_id = $_SESSION['reference_id']; $id_rdv = isset($_GET['id']) ? intval($_GET['id']) : null; // Suppression si demandée (via POST confirmé par SweetAlert2 côté client) if ($id_rdv && isset($_POST['delete'])) { $stmt = $pdo->prepare("DELETE FROM rendez_vous WHERE id = ? AND statut = 'annulé' AND praticien_id = ?"); $stmt->execute([$id_rdv, $praticien_id]); echo '
'; echo '
'; echo '
'; echo ' '; echo ' '; echo ' '.htmlspecialchars($translations['retour_a_la_liste'] ?? 'Retour à la liste').' '; echo '
'; echo '
'; echo '
'; exit; } // Charger les rendez-vous if ($id_rdv) { $stmt = $pdo->prepare(" SELECT rv.*, c.nom AS nom_client, c.prenom AS prenom_client FROM rendez_vous rv JOIN client c ON rv.client_id = c.id WHERE rv.id = ? AND rv.praticien_id = ? "); $stmt->execute([$id_rdv, $praticien_id]); $rdvs = $stmt->fetchAll(); } else { $stmt = $pdo->prepare(" SELECT rv.*, c.nom AS nom_client, c.prenom AS prenom_client FROM rendez_vous rv JOIN client c ON rv.client_id = c.id WHERE rv.praticien_id = ? ORDER BY rv.date_rdv DESC "); $stmt->execute([$praticien_id]); $rdvs = $stmt->fetchAll(); } // Map statuts (valeurs BDD -> libellés traduits) $statutMap = [ 'prévu' => $translations['statut_prevu'] ?? 'Prévu', 'confirmé' => $translations['statut_confirme'] ?? 'Confirmé', 'annulé' => $translations['statut_annule'] ?? 'Annulé', 'terminé' => $translations['statut_termine'] ?? 'Terminé', ]; $PAGE_TITLE = $translations['mes_rdv_title'] ?? 'Mes rendez-vous'; $HEAD_EXTRA = << HTML; ?>

format('d/m/Y')) ?> format('H:i')) ?>
modify('-15 minutes'); $close = (clone $start)->modify('+' . (int)($r['duree_minutes'] ?? 120) . ' minutes'); if ($statut === 'confirmé') { if ($now >= $open && $now <= $close) { ?> format('H:i')); elseif ($now > $close) echo htmlspecialchars(($translations['ferme_a'] ?? 'Fermé à') . ' ' . $close->format('H:i')); else echo htmlspecialchars(($translations['prev_a'] ?? 'Prévu le') . ' ' . $start->format('d/m/Y \à H:i') . '.'); ?> format('H:i')) ?> '.htmlspecialchars($translations['option_cabinet'] ?? 'Очно').''; } ?>