我在客户登录之前安装了一个需要管理员批准的免费扩展程序。我正在攻击它以尝试让它允许除一个以外的所有客户群。我认为以下是我要编辑的功能,但是当我进行测试注册时,测试cookie不会显示在我的控制台中。有什么想法吗?
/**
* Flag new accounts as such
*
* @param Varien_Event_Observer $observer
*/
public function customerSaveBefore($observer)
{
$customer = $observer->getEvent()->getCustomer();
$storeId = Mage::helper('customeractivation')->getCustomerStoreId($customer);
$session = Mage::getSingleton('customer/session'); // var $session Mage_Customer_Model_Session
$customer_info = $session->getCustomer(); // var $customer Mage_Customer_Model_Customer
$userinfo = $customer_info->_origData; // fetch users info
// get user's customer group id number
$customer_group = $userinfo['group_id'];
setcookie("Group", "yes");
if (Mage::getStoreConfig(self::XML_PATH_MODULE_DISABLED, $storeId))
{
return;
}
if (!$customer->getId())
{
$defaultStatus = Mage::getStoreConfig(self::XML_PATH_DEFAULT_STATUS, $storeId);
$customer->setCustomerActivated($defaultStatus);
$customer->setCustomerActivationNewAccount(true);
}
}
我的代码是:
$customer_info = $session->getCustomer(); // var $customer Mage_Customer_Model_Customer
$userinfo = $customer_info->_origData; // fetch users info
// get user's customer group id number
$customer_group = $userinfo['group_id'];
setcookie("Group", "yes");
答案 0 :(得分:0)
首先:请不要试图破解该模块。最好创建自己的模块来重写原始模块的类,这样你仍然可以更新原始模块。
第二:你确定部分代码是执行的吗?如果你输入die()会怎么样?
第三:您可以通过实现firegento-debug模块查看所有已触发事件的列表,这样您就可以检查该事件是否真的被触发并且观察者是否被调用。
答案 1 :(得分:0)
您好我正在定制相同的扩展程序。
问题是你没有得到客户群。
尝试此行以获取客户群
$ customer = $ observer-> getEvent() - > getCustomer();
$ groupId = $ customer-> getGroupId();