public function scan() { if (Efiwebsetting::getData('checkOAuth') == 'yes') { IMBAuth::checkOAuth(); } $id_user = isset($_GET['id_user']) ? addslashes($_GET['id_user']) : ""; if (!$id_user) { Generic::errorMsg("Please login!"); } if (!User::checkUserID($id_user)) { Generic::errorMsg("ID User not found!"); } $QR = Generic::mustCheck($_GET['QR'], "No QR found!"); $objOrder = new MasterOrderModel(); // check, QR validapakah table free // table status = 0, occupied, 1 is free if (!Mastertable::isQRValid($QR)) { Generic::errorMsg("Invalid QR Code"); } $objUser = new UserModel(); $objUser->getByID($id_user); $objTable = Mastertable::getTableBYQR($QR); $id_table = $objTable[0]->id_table; $objTable = Mastertable::getTableID($id_table); $isTableFree = MasterTable::isTableFree($objTable); // Table free if ($isTableFree) { $paymentMethod = Generic::mustCheck($_GET['payment_method'], "Payment Method Required"); $this->requestRestoPermission($objUser, $objTable, $paymentMethod); } else { $objOrder = MasterOrder::getActiveOrderByTableID($id_table); Generic::checkCountWithMsg($objOrder, "Empty ID Order!"); $this->requestJoinTable($objUser, $objOrder); } die; }