Exemple #1
0
 public function prepareSnippets(Mzax_Emarketing_Model_Medium_Email_Snippets $snippets)
 {
     parent::prepareSnippets($snippets);
     $snippets->addVar('quote.customer_firstname', 'Customer Firstname', 'Firstname of the customer from the quote');
     $snippets->addVar('quote.customer_lastname', 'Customer Lastname', 'Lastname of the customer from the quote');
     $snippets->addSnippets('mage.cart.products', '{{block type="mzax_emarketing/template" area="frontend" template="mzax/email/quote-items.phtml" quote="$quote"}}', $this->__('Shopping Cart Products Table'), $this->__('Simple table to display the shopping cart products.'));
 }
Exemple #2
0
 public function prepareSnippets(Mzax_Emarketing_Model_Medium_Email_Snippets $snippets)
 {
     parent::prepareSnippets($snippets);
     $snippets->addVar('order.customer_firstname', 'Customer Firstname', 'Firstname of the customer from the order');
     $snippets->addVar('order.customer_lastname', 'Customer Lastname', 'Lastname of the customer from the order');
     $snippets->addSnippets('mage.order.products', '{{block type="mzax_emarketing/template" area="frontend" template="mzax/email/order-items.phtml" order="$order"}}', $this->__('Order Products Table'), $this->__('Simple table to display the order products.'));
 }
Exemple #3
0
 /**
  * Set order default filters
  * 
  * (non-PHPdoc)
  * @see Mzax_Emarketing_Model_Recipient_Provider_Abstract::setDefaultFilters()
  */
 public function setDefaultFilters()
 {
     parent::setDefaultFilters();
     /* @var $storeFilter Mzax_Emarketing_Model_Object_Filter_Order_Table */
     $storeFilter = $this->addFilter('order_table');
     if ($storeFilter && $this->getCampaign()) {
         $storeFilter->setColumn('store_id');
         $storeFilter->setValue($this->getCampaign()->getStoreId());
         $storeFilter->setOperator('()');
     }
     /* @var $statusFilter Mzax_Emarketing_Model_Object_Filter_Order_Table */
     $statusFilter = $this->addFilter('order_table');
     if ($statusFilter) {
         $statusFilter->setColumn('status');
         $statusFilter->setValue(Mage_Sales_Model_Order::STATE_COMPLETE);
         $statusFilter->setOperator('()');
     }
     /* @var $shippedFilter Mzax_Emarketing_Model_Object_Filter_Order_ShippedAt */
     $shippedFilter = $this->addFilter('order_shipped');
     if ($shippedFilter) {
         $shippedFilter->setShippedAtFrom(5);
         $shippedFilter->setShippedAtTo(8);
         $shippedFilter->setShippedAtUnit('days');
     }
 }
Exemple #4
0
 /**
  * Set order default filters
  *
  * (non-PHPdoc)
  * @see Mzax_Emarketing_Model_Recipient_Provider_Abstract::setDefaultFilters()
  */
 public function setDefaultFilters()
 {
     parent::setDefaultFilters();
     /* @var $storeFilter Mzax_Emarketing_Model_Object_Filter_Quote_Table */
     $storeFilter = $this->addFilter('quote_table');
     if ($storeFilter && $this->getCampaign()) {
         $storeFilter->setColumn('store_id');
         $storeFilter->setValue($this->getCampaign()->getStoreId());
         $storeFilter->setOperator('()');
     }
 }
Exemple #5
0
 public function prepareRecipient(Mzax_Emarketing_Model_Recipient $recipient)
 {
     parent::prepareRecipient($recipient);
     /* @var $subscriber Mage_Newsletter_Model_Subscriber */
     $subscriber = $recipient->getObject();
     $recipient->setSubscriber($subscriber);
     $recipient->setEmail($subscriber->getEmail());
     if ($subscriber->getCustomerId()) {
         /* @var $customer Mage_Customer_Model_Customer */
         $customer = Mage::getModel('customer/customer')->load($subscriber->getCustomerId());
         $recipient->setCustomer($customer);
         $recipient->setName($customer->getName());
     }
 }
Exemple #6
0
 protected function _beforeSave()
 {
     parent::_beforeSave();
     if ($this->_mediumData) {
         $this->setData('medium_json', $this->_mediumData->toJson());
     }
     if ($this->_provider) {
         $this->setProvider($this->_provider->getType());
         $this->setFilterData($this->_provider->getFilter()->asJson());
     }
     if (!$this->getData('medium')) {
         throw new Exception("Campaign must define a medium");
     }
     if (!$this->getData('provider')) {
         throw new Exception("Campaign must define a recipient provider");
     }
 }