Example #1
0
 public function bookATableMerchant()
 {
     $merchant_id = Yii::app()->functions->getMerchantID();
     $params = array('merchant_id' => $merchant_id, 'number_guest' => isset($this->data['number_guest']) ? $this->data['number_guest'] : '', 'date_booking' => isset($this->data['date_booking']) ? $this->data['date_booking'] : '', 'booking_time' => isset($this->data['booking_time']) ? $this->data['booking_time'] : '', 'booking_name' => isset($this->data['booking_name']) ? $this->data['booking_name'] : '', 'email' => isset($this->data['email']) ? $this->data['email'] : '', 'mobile' => isset($this->data['mobile']) ? $this->data['mobile'] : '', 'booking_notes' => isset($this->data['booking_notes']) ? $this->data['booking_notes'] : '', 'date_created' => date('c'), 'ip_address' => $_SERVER['REMOTE_ADDR'], 'status' => isset($this->data['status']) ? $this->data['status'] : '', 'viewed' => 2);
     $command = Yii::app()->db->createCommand();
     if (isset($this->data['id']) && is_numeric($this->data['id'])) {
         unset($params['date_created']);
         $params['date_modified'] = date('c');
         $res = $command->update('{{bookingtable}}', $params, 'booking_id=:booking_id', array(':booking_id' => addslashes($this->data['id'])));
         if ($res) {
             $this->code = 1;
             $this->msg = Yii::t("default", 'Booking updated.');
         } else {
             $this->msg = Yii::t("default", "ERROR: cannot update");
         }
     } else {
         if ($res = $command->insert('{{bookingtable}}', $params)) {
             $this->details = Yii::app()->db->getLastInsertID();
             //dump($this->details);
             $this->code = 1;
             $this->msg = Yii::t("default", 'Booking added.');
         } else {
             $this->msg = Yii::t("default", 'ERROR. cannot insert data.');
         }
     }
     $this->details = 3;
     //dump($this->data);
     if (isset($this->data['send_email'])) {
         if ($this->code == 1 || $this->data['send_email'] == 1) {
             $tp1 = Yii::app()->functions->getOption("merchant_booking_approved_tpl", $merchant_id);
             $tp2 = Yii::app()->functions->getOption("merchant_booking_denied_tpl", $merchant_id);
             $subject = Yii::app()->functions->getOption("merchant_booking_subject", $merchant_id);
             $sender = Yii::app()->functions->getOption("merchant_booking_sender", $merchant_id);
             $to = $this->data['email'];
             $subject = empty($subject) ? "Booking Table" : $subject;
             if (empty($tp1)) {
                 $tp1 = EmailTPL::bookingApproved();
             }
             if (empty($tp2)) {
                 $tp2 = EmailTPL::bookingDenied();
             }
             $h = '';
             $h .= '<table border="0">';
             $h .= '<tr>';
             $h .= '<td>' . Yii::t("default", "Number Of Guests") . '</td>';
             $h .= '<td>: ' . $params['number_guest'] . '</td>';
             $h .= '</tr>';
             $h .= '<tr>';
             $h .= '<td>' . Yii::t("default", "Date Of Booking") . '</td>';
             $h .= '<td>: ' . $params['date_booking'] . '</td>';
             $h .= '</tr>';
             $h .= '<tr>';
             $h .= '<td>' . Yii::t("default", "Time") . '</td>';
             $h .= '<td>: ' . $params['booking_time'] . '</td>';
             $h .= '</tr>';
             $h .= '<tr>';
             $h .= '<td>' . Yii::t("default", "Name") . '</td>';
             $h .= '<td>: ' . $params['booking_name'] . '</td>';
             $h .= '</tr>';
             $h .= '<tr>';
             $h .= '<td>' . Yii::t("default", "Email") . '</td>';
             $h .= '<td>: ' . $params['email'] . '</td>';
             $h .= '</tr>';
             $h .= '<tr>';
             $h .= '<td>' . Yii::t("default", "Mobile") . '</td>';
             $h .= '<td>: ' . $params['mobile'] . '</td>';
             $h .= '</tr>';
             $h .= '<tr>';
             $h .= '<td>' . Yii::t("default", "Message") . '</td>';
             $h .= '<td>: ' . $params['booking_notes'] . '</td>';
             $h .= '</tr>';
             $h .= '</table>';
             if ($this->data['status'] == "approved") {
                 $template = Yii::app()->functions->smarty("customer-name", $params['booking_name'], $tp1);
                 $template = Yii::app()->functions->smarty("message", $this->data['message'], $template);
                 $template = Yii::app()->functions->smarty("booking-information", $h, $template);
             } elseif ($this->data['status'] == "denied") {
                 $template = Yii::app()->functions->smarty("customer-name", $params['booking_name'], $tp2);
                 $template = Yii::app()->functions->smarty("message", $this->data['message'], $template);
                 $template = Yii::app()->functions->smarty("booking-information", $h, $template);
             }
             if (!sendEmail($to, $sender, $subject, $template)) {
                 $this->details = 2;
             } else {
                 $this->details = 1;
             }
         }
     }
 }
?>
/merchant/tablebooking/Do/settings" class="uk-button"><i class="fa fa-cog"></i> <?php 
echo Yii::t("default", "Settings");
?>
</a>
</div>

<div class="spacer"></div>

<?php 
$merchant_id = Yii::app()->functions->getMerchantID();
$merchant_booking_alert = Yii::app()->functions->getOption("merchant_booking_alert", $merchant_id);
$tp1 = Yii::app()->functions->getOption("merchant_booking_approved_tpl", $merchant_id);
$tp2 = Yii::app()->functions->getOption("merchant_booking_denied_tpl", $merchant_id);
if (empty($tp1)) {
    $tp1 = EmailTPL::bookingApproved();
}
if (empty($tp2)) {
    $tp2 = EmailTPL::bookingDenied();
}
$subject = Yii::app()->functions->getOption("merchant_booking_subject", $merchant_id);
$sender = Yii::app()->functions->getOption("merchant_booking_sender", $merchant_id);
$merchant_booking_receiver = Yii::app()->functions->getOption("merchant_booking_receiver", $merchant_id);
$merchant_booking_tpl = Yii::app()->functions->getOption("merchant_booking_tpl", $merchant_id);
if (empty($merchant_booking_tpl)) {
    $merchant_booking_tpl = EmailTPL::bookingTPL();
}
$merchant_booking_receive_subject = Yii::app()->functions->getOption("merchant_booking_receive_subject", $merchant_id);
$days = Yii::app()->functions->getDays();
$max_booked = Yii::app()->functions->getOption("max_booked", $merchant_id);
if (!empty($max_booked)) {