if (!empty($_SESSION["item_{$var_count}"])) { $item_count++; $item = $_SESSION["item_{$var_count}"]; // Prepare values to be sent into "query_food_info" function $cart_item_id = $item["cart_item_id"]; if (!isset($item["cart_item_option_1"])) { $cart_item_option_1 = ""; } else { $cart_item_option_1 = $item["cart_item_option_1"]; } if (!isset($item["cart_item_option_2"])) { $cart_item_option_2 = ""; } else { $cart_item_option_2 = $item["cart_item_option_2"]; } $food_info = query_food_info($cart_item_id, $cart_item_option_1, $cart_item_option_2); // Calculate and display food price if (!isset($food_info["option1_price"])) { $option1_price = 0; } else { $option1_price = $food_info["option1_price"]; } if (!isset($food_info["option2_price"])) { $option2_price = 0; } else { $option2_price = $food_info["option2_price"]; } $food_quantity = $item["cart_item_quantity"]; $food_price = $food_info["food_price"]; $food_total_price = ($food_price + $option1_price + $option2_price) * $food_quantity; array_push($grand_total_array, $food_total_price);
function send_kitchen_receipt_to_restaurant($cust_invoice_number) { require_once "global_functions.php"; require_once "mysql_functions.php"; global $restaurant_email_username; global $restaurant_email_password; global $email_endpoint; //////////// QUERY FOR ALL NECCESSARY INFO //////////// $bill_info = get_bill_info_by_invoice_number($cust_invoice_number); $cust_info = get_cust_info_by_id($bill_info["placed_by_cust_id"]); $order_info = get_order_info_by_invoice_number($cust_invoice_number); //////////// SETTING UP VARIABLES ////////////// date_default_timezone_set('America/Los_Angeles'); //////////// CHECK IF THERE'S ANY ADDITIONAL WAIT TIME ///////////// $temp_order_info = $order_info; $item_that_needs_preparation_time = 0; while ($temp_order_info) { $temp_single_order_info = array_shift($temp_order_info); $temp_food_id = $temp_single_order_info["food_id"]; if (get_food_single_info($temp_food_id, "need_time_to_prepare") == 1) { $item_that_needs_preparation_time++; } } // end while if ($item_that_needs_preparation_time > get_server_value("additional_wait_time_treshold")) { $additional_wait_time = ($item_that_needs_preparation_time - get_server_value("additional_wait_time_treshold")) * get_server_value("additional_wait_time_increment"); } else { $additional_wait_time = 0; $additional_wait_time_th = 0; } //////////// ESTIMATE THE PICK-UP TIME //////////// $estimated_pickup_time = $bill_info["time_placed"] + ($bill_info["wait_time"] + $additional_wait_time) * 60; $estimated_pickup_time = date("g:i a", $estimated_pickup_time); //////////// FORMAT THE ADDITIONAL WAIT TIME //////////////// if ($additional_wait_time != 0) { $additional_wait_time_th = "+ " . $additional_wait_time . " นาที"; } $mail = new PHPMailer(); $mail->CharSet = 'UTF-8'; // Set charset $mail->isSMTP(); // Set mailer to use SMTP $mail->Host = 'smtp.live.com'; // Specify main and backup SMTP servers $mail->SMTPAuth = true; // Enable SMTP authentication $mail->Username = $restaurant_email_username; // SMTP username $mail->Password = $restaurant_email_password; // SMTP password $mail->SMTPSecure = 'tls'; // Enable TLS encryption, `ssl` also accepted $mail->Port = 587; // TCP port to connect to $mail->From = $restaurant_email_username; $mail->FromName = 'Nayada Thai Cuisine'; $mail->addAddress($email_endpoint, "Nayada Thai Cuisine"); // Add a recipient //$mail->addBCC($restaurant_email_username); //$mail->addAttachment('/var/tmp/file.tar.gz'); // Add attachments $mail->isHTML(true); // Set email format to HTML $mail->Subject = 'Kitchen Receipt (' . $cust_invoice_number . ')'; //////////////////////// Thai version for kitchen ////////////////////////// $order_info = get_order_info_by_invoice_number($cust_invoice_number); $mail->Body .= '<br /><p style="text-align: center; width: 900px; background-color: #000; color: #FFF; font-size: 120%; margin: 50px 0 30px 0; padding: 5px 0 5px 0;"><strong>Online Slip # ' . $cust_invoice_number . '</strong></p>'; // FOOD LIST AREA $mail->Body .= '<div style="margin: 0 0 0 10px; font-family: \'Microsoft Sans Serif\';">'; while ($order_info) { $list = array_shift($order_info); /////// check if should print to kitchen if (get_food_single_info($list["food_id"], "print_to_kitchen") == 1) { $food_info = query_food_info($list["food_id"], NULL, NULL); $mail->Body .= '<p style="font-size: 140%; margin:0;"><strong>' . $list["quantity"] . ' ' . $food_info["food_name_th"] . '</strong></p>'; $option_count = 1; while ($option_count <= 4) { if ($list["option_{$option_count}"] != "not_set") { // QUERY FOR OPTION INFO $option_code = $list["option_{$option_count}"]; $option_info = get_option_info($option_code); if ($list["option_{$option_count}_price"] == 0) { $option_price = ""; } else { $option_price = " : \$ " . $list["option_{$option_count}_price"]; } $mail->Body .= '<p style="font-size: 130%; margin: 10px 0 10px 30px;"><strong>' . $option_info["option_name_th"] . $option_price . '</strong></p>'; } // end if spice option is set $option_count++; } // end while there is option if ($list["spice_option"] != "not_set") { switch ($list["spice_option"]) { case "spice_0": $spice = "ไม่เผ็ด"; break; case "spice_1": $spice = "เผ็ดน้อย"; break; case "spice_2": $spice = "เผ็ดกลาง"; break; case "spice_3": $spice = "เผ็ด!"; break; case "spice_4": $spice = "เผ็ดมาก!!"; break; } // end switch $mail->Body .= '<p style="font-size: 130%; margin: 10px 0 10px 30px;"><strong>' . $spice . '</strong></p>'; } // end if spice option is set $mail->Body .= '<p style="margin: 0;">---------------------------------------------</p>'; } // end if should print to kitchen } // end while there is order $mail->Body .= '</div><br /> <p style="margin: 0;">เวลารอ : ' . $bill_info["wait_time"] . ' นาที</p> <p style="margin: 0;">เวลารอเพิ่ม : ' . $additional_wait_time_th . '</p> <p style="margin: 0;">เวลามารับ : ' . $estimated_pickup_time . '</p>'; // end FOOD LIST AREA // if test mode is on if ($bill_info["transaction_mode"] === "test_mode") { $mail->Body .= '<p style="text-align: center; width: 900px; background-color: #000; color: #FFF; font-size: 150%; margin: 50px 0 0 0; padding: 5px 0 5px 0;"><strong>TEST MODE</strong></p>'; } // end if test mode $mail->AltBody = ''; if (!$mail->send()) { // echo 'Message could not be sent.'; // echo 'Mailer Error: ' . $mail->ErrorInfo; return false; } else { // echo 'Message has been sent'; return true; } }