public function sendsmstextAction() { $this->disableLayout(); $this->disableViewAutoRender(); $smstext = $this->getParam('smstext'); $resaid = $this->getParam('resaid'); $reservation = Object\Reservation::getById($resaid); if ($reservation instanceof Object\Reservation) { $smstext = "Votre+resa+Nr:" . $resaid . "+a+" . $reservation->getLocation()->getName() . " " . $smstext . " www.resaexpress.com"; $smstext = str_replace(' ', '+', $smstext); $dest = $this->getParam('tel'); $dest = "33" . substr($dest, 1); $api = "pub-f9157fe82c8377b08b2cd47a8b395dfb"; $ch = curl_init(); $url = "http://api.smsbox.fr/1.1/api.php?apikey=" . $api . "&msg=" . $smstext . "&dest=" . $dest . "&mode=Standard&charset=utf-8"; // set URL and other appropriate options curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, 0); // grab URL and pass it to the browser curl_exec($ch); // close cURL resource, and free up system resources curl_close($ch); } else { die("incorrect reservation"); } }
/** * destroy */ public function destroy() { $res = new Reponse(); $rec = Object\Reservation::getById($this->id); if ($rec) { $rec->delete(); $res->success = true; $res->message = 'Destroyed'; } else { $res->message = "Failed to destroy"; } return $res; }
public function getListAction() { //get list of reservations $reponse = new Reponse(); $mylocationid = $this->getParam('locationid'); $myservingid = $this->getParam('servingid'); $calendar = $this->getParam('calendar'); $guestid = $this->getParam('guestid'); $cancelled = $this->getParam('cancelled'); $arrived = $this->getParam('arrived'); $mylocation = Object\Location::getById($mylocationid, 1); $myserving = Object\Serving::getById($myservingid, 1); $myguest = Object\Guest::getById($guestid, 1); if ($mylocation instanceof Object\Location || $myserving instanceof Object\Serving || $guest instanceof Object\Guest) { //we check if we are in the Editor if ($_POST['action']) { //if REMOVE if ($_POST['action'] == "remove") { foreach ($_POST['id'] as $id) { $myreservation = Object\Reservation::getById($id, 1); if ($myreservation instanceof Object\Reservation) { $myreservation->SetStatus('Cancelled'); $myreservation->save(); } } $reponse->message = 'TXT_RESERVATION_LIST'; $reponse->success = true; $reponse->data = ''; } //if EDIT if ($_POST['action'] == "edit") { $myreservation = Object_Reservation::getById($_POST['data']['id'], 1); if ($_POST['data']['guestid']) { $guest = Object_Guest::getById($_POST['data']['guestid'], 1); if ($guest instanceof Object_Guest) { $guest->setLastname($_POST['data']['guestname']); $guest->setTel($_POST['data']['guesttel']); $guest->setBookingnotes($_POST['data']['bookingnotes']); $guest->setPreferredlanguage($_POST['data']['preferredlanguage']); $guest->setNewsLetter($_POST['data']['newsLetter']); $guest->save(); } } //date update needs to be reworked $daystart = $myreservation->getStart()->get('dd-MM-YYYY'); $newdatestart = new Zend_Date($daystart . ' ' . $_POST['data']['start'] . ':00', 'dd-MM-YYYY HH:mm:ss'); $myreservation->setBookingref($_POST['data']['bookingref']); $myreservation->setBookingnotes($_POST['data']['bookingnotes']); if ($_POST['data']['status'] == 'Annulé') { $_POST['data']['status'] = "Cancelled"; } $myreservation->setStatus($_POST['data']['status']); if ($_POST['data']['arrived'] == '1') { $arrived = 1; } else { $arrived = 0; } if ($arrived == 1) { $myreservation->setActualpartysize($_POST['data']['partysize']); $myreservation->setPartysize($myreservation->getPartysize()); $myreservation->setActualstart($newdatestart); $myreservation->setStart($myreservation->getStart()); } else { $myreservation->setPartysize($_POST['data']['partysize']); $myreservation->setStart($newdatestart); } //Prework Table input $tableids = explode(',', $_POST['data']['table']); $tablearray = array(); foreach ($tableids as $tableid) { $variable = explode('-', $tableid); $table = $this->selectedLocation->getResource()->getTable($variable[0], $variable[1]); if ($table instanceof Object\Table) { array_push($tablearray, $table); } } $myreservation->setTable($tablearray); $myreservation->setArrived($arrived); $myreservation->save(); $data = $_POST['data']; if ($myreservation->getLocation() instanceof Object_Location) { $data['locationid'] = $myreservation->getLocation()->getId(); $data['locationname'] = $myreservation->getLocation()->getName(); } $data['DT_RowId'] = "row_" . $_POST['data']['id']; $reponse->message = 'TXT_RESERVATION_LIST'; $reponse->success = true; $reponse->row = $data; $reponse->debug = $tablearray; } } else { if (!$calendar) { $date = new Zend_Date(); $calendar = $date->get('dd-MM-YYYY'); } $calendarstart = $calendar . ' ' . '00:00:00'; $calendarend = $calendar . ' ' . '23:59:59'; $calendarstart = new Zend_Date($calendarstart, 'dd-MM-YYYY HH:mm:ss'); $calendarend = new Zend_Date($calendarend, 'dd-MM-YYYY HH:mm:ss'); if ($guestid == '') { if ($myservingid == '') { $reservations = $mylocation->getResource()->getReservationsByDate($calendarstart->getTimestamp(), $calendarend->getTimestamp()); } else { if ($myserving instanceof Object\Serving) { $reservations = $myserving->getReservationsByDate($calendarstart->getTimestamp(), $calendarend->getTimestamp()); } } } else { if ($myguest instanceof Object\Guest) { $reservations = $myguest->getReservationsByGuest($calendarstart->getTimestamp()); } } $data = array(); $i = 0; foreach ($reservations as $key => $reservation) { $i++; $resa = $this->formatReservation($reservation); array_push($data, $resa); } $reponse->message = 'TXT_RESERVATION_LIST'; $reponse->success = true; $reponse->data = $data; } } else { $data = array(); $reponse->message = 'TXT_NOT_RESERVATION_LIST'; $reponse->success = false; $reponse->data = $data; $reponse->debug = 'debug:' . $this->getParam('q'); } $this->render($reponse); }
public function sendmailmessageAction() { $this->disableLayout(); if ($this->getParam('sendmail') == "send") { $resaid = $this->getParam('resaid'); $reservation = Object\Reservation::getById($resaid, 1); if ($reservation instanceof Object\Reservation) { $locationname = $reservation->getLocation()->getName(); $resa = $reservation->getId(); $email = $reservation->getGuest()->getEmail(); $guestname = $reservation->getGuest()->getLastname(); $parameters = array('location' => $locationname, 'bookingref' => $resa, 'message' => $this->getParam('message'), 'guestname' => $guestname); $mail = new Pimcore_Mail(); $subject = 'Message ResaExpress - ' . $locationname; $mail->setParams($parameters); $mail->setReplyTo('*****@*****.**'); $mail->setSubject($subject); $mail->setDocument('/fr/booking/standardmail'); // $mail->setBody($body); $mail->addTo($email); $mail->addBcc('*****@*****.**'); $mail->Send(); } } }
public function tableListAction() { $reponse = new Reponse(); $locationid = $this->getParam('locationid'); $location = \Object\Location::getById($locationid, 1); if (!$location instanceof \Object\Location) { $location = $this->selectedLocation; } if ($location instanceof \Object\Location) { $tables = $location->getTables(); if ($_GET['action'] == "resatable") { $data = array(); $resaid = $this->getParam('reservationid'); $resa = Object\Reservation::getById($resaid, 1); //echo $resa->getStart()->getTimestamp(); echo "===="; //echo $resa->getEnd()->getTimestamp(); echo "===="; if ($resa instanceof Object\Reservation) { $reservations = $this->selectedLocation->getResource()->getReservationsByDateForTables($resa->getStart()->getTimestamp(), $resa->getEnd()->getTimestamp(), $resa->getStart()->getTimestamp(), $resa->getEnd()->getTimestamp()); $bookedtables = array(); $completetables = array(); foreach ($reservations as $reservation) { //if( $reservation->getTable() ){ //echo $reservation->getStart()->getTimestamp();echo "////"; foreach ($reservation->getTable() as $table) { $bookedtables[$reservation->getId()] = $table->getId(); } //} } //exit; foreach ($tables as $key => $table) { $i++; $array = array(); $array = $table->toArray(); $key = array_search($table->getId(), $bookedtables); if ($key !== false) { $array['booked'] = 'yes'; $array['reservationid'] = $key; } else { $array['booked'] = 'no'; $array['reservationid'] = 0; } $array['id'] = $table->getId(); $array['DT_RowId'] = $table->getId(); array_push($data, $array); array_push($completetables, $table->getId()); } // var_dump($bookedtables); echo "---------------------"; // var_dump($completetables); echo "////////////////////"; // var_dump(array_diff($completetables,$bookedtables)); echo "====================="; // var_dump($data); exit; $reponse->message = 'TXT_TABLE_LIST'; $reponse->success = true; $reponse->data = $data; } } else { if ($_POST['action']) { //if REMOVE if ($_POST['action'] == "remove") { foreach ($_POST['id'] as $id) { $table = \Object\Table::getById($id, 1); if ($table instanceof \Object\Table) { $table->delete(); } } $reponse->message = 'TXT_TABLE_LIST'; $reponse->success = true; $reponse->data = ''; } //if EDIT if ($_POST['action'] == "edit") { $table = \Object\Table::getById($_POST['id'], 1); if ($table instanceof \Object\Table) { $table->setSalle($_POST['data']['salle']); $table->setTable($_POST['data']['table']); $table->setSeats($_POST['data']['seats']); $table->setDescription($_POST['data']['description']); $table->save(); } $data = $_POST['data']; $data['DT_RowId'] = "row_" . $_POST['data']['id']; $reponse->message = 'TXT_TABLE_LIST'; $reponse->success = true; $reponse->row = $data; } //if CREATE if ($_POST['action'] == "create") { //SET DEFAULT DATA FROM LOCATION $row['salle'] = $_POST['data']['salle']; $row['table'] = $_POST['data']['table']; $row['seats'] = $_POST['data']['seats']; $row['description'] = $_POST['data']['description']; if ($this->selectedLocation->getResource()->checkTable($row['salle'], $row['table'])) { $error['table'] = "table"; $error['status'] = "Table already exists"; $reponse->error = "Table already exists/Cette table existe déjà"; $reponse->success = false; $reponse->message = "TXT_CREATE_ERROR"; $reponse->row = $result; $reponse->debug = $result; } else { $result = $location->createTable($row); if ($result instanceof \Object\Table) { $row['DT_RowId'] = $result->getId(); $row['id'] = $result->getId(); $row['locationid'] = $result->getLocation()->getId(); $row['locationname'] = $result->getLocation()->getName(); $reponse->success = true; $reponse->message = "TXT_CREATE_OK"; $reponse->row = $row; $reponse->debug = $data; } else { $reponse->success = false; $reponse->message = "TXT_CREATE_ERROR"; $reponse->row = $result; $reponse->debug = $result; } } } } else { $data = array(); foreach ($tables as $key => $table) { $i++; $array = array(); $array = $table->toArray(); $array['id'] = $table->getId(); $array['DT_RowId'] = $table->getId(); array_push($data, $array); } $reponse->message = 'TXT_TABLE_LIST'; $reponse->success = true; $reponse->data = $data; } } } else { $reponse->message = 'TXT_TABLE_LIST'; $reponse->success = false; $reponse->data = $data; } $this->render($reponse); }