Пример #1
0
}
//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;
     }
 }
Пример #3
0
                $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>