public function save(AnnouncementReservation $announcementReservation) { if ($announcementReservation->isValid()) { $announcementReservation->isNew() ? $this->add($announcementReservation) : $this->modify($announcementReservation); } else { throw new RuntimeException('Les indisponibilités pour l\'annonce doivent être valide pour être enregistrée'); } }
private function parsePostReservation(HTTPRequest $request, AnnouncementReservation $reservation) { $date = htmlspecialchars($request->postData('date')); $dateEnd = htmlspecialchars($request->postData('date-end')); $dateOption = htmlspecialchars($request->postData('date-option')); $announcementId = htmlspecialchars($request->postData('announcement-id')); $userOwnerId = htmlspecialchars($request->postData('user-owner-id')); $userSubscriberId = htmlspecialchars($request->postData('user-subscriber-id')); $contactGroupId = htmlspecialchars($request->postData('contact-group-id')); $price = htmlspecialchars($request->postData('price')); $paiementStateId = htmlspecialchars($request->postData('state-id')); $reservation->setAnnouncementId($announcementId); $reservation->setDate($date); if ($dateOption == 'period') { $reservation->setDateEnd($dateEnd); } else { $reservation->setDateEnd($date); } $reservation->setDateOption($dateOption); $reservation->setUserOwnerId($userOwnerId); $reservation->setUserSubscriberId($userSubscriberId); $reservation->setContactGroupId($contactGroupId); $reservation->setPrice($price); $reservation->setStateId($paiementStateId); }
public function sendAdminReservationSubscriberCanceled(Users $userOwner, Users $userSubscriber, Announcement $announce, AnnouncementReservation $reservation) { $platform_fee_ratio = Tipkin\Config::get('platform-fee-ratio'); $platform_fee_extra = $platform_fee_ratio > 0 ? 'et l\'acompte ne sera pas débité' : ''; $this->to = $this->adminMail; $this->subject = 'Annulation de réservation'; $this->content = ' Bonjour, <br /> Une demande de Tip de <b>' . $announce->getTitle() . '</b> n’a pas été validée.<br /> Elle est donc annulée' . $platform_fee_extra . '. <br /><br /> Référence de transation : <b>' . $reservation->getTransactionRef() . '</b> <br /><br /> A très bientôt sur TIPKIN ! <br /><br /> Je possède. Tu empruntes. Nous partageons ! <br /><br /> Administration TIPKIN. '; $this->send(); }
public function isReservationExists(AnnouncementReservation $reservation) { //echo 'SELECT * FROM '.$this->table().' WHERE ('.$this->table().'.DATE >= \'' . $reservation->getDate() . '\' AND DATE_END <= \'' . $reservation->getDateEnd() . '\' AND STATE_ID != ' . PaiementStates::CANCELED . ')'; //die; $q = $this->dao->prepare('SELECT * FROM ' . $this->table() . ' WHERE (' . $this->table() . '.DATE >= \'' . $reservation->getDate() . '\' AND DATE_END <= \'' . $reservation->getDateEnd() . '\' AND STATE_ID != ' . PaiementStates::CANCELED . ' AND ANNOUNCEMENT_ID = ' . $reservation->getAnnouncementId() . ')'); $q->execute(); $announcementReservation = array(); while ($data = $q->fetch(PDO::FETCH_ASSOC)) { $announcementReservation[] = new AnnouncementReservation($data); } return count($announcementReservation); }