Hello Everybody,
I don't know what's happened but i have to stop a website in production. Uuntil begining of last week, there was no problem.
The problem is :
When we click on the order button (checkout/cart), the one page checkout, we stay on the checkout/cart. The version is magento 1.9.2.4
I've found what is wrong but i find no solution to solve it
this website use a third-party extension which display configurable product on a grid.
If i put false in xml of this extension, everything run
I notice this extension override the cartcontroller
<?php /** * ModuleMart_Configurablegridview extension * * NOTICE OF LICENSE * * This source file is subject to the Module-Mart License * that is bundled with this package in the file license.txt. * It is also available through the world-wide-web at this URL: * http://www.modulemart.com/license.txt * If you did not receive a copy of the license and are unable to * obtain it through the world-wide-web, please send an email * to modules@modulemart.com so we can send you a copy immediately. * * DISCLAIMER * * Do not edit or add to this file if you wish to upgrade this extension to newer * versions in the future. If you wish to customize this extension for your * needs please refer to http://www.modulemart.com for more information. * * @category ModuleMart * @package ModuleMart_Configurablegridview * @author-email modules@modulemart.com * @copyright Copyright 2014 © modulemart.com. All Rights Reserved */ require_once 'Mage/Checkout/controllers/CartController.php'; class ModuleMart_Configurablegridview_CartController extends Mage_Checkout_CartController { public function addAction() { try { if($this->getRequest()->getParam('configurable_grid_table') == 'Yes') { $params = $this->getRequest()->getParams(); $config_super_attributes = $params['super_attribute_quickshop']; $cart = $this->_getCart(); $config_table_qty = $params['config_table_qty']; $options = isset($params['options']) ? $params['options'] : null; $qty_config = array(); foreach($config_table_qty as $sup_qty => $_super_qty) { $qty_config[$sup_qty] =$_super_qty; } $config_table_qty = $qty_config; foreach($config_super_attributes as $sId => $config_attribute) { if(isset($config_table_qty[$sId]) && $config_table_qty[$sId]!='' && $config_table_qty[$sId] > 0) { $product= $this->_initProduct(); $related= $this->getRequest()->getParam('related_product'); if (!$product) { die(var_dump($this->getRequest()->getParams())); $this->_goBack(); return; } if(isset($config_table_qty[$sId])) { $params = array(); $params['qty'] = $config_table_qty[$sId]; //$params['super_attribute'] = $config_attribute; if($options != null) $params['options'] = $options; if($params['qty'] > 0 && $params['qty']!='') { //$cart->addProduct($product, $params); $cart->addProduct($sId, $params); if (!empty($related)) { $cart->addProductsByIds(explode(',', $related)); } } } } } } else { if (!$this->_validateFormKey()) { $this->_goBack(); return; } $params = $this->getRequest()->getParams(); $cart = $this->_getCart(); $product= $this->_initProduct(); $related= $this->getRequest()->getParam('related_product'); /** * Check product availability */ if (!$product) { $this->_goBack(); return; } $cart->addProduct($product, $params); if (!empty($related)) { $cart->addProductsByIds(explode(',', $related)); } } $cart->save(); // set the cart as updated Mage::getSingleton('checkout/session')->setCartWasUpdated(true); $message = $this->__('%s was successfully added to your shopping cart.', $product['name']); if (!$this->_getSession()->getNoCartRedirect(true)) { $this->_getSession()->addSuccess($message); $this->_goBack(); } if ($this->getRequest()->isXmlHttpRequest()) { exit('1'); } $this->_redirect('checkout/cart'); } catch (Mage_Core_Exception $e) { if ($this->_getSession()->getUseNotice(true)) { $this->_getSession()->addNotice(Mage::helper('core')->escapeHtml($e->getMessage())); } else { $messages = array_unique(explode("\n", $e->getMessage())); foreach ($messages as $message) { $this->_getSession()->addError(Mage::helper('core')->escapeHtml($message)); } } $url = $this->_getSession()->getRedirectUrl(true); if ($url) { $this->getResponse()->setRedirect($url); } else { $this->_redirectReferer(Mage::helper('checkout/cart')->getCartUrl()); } } catch (Exception $e) { $this->_getSession()->addException($e, $this->__('Cannot add the item to shopping cart.')); Mage::logException($e); $this->_goBack(); } } } ?>
Do you see something wrong on this ?
Except cartcontroller, is there something else to check ?
If you more detail, don't hesitate to ask
Thanks in advance for you help
Regards