public function _addToCart()
 {
     $cart = Mage::getSingleton('checkout/cart');
     $session = Mage::getSingleton('core/session', array('name' => 'frontend'));
     $params = $this->getRequest()->getParams();
     if ($params['isAjax'] == 1) {
         $response = array();
         try {
             if (isset($params['qty'])) {
                 $filter = new Zend_Filter_LocalizedToNormalized(array('locale' => Mage::app()->getLocale()->getLocaleCode()));
                 $params['qty'] = $filter->filter($params['qty']);
             }
             $product = Mage::getModel('catalog/product')->load($params['product_id']);
             $related = $this->getRequest()->getParam('related_product');
             /**
              * Check product availability
              */
             if (!$product) {
                 $response['status'] = 'ERROR';
                 $response['message'] = $this->__('Unable to find Product ID');
             }
             $cart->addProduct($product, $params);
             if (!empty($related)) {
                 $cart->addProductsByIds(explode(',', $related));
             }
             $cart->save();
             $session->setCartWasUpdated(true);
             /**
              *
              * @todo remove wishlist observer processAddToCart
              */
             Mage::dispatchEvent('checkout_cart_add_product_complete', array('product' => $product, 'request' => $this->getRequest(), 'response' => $this->getResponse()));
             if (!$session->getNoCartRedirect(true)) {
                 if (!$cart->getQuote()->getHasError()) {
                     $message = $this->__('%s was added to your shopping cart.', Mage::helper('core')->htmlEscape($product->getName()));
                     $response['status'] = 'SUCCESS';
                     $response['message'] = $message;
                 }
             }
         } catch (Mage_Core_Exception $e) {
             $msg = "";
             if ($session->getUseNotice(true)) {
                 $msg = $e->getMessage();
             } else {
                 $messages = array_unique(explode("\n", $e->getMessage()));
                 foreach ($messages as $message) {
                     $msg .= $message . '<br>';
                 }
             }
             $response['status'] = 'ERROR';
             $response['message'] = $msg;
         } catch (Exception $e) {
             $response['status'] = 'ERROR';
             $response['message'] = $this->__('Cannot add the item to shopping cart.');
             Mage::logException($e);
         }
         $this->getResponse()->setBody(Mage::helper('core')->jsonEncode($response));
         return;
     } else {
         return parent::addAction();
     }
 }