public function httpPostMethod(Http $http, array $formFields) { /* * Méthode appelée en cas de requête HTTP POST * * L'argument $http est un objet permettant de faire des redirections etc. * L'argument $formFields contient l'équivalent de $_POST en PHP natif. */ /*var_dump($formFields['bookingDate']); var_dump($date); var_dump($date > $formFields['bookingDate']); die();*/ $date = new DateTime(); $userSession = new UserSession(); $bookingModel = new BookingModel(); $customerId = intval($userSession->getId()); if ($userSession->isAuthenticated()) { $customerId = intval($userSession->getId()); $checkBookingById = $bookingModel->checkBookingById($customerId, intval($formFields['bookingId']), $formFields['bookingDate']); if (ctype_digit($formFields['bookingId']) && $date < new DateTime($formFields['bookingDate']) && $checkBookingById) { $bookingModel->DeletBooking($formFields['bookingId']); $flashBag = new FlashBag(); $flashBag->add('Réservation ' . $formFields["bookingId"] . ' bien supprimée'); $http->redirectTo('/'); } $flashBag = new FlashBag(); $flashBag->add('Problème lors de la suppression de la réservation (Vous ne pouvez supprimer des réservations posterieur à aujourd\'hui)'); $http->redirectTo('/Booking'); } }
public function httpPostMethod(Http $http, array $formFields) { /* * Méthode appelée en cas de requête HTTP POST * * L'argument $http est un objet permettant de faire des redirections etc. * L'argument $formFields contient l'équivalent de $_POST en PHP natif. */ /*$date = new DateModel(); var_dump($date->testDate($formFields['dateResa'])); //0 FAUX - 1 VRAI REJEX */ $userSession = new UserSession(); if ($userSession->isAuthenticated()) { $dateTime = date_create($formFields['dateResa'] . ' ' . $formFields['timeResa']); $now = new DateTime("now"); $resaDate = date_format($dateTime, 'Y-m-d'); $resaTime = date_format($dateTime, 'H:i:s'); //var_dump($formFields); if (!empty($formFields['dateResa']) && !empty($formFields['timeResa']) && !empty($formFields['NumberOfSeats']) && $dateTime > $now && ctype_digit($formFields['NumberOfSeats'])) { $userId = $userSession->getId(); $Booking = new BookingModel(); $resultat = $Booking->register($userId, $resaDate, $resaTime, $formFields['NumberOfSeats']); return ['resultat' => $resultat]; } elseif ($dateTime < $now) { return ['Error' => 'Nous ne pouvons vous réserver une table pour une date antérieur à aujourd\'hui']; } else { return ['Error' => 'Un champ n\'a pas était remplie correctement']; } } else { echo 'lu'; die; $http->redirectTo('/'); } }
public function httpPostMethod(Http $http, array $formFields) { /* * Méthode appelée en cas de requête HTTP POST * * L'argument $http est un objet permettant de faire des redirections etc. * L'argument $formFields contient l'équivalent de $_POST en PHP natif. */ $userSession = new UserSession(); if ($userSession->isAuthenticated() == false) { $http->redirectTo('/User/Login'); } //TODO : API BANCAIRE $http->redirectTo('/Order/Payment/Success'); }
public function httpPostMethod(Http $http, array $formFields) { /* * Méthode appelée en cas de requête HTTP POST * * L'argument $http est un objet permettant de faire des redirections etc. * L'argument $formFields contient l'équivalent de $_POST en PHP natif. */ /*$date = new DateModel(); var_dump($date->testDate($formFields['dateResa'])); //0 FAUX - 1 VRAI REJEX */ try { $userSession = new UserSession(); if ($userSession->isAuthenticated()) { $dateTime = date_create($formFields['dateResa'] . ' ' . $formFields['timeResa']); if ($dateTime == false) { throw new InvalidArgumentException(BookingModel::$dateException); } $now = new DateTime("now"); $resaDate = date_format($dateTime, 'Y-m-d'); $resaTime = date_format($dateTime, 'H:i:s'); //var_dump($formFields); if (!empty($formFields['dateResa']) && !empty($formFields['timeResa']) && !empty($formFields['NumberOfSeats']) && $dateTime > $now && ctype_digit($formFields['NumberOfSeats'])) { $userId = $userSession->getId(); $booking = new BookingModel(); $resultat = $booking->register($userId, $resaDate, $resaTime, $formFields['NumberOfSeats']); $flashBag = new FlashBag(); $flashBag->add("Votre réservation numero {$resultat} du {$resaDate} à {$resaTime} pour " . $formFields['NumberOfSeats'] . " est bien pris en compte"); $http->redirectTo('/'); } elseif ($dateTime < $now) { throw new InvalidArgumentException(BookingModel::$PasseDateException); } else { throw new InvalidArgumentException(BookingModel::$FieldsException); } } else { $http->redirectTo('/'); } } catch (InvalidArgumentException $event) { //var_dump($event); $form = new BookingForm(); $form->bind($formFields); $form->setErrorMessage($event->getMessage()); return ['_form' => $form]; } }
public function httpPostMethod(Http $http, array $formFields) { /* * Méthode appelée en cas de requête HTTP POST * * L'argument $http est un objet permettant de faire des redirections etc. * L'argument $formFields contient l'équivalent de $_POST en PHP natif. */ $userSession = new UserSession(); if ($userSession->isAuthenticated() == false) { $http->redirectTo('/User/Login'); } $orderModel = new OrderModel(); $order_Id = $orderModel->validation($formFields['order'], $userSession->getId()); //$order = $orderModel->getOrderById($order_Id); //return ['order', $order]; $http->redirectTo('/Order/Payment?order_Id=' . $order_Id); // TODO : PAGE DE VALIDATION DU PANIER ET BOUTON PAYMENT }