setTime(0, 0, 0);
$todayEnd = (clone $todayStart)->setTime(23, 59, 59);
$today_start = $todayStart->format('Y-m-d H:i:s');
$today_end = $todayEnd->format('Y-m-d H:i:s');
$stmt = $pdo->prepare("
SELECT rv.*, c.nom AS nom_client, c.prenom AS prenom_client, c.email
FROM rendez_vous rv
JOIN client c ON rv.client_id = c.id
WHERE rv.praticien_id = ?
AND rv.date_rdv BETWEEN ? AND ?
ORDER BY rv.date_rdv ASC
");
$stmt->execute([$praticien_id, $today_start, $today_end]);
$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['titre_rdv_du_jour'] ?? 'Rendez-vous du jour';
$HEAD_EXTRA = <<
HTML;
require_once '../includes/header.php';
?>
= htmlspecialchars($translations['titre_rdv_du_jour'] ?? 'Rendez-vous du jour') ?>
= htmlspecialchars($translations['retour_liste_complete'] ?? 'Retour à la liste complète') ?>
| = htmlspecialchars($translations['col_heure'] ?? 'Heure') ?> |
= htmlspecialchars($translations['col_client'] ?? 'Client') ?> |
= htmlspecialchars($translations['col_duree'] ?? 'Durée') ?> |
= htmlspecialchars($translations['col_statut'] ?? 'Statut') ?> |
= htmlspecialchars($translations['btn_chat'] ?? 'Chat') ?> |
= htmlspecialchars($translations['status_online'] ?? 'Visio') ?> |
| = htmlspecialchars($dt->format('H:i')) ?> |
= htmlspecialchars($r['prenom_client'] . ' ' . $r['nom_client']) ?> |
= (int)$r['duree_minutes'] . ' ' . htmlspecialchars($translations['min_abbr'] ?? 'min') ?> |
|
= htmlspecialchars($translations['chat_praticien'] ?? 'Ouvrir le chat') ?>
|
modify('-15 minutes');
$close = (clone $start)->modify('+' . (int)($r['duree_minutes'] ?? 120) . ' minutes');
if ($statut === 'confirmé') {
if ($now >= $open && $now <= $close) {
?>
= htmlspecialchars($translations['visio_nachalo'] ?? 'Démarrer la visio') ?>
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') . '.');
?>
= htmlspecialchars($translations['votre_rdv_jdet'] ?? 'En attente de confirmation') ?>
= htmlspecialchars(($translations['zaverchen_a'] ?? 'Terminé') . ' ' . $close->format('H:i')) ?>
'.htmlspecialchars($translations['option_cabinet'] ?? 'Очно').'';
}
?>
|
|
= htmlspecialchars($translations['aucun_rdv_aujourdhui'] ?? "Aucun rendez-vous aujourd'hui") ?>
|