Mir liegen 2 Module vor. Modul Merkzettel und Modul Zubehör und natürlich xt-commerce in der Verson 3.04SP2.1.
Egal wie rum ich es versuche, zuerst dieses oder jenes, ich komme nicht drauf, wie der Code angepasst werden muss.
Es geht um die Datei cart_actions.php, hier der Code des Originals:
<?php
/* -----------------------------------------------------------------------------------------
$Id: cart_actions.php 1298 2005-10-09 13:14:44Z mz $
XT-Commerce - community made shopping
http://www.xt-commerce.com
Copyright (c) 2003 XT-Commerce
-----------------------------------------------------------------------------------------
based on:
(c) 2000-2001 The Exchange Project (earlier name of osCommerce)
(c) 2002-2003 osCommerce(application_top.php,v 1.273 2003/05/19); www.oscommerce.com
(c) 2003 nextcommerce (application_top.php,v 1.54 2003/08/25); www.nextcommerce.org
Released under the GNU General Public License
-----------------------------------------------------------------------------------------
Third Party contribution:
Add A Quickie v1.0 Autor Harald Ponce de Leon
Credit Class/Gift Vouchers/Discount Coupons (Version 5.10)
http://www.oscommerce.com/community/contributions,282
Copyright (c) Strider |
[email protected]
Copyright (c Nick Stanko of UkiDev.com,
[email protected]
Copyright (c) Andre
[email protected]
Copyright (c) 2001,2002 Ian C Wilson http://www.phesis.org
Released under the GNU General Public License
---------------------------------------------------------------------------------------*/
// Shopping cart actions
if (isset ($_GET['action'])) {
// redirect the customer to a friendly cookie-must-be-enabled page if cookies are disabled
if ($session_started == false) {
xtc_redirect(xtc_href_link(FILENAME_COOKIE_USAGE));
}
if (DISPLAY_CART == 'true') {
$goto = FILENAME_SHOPPING_CART;
$parameters = array (
'action',
'cPath',
'products_id',
'pid'
);
} else {
$goto = basename($PHP_SELF);
if ($_GET['action'] == 'buy_now') {
$parameters = array (
'action',
'pid',
'products_id',
'BUYproducts_id'
);
} else {
$parameters = array (
'action',
'pid',
'BUYproducts_id',
'info'
);
}
}
switch ($_GET['action']) {
// customer wants to update the product quantity in their shopping cart
case 'update_product' :
if (is_object($econda))
$econda->_emptyCart();
for ($i = 0, $n = sizeof($_POST['products_id']); $i < $n; $i++) {
if (in_array($_POST['products_id'][$i], (is_array($_POST['cart_delete']) ? $_POST['cart_delete'] : array ()))) {
$_SESSION['cart']->remove($_POST['products_id'][$i]);
if (is_object($econda))
$econda->_delArticle($_POST['products_id'][$i], $_POST['cart_quantity'][$i], $_POST['old_qty'][$i]);
} else {
if ($_POST['cart_quantity'][$i] > MAX_PRODUCTS_QTY)
$_POST['cart_quantity'][$i] = MAX_PRODUCTS_QTY;
$attributes = ($_POST['id'][$_POST['products_id'][$i]]) ? $_POST['id'][$_POST['products_id'][$i]] : '';
if (is_object($econda)) {
$old_quantity = $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'][$i], $_POST['id'][$i]));
$econda->_updateProduct($_POST['products_id'][$i], $_POST['cart_quantity'][$i], $old_quantity);
}
$_SESSION['cart']->add_cart($_POST['products_id'][$i], xtc_remove_non_numeric($_POST['cart_quantity'][$i]), $attributes, false);
}
}
xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params($parameters)));
break;
// customer adds a product from the products page
case 'add_product' :
if (isset ($_POST['products_id']) && is_numeric($_POST['products_id'])) {
if ($_POST['products_qty'] > MAX_PRODUCTS_QTY)
$_POST['products_qty'] = MAX_PRODUCTS_QTY;
if (is_object($econda)) {
$econda->_emptyCart();
$old_quantity = $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id']));
$econda->_addProduct($_POST['products_id'], $_POST['products_qty'], $old_quantity);
}
$_SESSION['cart']->add_cart((int) $_POST['products_id'], $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id'])) + xtc_remove_non_numeric($_POST['products_qty']), $_POST['id']);
}
xtc_redirect(xtc_href_link($goto, 'products_id=' . (int) $_POST['products_id'] . '&' . xtc_get_all_get_params($parameters)));
break;
case 'check_gift' :
require_once (DIR_FS_INC . 'xtc_collect_posts.inc.php');
xtc_collect_posts();
break;
// customer wants to add a quickie to the cart (called from a box)
case 'add_a_quickie' :
$quicky = addslashes($_POST['quickie']);
if (GROUP_CHECK == 'true') {
$group_check = "and group_permission_" . $_SESSION['customers_status']['customers_status_id'] . "=1 ";
}
$quickie_query = xtc_db_query("select
products_fsk18,
products_id from " . TABLE_PRODUCTS . "
where products_model = '" . $quicky . "' " . "AND products_status = '1' " . $group_check);
if (!xtc_db_num_rows($quickie_query)) {
if (GROUP_CHECK == 'true') {
$group_check = "and group_permission_" . $_SESSION['customers_status']['customers_status_id'] . "=1 ";
}
$quickie_query = xtc_db_query("select
products_fsk18,
products_id from " . TABLE_PRODUCTS . "
where products_model LIKE '%" . $quicky . "%' " . "AND products_status = '1' " . $group_check);
}
if (xtc_db_num_rows($quickie_query) != 1) {
xtc_redirect(xtc_href_link(FILENAME_ADVANCED_SEARCH_RESULT, 'keywords=' . $quicky, 'NONSSL'));
}
$quickie = xtc_db_fetch_array($quickie_query);
if (xtc_has_product_attributes($quickie['products_id'])) {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $quickie['products_id'], 'NONSSL'));
} else {
if ($quickie['products_fsk18'] == '1' && $_SESSION['customers_status']['customers_fsk18'] == '1') {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $quickie['products_id'], 'NONSSL'));
}
if ($_SESSION['customers_status']['customers_fsk18_display'] == '0' && $quickie['products_fsk18'] == '1') {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $quickie['products_id'], 'NONSSL'));
}
if ($_POST['quickie'] != '') {
$act_qty = $_SESSION['cart']->get_quantity(xtc_get_uprid($quickie['products_id'], 1));
if ($act_qty > MAX_PRODUCTS_QTY)
$act_qty = MAX_PRODUCTS_QTY - 1;
$_SESSION['cart']->add_cart($quickie['products_id'], $act_qty +1, 1);
xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params(array (
'action'
)), 'NONSSL'));
} else {
xtc_redirect(xtc_href_link(FILENAME_ADVANCED_SEARCH_RESULT, 'keywords=' . $quicky, 'NONSSL'));
}
}
break;
// performed by the 'buy now' button in product listings and review page
case 'buy_now' :
if (isset ($_GET['BUYproducts_id'])) {
// check permission to view product
$permission_query = xtc_db_query("SELECT group_permission_" . $_SESSION['customers_status']['customers_status_id'] . " as customer_group, products_fsk18 from " . TABLE_PRODUCTS . " where products_id='" . (int) $_GET['BUYproducts_id'] . "'");
$permission = xtc_db_fetch_array($permission_query);
// check for FSK18
if ($permission['products_fsk18'] == '1' && $_SESSION['customers_status']['customers_fsk18'] == '1') {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id'], 'NONSSL'));
}
if ($_SESSION['customers_status']['customers_fsk18_display'] == '0' && $permission['products_fsk18'] == '1') {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id'], 'NONSSL'));
}
if (GROUP_CHECK == 'true') {
if ($permission['customer_group'] != '1') {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id']));
}
}
if (xtc_has_product_attributes($_GET['BUYproducts_id'])) {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id']));
} else {
if (isset ($_SESSION['cart'])) {
if (is_object($econda)) {
$econda->_emptyCart();
$old_quantity = $_SESSION['cart']->get_quantity((int) $_GET['BUYproducts_id']);
$econda->_addProduct($_GET['BUYproducts_id'], $old_quantity +1, $old_quantity);
}
$_SESSION['cart']->add_cart((int) $_GET['BUYproducts_id'], $_SESSION['cart']->get_quantity((int) $_GET['BUYproducts_id']) + 1);
} else {
xtc_redirect(xtc_href_link(FILENAME_DEFAULT));
}
}
}
xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params(array (
'action',
'BUYproducts_id'
))));
break;
case 'cust_order' :
if (isset ($_SESSION['customer_id']) && isset ($_GET['pid'])) {
if (xtc_has_product_attributes((int) $_GET['pid'])) {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['pid']));
} else {
$_SESSION['cart']->add_cart((int) $_GET['pid'], $_SESSION['cart']->get_quantity((int) $_GET['pid']) + 1);
}
}
xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params($parameters)));
break;
}
}
?>
Der Stand ist nun folgender, ich habe zuerst das Modul Merkzettel installiert nach folgender Anleitung für die cart_actions.php:
shop/includes/cart_actions.php
das suchen :
switch ($_GET['action']) {
// customer wants to update the product quantity in their shopping cart
case 'update_product' :
for ($i = 0, $n = sizeof($_POST['products_id']); $i < $n; $i ++) {
if (in_array($_POST['products_id'][$i], (is_array($_POST['cart_delete']) ? $_POST['cart_delete'] : array ()))) {
$_SESSION['cart']->remove($_POST['products_id'][$i]);
} else {
if ($_POST['cart_quantity'][$i] > MAX_PRODUCTS_QTY)
$_POST['cart_quantity'][$i] = MAX_PRODUCTS_QTY;
$attributes = ($_POST['id'][$_POST['products_id'][$i]]) ? $_POST['id'][$_POST['products_id'][$i]] : '';
$_SESSION['cart']->add_cart($_POST['products_id'][$i], xtc_remove_non_numeric($_POST['cart_quantity'][$i]), $attributes, false);
}
}
hiermit ersetzen :
switch ($_GET['action']) {// customer wants to update the product quantity in their shopping cart
case 'update_product' :
if (is_object($econda))
$econda->_emptyCart();
for ($i = 0, $n = sizeof($_POST['products_id']); $i < $n; $i ++) {
if($_POST['submit_target'] == 'wishlist') //WISHLIST ############
{
if (in_array($_POST['products_id'][$i], (is_array($_POST['cart_delete']) ? $_POST['cart_delete'] : array()))) {
$_SESSION['wishList']->remove($_POST['products_id'][$i]);
} else {
if ($_POST['cart_quantity'][$i]>MAX_PRODUCTS_QTY) $_POST['cart_quantity'][$i]=MAX_PRODUCTS_QTY;
$attributes = ($_POST['id'][$_POST['products_id'][$i]]) ? $_POST['id'][$_POST['products_id'][$i]] : '';
$_SESSION['wishList']->add_cart($_POST['products_id'][$i], xtc_remove_non_numeric($_POST['cart_quantity'][$i]), $attributes, false);
}
$goto = 'wish_list.php';
if (is_object($econda))
$econda->_delArticle($_POST['products_id'][$i], $_POST['cart_quantity'][$i], $_POST['old_qty'][$i]);
}
else //CART ############
{
if (in_array($_POST['products_id'][$i], (is_array($_POST['cart_delete']) ? $_POST['cart_delete'] : array()))) {
$_SESSION['cart']->remove($_POST['products_id'][$i]);
} else {
if ($_POST['cart_quantity'][$i]>MAX_PRODUCTS_QTY) $_POST['cart_quantity'][$i]=MAX_PRODUCTS_QTY;
$attributes = ($_POST['id'][$_POST['products_id'][$i]]) ? $_POST['id'][$_POST['products_id'][$i]] : '';
$_SESSION['cart']->add_cart($_POST['products_id'][$i], xtc_remove_non_numeric($_POST['cart_quantity'][$i]), $attributes, false);
}
if (is_object($econda)) {
$old_quantity = $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'][$i], $_POST['id'][$i]));
$econda->_updateProduct($_POST['products_id'][$i], $_POST['cart_quantity'][$i], $old_quantity);
} //END wishlist/cart ############
}
}
---------------------------
das suchen :
$_SESSION['cart']->add_cart((int) $_POST['products_id'], $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id'])) + xtc_remove_non_numeric($_POST['products_qty']), $_POST['id']);
hiermit ersetzen :
if($_POST['submit_target'] == 'wishlist') {
$_SESSION['wishList']->add_cart((int)$_POST['products_id'], $_SESSION['wishList']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id']))+$_POST['products_qty'], $_POST['id']);
$goto = 'wish_list.php';
} else {
$_SESSION['cart']->add_cart((int)$_POST['products_id'], $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id']))+$_POST['products_qty'], $_POST['id']);
}
***
Die neue cart_actions sieht danach also so aus:
<?php
/* -----------------------------------------------------------------------------------------
$Id: cart_actions.php 1298 2005-10-09 13:14:44Z mz $
XT-Commerce - community made shopping
http://www.xt-commerce.com
Copyright (c) 2003 XT-Commerce
-----------------------------------------------------------------------------------------
based on:
(c) 2000-2001 The Exchange Project (earlier name of osCommerce)
(c) 2002-2003 osCommerce(application_top.php,v 1.273 2003/05/19); www.oscommerce.com
(c) 2003 nextcommerce (application_top.php,v 1.54 2003/08/25); www.nextcommerce.org
Released under the GNU General Public License
-----------------------------------------------------------------------------------------
Third Party contribution:
Add A Quickie v1.0 Autor Harald Ponce de Leon
Credit Class/Gift Vouchers/Discount Coupons (Version 5.10)
http://www.oscommerce.com/community/contributions,282
Copyright (c) Strider |
[email protected]
Copyright (c Nick Stanko of UkiDev.com,
[email protected]
Copyright (c) Andre
[email protected]
Copyright (c) 2001,2002 Ian C Wilson http://www.phesis.org
Released under the GNU General Public License
---------------------------------------------------------------------------------------*/
// Shopping cart actions
if (isset ($_GET['action'])) {
// redirect the customer to a friendly cookie-must-be-enabled page if cookies are disabled
if ($session_started == false) {
xtc_redirect(xtc_href_link(FILENAME_COOKIE_USAGE));
}
if (DISPLAY_CART == 'true') {
$goto = FILENAME_SHOPPING_CART;
$parameters = array (
'action',
'cPath',
'products_id',
'pid'
);
} else {
$goto = basename($PHP_SELF);
if ($_GET['action'] == 'buy_now') {
$parameters = array (
'action',
'pid',
'products_id',
'BUYproducts_id'
);
} else {
$parameters = array (
'action',
'pid',
'BUYproducts_id',
'info'
);
}
}
switch ($_GET['action']) {// customer wants to update the product quantity in their shopping cart
case 'update_product' :
if (is_object($econda))
$econda->_emptyCart();
for ($i = 0, $n = sizeof($_POST['products_id']); $i < $n; $i ++) {
if($_POST['submit_target'] == 'wishlist') //WISHLIST ############
{
if (in_array($_POST['products_id'][$i], (is_array($_POST['cart_delete']) ? $_POST['cart_delete'] : array()))) {
$_SESSION['wishList']->remove($_POST['products_id'][$i]);
} else {
if ($_POST['cart_quantity'][$i]>MAX_PRODUCTS_QTY) $_POST['cart_quantity'][$i]=MAX_PRODUCTS_QTY;
$attributes = ($_POST['id'][$_POST['products_id'][$i]]) ? $_POST['id'][$_POST['products_id'][$i]] : '';
$_SESSION['wishList']->add_cart($_POST['products_id'][$i], xtc_remove_non_numeric($_POST['cart_quantity'][$i]), $attributes, false);
}
$goto = 'wish_list.php';
if (is_object($econda))
$econda->_delArticle($_POST['products_id'][$i], $_POST['cart_quantity'][$i], $_POST['old_qty'][$i]);
}
else //CART ############
{
if (in_array($_POST['products_id'][$i], (is_array($_POST['cart_delete']) ? $_POST['cart_delete'] : array()))) {
$_SESSION['cart']->remove($_POST['products_id'][$i]);
} else {
if ($_POST['cart_quantity'][$i]>MAX_PRODUCTS_QTY) $_POST['cart_quantity'][$i]=MAX_PRODUCTS_QTY;
$attributes = ($_POST['id'][$_POST['products_id'][$i]]) ? $_POST['id'][$_POST['products_id'][$i]] : '';
$_SESSION['cart']->add_cart($_POST['products_id'][$i], xtc_remove_non_numeric($_POST['cart_quantity'][$i]), $attributes, false);
}
if (is_object($econda)) {
$old_quantity = $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'][$i], $_POST['id'][$i]));
$econda->_updateProduct($_POST['products_id'][$i], $_POST['cart_quantity'][$i], $old_quantity);
} //END wishlist/cart ############
}
}
xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params($parameters)));
break;
// customer adds a product from the products page
case 'add_product' :
if (isset ($_POST['products_id']) && is_numeric($_POST['products_id'])) {
if ($_POST['products_qty'] > MAX_PRODUCTS_QTY)
$_POST['products_qty'] = MAX_PRODUCTS_QTY;
if (is_object($econda)) {
$econda->_emptyCart();
$old_quantity = $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id']));
$econda->_addProduct($_POST['products_id'], $_POST['products_qty'], $old_quantity);
}
if($_POST['submit_target'] == 'wishlist') {
$_SESSION['wishList']->add_cart((int)$_POST['products_id'], $_SESSION['wishList']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id']))+$_POST['products_qty'], $_POST['id']);
$goto = 'wish_list.php';
} else {
$_SESSION['cart']->add_cart((int)$_POST['products_id'], $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id']))+$_POST['products_qty'], $_POST['id']);
}
}
xtc_redirect(xtc_href_link($goto, 'products_id=' . (int) $_POST['products_id'] . '&' . xtc_get_all_get_params($parameters)));
break;
case 'check_gift' :
require_once (DIR_FS_INC . 'xtc_collect_posts.inc.php');
xtc_collect_posts();
break;
// customer wants to add a quickie to the cart (called from a box)
case 'add_a_quickie' :
$quicky = addslashes($_POST['quickie']);
if (GROUP_CHECK == 'true') {
$group_check = "and group_permission_" . $_SESSION['customers_status']['customers_status_id'] . "=1 ";
}
$quickie_query = xtc_db_query("select
products_fsk18,
products_id from " . TABLE_PRODUCTS . "
where products_model = '" . $quicky . "' " . "AND products_status = '1' " . $group_check);
if (!xtc_db_num_rows($quickie_query)) {
if (GROUP_CHECK == 'true') {
$group_check = "and group_permission_" . $_SESSION['customers_status']['customers_status_id'] . "=1 ";
}
$quickie_query = xtc_db_query("select
products_fsk18,
products_id from " . TABLE_PRODUCTS . "
where products_model LIKE '%" . $quicky . "%' " . "AND products_status = '1' " . $group_check);
}
if (xtc_db_num_rows($quickie_query) != 1) {
xtc_redirect(xtc_href_link(FILENAME_ADVANCED_SEARCH_RESULT, 'keywords=' . $quicky, 'NONSSL'));
}
$quickie = xtc_db_fetch_array($quickie_query);
if (xtc_has_product_attributes($quickie['products_id'])) {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $quickie['products_id'], 'NONSSL'));
} else {
if ($quickie['products_fsk18'] == '1' && $_SESSION['customers_status']['customers_fsk18'] == '1') {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $quickie['products_id'], 'NONSSL'));
}
if ($_SESSION['customers_status']['customers_fsk18_display'] == '0' && $quickie['products_fsk18'] == '1') {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $quickie['products_id'], 'NONSSL'));
}
if ($_POST['quickie'] != '') {
$act_qty = $_SESSION['cart']->get_quantity(xtc_get_uprid($quickie['products_id'], 1));
if ($act_qty > MAX_PRODUCTS_QTY)
$act_qty = MAX_PRODUCTS_QTY - 1;
$_SESSION['cart']->add_cart($quickie['products_id'], $act_qty +1, 1);
xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params(array (
'action'
)), 'NONSSL'));
} else {
xtc_redirect(xtc_href_link(FILENAME_ADVANCED_SEARCH_RESULT, 'keywords=' . $quicky, 'NONSSL'));
}
}
break;
// performed by the 'buy now' button in product listings and review page
case 'buy_now' :
if (isset ($_GET['BUYproducts_id'])) {
// check permission to view product
$permission_query = xtc_db_query("SELECT group_permission_" . $_SESSION['customers_status']['customers_status_id'] . " as customer_group, products_fsk18 from " . TABLE_PRODUCTS . " where products_id='" . (int) $_GET['BUYproducts_id'] . "'");
$permission = xtc_db_fetch_array($permission_query);
// check for FSK18
if ($permission['products_fsk18'] == '1' && $_SESSION['customers_status']['customers_fsk18'] == '1') {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id'], 'NONSSL'));
}
if ($_SESSION['customers_status']['customers_fsk18_display'] == '0' && $permission['products_fsk18'] == '1') {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id'], 'NONSSL'));
}
if (GROUP_CHECK == 'true') {
if ($permission['customer_group'] != '1') {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id']));
}
}
if (xtc_has_product_attributes($_GET['BUYproducts_id'])) {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['BUYproducts_id']));
} else {
if (isset ($_SESSION['cart'])) {
if (is_object($econda)) {
$econda->_emptyCart();
$old_quantity = $_SESSION['cart']->get_quantity((int) $_GET['BUYproducts_id']);
$econda->_addProduct($_GET['BUYproducts_id'], $old_quantity +1, $old_quantity);
}
$_SESSION['cart']->add_cart((int) $_GET['BUYproducts_id'], $_SESSION['cart']->get_quantity((int) $_GET['BUYproducts_id']) + 1);
} else {
xtc_redirect(xtc_href_link(FILENAME_DEFAULT));
}
}
}
xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params(array (
'action',
'BUYproducts_id'
))));
break;
case 'cust_order' :
if (isset ($_SESSION['customer_id']) && isset ($_GET['pid'])) {
if (xtc_has_product_attributes((int) $_GET['pid'])) {
xtc_redirect(xtc_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . (int) $_GET['pid']));
} else {
$_SESSION['cart']->add_cart((int) $_GET['pid'], $_SESSION['cart']->get_quantity((int) $_GET['pid']) + 1);
}
}
xtc_redirect(xtc_href_link($goto, xtc_get_all_get_params($parameters)));
break;
}
}
?>
Jetzt möchte ich die Veränderungen für das Modul Zubehör einbauen und habe ein Problem, denn der Code, welcher verändert werden soll, ist nicht mehr so wie er war.
Hier die Anleitung für die Datei cart_actions.php des Moduls Zubehör:
// Suchen nach
// -------------------------------------------------------------------------------------------------
case 'add_product' :
if (isset ($_POST['products_id']) && is_numeric($_POST['products_id'])) {
if ($_POST['products_qty'] > MAX_PRODUCTS_QTY)
$_POST['products_qty'] = MAX_PRODUCTS_QTY;
if (is_object($econda)) {
$econda->_emptyCart();
$old_quantity = $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id']));
$econda->_addProduct($_POST['products_id'], $_POST['products_qty'], $old_quantity);
}
$_SESSION['cart']->add_cart((int) $_POST['products_id'], $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id'])) + xtc_remove_non_numeric($_POST['products_qty']), $_POST['id']);
}
xtc_redirect(xtc_href_link($goto, 'products_id=' . (int) $_POST['products_id'] . '&' . xtc_get_all_get_params($parameters)));
break;
// -------------------------------------------------------------------------------------------------
// Ersetzen durch
// -------------------------------------------------------------------------------------------------
case 'add_product' :
if (isset($_POST['products_id'])) {
if ($_POST['products_qty'] > MAX_PRODUCTS_QTY)
$_POST['products_qty'] = MAX_PRODUCTS_QTY;
if (is_object($econda)) {
$econda->_emptyCart();
$old_quantity = $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'], $_POST['id']));
$econda->_addProduct($_POST['products_id'], $_POST['products_qty'], $old_quantity);
}
$pids = count($_POST['products_id']);
for($i=0; $i<$pids; $i++){
$_SESSION['cart']->add_cart((int)$_POST['products_id'][$i], $_SESSION['cart']->get_quantity(xtc_get_uprid($_POST['products_id'][$i], $_POST['id'])) + xtc_remove_non_numeric($_POST['products_qty']), $_POST['id']);
}
}
xtc_redirect(xtc_href_link($goto, 'products_id=' . (int) $_POST['products_id'] . '&' . xtc_get_all_get_params($parameters)));
break;
// -------------------------------------------------------------------------------------------------
Wie kann man das Problem lösen, an meinen Versuchen bin ich gescheitert.
mfg 0etzi