<?php include_once 'db/BookReservationDB.php'; include_once 'db/BookDB.php'; include_once 'db/GenericDB.php'; include_once 'db/UserDB.php'; if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['method'])) { if ($_POST['method'] == "DELETE" && isset($_POST['id'])) { $reservationDB = new BookReservationDB(); $reservationDB->DeleteReservation($_POST['id']); } else { if ($_POST['method'] == "PUT" && isset($_POST['bookId']) && isset($_POST['userId']) && isset($_POST['reservationLength'])) { $db = new DBHandler(); $reservationDB = new BookReservationDB($db); $bookDB = new BookDB($db); $genericDB = new GenericDB($db); $settings = $genericDB->GetSettings(); $errorMessage = array(); $date_start = date("Y-m-d"); $date_end = date('Y-m-d', strtotime('+' . $_POST['reservationLength'])); $reservations = $reservationDB->GetReservationsForBook($_POST['bookId']); $book = $bookDB->GetBookById($_POST['bookId']); if (count($reservations) >= $book['Count']) { $errorMessage[] = "Aucun exemplaire disponible."; } $reservations = $reservationDB->GetReservationForUser($_POST['userId']); if (count($reservations) >= $settings['MaxReservationCount']) { $errorMessage[] = "Nombre maximum de réservations atteint."; } if (count($errorMessage) == 0) { $reservationDB->AddReservation($date_start, $date_end, $_POST['bookId'], $_POST['userId']);