With system config:
+
If that's not what you want, we can do event-observer:
/**
* Event 'checkout_cart_product_add_before'
* @see Mage_Checkout_Model_Cart ::addProduct()
*
* @param Varien_Event_Observer $observer
* @return void
*/
public function beforeAddToCart(Varien_Event_Observer $observer)
{
if (Mage::getSingleton('customer/session')->isLoggedIn()) {
return;
}
/** @var Mage_Catalog_Model_Product $product */
$product = $observer->getProduct();
$currentUrl = $product->getProductUrl();
Mage::getSingleton('customer/session')->setBeforeAuthUrl($currentUrl);
$notice = Mage::helper('xxx')->__(
'You must be logged in to add this product. Please click <a href="%s">here</a> to register or login.',
Mage::helper('customer')->getLoginUrl()
);
Mage::getSingleton('checkout/session')->setUseNotice(true);
Mage::throwException($notice);
}
Posted by kiatng to OpenMage (2023-11-24 06:57)