public function lC_Checkout_Confirmation() { global $lC_Session, $lC_Services, $lC_Language, $lC_ShoppingCart, $lC_Customer, $lC_MessageStack, $lC_NavigationHistory, $lC_Breadcrumb, $lC_Payment, $lC_Vqmod; require $lC_Vqmod->modCheck('includes/classes/address_book.php'); if ($lC_Customer->isLoggedOn() === false) { $lC_NavigationHistory->setSnapshot(); lc_redirect(lc_href_link(FILENAME_ACCOUNT, 'login', 'SSL')); } if ($lC_ShoppingCart->hasContents() === false) { lc_redirect(lc_href_link(FILENAME_CHECKOUT, null, 'SSL')); } // if no shipping method has been selected, redirect the customer to the shipping method selection page if ($lC_ShoppingCart->hasShippingAddress() == false) { if (defined('SKIP_CHECKOUT_SHIPPING_PAGE') && SKIP_CHECKOUT_SHIPPING_PAGE == '1') { } else { lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'shipping', 'SSL')); } } include $lC_Vqmod->modCheck('includes/classes/order.php'); $this->_page_title = $lC_Language->get('confirmation_heading'); $lC_Language->load('order'); if ($lC_Services->isStarted('breadcrumb')) { $lC_Breadcrumb->add($lC_Language->get('breadcrumb_checkout_confirmation'), lc_href_link(FILENAME_CHECKOUT, $this->_module, 'SSL')); } // added due to bootstrap not having order comments before confirmation page $_POST['comments'] = $_POST['comments']; //////////////////////////////////////////// if (isset($_POST['comments']) && isset($_SESSION['comments']) && empty($_POST['comments'])) { unset($_SESSION['comments']); } elseif (!empty($_POST['comments'])) { $_SESSION['comments'] = lc_sanitize_string($_POST['comments']); } if (isset($_POST['po_number']) && isset($_SESSION['po_number']) && empty($_POST['po_number'])) { unset($_SESSION['po_number']); } elseif (!empty($_POST['po_number'])) { $_SESSION['po_number'] = lc_sanitize_string($_POST['po_number']); } // added for payment terms if (isset($_POST['payment_terms']) && empty($_POST['payment_terms']) === false) { $_SESSION['payment_terms'] = $_POST['payment_terms']; } // load the selected payment module include $lC_Vqmod->modCheck('includes/classes/payment.php'); $lC_Payment = new lC_Payment(isset($_POST['payment_method']) ? $_POST['payment_method'] : $lC_ShoppingCart->getBillingMethod('id')); if (isset($_POST['payment_method'])) { $lC_ShoppingCart->setBillingMethod(array('id' => $_POST['payment_method'], 'title' => $GLOBALS['lC_Payment_' . $_POST['payment_method']]->getMethodTitle())); } if ($lC_Payment->hasActive() && (isset($GLOBALS['lC_Payment_' . $lC_ShoppingCart->getBillingMethod('id')]) === false || isset($GLOBALS['lC_Payment_' . $lC_ShoppingCart->getBillingMethod('id')]) && is_object($GLOBALS['lC_Payment_' . $lC_ShoppingCart->getBillingMethod('id')]) && $GLOBALS['lC_Payment_' . $lC_ShoppingCart->getBillingMethod('id')]->isEnabled() === false)) { $lC_MessageStack->add('checkout_payment', $lC_Language->get('error_no_payment_module_selected'), 'error'); } if (isset($_SESSION['SKIP_PAYMENT_PAGE']) && $_SESSION['SKIP_PAYMENT_PAGE'] == '1') { } else { if ($lC_MessageStack->size('checkout_payment') > 0) { lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'payment', 'SSL')); } } if ($lC_Payment->hasActive()) { $lC_Payment->pre_confirmation_check(); } // Stock Check if (STOCK_CHECK == '1' && AUTODISABLE_OUT_OF_STOCK_PRODUCT == '1') { foreach ($lC_ShoppingCart->getProducts() as $product) { if (!$lC_ShoppingCart->isInStock($product['item_id'])) { lc_redirect(lc_href_link(FILENAME_CHECKOUT, null, 'AUTO')); } } } }
public function lC_Checkout_Payment() { global $lC_Database, $lC_Session, $lC_ShoppingCart, $lC_Customer, $lC_Services, $lC_Language, $lC_NavigationHistory, $lC_Breadcrumb, $lC_Payment, $lC_MessageStack, $lC_Vqmod; require $lC_Vqmod->modCheck('includes/classes/address_book.php'); if ($lC_Customer->isLoggedOn() === false) { $lC_NavigationHistory->setSnapshot(); lc_redirect(lc_href_link(FILENAME_ACCOUNT, 'login', 'SSL')); } if ($lC_ShoppingCart->hasContents() === false) { lc_redirect(lc_href_link(FILENAME_CHECKOUT, null, 'SSL')); } // if no shipping method has been selected, redirect the customer to the shipping method selection page if ($lC_ShoppingCart->hasShippingMethod() === false) { if (defined('SKIP_CHECKOUT_SHIPPING_PAGE') && SKIP_CHECKOUT_SHIPPING_PAGE == '1') { if (lC_AddressBook::numberOfEntries() < 1) { lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'payment_address', 'SSL')); } } else { lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'shipping', 'SSL')); } } else { if (defined('SKIP_CHECKOUT_SHIPPING_PAGE') && SKIP_CHECKOUT_SHIPPING_PAGE == '1') { if (lC_AddressBook::numberOfEntries() < 1) { lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'payment_address', 'SSL')); } } } // Stock Check if (STOCK_CHECK == '1' && AUTODISABLE_OUT_OF_STOCK_PRODUCT == '1') { foreach ($lC_ShoppingCart->getProducts() as $products) { if ($lC_ShoppingCart->isInStock($products['id']) === false) { lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'SSL')); break; } } } $this->_page_title = $lC_Language->get('payment_method_heading'); if ($lC_Services->isStarted('breadcrumb')) { $lC_Breadcrumb->add($lC_Language->get('breadcrumb_checkout_payment'), lc_href_link(FILENAME_CHECKOUT, $this->_module, 'SSL')); } // redirect to the billing address page when no default address exists if ($lC_Customer->hasDefaultAddress() === false) { $this->_page_title = $lC_Language->get('payment_address_heading'); $this->_page_contents = 'checkout_payment_address.php'; $this->addJavascriptPhpFilename('templates/' . $this->getCode() . '/javascript/addressBookDetails.js.php'); } else { // if no billing destination address was selected, use the customers own address as default if ($lC_ShoppingCart->hasBillingAddress() == false) { $lC_ShoppingCart->setBillingAddress($lC_Customer->getDefaultAddressID()); } else { // verify the selected billing address $Qcheck = $lC_Database->query('select address_book_id from :table_address_book where address_book_id = :address_book_id and customers_id = :customers_id limit 1'); $Qcheck->bindTable(':table_address_book', TABLE_ADDRESS_BOOK); $Qcheck->bindInt(':address_book_id', $lC_ShoppingCart->getBillingAddress('id')); $Qcheck->bindInt(':customers_id', $lC_Customer->getID()); $Qcheck->execute(); if ($Qcheck->numberOfRows() !== 1) { $lC_ShoppingCart->setBillingAddress($lC_Customer->getDefaultAddressID()); $lC_ShoppingCart->resetBillingMethod(); } } // load all enabled payment modules include $lC_Vqmod->modCheck('includes/classes/payment.php'); $lC_Payment = new lC_Payment(); $this->addJavascriptBlock($lC_Payment->getJavascriptBlocks()); } if (isset($_GET['payment_error'])) { $lC_MessageStack->add('checkout_payment', urldecode($_GET['payment_error']), 'error'); } if (isset($_SESSION['messageToStack']) && !empty($_SESSION['messageToStack'])) { $lC_MessageStack->__construct(); } // ppec inject if (isset($_GET['skip']) && $_GET['skip'] == 'no' || isset($_GET['payment_error'])) { if (isset($_SESSION['SKIP_PAYMENT_PAGE'])) { unset($_SESSION['SKIP_PAYMENT_PAGE']); } if (isset($_SESSION['cartSync'])) { unset($_SESSION['cartSync']); } } else { if (isset($_SESSION['SKIP_PAYMENT_PAGE']) && $_SESSION['SKIP_PAYMENT_PAGE'] === TRUE) { lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'confirmation', 'SSL')); } } }
public function lC_Checkout_Process() { global $lC_Session, $lC_ShoppingCart, $lC_Customer, $lC_NavigationHistory, $lC_Payment, $lC_Vqmod; require $lC_Vqmod->modCheck('includes/classes/address_book.php'); if (isset($_SESSION['PPEC_TOKEN']) && $_SESSION['PPEC_TOKEN'] != NULL && isset($_GET['token']) && $_GET['token'] == $_SESSION['PPEC_TOKEN']) { } else { if ($lC_Customer->isLoggedOn() === false) { $lC_NavigationHistory->setSnapshot(); lc_redirect(lc_href_link(FILENAME_ACCOUNT, 'login', 'SSL')); } } if ($lC_ShoppingCart->hasContents() === false) { lc_redirect(lc_href_link(FILENAME_CHECKOUT, null, 'SSL')); } // added for removal of order comments from shipping and payment pages and placed on confirmation page only during checkout if (!empty($_POST['comments'])) { $_SESSION['comments'] = lc_sanitize_string($_POST['comments']); } // if no shipping method has been selected, redirect the customer to the shipping method selection page if ($lC_ShoppingCart->hasShippingMethod() === false && $lC_ShoppingCart->getContentType() != 'virtual') { if (defined('SKIP_CHECKOUT_SHIPPING_PAGE') && SKIP_CHECKOUT_SHIPPING_PAGE == '1') { } else { lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'shipping', 'SSL')); } } // load selected payment module include $lC_Vqmod->modCheck('includes/classes/payment.php'); /*VQMOD-003*/ if (isset($_SESSION['PPEC_TOKEN']) && $_SESSION['PPEC_TOKEN'] != NULL && isset($_GET['token']) && $_GET['token'] == $_SESSION['PPEC_TOKEN']) { $lC_Payment = new lC_Payment($lC_ShoppingCart->getBillingMethod('id')); //$lC_ShoppingCart->setBillingMethod(array('id' => 'paypal_adv', 'title' => $GLOBALS['lC_Payment_paypal_adv']->getMethodTitle())); if (isset($_SESSION['cartSync']['cartID']) && $_SESSION['cartSync']['cartID'] != NULL) { $_SESSION['cartID'] = $_SESSION['cartSync']['cartID']; $_SESSION['prepOrderID'] = $_SESSION['cartSync']['prepOrderID']; } } else { if (isset($_SESSION['cartSync']['paymentMethod']) && $_SESSION['cartSync']['paymentMethod'] != NULL) { $lC_Payment = new lC_Payment($_SESSION['cartSync']['paymentMethod']); $lC_ShoppingCart->setBillingMethod(array('id' => $_SESSION['cartSync']['paymentMethod'], 'title' => $GLOBALS['lC_Payment_' . $_SESSION['cartSync']['paymentMethod']]->getMethodTitle())); } else { $lC_Payment = new lC_Payment($lC_ShoppingCart->getBillingMethod('id')); } } if ($lC_Payment->hasActive() && $lC_ShoppingCart->hasBillingMethod() === false) { lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'payment', 'SSL')); } include $lC_Vqmod->modCheck('includes/classes/order.php'); $lC_Payment->process(); $lC_ShoppingCart->reset(true); // unregister session variables used during checkout if (isset($_SESSION['comments'])) { unset($_SESSION['comments']); } if (isset($_SESSION['cartSync'])) { unset($_SESSION['cartSync']); } /*VQMOD-004*/ if (isset($_SESSION['PPEC_TOKEN'])) { unset($_SESSION['PPEC_TOKEN']); } if (isset($_SESSION['PPEC_PROCESS'])) { unset($_SESSION['PPEC_PROCESS']); } if (isset($_SESSION['PPEC_PAYDATA'])) { unset($_SESSION['PPEC_PAYDATA']); } if (isset($_SESSION['this_handling'])) { unset($_SESSION['this_handling']); } if (isset($_SESSION['this_payment'])) { unset($_SESSION['this_payment']); } if (isset($_SESSION['SelectedShippingMethodCost'])) { unset($_SESSION['SelectedShippingMethodCost']); } lc_redirect(lc_href_link(FILENAME_CHECKOUT, 'success', 'SSL')); }