function execute() { global $lC_Session, $lC_ShoppingCart, $lC_Product, $lC_Language, $lC_Customer; if (!isset($lC_Product)) { $id = false; foreach ($_GET as $key => $value) { if ((is_numeric($key) || preg_match('/^[a-zA-Z0-9 -_]*$/', $key)) && $key != $lC_Session->getName()) { $id = $key; } break; } if ($id !== false && lC_Product::checkEntry($id)) { $lC_Product = new lC_Product($id); } } if (isset($lC_Product)) { // VQMOD-hookpoint; DO NOT MODIFY OR REMOVE THE LINE BELOW $quantity = isset($_POST['quantity']) && !empty($_POST['quantity']) ? (int) $_POST['quantity'] : 1; if ($lC_Product->hasVariants()) { if (isset($_POST['variants']) && is_array($_POST['variants']) && !empty($_POST['variants'])) { if ($lC_Product->variantExists($_POST['variants'])) { $lC_ShoppingCart->add($lC_Product->getProductVariantID($_POST['variants']), $quantity); } else { lc_redirect(lc_href_link(FILENAME_PRODUCTS, $lC_Product->getKeyword() . '&error=' . urlencode($lC_Language->get('variant_combo_not_available')))); return false; } } else { lc_redirect(lc_href_link(FILENAME_PRODUCTS, $lC_Product->getKeyword())); return false; } } else { if (isset($_GET['info']) && $_GET['info'] == '1') { } else { if ($lC_Product->hasSubProducts($lC_Product->getID()) || $lC_Product->hasSimpleOptions()) { lc_redirect(lc_href_link(FILENAME_PRODUCTS, $lC_Product->getKeyword())); } } if (isset($_POST['quantity']) && is_array($_POST['quantity'])) { foreach ($_POST['quantity'] as $product_id => $quantity) { $lC_ShoppingCart->add((int) $product_id, (int) $quantity); } } else { $lC_ShoppingCart->add($lC_Product->getID(), $quantity); } } } lc_redirect(lc_href_link(FILENAME_CHECKOUT)); }