当前位置: 首页>>代码示例>>PHP>>正文


PHP Mage_Newsletter_Model_Subscriber::subscribe方法代码示例

本文整理汇总了PHP中Mage_Newsletter_Model_Subscriber::subscribe方法的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Newsletter_Model_Subscriber::subscribe方法的具体用法?PHP Mage_Newsletter_Model_Subscriber::subscribe怎么用?PHP Mage_Newsletter_Model_Subscriber::subscribe使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Mage_Newsletter_Model_Subscriber的用法示例。


在下文中一共展示了Mage_Newsletter_Model_Subscriber::subscribe方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: subscribe

 public function subscribe($email, $fromWebHooks = null)
 {
     $store = Mage::app()->getStore()->getStoreId();
     $helper = Mage::helper('mailchimp');
     if ($helper->mailChimpEnabled($store)) {
         $this->loadByEmail($email);
         $customerSession = Mage::getSingleton('customer/session');
         if (!$this->getId()) {
             $this->setSubscriberConfirmCode($this->randomSequence());
         }
         $isConfirmNeed = (bool) $helper->getSubscribeConfig('double_optin', $store) && !$fromWebHooks ? true : false;
         if (!$this->getId() || $this->getStatus() == self::STATUS_UNSUBSCRIBED || $this->getStatus() == self::STATUS_NOT_ACTIVE) {
             if ($isConfirmNeed) {
                 // if user subscribes own login email - confirmation is not needed
                 $ownerId = Mage::getModel('customer/customer')->setWebsiteId(Mage::app()->getStore()->getWebsiteId())->loadByEmail($email)->getId();
                 if ($customerSession->isLoggedIn() && $ownerId == $customerSession->getId()) {
                     $this->setStatus(self::STATUS_SUBSCRIBED);
                 } else {
                     $this->setStatus(self::STATUS_NOT_ACTIVE);
                 }
             } else {
                 $this->setStatus(self::STATUS_SUBSCRIBED);
             }
             $this->setSubscriberEmail($email);
         }
         if ($customerSession->isLoggedIn()) {
             $this->setStoreId($customerSession->getCustomer()->getStoreId());
             $this->setCustomerId($customerSession->getCustomerId());
         } else {
             $this->setStoreId(Mage::app()->getStore()->getId());
             $this->setCustomerId(0);
         }
         $this->setIsStatusChanged(true);
         try {
             $this->save();
             if ($isConfirmNeed) {
                 $this->sendConfirmationRequestEmail();
             } else {
                 $this->sendConfirmationSuccessEmail();
             }
             return $this->getStatus();
         } catch (Exception $e) {
             throw new Exception($e->getMessage());
         }
     } else {
         return parent::subscribe($email);
     }
 }
开发者ID:votanlean,项目名称:Magento-Pruebas,代码行数:48,代码来源:Subscriber.php


注:本文中的Mage_Newsletter_Model_Subscriber::subscribe方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。