} //check to see what checkout and if it needs to be deleted if ($_SERVER["REQUEST_METHOD"] == "GET") { $co_id = test_input($_GET['co_id']); if (isset($_GET['delete']) && $_GET['delete'] == true) { Checkout::removeCheckout($co_id); $deleted = true; header("Location: checkouts.php?co_del=true"); } } //pull checkout and gearlist $checkout = new Checkout(); $checkout->retrieveCheckout($co_id); if (isset($dateTime)) { $checkout->setReturned($dateTime); $checkout->finalizeCheckout(); } $gearList = $checkout->getGearList(); //create array of gear types within this checkout $gearTypes = array(); foreach ($gearList as $gear) { $gearObject = new Gear(); $gearObject->fetch($gear[0]); $type = gearTypeWithID($gearObject->getType()); //gearTypeWithID(getGearType($gear[0])); if (!in_array($type, $gearTypes)) { $gearTypes[] = $type; } } //foreach ?>
/** * Update cart payment with returned results and complete sale or return an error * * @param $arrPaymentResult * @return bool */ protected function finalizeOrder($arrPaymentResult) { $objCart = Yii::app()->shoppingcart; $objPayment = $objCart->payment; $objPayment->payment_data = $arrPaymentResult['result']; $objPayment->payment_amount = $arrPaymentResult['amount_paid']; $objPayment->datetime_posted = isset($retVal['payment_date']) ? date("Y-m-d H:i:s", strtotime($retVal['payment_date'])) : new CDbExpression('NOW()'); $objPayment->save(); if (isset($arrPaymentResult['success']) && $arrPaymentResult['success']) { Yii::log("Payment Success! Wrapping up processing", 'info', 'application.' . __CLASS__ . "." . __FUNCTION__); // We have successful payment, so close out the order and show the receipt. $objCart->printed_notes .= $this->checkoutForm->orderNotes; $objCart->completeUpdatePromoCode(); Checkout::emailReceipts($objCart); Checkout::finalizeCheckout($objCart, true, true); return true; } else { $error = isset($arrPaymentResult['result']) ? $arrPaymentResult['result'] : "UNKNOWN ERROR"; $this->checkoutForm->addErrors(array('payment' => $error)); Yii::log("Error executing payment:\n" . $error, 'error', 'application.' . __CLASS__ . '.' . __FUNCTION__); return false; } }
$co->setEnd($co_end); $co->setDescription($description); $co->setLocation($location); $co->setDRNumber($dr_number); foreach ($gearList as $gearItem) { $gearObject = new Gear(); $gearObject->fetch($gearItem); //echo ">1"; if ($gearObject->availableQty($co_start, $co_end) > 1) { $co->addToGearList($gearItem, $gearQty[$i]); $i++; } else { $co->addToGearList($gearItem, 1); } } $co->finalizeCheckout(); $co_id = $co->getID(); header("Location: checkout.php?co_id={$co_id}"); } } } } //end if POST //increment step $step++; ?> <!DOCTYPE html> <html lang="en"> <head>