Version Notes
New Automation improvements.
Transactional Emails, Custom Customer Attributes, Reports & More
This release includes some great new functionality as well as including a number of fixes.
##IMPORTANT## Dynamic content URL's have been changed so will need updating within your dotMailer account to ensure they continue working correctly. ##IMPORTANT##
Release Highlights:
+ Transactional Emails: Replace the standard emails Magento currently sends to your customers and guests with beautifully created campaigns from dotMailer. Emails include new account, new order, dispatch, cancel and refund emails. **A dotMailer child account is required to enable this functionality**
+ Custom Customer Attributes: Sync your custom created customer attributes to dotMailer
+ Dynamic Content Styling: Apply custom CSS to all dynamic content pages e.g. font size, colour and type.
+ Reporting: Now within the Newsletter section in Magento you can view the import status of contacts and orders, as well as the sending status of transactional and lost basket emails.
Release Info
Developer | Calin Diacon |
Extension | dotmailermagento |
Version | 5.2.0 |
Comparing to | |
See all releases |
Code changes from version 5.1.1 to 5.2.0
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Automation/Edit.php +0 -35
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Automation/Edit/Form.php +0 -26
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Automation/Grid.php +0 -11
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Column/Renderer/Status.php +2 -2
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Column/Renderer/Sync.php +3 -1
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Customer/Tab/Stats.php +2 -2
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Dashboard.php +1 -1
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Dashboard/Tabs/Analysis.php +2 -2
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Dashboard/Tabs/Analysis/Abandonedcarts.php +2 -2
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Dashboard/Tabs/Analysis/Customer.php +2 -2
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Dashboard/Tabs/Analysis/Rfm.php +1 -1
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Dashboard/Tabs/Analysis/Sales.php +1 -1
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Dashboard/Tabs/Analysis/Subscriber.php +2 -2
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Dashboard/Tabs/General.php +2 -2
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Dashboard/Tabs/General/Data.php +1 -1
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Dashboard/Tabs/Status.php +2 -45
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/Importer/Grid.php +0 -8
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/System/Advanced/Runimportersync.php +22 -0
- app/code/community/Dotdigitalgroup/Email/Block/Adminhtml/System/Automation/Connect.php +2 -1
- app/code/community/Dotdigitalgroup/Email/Block/Customer/Account/Books.php +5 -5
- app/code/community/Dotdigitalgroup/Email/Block/Edc.php +8 -8
- app/code/community/Dotdigitalgroup/Email/Block/Feefo.php +12 -8
- app/code/community/Dotdigitalgroup/Email/Block/Order.php +1 -40
- app/code/community/Dotdigitalgroup/Email/Block/Order/Creditmemo.php +1 -1
- app/code/community/Dotdigitalgroup/Email/Block/Order/Invoice.php +1 -1
- app/code/community/Dotdigitalgroup/Email/Block/Order/Shipping.php +1 -1
- app/code/community/Dotdigitalgroup/Email/Block/Recommended/Products.php +4 -3
- app/code/community/Dotdigitalgroup/Email/Block/Recommended/Wishlistproducts.php +9 -16
- app/code/community/Dotdigitalgroup/Email/Block/System/Email/Template/Edit.php +0 -13
- app/code/community/Dotdigitalgroup/Email/Block/Wishlist.php +7 -15
- app/code/community/Dotdigitalgroup/Email/Helper/Config.php +19 -11
- app/code/community/Dotdigitalgroup/Email/Helper/Dashboard.php +2 -1
- app/code/community/Dotdigitalgroup/Email/Helper/Data.php +56 -20
- app/code/community/Dotdigitalgroup/Email/Helper/File.php +8 -8
- app/code/community/Dotdigitalgroup/Email/Helper/Review.php +0 -90
- app/code/community/Dotdigitalgroup/Email/Model/Abstract/Rest.php +1 -1
- app/code/community/Dotdigitalgroup/Email/Model/Adminhtml/Observer.php +6 -5
- app/code/community/Dotdigitalgroup/Email/Model/Adminhtml/Source/Addressbookspref.php +7 -5
- app/code/community/Dotdigitalgroup/Email/Model/Adminhtml/Source/Automation/Programme.php +10 -6
- app/code/community/Dotdigitalgroup/Email/Model/Adminhtml/Source/Publicdatafields.php +2 -2
- app/code/community/Dotdigitalgroup/Email/Model/Adminhtml/Source/Styling.php +1 -0
- app/code/community/Dotdigitalgroup/Email/Model/Adminhtml/Source/Sync/Yesno.php +8 -7
- app/code/community/Dotdigitalgroup/Email/Model/Adminhtml/Source/Transactional/Ssl.php +0 -12
- app/code/community/Dotdigitalgroup/Email/Model/Api2/Subscriber/Rest/Admin/V1.php +6 -6
- app/code/community/Dotdigitalgroup/Email/Model/Apiconnector/Client.php +1 -1
- app/code/community/Dotdigitalgroup/Email/Model/Apiconnector/Contact.php +2 -2
- app/code/community/Dotdigitalgroup/Email/Model/Apiconnector/Customer.php +9 -10
- app/code/community/Dotdigitalgroup/Email/Model/Automation.php +4 -3
- app/code/community/Dotdigitalgroup/Email/Model/Campaign.php +1 -1
- app/code/community/Dotdigitalgroup/Email/Model/Catalog.php +8 -8
- app/code/community/Dotdigitalgroup/Email/Model/Connector/Account.php +15 -15
- app/code/community/Dotdigitalgroup/Email/Model/Connector/Campaign.php +1 -1
- app/code/community/Dotdigitalgroup/Email/Model/Connector/Order.php +13 -14
- app/code/community/Dotdigitalgroup/Email/Model/Connector/Product.php +7 -7
- app/code/community/Dotdigitalgroup/Email/Model/Connector/Quote.php +6 -6
- app/code/community/Dotdigitalgroup/Email/Model/Contact.php +3 -2
- app/code/community/Dotdigitalgroup/Email/Model/Cron.php +13 -9
- app/code/community/Dotdigitalgroup/Email/Model/Customer/Observer.php +4 -3
- app/code/community/Dotdigitalgroup/Email/Model/Customer/Wishlist/Item.php +16 -16
- app/code/community/Dotdigitalgroup/Email/Model/Email/Template.php +1 -4
- app/code/community/Dotdigitalgroup/Email/Model/Importer.php +35 -34
- app/code/community/Dotdigitalgroup/Email/Model/Newsletter/Observer.php +1 -1
- app/code/community/Dotdigitalgroup/Email/Model/Order.php +2 -1
- app/code/community/Dotdigitalgroup/Email/Model/Quote.php +42 -34
- app/code/community/Dotdigitalgroup/Email/Model/Resource/Contact.php +13 -8
- app/code/community/Dotdigitalgroup/Email/Model/Review.php +6 -6
- app/code/community/Dotdigitalgroup/Email/Model/Rules.php +24 -23
- app/code/community/Dotdigitalgroup/Email/Model/Sales/Observer.php +71 -72
- app/code/community/Dotdigitalgroup/Email/Model/Sales/Order.php +60 -62
- app/code/community/Dotdigitalgroup/Email/Model/Sales/Quote.php +13 -12
- app/code/community/Dotdigitalgroup/Email/Model/Sms/Campaign.php +7 -7
- app/code/community/Dotdigitalgroup/Email/Model/Wishlist.php +8 -8
- app/code/community/Dotdigitalgroup/Email/controllers/Adminhtml/ConnectorController.php +15 -2
- app/code/community/Dotdigitalgroup/Email/controllers/Adminhtml/CustomerController.php +0 -12
- app/code/community/Dotdigitalgroup/Email/controllers/Adminhtml/Email/AutomationController.php +0 -5
- app/code/community/Dotdigitalgroup/Email/controllers/Adminhtml/Email/CampaignController.php +1 -1
- app/code/community/Dotdigitalgroup/Email/controllers/Adminhtml/Email/ContactController.php +1 -1
- app/code/community/Dotdigitalgroup/Email/controllers/Adminhtml/RulesController.php +6 -1
- app/code/community/Dotdigitalgroup/Email/controllers/DynamicContentController.php +2 -2
- app/code/community/Dotdigitalgroup/Email/controllers/EmailController.php +6 -6
- app/code/community/Dotdigitalgroup/Email/controllers/ResponseController.php +1 -1
- app/code/community/Dotdigitalgroup/Email/etc/adminhtml.xml +1 -1
- app/code/community/Dotdigitalgroup/Email/etc/config.xml +1 -6
- app/code/community/Dotdigitalgroup/Email/etc/files.yaml +0 -27
- app/code/community/Dotdigitalgroup/Email/etc/system.xml +14 -13
- app/code/community/Dotdigitalgroup/Email/sql/email_connector_setup/mysql4-install-3.0.0.php +1 -2
- app/code/community/Dotdigitalgroup/Email/sql/email_connector_setup/mysql4-install-4.0.0.php +11 -11
- app/code/community/Dotdigitalgroup/Email/sql/email_connector_setup/mysql4-install-5.0.0.php +48 -49
- app/code/community/Dotdigitalgroup/Email/sql/email_connector_setup/mysql4-upgrade-2.0.3-2.0.4.php +2 -1
- app/code/community/Dotdigitalgroup/Email/sql/email_connector_setup/mysql4-upgrade-3.3.0-3.3.1.php +4 -4
- app/code/community/Dotdigitalgroup/Email/sql/email_connector_setup/mysql4-upgrade-3.4.0-4.0.0.php +8 -7
- app/code/community/Dotdigitalgroup/Email/sql/email_connector_setup/mysql4-upgrade-4.0.0-4.1.0.php +6 -6
- app/design/adminhtml/default/default/template/connector/customer/stats.phtml +1 -1
- app/design/adminhtml/default/default/template/connector/dashboard/accountbar.phtml +3 -3
- app/design/adminhtml/default/default/template/connector/dashboard/logs.phtml +2 -1
- app/design/adminhtml/default/default/template/connector/dashboard/status.phtml +4 -4
- app/design/adminhtml/default/default/template/connector/dashboard/tabs.phtml +12 -7
- app/design/adminhtml/default/default/template/connector/dashboard/tabs/data.phtml +5 -5
- app/design/adminhtml/default/default/template/connector/system/email/template/edit.phtml +0 -295
- app/design/frontend/base/default/template/connector/additional-newsletter-pref.phtml +7 -3
- app/design/frontend/base/default/template/connector/basket.phtml +22 -23
- app/design/frontend/base/default/template/connector/coupon.phtml +1 -1
- app/design/frontend/base/default/template/connector/creditmemo/items.phtml +0 -140
- app/design/frontend/base/default/template/connector/creditmemo/new.phtml +0 -80
- app/design/frontend/base/default/template/connector/creditmemo/newguest.phtml +0 -81
- app/design/frontend/base/default/template/connector/creditmemo/update.phtml +0 -34
- app/design/frontend/base/default/template/connector/creditmemo/updateguest.phtml +0 -34
- app/design/frontend/base/default/template/connector/email_capture.phtml +3 -3
- app/design/frontend/base/default/template/connector/email_capture_init.phtml +1 -1
- app/design/frontend/base/default/template/connector/invoice/new.phtml +0 -90
- app/design/frontend/base/default/template/connector/invoice/newguest.phtml +0 -83
- app/design/frontend/base/default/template/connector/invoice/update.phtml +0 -36
- app/design/frontend/base/default/template/connector/invoice/updateguest.phtml +0 -37
- app/design/frontend/base/default/template/connector/order/items.phtml +0 -138
- app/design/frontend/base/default/template/connector/order/new.phtml +0 -82
- app/design/frontend/base/default/template/connector/order/newguest.phtml +0 -84
- app/design/frontend/base/default/template/connector/order/update.phtml +0 -36
- app/design/frontend/base/default/template/connector/order/updateguest.phtml +0 -37
- app/design/frontend/base/default/template/connector/product/list.phtml +50 -43
- app/design/frontend/base/default/template/connector/product/nosto.phtml +1 -1
- app/design/frontend/base/default/template/connector/review.phtml +113 -111
- app/design/frontend/base/default/template/connector/shipping/new.phtml +0 -81
- app/design/frontend/base/default/template/connector/shipping/newguest.phtml +0 -82
- app/design/frontend/base/default/template/connector/shipping/update.phtml +0 -35
- app/design/frontend/base/default/template/connector/shipping/updateguest.phtml +0 -35
- app/design/frontend/base/default/template/connector/wishlist.phtml +79 -78
- package.xml +4 -4
@@ -1,35 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
class Dotdigitalgroup_Email_Block_Adminhtml_Automation_Edit extends Mage_Adminhtml_Block_Widget_Form_Container
|
4 |
-
{
|
5 |
-
public function __construct()
|
6 |
-
{
|
7 |
-
parent::__construct();
|
8 |
-
$this->_blockGroup = 'ddg_automation';
|
9 |
-
$this->_controller = 'adminhtml_automation';
|
10 |
-
$this->_updateButton('delete', 'label', Mage::helper('ddg')->__('Delete Contact'));
|
11 |
-
$this->_addButton('saveandcontinue', array(
|
12 |
-
'label' => Mage::helper('ddg')->__('Save And Continue Edit'),
|
13 |
-
'onclick' => 'saveAndContinueEdit()',
|
14 |
-
'class' => 'save',
|
15 |
-
), -100);
|
16 |
-
$this->_formScripts[] = "
|
17 |
-
function saveAndContinueEdit(){
|
18 |
-
editForm.submit($('edit_form').action+'back/edit/');
|
19 |
-
}
|
20 |
-
";
|
21 |
-
}
|
22 |
-
|
23 |
-
/**
|
24 |
-
* HEader text.
|
25 |
-
* @return string
|
26 |
-
*/
|
27 |
-
public function getHeaderText()
|
28 |
-
{
|
29 |
-
if ( Mage::registry('automation_data') && Mage::registry('contact_data')->getId() ) {
|
30 |
-
return Mage::helper('ddg')->__("Edit Automation '%s'", $this->htmlEscape(Mage::registry('contact_data')->getContact()));
|
31 |
-
} else {
|
32 |
-
return Mage::helper('ddg')->__('Add Automation');
|
33 |
-
}
|
34 |
-
}
|
35 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,26 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
class Dotdigitalgroup_Email_Block_Adminhtml_Automation_Edit_Form extends Mage_Adminhtml_Block_Widget_Form
|
4 |
-
{
|
5 |
-
|
6 |
-
/**
|
7 |
-
* Contact Form.
|
8 |
-
* @return Mage_Adminhtml_Block_Widget_Form
|
9 |
-
* @throws Exception
|
10 |
-
*/
|
11 |
-
protected function _prepareForm()
|
12 |
-
{
|
13 |
-
$form = new Varien_Data_Form(array(
|
14 |
-
'id' => 'edit_form',
|
15 |
-
'action' => $this->getUrl('*/*/save', array('id' => $this->getRequest()->getParam('id'), 'store' => $this->getRequest()->getParam('store'))),
|
16 |
-
'method' => 'post',
|
17 |
-
'enctype' => 'multipart/form-data'
|
18 |
-
)
|
19 |
-
);
|
20 |
-
$form->setUseContainer(true);
|
21 |
-
|
22 |
-
$this->setForm($form);
|
23 |
-
return parent::_prepareForm();
|
24 |
-
}
|
25 |
-
|
26 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -135,17 +135,6 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Automation_Grid extends Mage_Adminht
|
|
135 |
return $this;
|
136 |
}
|
137 |
|
138 |
-
/**
|
139 |
-
* Edit the row.
|
140 |
-
* @param $row
|
141 |
-
*
|
142 |
-
* @return string
|
143 |
-
*/
|
144 |
-
public function getRowUrl($row)
|
145 |
-
{
|
146 |
-
return $this->getUrl('*/*/edit', array('id' => $row->getEmailContactId()));
|
147 |
-
}
|
148 |
-
|
149 |
/**
|
150 |
* Grid url.
|
151 |
* @return string
|
135 |
return $this;
|
136 |
}
|
137 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
138 |
/**
|
139 |
* Grid url.
|
140 |
* @return string
|
@@ -11,8 +11,8 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Column_Renderer_Status extends Mage_
|
|
11 |
public function render(Varien_Object $row)
|
12 |
{
|
13 |
if($this->getValue($row) == '1')
|
14 |
-
return
|
15 |
-
return 'Unsubscribed';
|
16 |
}
|
17 |
|
18 |
}
|
11 |
public function render(Varien_Object $row)
|
12 |
{
|
13 |
if($this->getValue($row) == '1')
|
14 |
+
return $this->__('Subscribed');
|
15 |
+
return $this->__('Unsubscribed');
|
16 |
}
|
17 |
|
18 |
}
|
@@ -10,7 +10,9 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Column_Renderer_Sync extends Mage_Ad
|
|
10 |
*/
|
11 |
public function render(Varien_Object $row)
|
12 |
{
|
13 |
-
|
|
|
|
|
14 |
}
|
15 |
|
16 |
}
|
10 |
*/
|
11 |
public function render(Varien_Object $row)
|
12 |
{
|
13 |
+
$title = '<button title="Connect" type="button" style=""><span><span><span>' . $this->__('Sync Now') . '</span></span></span></button>';
|
14 |
+
|
15 |
+
return $title;
|
16 |
}
|
17 |
|
18 |
}
|
@@ -2,14 +2,14 @@
|
|
2 |
|
3 |
class Dotdigitalgroup_Email_Block_Adminhtml_Customer_Tab_Stats extends Mage_Adminhtml_Block_Template
|
4 |
{
|
5 |
-
|
6 |
|
7 |
public function _construct()
|
8 |
{
|
9 |
$this->setTemplate('connector/customer/stats.phtml');
|
10 |
}
|
11 |
|
12 |
-
|
13 |
{
|
14 |
$id = Mage::app()->getRequest()->getParam('id');
|
15 |
$customer = Mage::getModel('customer/customer')->load($id);
|
2 |
|
3 |
class Dotdigitalgroup_Email_Block_Adminhtml_Customer_Tab_Stats extends Mage_Adminhtml_Block_Template
|
4 |
{
|
5 |
+
protected $_stat = array();
|
6 |
|
7 |
public function _construct()
|
8 |
{
|
9 |
$this->setTemplate('connector/customer/stats.phtml');
|
10 |
}
|
11 |
|
12 |
+
protected function _getCampaignStatsForCustomer()
|
13 |
{
|
14 |
$id = Mage::app()->getRequest()->getParam('id');
|
15 |
$customer = Mage::getModel('customer/customer')->load($id);
|
@@ -6,7 +6,7 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard extends Mage_Adminhtml_Bl
|
|
6 |
/**
|
7 |
* Set the template.
|
8 |
*/
|
9 |
-
public function
|
10 |
{
|
11 |
parent::_construct();
|
12 |
|
6 |
/**
|
7 |
* Set the template.
|
8 |
*/
|
9 |
+
public function _construct()
|
10 |
{
|
11 |
parent::_construct();
|
12 |
|
@@ -7,7 +7,7 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_Analysis extends Mag
|
|
7 |
*
|
8 |
* @throws Exception
|
9 |
*/
|
10 |
-
public function
|
11 |
{
|
12 |
parent::_construct();
|
13 |
$this->setTemplate('connector/dashboard/tabs/analysis/index.phtml');
|
@@ -46,7 +46,7 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_Analysis extends Mag
|
|
46 |
*/
|
47 |
public function getTitle()
|
48 |
{
|
49 |
-
return "Marketing Automation Data Analysis";
|
50 |
}
|
51 |
|
52 |
/**
|
7 |
*
|
8 |
* @throws Exception
|
9 |
*/
|
10 |
+
public function _construct()
|
11 |
{
|
12 |
parent::_construct();
|
13 |
$this->setTemplate('connector/dashboard/tabs/analysis/index.phtml');
|
46 |
*/
|
47 |
public function getTitle()
|
48 |
{
|
49 |
+
return Mage::helper('ddg')->__("Marketing Automation Data Analysis");
|
50 |
}
|
51 |
|
52 |
/**
|
@@ -11,7 +11,7 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_Analysis_Abandonedcar
|
|
11 |
*
|
12 |
* @throws Exception
|
13 |
*/
|
14 |
-
public function
|
15 |
{
|
16 |
parent::_construct();
|
17 |
|
@@ -52,6 +52,6 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_Analysis_Abandonedcar
|
|
52 |
*/
|
53 |
public function getTitle()
|
54 |
{
|
55 |
-
return "Abandoned Carts";
|
56 |
}
|
57 |
}
|
11 |
*
|
12 |
* @throws Exception
|
13 |
*/
|
14 |
+
public function _construct()
|
15 |
{
|
16 |
parent::_construct();
|
17 |
|
52 |
*/
|
53 |
public function getTitle()
|
54 |
{
|
55 |
+
return Mage::helper('ddg')->__("Abandoned Carts");
|
56 |
}
|
57 |
}
|
@@ -11,7 +11,7 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_Analysis_Customer ext
|
|
11 |
*
|
12 |
* @throws Exception
|
13 |
*/
|
14 |
-
public function
|
15 |
{
|
16 |
parent::_construct();
|
17 |
|
@@ -50,6 +50,6 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_Analysis_Customer ext
|
|
50 |
*/
|
51 |
public function getTitle()
|
52 |
{
|
53 |
-
return "Customers";
|
54 |
}
|
55 |
}
|
11 |
*
|
12 |
* @throws Exception
|
13 |
*/
|
14 |
+
public function _construct()
|
15 |
{
|
16 |
parent::_construct();
|
17 |
|
50 |
*/
|
51 |
public function getTitle()
|
52 |
{
|
53 |
+
return Mage::helper('ddg')->__("Customers");
|
54 |
}
|
55 |
}
|
@@ -12,7 +12,7 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_Analysis_Rfm extends
|
|
12 |
*
|
13 |
* @throws Exception
|
14 |
*/
|
15 |
-
public function
|
16 |
{
|
17 |
parent::_construct();
|
18 |
|
12 |
*
|
13 |
* @throws Exception
|
14 |
*/
|
15 |
+
public function _construct()
|
16 |
{
|
17 |
parent::_construct();
|
18 |
|
@@ -11,7 +11,7 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_Analysis_Sales extend
|
|
11 |
*
|
12 |
* @throws Exception
|
13 |
*/
|
14 |
-
public function
|
15 |
{
|
16 |
parent::_construct();
|
17 |
|
11 |
*
|
12 |
* @throws Exception
|
13 |
*/
|
14 |
+
public function _construct()
|
15 |
{
|
16 |
parent::_construct();
|
17 |
|
@@ -11,7 +11,7 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_Analysis_Subscriber e
|
|
11 |
*
|
12 |
* @throws Exception
|
13 |
*/
|
14 |
-
public function
|
15 |
{
|
16 |
parent::_construct();
|
17 |
|
@@ -51,6 +51,6 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_Analysis_Subscriber e
|
|
51 |
*/
|
52 |
public function getTitle()
|
53 |
{
|
54 |
-
return "Subscribers";
|
55 |
}
|
56 |
}
|
11 |
*
|
12 |
* @throws Exception
|
13 |
*/
|
14 |
+
public function _construct()
|
15 |
{
|
16 |
parent::_construct();
|
17 |
|
51 |
*/
|
52 |
public function getTitle()
|
53 |
{
|
54 |
+
return Mage::helper('ddg')->__("Subscribers");
|
55 |
}
|
56 |
}
|
@@ -7,7 +7,7 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_General extends Mage
|
|
7 |
/**
|
8 |
* Set the template.
|
9 |
*/
|
10 |
-
public function
|
11 |
{
|
12 |
$this->initiateGroupArray();
|
13 |
parent::_construct();
|
@@ -91,7 +91,7 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_General extends Mage
|
|
91 |
*/
|
92 |
public function getTitle()
|
93 |
{
|
94 |
-
return "Connector Account Information";
|
95 |
}
|
96 |
|
97 |
/**
|
7 |
/**
|
8 |
* Set the template.
|
9 |
*/
|
10 |
+
public function _construct()
|
11 |
{
|
12 |
$this->initiateGroupArray();
|
13 |
parent::_construct();
|
91 |
*/
|
92 |
public function getTitle()
|
93 |
{
|
94 |
+
return Mage::helper('ddg')->__("Connector Account Information");
|
95 |
}
|
96 |
|
97 |
/**
|
@@ -16,7 +16,7 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_General_Data extends
|
|
16 |
unset($info['Title']);
|
17 |
$this->data = $info;
|
18 |
|
19 |
-
parent::
|
20 |
$this->setTemplate('connector/dashboard/tabs/data.phtml');
|
21 |
}
|
22 |
|
16 |
unset($info['Title']);
|
17 |
$this->data = $info;
|
18 |
|
19 |
+
parent::__construct();
|
20 |
$this->setTemplate('connector/dashboard/tabs/data.phtml');
|
21 |
}
|
22 |
|
@@ -9,7 +9,7 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_Status extends Mage_A
|
|
9 |
|
10 |
const FAST_FIX_MESSAGE = 'Fast Fix Available, Click To Enable The Mapping And Redirect Back.';
|
11 |
|
12 |
-
|
13 |
'valid_api_credentials' => 'API Credentials',
|
14 |
'cron_running' => 'Cron running',
|
15 |
'conflict_check' => 'Conflict Check',
|
@@ -1270,49 +1270,6 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_Status extends Mage_A
|
|
1270 |
return $resultContent;
|
1271 |
}
|
1272 |
|
1273 |
-
/**
|
1274 |
-
* review campaign enabled.
|
1275 |
-
* @return Dotdigitalgroup_Email_Model_Adminhtml_Dashboard_Content
|
1276 |
-
*/
|
1277 |
-
public function reviewCampaignStatus()
|
1278 |
-
{
|
1279 |
-
$resultContent = Mage::getModel('ddg_automation/adminhtml_dashboard_content');
|
1280 |
-
|
1281 |
-
$resultContent->setStyle(self::CONNECTOR_DASHBOARD_PASSED)
|
1282 |
-
->setTitle('Review Status : ')
|
1283 |
-
->setMessage('Looks Great.');
|
1284 |
-
|
1285 |
-
foreach ( Mage::app()->getWebsites() as $website ) {
|
1286 |
-
$websiteName = $website->getName();
|
1287 |
-
$enabled = ($website->getConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_REVIEWS_ENABLED))? true :
|
1288 |
-
'Disabled ';
|
1289 |
-
$orderStatus = ($website->getConfig(Dotdigitalgroup_Email_Helper_Review::XML_PATH_REVIEW_STATUS))? true :
|
1290 |
-
'Disabled ';
|
1291 |
-
$delayPeriod = ($website->getConfig(Dotdigitalgroup_Email_Helper_Review::XML_PATH_REVIEW_DELAY))? true :
|
1292 |
-
'Disabled ';
|
1293 |
-
$newProduct = ($website->getConfig(Dotdigitalgroup_Email_Helper_Review::XML_PATH_REVIEW_NEW_PRODUCT))? true :
|
1294 |
-
'Disabled ';
|
1295 |
-
$campaign = ($website->getConfig(Dotdigitalgroup_Email_Helper_Review::XML_PATH_REVIEW_CAMPAIGN))? true :
|
1296 |
-
'Disabled ';
|
1297 |
-
|
1298 |
-
if ($enabled !== true || $orderStatus !== true || $delayPeriod !== true || $newProduct !== true || $campaign !== true){
|
1299 |
-
$enabledUrl = Mage::helper('adminhtml')->getUrl('*/connector/enablewebsiteconfiguration', array('path' => 'XML_PATH_REVIEWS_ENABLED', 'website' => $website->getId()));
|
1300 |
-
|
1301 |
-
$resultContent->setStyle( self::CONNECTOR_DASHBOARD_FAILED)
|
1302 |
-
->setMessage('Don\'t forget to map')
|
1303 |
-
->setTable(array(
|
1304 |
-
'Website' => $websiteName,
|
1305 |
-
'Enabled' => ($enabled !== true)? $enabled . '<a href="' . $enabledUrl . '">Click to enable</a>' : 'Enabled',
|
1306 |
-
'Order Status' => ($orderStatus !== true)? 'Not Set' : 'Enabled',
|
1307 |
-
'Delay Period' => ($delayPeriod !== true)? 'Not Set' : 'Enabled',
|
1308 |
-
'New Product Only' => ($newProduct !== true)? 'Not Set' : 'Enabled',
|
1309 |
-
'Campaign To Select' => ($campaign !== true)? 'Not Set' : 'Enabled',
|
1310 |
-
));
|
1311 |
-
}
|
1312 |
-
}
|
1313 |
-
return $resultContent;
|
1314 |
-
}
|
1315 |
-
|
1316 |
/**
|
1317 |
* Get the last date for abandaned carts.
|
1318 |
* @return Dotdigitalgroup_Email_Model_Adminhtml_Dashboard_Content
|
@@ -1551,9 +1508,9 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Dashboard_Tabs_Status extends Mage_A
|
|
1551 |
|
1552 |
/**
|
1553 |
* Check if the mapped program is active.
|
1554 |
-
|
1555 |
*/
|
1556 |
protected function _getWebisteProgram($program, $website) {
|
|
|
1557 |
$client = Mage::helper('ddg')->getWebsiteApiClient($website);
|
1558 |
|
1559 |
if (! $client || !$program){
|
9 |
|
10 |
const FAST_FIX_MESSAGE = 'Fast Fix Available, Click To Enable The Mapping And Redirect Back.';
|
11 |
|
12 |
+
protected $_checkpoints = array(
|
13 |
'valid_api_credentials' => 'API Credentials',
|
14 |
'cron_running' => 'Cron running',
|
15 |
'conflict_check' => 'Conflict Check',
|
1270 |
return $resultContent;
|
1271 |
}
|
1272 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1273 |
/**
|
1274 |
* Get the last date for abandaned carts.
|
1275 |
* @return Dotdigitalgroup_Email_Model_Adminhtml_Dashboard_Content
|
1508 |
|
1509 |
/**
|
1510 |
* Check if the mapped program is active.
|
|
|
1511 |
*/
|
1512 |
protected function _getWebisteProgram($program, $website) {
|
1513 |
+
|
1514 |
$client = Mage::helper('ddg')->getWebsiteApiClient($website);
|
1515 |
|
1516 |
if (! $client || !$program){
|
@@ -49,13 +49,11 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Importer_Grid extends Mage_Adminhtml
|
|
49 |
'escape' => true
|
50 |
))->addColumn('import_type', array(
|
51 |
'header' => Mage::helper('ddg')->__('Import Type'),
|
52 |
-
'width' => '50px',
|
53 |
'index' => 'import_type',
|
54 |
'type' => 'text',
|
55 |
'escape' => true
|
56 |
))->addColumn('import_status', array(
|
57 |
'header' => Mage::helper('ddg')->__('Import Status'),
|
58 |
-
'width' => '50px',
|
59 |
'index' => 'import_status',
|
60 |
'type' => 'options',
|
61 |
'escape' => true,
|
@@ -67,14 +65,12 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Importer_Grid extends Mage_Adminhtml
|
|
67 |
'escape' => true
|
68 |
))->addColumn('import_mode', array(
|
69 |
'header' => Mage::helper('ddg')->__('Import Mode'),
|
70 |
-
'width' => '50px',
|
71 |
'index' => 'import_mode',
|
72 |
'type' => 'options',
|
73 |
'escape' => true,
|
74 |
'options' => Mage::getModel('ddg_automation/adminhtml_source_importer_mode')->getOptions(),
|
75 |
))->addColumn('import_id', array(
|
76 |
'header' => Mage::helper('ddg')->__('Import ID'),
|
77 |
-
'width' => '50px',
|
78 |
'index' => 'import_id',
|
79 |
'type' => 'text',
|
80 |
'escape' => true
|
@@ -87,7 +83,6 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Importer_Grid extends Mage_Adminhtml
|
|
87 |
'escape' => true
|
88 |
))->addColumn('import_finished', array(
|
89 |
'header' => Mage::helper('ddg')->__('Last Import Check Time'),
|
90 |
-
'width' => '50px',
|
91 |
'align' => 'center',
|
92 |
'index' => 'import_finished',
|
93 |
'type' => 'datetime',
|
@@ -99,14 +94,12 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Importer_Grid extends Mage_Adminhtml
|
|
99 |
'header_css_class' => 'no-display'
|
100 |
))->addColumn('created_at', array(
|
101 |
'header' => Mage::helper('ddg')->__('Created At'),
|
102 |
-
'width' => '50px',
|
103 |
'align' => 'center',
|
104 |
'index' => 'created_at',
|
105 |
'type' => 'datetime',
|
106 |
'escape' => true
|
107 |
))->addColumn('updated_at', array(
|
108 |
'header' => Mage::helper('ddg')->__('Updated At'),
|
109 |
-
'width' => '50px',
|
110 |
'align' => 'center',
|
111 |
'index' => 'updated_at',
|
112 |
'type' => 'datetime',
|
@@ -117,7 +110,6 @@ class Dotdigitalgroup_Email_Block_Adminhtml_Importer_Grid extends Mage_Adminhtml
|
|
117 |
$this->addColumn('website_id', array(
|
118 |
'header' => Mage::helper('customer')->__('Website'),
|
119 |
'align' => 'center',
|
120 |
-
'width' => '80px',
|
121 |
'type' => 'options',
|
122 |
'options' => Mage::getSingleton('adminhtml/system_store')->getWebsiteOptionHash(true),
|
123 |
'index' => 'website_id',
|
49 |
'escape' => true
|
50 |
))->addColumn('import_type', array(
|
51 |
'header' => Mage::helper('ddg')->__('Import Type'),
|
|
|
52 |
'index' => 'import_type',
|
53 |
'type' => 'text',
|
54 |
'escape' => true
|
55 |
))->addColumn('import_status', array(
|
56 |
'header' => Mage::helper('ddg')->__('Import Status'),
|
|
|
57 |
'index' => 'import_status',
|
58 |
'type' => 'options',
|
59 |
'escape' => true,
|
65 |
'escape' => true
|
66 |
))->addColumn('import_mode', array(
|
67 |
'header' => Mage::helper('ddg')->__('Import Mode'),
|
|
|
68 |
'index' => 'import_mode',
|
69 |
'type' => 'options',
|
70 |
'escape' => true,
|
71 |
'options' => Mage::getModel('ddg_automation/adminhtml_source_importer_mode')->getOptions(),
|
72 |
))->addColumn('import_id', array(
|
73 |
'header' => Mage::helper('ddg')->__('Import ID'),
|
|
|
74 |
'index' => 'import_id',
|
75 |
'type' => 'text',
|
76 |
'escape' => true
|
83 |
'escape' => true
|
84 |
))->addColumn('import_finished', array(
|
85 |
'header' => Mage::helper('ddg')->__('Last Import Check Time'),
|
|
|
86 |
'align' => 'center',
|
87 |
'index' => 'import_finished',
|
88 |
'type' => 'datetime',
|
94 |
'header_css_class' => 'no-display'
|
95 |
))->addColumn('created_at', array(
|
96 |
'header' => Mage::helper('ddg')->__('Created At'),
|
|
|
97 |
'align' => 'center',
|
98 |
'index' => 'created_at',
|
99 |
'type' => 'datetime',
|
100 |
'escape' => true
|
101 |
))->addColumn('updated_at', array(
|
102 |
'header' => Mage::helper('ddg')->__('Updated At'),
|
|
|
103 |
'align' => 'center',
|
104 |
'index' => 'updated_at',
|
105 |
'type' => 'datetime',
|
110 |
$this->addColumn('website_id', array(
|
111 |
'header' => Mage::helper('customer')->__('Website'),
|
112 |
'align' => 'center',
|
|
|
113 |
'type' => 'options',
|
114 |
'options' => Mage::getSingleton('adminhtml/system_store')->getWebsiteOptionHash(true),
|
115 |
'index' => 'website_id',
|
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Dotdigitalgroup_Email_Block_Adminhtml_System_Advanced_Runimportersync extends Mage_Adminhtml_Block_System_Config_Form_Field
|
4 |
+
{
|
5 |
+
|
6 |
+
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
|
7 |
+
{
|
8 |
+
$this->setElement($element);
|
9 |
+
return $this->_getAddRowButtonHtml($this->__("Run Now"));
|
10 |
+
}
|
11 |
+
|
12 |
+
protected function _getAddRowButtonHtml($title)
|
13 |
+
{
|
14 |
+
$url = Mage::helper('adminhtml')->getUrl("*/connector/runimportersync");
|
15 |
+
|
16 |
+
return $this->getLayout()->createBlock('adminhtml/widget_button')
|
17 |
+
->setType('button')
|
18 |
+
->setLabel($this->__($title))
|
19 |
+
->setOnClick("window.location.href='" . $url . "'")
|
20 |
+
->toHtml();
|
21 |
+
}
|
22 |
+
}
|
@@ -31,7 +31,8 @@ class Dotdigitalgroup_Email_Block_Adminhtml_System_Automation_Connect extends Ma
|
|
31 |
->toHtml();
|
32 |
}
|
33 |
|
34 |
-
|
|
|
35 |
$baseUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB, true);
|
36 |
if (!preg_match('/https/',$baseUrl)) {
|
37 |
return false;
|
31 |
->toHtml();
|
32 |
}
|
33 |
|
34 |
+
protected function _checkForSecureUrl() {
|
35 |
+
|
36 |
$baseUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB, true);
|
37 |
if (!preg_match('/https/',$baseUrl)) {
|
38 |
return false;
|
@@ -2,8 +2,8 @@
|
|
2 |
|
3 |
class Dotdigitalgroup_Email_Block_Customer_Account_Books extends Mage_Customer_Block_Account_Dashboard
|
4 |
{
|
5 |
-
|
6 |
-
|
7 |
|
8 |
/**
|
9 |
* subscription pref save url
|
@@ -22,7 +22,7 @@ class Dotdigitalgroup_Email_Block_Customer_Account_Books extends Mage_Customer_B
|
|
22 |
* @param $website
|
23 |
* @return mixed
|
24 |
*/
|
25 |
-
|
26 |
{
|
27 |
return Mage::helper('ddg')->getWebsiteConfig($path, $website);
|
28 |
}
|
@@ -32,7 +32,7 @@ class Dotdigitalgroup_Email_Block_Customer_Account_Books extends Mage_Customer_B
|
|
32 |
*
|
33 |
* @return Dotdigitalgroup_Email_Model_Apiconnector_Client
|
34 |
*/
|
35 |
-
|
36 |
{
|
37 |
if(empty($this->_client)) {
|
38 |
$website = $this->getCustomer()->getStore()->getWebsite();
|
@@ -207,7 +207,7 @@ class Dotdigitalgroup_Email_Block_Customer_Account_Books extends Mage_Customer_B
|
|
207 |
return $contact;
|
208 |
}
|
209 |
|
210 |
-
|
211 |
{
|
212 |
return Mage::getSingleton('customer/session');
|
213 |
}
|
2 |
|
3 |
class Dotdigitalgroup_Email_Block_Customer_Account_Books extends Mage_Customer_Block_Account_Dashboard
|
4 |
{
|
5 |
+
protected $_client;
|
6 |
+
protected $contact_id;
|
7 |
|
8 |
/**
|
9 |
* subscription pref save url
|
22 |
* @param $website
|
23 |
* @return mixed
|
24 |
*/
|
25 |
+
protected function _getWebsiteConfigFromHelper($path, $website)
|
26 |
{
|
27 |
return Mage::helper('ddg')->getWebsiteConfig($path, $website);
|
28 |
}
|
32 |
*
|
33 |
* @return Dotdigitalgroup_Email_Model_Apiconnector_Client
|
34 |
*/
|
35 |
+
protected function _getApiClient()
|
36 |
{
|
37 |
if(empty($this->_client)) {
|
38 |
$website = $this->getCustomer()->getStore()->getWebsite();
|
207 |
return $contact;
|
208 |
}
|
209 |
|
210 |
+
protected function _getCustomerSession()
|
211 |
{
|
212 |
return Mage::getSingleton('customer/session');
|
213 |
}
|
@@ -33,7 +33,7 @@ class Dotdigitalgroup_Email_Block_Edc extends Mage_Core_Block_Template
|
|
33 |
*
|
34 |
* @return array
|
35 |
*/
|
36 |
-
|
37 |
{
|
38 |
//array of products to display
|
39 |
$products = array();
|
@@ -137,7 +137,7 @@ class Dotdigitalgroup_Email_Block_Edc extends Mage_Core_Block_Template
|
|
137 |
* @return array
|
138 |
* @throws Exception
|
139 |
*/
|
140 |
-
|
141 |
{
|
142 |
$productsToDisplay = array();
|
143 |
$customerId = $this->getRequest()->getParam('customer_id');
|
@@ -176,7 +176,7 @@ class Dotdigitalgroup_Email_Block_Edc extends Mage_Core_Block_Template
|
|
176 |
* @param $limit
|
177 |
* @return array
|
178 |
*/
|
179 |
-
|
180 |
{
|
181 |
$productsToDisplay = array();
|
182 |
$productIds = Mage::helper('ddg/recommended')->getProductPushIds();
|
@@ -202,7 +202,7 @@ class Dotdigitalgroup_Email_Block_Edc extends Mage_Core_Block_Template
|
|
202 |
* @param $limit
|
203 |
* @return Varien_Data_Collection
|
204 |
*/
|
205 |
-
|
206 |
{
|
207 |
$from = Mage::helper('ddg/recommended')->getTimeFromConfig($mode);
|
208 |
$locale = Mage::app()->getLocale()->getLocale();
|
@@ -242,7 +242,7 @@ class Dotdigitalgroup_Email_Block_Edc extends Mage_Core_Block_Template
|
|
242 |
* @param $limit
|
243 |
* @return array
|
244 |
*/
|
245 |
-
|
246 |
{
|
247 |
$productsToDisplay = array();
|
248 |
$from = Mage::helper('ddg/recommended')->getTimeFromConfig($mode);
|
@@ -289,7 +289,7 @@ class Dotdigitalgroup_Email_Block_Edc extends Mage_Core_Block_Template
|
|
289 |
* @param $category
|
290 |
* @return mixed
|
291 |
*/
|
292 |
-
|
293 |
{
|
294 |
if ($category->getId()){
|
295 |
$productCollection->getSelect()
|
@@ -314,12 +314,12 @@ class Dotdigitalgroup_Email_Block_Edc extends Mage_Core_Block_Template
|
|
314 |
* @return array
|
315 |
* @throws Exception
|
316 |
*/
|
317 |
-
|
318 |
{
|
319 |
$quoteModel = Mage::registry('current_quote');
|
320 |
|
321 |
if (! $quoteModel) {
|
322 |
-
Mage::throwException('no current_quote found for EDC');
|
323 |
}
|
324 |
$quoteItems = $quoteModel->getAllItems();
|
325 |
|
33 |
*
|
34 |
* @return array
|
35 |
*/
|
36 |
+
protected function _getRecommendedProduct(Mage_Catalog_Model_Product $productModel, $mode)
|
37 |
{
|
38 |
//array of products to display
|
39 |
$products = array();
|
137 |
* @return array
|
138 |
* @throws Exception
|
139 |
*/
|
140 |
+
protected function _getRecentlyViewedCollection($limit)
|
141 |
{
|
142 |
$productsToDisplay = array();
|
143 |
$customerId = $this->getRequest()->getParam('customer_id');
|
176 |
* @param $limit
|
177 |
* @return array
|
178 |
*/
|
179 |
+
protected function _getProductPushCollection($limit)
|
180 |
{
|
181 |
$productsToDisplay = array();
|
182 |
$productIds = Mage::helper('ddg/recommended')->getProductPushIds();
|
202 |
* @param $limit
|
203 |
* @return Varien_Data_Collection
|
204 |
*/
|
205 |
+
protected function _getBestSellersCollection($mode, $limit)
|
206 |
{
|
207 |
$from = Mage::helper('ddg/recommended')->getTimeFromConfig($mode);
|
208 |
$locale = Mage::app()->getLocale()->getLocale();
|
242 |
* @param $limit
|
243 |
* @return array
|
244 |
*/
|
245 |
+
protected function _getMostViewedCollection($mode, $limit)
|
246 |
{
|
247 |
$productsToDisplay = array();
|
248 |
$from = Mage::helper('ddg/recommended')->getTimeFromConfig($mode);
|
289 |
* @param $category
|
290 |
* @return mixed
|
291 |
*/
|
292 |
+
protected function _joinCategoryOnCollection($productCollection, $category)
|
293 |
{
|
294 |
if ($category->getId()){
|
295 |
$productCollection->getSelect()
|
314 |
* @return array
|
315 |
* @throws Exception
|
316 |
*/
|
317 |
+
protected function _getQuoteProductCollection($mode, $limit)
|
318 |
{
|
319 |
$quoteModel = Mage::registry('current_quote');
|
320 |
|
321 |
if (! $quoteModel) {
|
322 |
+
Mage::throwException(Mage::helper('ddg')->__('no current_quote found for EDC'));
|
323 |
}
|
324 |
$quoteItems = $quoteModel->getAllItems();
|
325 |
|
@@ -1,6 +1,5 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
const FEEFO_URL = 'http://www.feefo.com/feefo/xmlfeed.jsp?';
|
4 |
|
5 |
class Dotdigitalgroup_Email_Block_Feefo extends Mage_Core_Block_Template
|
6 |
{
|
@@ -26,7 +25,8 @@ class Dotdigitalgroup_Email_Block_Feefo extends Mage_Core_Block_Template
|
|
26 |
$url = 'http://www.feefo.com/feefo/feefologo.jsp?logon=';
|
27 |
$logon = $helper->getFeefoLogon();
|
28 |
$template = '';
|
29 |
-
|
|
|
30 |
$template = '&template=' . $helper->getFeefoLogoTemplate();
|
31 |
$fullUrl = $url . $logon . $template;
|
32 |
$vendorUrl = 'http://www.feefo.com/feefo/viewvendor.jsp?logon=' . $logon;
|
@@ -47,9 +47,9 @@ class Dotdigitalgroup_Email_Block_Feefo extends Mage_Core_Block_Template
|
|
47 |
$products = array();
|
48 |
$quoteId = Mage::app()->getRequest()->getParam('quote_id');
|
49 |
$quoteModel = Mage::getModel('sales/quote')->load($quoteId);
|
50 |
-
//quote
|
51 |
if (! $quoteModel->getId())
|
52 |
-
Mage::throwException('
|
53 |
|
54 |
$quoteItems = $quoteModel->getAllItems();
|
55 |
|
@@ -63,6 +63,7 @@ class Dotdigitalgroup_Email_Block_Feefo extends Mage_Core_Block_Template
|
|
63 |
if ($productModel->getId())
|
64 |
$products[$productModel->getSku()] = $productModel->getName();
|
65 |
}
|
|
|
66 |
return $products;
|
67 |
}
|
68 |
|
@@ -75,8 +76,9 @@ class Dotdigitalgroup_Email_Block_Feefo extends Mage_Core_Block_Template
|
|
75 |
{
|
76 |
$check = true;
|
77 |
$reviews = array();
|
78 |
-
|
79 |
-
$
|
|
|
80 |
$logon = $helper->getFeefoLogon();
|
81 |
$limit = $helper->getFeefoReviewsPerProduct();
|
82 |
$products = $this->getQuoteProducts();
|
@@ -86,14 +88,16 @@ class Dotdigitalgroup_Email_Block_Feefo extends Mage_Core_Block_Template
|
|
86 |
$url = "http://www.feefo.com/feefo/xmlfeed.jsp?logon=" . $logon . "&limit=".$limit . "&vendorref=" . $sku . "&mode=productonly" ;
|
87 |
$doc = new DOMDocument();
|
88 |
$xsl = new XSLTProcessor();
|
89 |
-
if($check)
|
90 |
$doc->load($feefo_dir. DS ."feedback.xsl");
|
91 |
else
|
92 |
$doc->load($feefo_dir. DS ."feedback-no-th.xsl");
|
|
|
93 |
$xsl->importStyleSheet($doc);
|
94 |
$doc->load($url);
|
95 |
$productReview = $xsl->transformToXML($doc);
|
96 |
-
|
|
|
97 |
$reviews[$name] = $xsl->transformToXML($doc);
|
98 |
$check = false;
|
99 |
}
|
1 |
<?php
|
2 |
|
|
|
3 |
|
4 |
class Dotdigitalgroup_Email_Block_Feefo extends Mage_Core_Block_Template
|
5 |
{
|
25 |
$url = 'http://www.feefo.com/feefo/feefologo.jsp?logon=';
|
26 |
$logon = $helper->getFeefoLogon();
|
27 |
$template = '';
|
28 |
+
|
29 |
+
if( $helper->getFeefoLogoTemplate())
|
30 |
$template = '&template=' . $helper->getFeefoLogoTemplate();
|
31 |
$fullUrl = $url . $logon . $template;
|
32 |
$vendorUrl = 'http://www.feefo.com/feefo/viewvendor.jsp?logon=' . $logon;
|
47 |
$products = array();
|
48 |
$quoteId = Mage::app()->getRequest()->getParam('quote_id');
|
49 |
$quoteModel = Mage::getModel('sales/quote')->load($quoteId);
|
50 |
+
//quote id param
|
51 |
if (! $quoteModel->getId())
|
52 |
+
Mage::throwException(Mage::helper('ddg')->__('cannot continue, missing quote data'));
|
53 |
|
54 |
$quoteItems = $quoteModel->getAllItems();
|
55 |
|
63 |
if ($productModel->getId())
|
64 |
$products[$productModel->getSku()] = $productModel->getName();
|
65 |
}
|
66 |
+
|
67 |
return $products;
|
68 |
}
|
69 |
|
76 |
{
|
77 |
$check = true;
|
78 |
$reviews = array();
|
79 |
+
$helper = Mage::helper('ddg');
|
80 |
+
$feefo_dir = Mage::getModel('core/config_options')
|
81 |
+
->getLibDir() . DS . 'connector' . DS . 'feefo';
|
82 |
$logon = $helper->getFeefoLogon();
|
83 |
$limit = $helper->getFeefoReviewsPerProduct();
|
84 |
$products = $this->getQuoteProducts();
|
88 |
$url = "http://www.feefo.com/feefo/xmlfeed.jsp?logon=" . $logon . "&limit=".$limit . "&vendorref=" . $sku . "&mode=productonly" ;
|
89 |
$doc = new DOMDocument();
|
90 |
$xsl = new XSLTProcessor();
|
91 |
+
if ($check)
|
92 |
$doc->load($feefo_dir. DS ."feedback.xsl");
|
93 |
else
|
94 |
$doc->load($feefo_dir. DS ."feedback-no-th.xsl");
|
95 |
+
|
96 |
$xsl->importStyleSheet($doc);
|
97 |
$doc->load($url);
|
98 |
$productReview = $xsl->transformToXML($doc);
|
99 |
+
|
100 |
+
if (strpos($productReview, '<td') !== false)
|
101 |
$reviews[$name] = $xsl->transformToXML($doc);
|
102 |
$check = false;
|
103 |
}
|
@@ -27,49 +27,10 @@ class Dotdigitalgroup_Email_Block_Order extends Dotdigitalgroup_Email_Block_Edc
|
|
27 |
{
|
28 |
$order = Mage::registry('current_order');
|
29 |
if (! $order) {
|
30 |
-
Mage::throwException('no current_order found for EDC');
|
31 |
}
|
32 |
|
33 |
return $order;
|
34 |
}
|
35 |
|
36 |
-
/**
|
37 |
-
* Filter items for review. If a customer has already placed a review for a product then exclude the product.
|
38 |
-
*
|
39 |
-
* @param array $items
|
40 |
-
* @param int $websiteId
|
41 |
-
* @return mixed
|
42 |
-
*/
|
43 |
-
public function filterItemsForReview($items, $websiteId)
|
44 |
-
{
|
45 |
-
if (!count($items))
|
46 |
-
return;
|
47 |
-
|
48 |
-
$order = $this->getOrder();
|
49 |
-
|
50 |
-
//if customer is guest then no need to filter any items
|
51 |
-
if($order->getCustomerIsGuest())
|
52 |
-
return $items;
|
53 |
-
|
54 |
-
if(!Mage::helper('ddg/review')->isNewProductOnly($websiteId))
|
55 |
-
return $items;
|
56 |
-
|
57 |
-
$customerId = $order->getCustomerId();
|
58 |
-
|
59 |
-
foreach($items as $key => $item)
|
60 |
-
{
|
61 |
-
$productId = $item->getProduct()->getId();
|
62 |
-
|
63 |
-
$collection = Mage::getModel('review/review')->getCollection();
|
64 |
-
$collection->addCustomerFilter($customerId)
|
65 |
-
->addStoreFilter($order->getStoreId())
|
66 |
-
->addFieldToFilter('main_table.entity_pk_value', $productId);
|
67 |
-
|
68 |
-
//remove item if customer has already placed review on this item
|
69 |
-
if($collection->getSize())
|
70 |
-
unset($items[$key]);
|
71 |
-
}
|
72 |
-
|
73 |
-
return $items;
|
74 |
-
}
|
75 |
}
|
27 |
{
|
28 |
$order = Mage::registry('current_order');
|
29 |
if (! $order) {
|
30 |
+
Mage::throwException(Mage::helper('ddg')->__('no current_order found for EDC'));
|
31 |
}
|
32 |
|
33 |
return $order;
|
34 |
}
|
35 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
36 |
}
|
@@ -22,7 +22,7 @@ class Dotdigitalgroup_Email_Block_Order_Creditmemo extends Mage_Sales_Block_Ord
|
|
22 |
{
|
23 |
$order = Mage::registry('current_order');
|
24 |
if (! $order) {
|
25 |
-
Mage::throwException('no current_order found for EDC');
|
26 |
}
|
27 |
|
28 |
if (! $order->hasCreditmemos()) {
|
22 |
{
|
23 |
$order = Mage::registry('current_order');
|
24 |
if (! $order) {
|
25 |
+
Mage::throwException(Mage::helper('ddg')->__('no current_order found for EDC'));
|
26 |
}
|
27 |
|
28 |
if (! $order->hasCreditmemos()) {
|
@@ -21,7 +21,7 @@ class Dotdigitalgroup_Email_Block_Order_Invoice extends Mage_Sales_Block_Order_I
|
|
21 |
{
|
22 |
$order = Mage::registry('current_order');
|
23 |
if (! $order) {
|
24 |
-
Mage::throwException('no current_order found for EDC');
|
25 |
}
|
26 |
|
27 |
if (! $order->hasInvoices()) {
|
21 |
{
|
22 |
$order = Mage::registry('current_order');
|
23 |
if (! $order) {
|
24 |
+
Mage::throwException(Mage::helper('ddg')->__('no current_order found for EDC'));
|
25 |
}
|
26 |
|
27 |
if (! $order->hasInvoices()) {
|
@@ -20,7 +20,7 @@ class Dotdigitalgroup_Email_Block_Order_Shipping extends Mage_Sales_Block_Order
|
|
20 |
{
|
21 |
$order = Mage::registry('current_order');
|
22 |
if (! $order) {
|
23 |
-
Mage::throwException('no current_order found for EDC');
|
24 |
}
|
25 |
|
26 |
if (! $order->hasShipments()) {
|
20 |
{
|
21 |
$order = Mage::registry('current_order');
|
22 |
if (! $order) {
|
23 |
+
Mage::throwException(Mage::helper('ddg')->__('no current_order found for EDC'));
|
24 |
}
|
25 |
|
26 |
if (! $order->hasShipments()) {
|
@@ -15,7 +15,8 @@ class Dotdigitalgroup_Email_Block_Recommended_Products extends Dotdigitalgroup_E
|
|
15 |
{
|
16 |
$orderModel = Mage::registry('current_order');
|
17 |
if (! $orderModel) {
|
18 |
-
Mage::
|
|
|
19 |
}
|
20 |
|
21 |
//display mode based on the action name
|
@@ -23,9 +24,9 @@ class Dotdigitalgroup_Email_Block_Recommended_Products extends Dotdigitalgroup_E
|
|
23 |
//number of product items to be displayed
|
24 |
$limit = Mage::helper('ddg/recommended')->getDisplayLimitByMode($mode);
|
25 |
$orderItems = $orderModel->getAllItems();
|
26 |
-
|
27 |
$productsToDisplay = $this->getProductsToDisplay($orderItems, $limit, $mode, 'PRODUCT');
|
28 |
-
|
|
|
29 |
}
|
30 |
|
31 |
/**
|
15 |
{
|
16 |
$orderModel = Mage::registry('current_order');
|
17 |
if (! $orderModel) {
|
18 |
+
Mage::log('no current_order found for EDC');
|
19 |
+
return array();
|
20 |
}
|
21 |
|
22 |
//display mode based on the action name
|
24 |
//number of product items to be displayed
|
25 |
$limit = Mage::helper('ddg/recommended')->getDisplayLimitByMode($mode);
|
26 |
$orderItems = $orderModel->getAllItems();
|
|
|
27 |
$productsToDisplay = $this->getProductsToDisplay($orderItems, $limit, $mode, 'PRODUCT');
|
28 |
+
|
29 |
+
return $productsToDisplay;
|
30 |
}
|
31 |
|
32 |
/**
|
@@ -12,26 +12,19 @@ class Dotdigitalgroup_Email_Block_Recommended_Wishlistproducts extends Dotdigita
|
|
12 |
return array();
|
13 |
}
|
14 |
|
15 |
-
protected function _getWishlist()
|
16 |
-
{
|
17 |
-
$customerId = Mage::app()->getRequest()->getParam('customer_id');
|
18 |
-
if(!$customerId)
|
19 |
-
return array();
|
20 |
-
|
21 |
-
$customer = Mage::getModel('customer/customer')->load($customerId);
|
22 |
-
if(!$customer->getId())
|
23 |
-
return array();
|
24 |
|
25 |
-
|
26 |
-
|
27 |
-
->setOrder('updated_at', 'DESC')
|
28 |
-
->getSelect()->limit(1);
|
29 |
|
30 |
-
|
31 |
-
return $collection->getFirstItem();
|
32 |
-
else
|
33 |
return array();
|
34 |
|
|
|
|
|
|
|
|
|
|
|
35 |
}
|
36 |
|
37 |
/**
|
12 |
return array();
|
13 |
}
|
14 |
|
15 |
+
protected function _getWishlist() {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
|
17 |
+
//customer id param
|
18 |
+
$customerId = Mage::app()->getRequest()->getParam('customer_id');
|
|
|
|
|
19 |
|
20 |
+
if (! $customerId)
|
|
|
|
|
21 |
return array();
|
22 |
|
23 |
+
//load customer wishlist collection
|
24 |
+
$wishlistModel = Mage::getModel('wishlist/wishlist')
|
25 |
+
->loadByCustomer($customerId);
|
26 |
+
|
27 |
+
return $wishlistModel;
|
28 |
}
|
29 |
|
30 |
/**
|
@@ -1,13 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
class Dotdigitalgroup_Email_Block_System_Email_Template_Edit extends Mage_Adminhtml_Block_System_Email_Template_Edit
|
3 |
-
{
|
4 |
-
public function __construct()
|
5 |
-
{
|
6 |
-
parent::__construct();
|
7 |
-
$this->setTemplate('connector/system/email/template/edit.phtml');
|
8 |
-
}
|
9 |
-
public function getConnectorTemplates()
|
10 |
-
{
|
11 |
-
return Mage::helper('ddg')->getTemplateList();
|
12 |
-
}
|
13 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -13,25 +13,17 @@ class Dotdigitalgroup_Email_Block_Wishlist extends Dotdigitalgroup_Email_Block_E
|
|
13 |
return false;
|
14 |
}
|
15 |
|
16 |
-
protected function _getWishlist()
|
17 |
-
{
|
18 |
-
$customerId = Mage::app()->getRequest()->getParam('customer_id');
|
19 |
-
if(!$customerId)
|
20 |
-
return false;
|
21 |
-
|
22 |
-
$customer = Mage::getModel('customer/customer')->load($customerId);
|
23 |
-
if(!$customer->getId())
|
24 |
-
return false;
|
25 |
|
26 |
-
|
27 |
-
|
28 |
-
->setOrder('updated_at', 'DESC');
|
29 |
|
30 |
-
|
31 |
-
return $collection->setPageSize(1)->setCurPage(1)->getFirstItem();
|
32 |
-
else
|
33 |
return false;
|
34 |
|
|
|
|
|
|
|
35 |
}
|
36 |
|
37 |
public function getMode()
|
13 |
return false;
|
14 |
}
|
15 |
|
16 |
+
protected function _getWishlist() {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
17 |
|
18 |
+
//customer id param
|
19 |
+
$customerId = Mage::app()->getRequest()->getParam('customer_id', false);
|
|
|
20 |
|
21 |
+
if (! $customerId)
|
|
|
|
|
22 |
return false;
|
23 |
|
24 |
+
$wishlistModel = Mage::getModel('wishlist/wishlist')->loadByCustomer($customerId);
|
25 |
+
|
26 |
+
return $wishlistModel;
|
27 |
}
|
28 |
|
29 |
public function getMode()
|
@@ -128,23 +128,25 @@ class Dotdigitalgroup_Email_Helper_Config
|
|
128 |
/**
|
129 |
* Dynamic Content
|
130 |
*/
|
131 |
-
const XML_PATH_CONNECTOR_DYNAMIC_CONTENT_PASSCODE
|
132 |
-
const XML_PATH_CONNECTOR_DYNAMIC_CONTENT_NOSTO
|
133 |
-
const XML_PATH_CONNECTOR_DYNAMIC_CONTENT_WIHSLIST_DISPLAY
|
|
|
134 |
|
135 |
-
|
|
|
136 |
* CONFIGURATION SECTION.
|
137 |
*/
|
138 |
//Data Fields
|
139 |
-
const XML_PATH_CONNECTOR_SYNC_DATA_FIELDS_STATUS
|
140 |
-
const XML_PATH_CONNECTOR_SYNC_DATA_FIELDS_BRAND_ATTRIBUTE
|
141 |
|
142 |
//Transactional Data
|
143 |
-
const XML_PATH_CONNECTOR_SYNC_ORDER_STATUS
|
144 |
-
const XML_PATH_CONNECTOR_CUSTOM_ORDER_ATTRIBUTES
|
145 |
-
const XML_PATH_CONNECTOR_CUSTOM_QUOTE_ATTRIBUTES
|
146 |
-
const XML_PATH_CONNECTOR_SYNC_ORDER_PRODUCT_ATTRIBUTES
|
147 |
-
const XML_PATH_CONNECTOR_SYNC_ORDER_PRODUCT_CUSTOM_OPTIONS
|
148 |
//Admin
|
149 |
const XML_PATH_CONNECTOR_DISABLE_NEWSLETTER_SUCCESS = 'connector_configuration/admin/disable_newsletter_success';
|
150 |
const XML_PATH_CONNECTOR_DISABLE_CUSTOMER_SUCCESS = 'connector_configuration/admin/disable_customer_success';
|
@@ -201,6 +203,12 @@ class Dotdigitalgroup_Email_Helper_Config
|
|
201 |
const XML_PATH_CONNECTOR_AUTOMATION_STUDIO_WISHLIST = 'connector_automation_studio/visitor_automation/wishlist_automation';
|
202 |
const XML_PATH_CONNECTOR_AUTOMATION_STUDIO_ORDER_STATUS = 'connector_automation_studio/order_status_automation/status_to_automation';
|
203 |
|
|
|
|
|
|
|
|
|
|
|
|
|
204 |
|
205 |
/**
|
206 |
* ROI SECTION.
|
128 |
/**
|
129 |
* Dynamic Content
|
130 |
*/
|
131 |
+
const XML_PATH_CONNECTOR_DYNAMIC_CONTENT_PASSCODE = 'connector_dynamic_content/external_dynamic_content_urls/passcode';
|
132 |
+
const XML_PATH_CONNECTOR_DYNAMIC_CONTENT_NOSTO = 'connector_dynamic_content/nosto_recommendation/api';
|
133 |
+
const XML_PATH_CONNECTOR_DYNAMIC_CONTENT_WIHSLIST_DISPLAY = 'connector_dynamic_content/products/wishlist_display_type';
|
134 |
+
const XML_PATH_CONNECTOR_DYNAMIC_CONTENT_REVIEW_DISPLAY_TYPE = 'connector_dynamic_content/products/review_display_type';
|
135 |
|
136 |
+
|
137 |
+
/**
|
138 |
* CONFIGURATION SECTION.
|
139 |
*/
|
140 |
//Data Fields
|
141 |
+
const XML_PATH_CONNECTOR_SYNC_DATA_FIELDS_STATUS = 'connector_configuration/data_fields/order_statuses';
|
142 |
+
const XML_PATH_CONNECTOR_SYNC_DATA_FIELDS_BRAND_ATTRIBUTE = 'connector_configuration/data_fields/brand_attribute';
|
143 |
|
144 |
//Transactional Data
|
145 |
+
const XML_PATH_CONNECTOR_SYNC_ORDER_STATUS = 'connector_configuration/transactional_data/order_statuses';
|
146 |
+
const XML_PATH_CONNECTOR_CUSTOM_ORDER_ATTRIBUTES = 'connector_configuration/transactional_data/order_custom_attributes';
|
147 |
+
const XML_PATH_CONNECTOR_CUSTOM_QUOTE_ATTRIBUTES = 'connector_configuration/transactional_data/quote_custom_attributes';
|
148 |
+
const XML_PATH_CONNECTOR_SYNC_ORDER_PRODUCT_ATTRIBUTES = 'connector_configuration/transactional_data/order_product_attributes';
|
149 |
+
const XML_PATH_CONNECTOR_SYNC_ORDER_PRODUCT_CUSTOM_OPTIONS = 'connector_configuration/transactional_data/order_product_custom_options';
|
150 |
//Admin
|
151 |
const XML_PATH_CONNECTOR_DISABLE_NEWSLETTER_SUCCESS = 'connector_configuration/admin/disable_newsletter_success';
|
152 |
const XML_PATH_CONNECTOR_DISABLE_CUSTOMER_SUCCESS = 'connector_configuration/admin/disable_customer_success';
|
203 |
const XML_PATH_CONNECTOR_AUTOMATION_STUDIO_WISHLIST = 'connector_automation_studio/visitor_automation/wishlist_automation';
|
204 |
const XML_PATH_CONNECTOR_AUTOMATION_STUDIO_ORDER_STATUS = 'connector_automation_studio/order_status_automation/status_to_automation';
|
205 |
|
206 |
+
//PRODUCT REVIEW REMINDER.
|
207 |
+
const XML_PATH_AUTOMATION_REVIEW_STATUS = 'connector_automation_studio/review_settings/status';
|
208 |
+
const XML_PATH_AUTOMATION_REVIEW_DELAY = 'connector_automation_studio/review_settings/delay';
|
209 |
+
const XML_PATH_AUTOMATION_REVIEW_CAMPAIGN = 'connector_automation_studio/review_settings/campaign';
|
210 |
+
const XML_PATH_AUTOMATION_REVIEW_ANCHOR = 'connector_automation_studio/review_settings/anchor';
|
211 |
+
|
212 |
|
213 |
/**
|
214 |
* ROI SECTION.
|
@@ -90,7 +90,8 @@ class Dotdigitalgroup_Email_Helper_Dashboard extends Mage_Core_Helper_Abstract
|
|
90 |
protected function _isInheritanceConflict($classes)
|
91 |
{
|
92 |
$classes = array_reverse($classes);
|
93 |
-
|
|
|
94 |
try {
|
95 |
if (class_exists($classes[$i]) && class_exists($classes[$i + 1])) {
|
96 |
if (!is_a($classes[$i], $classes[$i + 1], true)) {
|
90 |
protected function _isInheritanceConflict($classes)
|
91 |
{
|
92 |
$classes = array_reverse($classes);
|
93 |
+
$count = count($classes) - 1;
|
94 |
+
for ($i = 0; $i < $count; $i++) {
|
95 |
try {
|
96 |
if (class_exists($classes[$i]) && class_exists($classes[$i + 1])) {
|
97 |
if (!is_a($classes[$i], $classes[$i + 1], true)) {
|
@@ -181,7 +181,7 @@ class Dotdigitalgroup_Email_Helper_Data extends Mage_Core_Helper_Abstract
|
|
181 |
public function convert($size)
|
182 |
{
|
183 |
$unit=array('b','kb','mb','gb','tb','pb');
|
184 |
-
return
|
185 |
}
|
186 |
|
187 |
/**
|
@@ -589,6 +589,15 @@ class Dotdigitalgroup_Email_Helper_Data extends Mage_Core_Helper_Abstract
|
|
589 |
return $this->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_REVIEWS_FEEFO_TEMPLATE);
|
590 |
}
|
591 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
592 |
/**
|
593 |
* update data fields
|
594 |
*
|
@@ -637,25 +646,6 @@ class Dotdigitalgroup_Email_Helper_Data extends Mage_Core_Helper_Abstract
|
|
637 |
|
638 |
}
|
639 |
|
640 |
-
public function getTemplateList()
|
641 |
-
{
|
642 |
-
$client = $this->getWebsiteApiClient(Mage::app()->getWebsite());
|
643 |
-
if(!$client)
|
644 |
-
return array();
|
645 |
-
|
646 |
-
$templates = $client->getApiTemplateList();
|
647 |
-
$fields[] = array('value' => '', 'label' => '');
|
648 |
-
foreach ( $templates as $one ) {
|
649 |
-
if ( isset( $one->id ) ) {
|
650 |
-
$fields[] = array(
|
651 |
-
'value' => $one->id,
|
652 |
-
'label' => $this->__( addslashes( $one->name ) )
|
653 |
-
);
|
654 |
-
}
|
655 |
-
}
|
656 |
-
return $fields;
|
657 |
-
}
|
658 |
-
|
659 |
/**
|
660 |
* Update last quote id datafield.
|
661 |
* @param $quoteId
|
@@ -934,4 +924,50 @@ class Dotdigitalgroup_Email_Helper_Data extends Mage_Core_Helper_Abstract
|
|
934 |
|
935 |
return $contents;
|
936 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
937 |
}
|
181 |
public function convert($size)
|
182 |
{
|
183 |
$unit=array('b','kb','mb','gb','tb','pb');
|
184 |
+
return round($size/pow(1024,($i=floor(log($size,1024)))),2).' '.$unit[$i];
|
185 |
}
|
186 |
|
187 |
/**
|
589 |
return $this->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_REVIEWS_FEEFO_TEMPLATE);
|
590 |
}
|
591 |
|
592 |
+
/**
|
593 |
+
* @param $website
|
594 |
+
* @return string
|
595 |
+
*/
|
596 |
+
public function getReviewDisplayType($website)
|
597 |
+
{
|
598 |
+
return $this->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_CONTENT_REVIEW_DISPLAY_TYPE, $website);
|
599 |
+
}
|
600 |
+
|
601 |
/**
|
602 |
* update data fields
|
603 |
*
|
646 |
|
647 |
}
|
648 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
649 |
/**
|
650 |
* Update last quote id datafield.
|
651 |
* @param $quoteId
|
924 |
|
925 |
return $contents;
|
926 |
}
|
927 |
+
|
928 |
+
|
929 |
+
/**
|
930 |
+
* PRODUCT REVIEW REMINDER.
|
931 |
+
*/
|
932 |
+
public function isReviewReminderEnabled($website)
|
933 |
+
{
|
934 |
+
return $this->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_REVIEWS_ENABLED, $website);
|
935 |
+
}
|
936 |
+
|
937 |
+
/**
|
938 |
+
* @param $website
|
939 |
+
* @return string
|
940 |
+
*/
|
941 |
+
public function getReviewReminderOrderStatus($website)
|
942 |
+
{
|
943 |
+
return $this->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_AUTOMATION_REVIEW_STATUS, $website);
|
944 |
+
}
|
945 |
+
|
946 |
+
/**
|
947 |
+
* @param $website
|
948 |
+
* @return int
|
949 |
+
*/
|
950 |
+
public function getReviewReminderDelay($website)
|
951 |
+
{
|
952 |
+
return $this->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_AUTOMATION_REVIEW_DELAY, $website);
|
953 |
+
}
|
954 |
+
|
955 |
+
/**
|
956 |
+
* @param $website
|
957 |
+
* @return int
|
958 |
+
*/
|
959 |
+
public function getReviewReminderCampaign($website)
|
960 |
+
{
|
961 |
+
return $this->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_AUTOMATION_REVIEW_CAMPAIGN, $website);
|
962 |
+
}
|
963 |
+
|
964 |
+
/**
|
965 |
+
* @param $website
|
966 |
+
* @return string
|
967 |
+
*/
|
968 |
+
public function getReviewReminderAnchor($website)
|
969 |
+
{
|
970 |
+
return $this->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_AUTOMATION_REVIEW_ANCHOR, $website);
|
971 |
+
}
|
972 |
+
|
973 |
}
|
@@ -9,11 +9,11 @@ class Dotdigitalgroup_Email_Helper_File extends Dotdigitalgroup_Email_Helper_Dat
|
|
9 |
* Location of files we are building
|
10 |
*/
|
11 |
|
12 |
-
|
13 |
-
|
14 |
|
15 |
-
|
16 |
-
|
17 |
|
18 |
public function __construct()
|
19 |
{
|
@@ -80,7 +80,7 @@ class Dotdigitalgroup_Email_Helper_File extends Dotdigitalgroup_Email_Helper_Dat
|
|
80 |
// for some reason passing the preset delimiter/enclosure variables results in error
|
81 |
// $this->delimiter $this->enclosure
|
82 |
if (fwrite($fp, $fqCsv) == 0 ) {
|
83 |
-
Mage::throwException('Problem writing CSV file');
|
84 |
}
|
85 |
fclose($fp);
|
86 |
|
@@ -100,7 +100,7 @@ class Dotdigitalgroup_Email_Helper_File extends Dotdigitalgroup_Email_Helper_Dat
|
|
100 |
// for some reason passing the preset delimiter/enclosure variables results in error
|
101 |
//$this->delimiter $this->enclosure
|
102 |
if (fputcsv($handle, $csv, ',', '"') == 0 ) {
|
103 |
-
Mage::throwException('Problem writing CSV file');
|
104 |
}
|
105 |
|
106 |
fclose($handle);
|
@@ -155,8 +155,8 @@ class Dotdigitalgroup_Email_Helper_File extends Dotdigitalgroup_Email_Helper_Dat
|
|
155 |
{
|
156 |
$class_func = array(__CLASS__, __FUNCTION__);
|
157 |
return is_file($path) ?
|
158 |
-
|
159 |
-
array_map($class_func, glob($path.'/*')) ==
|
160 |
}
|
161 |
|
162 |
|
9 |
* Location of files we are building
|
10 |
*/
|
11 |
|
12 |
+
protected $_output_folder; // set in _construct
|
13 |
+
protected $_output_archive_folder; // set in _construct
|
14 |
|
15 |
+
protected $delimiter; // set in _construct
|
16 |
+
protected $enclosure; // set in _construct
|
17 |
|
18 |
public function __construct()
|
19 |
{
|
80 |
// for some reason passing the preset delimiter/enclosure variables results in error
|
81 |
// $this->delimiter $this->enclosure
|
82 |
if (fwrite($fp, $fqCsv) == 0 ) {
|
83 |
+
Mage::throwException(Mage::helper('ddg')->__('Problem writing CSV file'));
|
84 |
}
|
85 |
fclose($fp);
|
86 |
|
100 |
// for some reason passing the preset delimiter/enclosure variables results in error
|
101 |
//$this->delimiter $this->enclosure
|
102 |
if (fputcsv($handle, $csv, ',', '"') == 0 ) {
|
103 |
+
Mage::throwException(Mage::helper('ddg')->__('Problem writing CSV file'));
|
104 |
}
|
105 |
|
106 |
fclose($handle);
|
155 |
{
|
156 |
$class_func = array(__CLASS__, __FUNCTION__);
|
157 |
return is_file($path) ?
|
158 |
+
unlink($path) :
|
159 |
+
array_map($class_func, glob($path.'/*')) == rmdir($path);
|
160 |
}
|
161 |
|
162 |
|
@@ -1,90 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
class Dotdigitalgroup_Email_Helper_Review extends Mage_Core_Helper_Abstract
|
4 |
-
{
|
5 |
-
/**
|
6 |
-
* configs
|
7 |
-
*/
|
8 |
-
const XML_PATH_REVIEW_STATUS = 'connector_automation_studio/review_settings/status';
|
9 |
-
const XML_PATH_REVIEW_DELAY = 'connector_automation_studio/review_settings/delay';
|
10 |
-
const XML_PATH_REVIEW_NEW_PRODUCT = 'connector_automation_studio/review_settings/new_product';
|
11 |
-
const XML_PATH_REVIEW_CAMPAIGN = 'connector_automation_studio/review_settings/campaign';
|
12 |
-
const XML_PATH_REVIEW_ANCHOR = 'connector_automation_studio/review_settings/anchor';
|
13 |
-
const XML_PATH_REVIEW_DISPLAY_TYPE = 'connector_dynamic_content/products/review_display_type';
|
14 |
-
|
15 |
-
/**
|
16 |
-
* get config value on website level
|
17 |
-
*
|
18 |
-
* @param $path
|
19 |
-
* @param $website
|
20 |
-
* @return mixed
|
21 |
-
*/
|
22 |
-
public function getReviewWebsiteSettings($path, $website)
|
23 |
-
{
|
24 |
-
$helper = Mage::helper('ddg');
|
25 |
-
return $helper->getWebsiteConfig($path, $website);
|
26 |
-
}
|
27 |
-
|
28 |
-
/**
|
29 |
-
* @param $website
|
30 |
-
* @return boolean
|
31 |
-
*/
|
32 |
-
public function isEnabled($website)
|
33 |
-
{
|
34 |
-
return $this->getReviewWebsiteSettings(Dotdigitalgroup_Email_Helper_Config::XML_PATH_REVIEWS_ENABLED, $website);
|
35 |
-
}
|
36 |
-
|
37 |
-
/**
|
38 |
-
* @param $website
|
39 |
-
* @return string
|
40 |
-
*/
|
41 |
-
public function getOrderStatus($website)
|
42 |
-
{
|
43 |
-
return $this->getReviewWebsiteSettings(self::XML_PATH_REVIEW_STATUS, $website);
|
44 |
-
}
|
45 |
-
|
46 |
-
/**
|
47 |
-
* @param $website
|
48 |
-
* @return int
|
49 |
-
*/
|
50 |
-
public function getDelay($website)
|
51 |
-
{
|
52 |
-
return $this->getReviewWebsiteSettings(self::XML_PATH_REVIEW_DELAY, $website);
|
53 |
-
}
|
54 |
-
|
55 |
-
/**
|
56 |
-
* @param $website
|
57 |
-
* @return boolean
|
58 |
-
*/
|
59 |
-
public function isNewProductOnly($website)
|
60 |
-
{
|
61 |
-
return $this->getReviewWebsiteSettings(self::XML_PATH_REVIEW_NEW_PRODUCT, $website);
|
62 |
-
}
|
63 |
-
|
64 |
-
/**
|
65 |
-
* @param $website
|
66 |
-
* @return int
|
67 |
-
*/
|
68 |
-
public function getCampaign($website)
|
69 |
-
{
|
70 |
-
return $this->getReviewWebsiteSettings(self::XML_PATH_REVIEW_CAMPAIGN, $website);
|
71 |
-
}
|
72 |
-
|
73 |
-
/**
|
74 |
-
* @param $website
|
75 |
-
* @return string
|
76 |
-
*/
|
77 |
-
public function getAnchor($website)
|
78 |
-
{
|
79 |
-
return $this->getReviewWebsiteSettings(self::XML_PATH_REVIEW_ANCHOR, $website);
|
80 |
-
}
|
81 |
-
|
82 |
-
/**
|
83 |
-
* @param $website
|
84 |
-
* @return string
|
85 |
-
*/
|
86 |
-
public function getDisplayType($website)
|
87 |
-
{
|
88 |
-
return $this->getReviewWebsiteSettings(self::XML_PATH_REVIEW_DISPLAY_TYPE, $website);
|
89 |
-
}
|
90 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -31,7 +31,7 @@ abstract class Dotdigitalgroup_Email_Model_Abstract_Rest
|
|
31 |
}
|
32 |
}
|
33 |
|
34 |
-
|
35 |
{
|
36 |
$result = '';
|
37 |
$level = 0;
|
31 |
}
|
32 |
}
|
33 |
|
34 |
+
protected function prettyPrint($json)
|
35 |
{
|
36 |
$result = '';
|
37 |
$level = 0;
|
@@ -118,7 +118,7 @@ class Dotdigitalgroup_Email_Model_Adminhtml_Observer
|
|
118 |
return $this;
|
119 |
}
|
120 |
|
121 |
-
|
122 |
|
123 |
$helper = Mage::helper('ddg');
|
124 |
$customerAddressBook = $helper->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_CUSTOMERS_ADDRESS_BOOK_ID, $website);
|
@@ -144,7 +144,7 @@ class Dotdigitalgroup_Email_Model_Adminhtml_Observer
|
|
144 |
*
|
145 |
* @return bool
|
146 |
*/
|
147 |
-
|
148 |
//loop for all options
|
149 |
foreach ( $data as $one ) {
|
150 |
|
@@ -197,18 +197,19 @@ class Dotdigitalgroup_Email_Model_Adminhtml_Observer
|
|
197 |
protected function addContactsFromWebsiteSegments($customerId, $segmentIds, $websiteId){
|
198 |
|
199 |
if (empty($segmentIds) || ! $customerId)
|
200 |
-
return;
|
201 |
$segmentIds = implode(',', $segmentIds);
|
202 |
|
203 |
$contact = Mage::getModel('ddg_automation/contact')->getCollection()
|
204 |
->addFieldToFilter('customer_id', $customerId)
|
205 |
->addFieldToFilter('website_id', $websiteId)
|
|
|
206 |
->getFirstItem();
|
207 |
try {
|
208 |
|
209 |
$contact->setSegmentIds($segmentIds)
|
210 |
-
|
211 |
-
|
212 |
|
213 |
}catch (Exception $e){
|
214 |
Mage::logException($e);
|
118 |
return $this;
|
119 |
}
|
120 |
|
121 |
+
protected function _checkAddressBookMapping( $website ) {
|
122 |
|
123 |
$helper = Mage::helper('ddg');
|
124 |
$customerAddressBook = $helper->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_CUSTOMERS_ADDRESS_BOOK_ID, $website);
|
144 |
*
|
145 |
* @return bool
|
146 |
*/
|
147 |
+
protected function _checkForOption($name, $data) {
|
148 |
//loop for all options
|
149 |
foreach ( $data as $one ) {
|
150 |
|
197 |
protected function addContactsFromWebsiteSegments($customerId, $segmentIds, $websiteId){
|
198 |
|
199 |
if (empty($segmentIds) || ! $customerId)
|
200 |
+
return $this;
|
201 |
$segmentIds = implode(',', $segmentIds);
|
202 |
|
203 |
$contact = Mage::getModel('ddg_automation/contact')->getCollection()
|
204 |
->addFieldToFilter('customer_id', $customerId)
|
205 |
->addFieldToFilter('website_id', $websiteId)
|
206 |
+
->setPageSize(1)
|
207 |
->getFirstItem();
|
208 |
try {
|
209 |
|
210 |
$contact->setSegmentIds($segmentIds)
|
211 |
+
->setEmailImported()
|
212 |
+
->save();
|
213 |
|
214 |
}catch (Exception $e){
|
215 |
Mage::logException($e);
|
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Adminhtml_Source_Addressbookspref
|
4 |
{
|
5 |
-
|
6 |
{
|
7 |
$website = Mage::app()->getWebsite();
|
8 |
$websiteParam = Mage::app()->getRequest()->getParam('website');
|
@@ -16,7 +16,7 @@ class Dotdigitalgroup_Email_Model_Adminhtml_Source_Addressbookspref
|
|
16 |
*
|
17 |
* @return null
|
18 |
*/
|
19 |
-
|
20 |
{
|
21 |
$website = $this->getWebsite();
|
22 |
$client = Mage::getModel( 'ddg_automation/apiconnector_client' );
|
@@ -59,9 +59,11 @@ class Dotdigitalgroup_Email_Model_Adminhtml_Source_Addressbookspref
|
|
59 |
$subscriberAddressBook = Mage::helper('ddg')->getSubscriberAddressBook(Mage::app()->getWebsite());
|
60 |
|
61 |
//set up fields with book id and label
|
62 |
-
|
63 |
-
|
64 |
-
|
|
|
|
|
65 |
}
|
66 |
}
|
67 |
}
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Adminhtml_Source_Addressbookspref
|
4 |
{
|
5 |
+
protected function getWebsite()
|
6 |
{
|
7 |
$website = Mage::app()->getWebsite();
|
8 |
$websiteParam = Mage::app()->getRequest()->getParam('website');
|
16 |
*
|
17 |
* @return null
|
18 |
*/
|
19 |
+
protected function getAddressBooks()
|
20 |
{
|
21 |
$website = $this->getWebsite();
|
22 |
$client = Mage::getModel( 'ddg_automation/apiconnector_client' );
|
59 |
$subscriberAddressBook = Mage::helper('ddg')->getSubscriberAddressBook(Mage::app()->getWebsite());
|
60 |
|
61 |
//set up fields with book id and label
|
62 |
+
if ($addressBooks) {
|
63 |
+
foreach ( $addressBooks as $book ) {
|
64 |
+
if ( isset( $book->id ) && $book->visibility == 'Public' && $book->id != $subscriberAddressBook ) {
|
65 |
+
$fields[] = array( 'value' => $book->id, 'label' => $book->name );
|
66 |
+
}
|
67 |
}
|
68 |
}
|
69 |
}
|
@@ -23,12 +23,16 @@ class Dotdigitalgroup_Email_Model_Adminhtml_Source_Automation_Programme
|
|
23 |
|
24 |
$client = Mage::helper( 'ddg' )->getWebsiteApiClient( $website );
|
25 |
$programmes = $client->getPrograms();
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
|
|
|
|
|
|
|
|
32 |
}
|
33 |
}
|
34 |
}
|
23 |
|
24 |
$client = Mage::helper( 'ddg' )->getWebsiteApiClient( $website );
|
25 |
$programmes = $client->getPrograms();
|
26 |
+
if ($programmes) {
|
27 |
+
foreach ( $programmes as $one ) {
|
28 |
+
if ( isset( $one->id ) ) {
|
29 |
+
if ( $one->status == 'Active' ) {
|
30 |
+
$fields[] = array(
|
31 |
+
'value' => $one->id,
|
32 |
+
'label' => Mage::helper( 'ddg' )->__( $one->name )
|
33 |
+
);
|
34 |
+
}
|
35 |
+
}
|
36 |
}
|
37 |
}
|
38 |
}
|
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Adminhtml_Source_Publicdatafields
|
4 |
{
|
5 |
-
|
6 |
{
|
7 |
$website = Mage::app()->getWebsite();
|
8 |
$websiteParam = Mage::app()->getRequest()->getParam('website');
|
@@ -16,7 +16,7 @@ class Dotdigitalgroup_Email_Model_Adminhtml_Source_Publicdatafields
|
|
16 |
*
|
17 |
* @return mixed
|
18 |
*/
|
19 |
-
|
20 |
{
|
21 |
$helper = Mage::helper('ddg');
|
22 |
$website = $this->getWebsite();
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Adminhtml_Source_Publicdatafields
|
4 |
{
|
5 |
+
protected function getWebsite()
|
6 |
{
|
7 |
$website = Mage::app()->getWebsite();
|
8 |
$websiteParam = Mage::app()->getRequest()->getParam('website');
|
16 |
*
|
17 |
* @return mixed
|
18 |
*/
|
19 |
+
protected function getDataFields()
|
20 |
{
|
21 |
$helper = Mage::helper('ddg');
|
22 |
$website = $this->getWebsite();
|
@@ -10,6 +10,7 @@ class Dotdigitalgroup_Email_Model_Adminhtml_Source_Styling
|
|
10 |
public function toOptionArray()
|
11 |
{
|
12 |
return array(
|
|
|
13 |
array('value' => 'bold', 'label' => 'Bold'),
|
14 |
array('value' => 'italic', 'label' => 'Italic'),
|
15 |
array('value' => 'underline', 'label' => 'Underline')
|
10 |
public function toOptionArray()
|
11 |
{
|
12 |
return array(
|
13 |
+
array('value' => 'nostyle', 'label' => 'No Style'),
|
14 |
array('value' => 'bold', 'label' => 'Bold'),
|
15 |
array('value' => 'italic', 'label' => 'Italic'),
|
16 |
array('value' => 'underline', 'label' => 'Underline')
|
@@ -9,17 +9,18 @@ class Dotdigitalgroup_Email_Model_Adminhtml_Source_Sync_Yesno
|
|
9 |
*/
|
10 |
public function toOptionArray()
|
11 |
{
|
12 |
-
//get current scope website code
|
13 |
-
$websiteCode = Mage::getSingleton('adminhtml/config_data')->getWebsite();
|
14 |
|
15 |
//for current scope website check if entry exist in registry. if not than
|
16 |
//than get account data and store it in registry to re-use
|
17 |
-
if(!Mage::registry('ddg-account-info-'.$websiteCode)){
|
18 |
-
//
|
19 |
-
|
|
|
20 |
|
21 |
//if scope is empty or no id than load default
|
22 |
-
if(empty($website) or !$website->getId())
|
23 |
$website = 0;
|
24 |
|
25 |
$apiUsername = Mage::helper('ddg')->getApiUsername($website);
|
@@ -36,7 +37,7 @@ class Dotdigitalgroup_Email_Model_Adminhtml_Source_Sync_Yesno
|
|
36 |
//get from registry
|
37 |
$data = Mage::registry('ddg-account-info-'.$websiteCode);
|
38 |
//if properties property exist
|
39 |
-
if(isset($data->properties)){
|
40 |
$propertyNames = array();
|
41 |
//loop all and save property names
|
42 |
foreach ($data->properties as $one) {
|
9 |
*/
|
10 |
public function toOptionArray()
|
11 |
{
|
12 |
+
//get current scope website code, set the code to admin if empty
|
13 |
+
$websiteCode = (Mage::getSingleton('adminhtml/config_data')->getWebsite())? Mage::getSingleton('adminhtml/config_data')->getWebsite() : 'admin';
|
14 |
|
15 |
//for current scope website check if entry exist in registry. if not than
|
16 |
//than get account data and store it in registry to re-use
|
17 |
+
if (! Mage::registry('ddg-account-info-'.$websiteCode)) {
|
18 |
+
//websites with code as key
|
19 |
+
$websites = Mage::app()->getWebsites(true, true);
|
20 |
+
$website = $websites[$websiteCode];
|
21 |
|
22 |
//if scope is empty or no id than load default
|
23 |
+
if (empty($website) or !$website->getId())
|
24 |
$website = 0;
|
25 |
|
26 |
$apiUsername = Mage::helper('ddg')->getApiUsername($website);
|
37 |
//get from registry
|
38 |
$data = Mage::registry('ddg-account-info-'.$websiteCode);
|
39 |
//if properties property exist
|
40 |
+
if (isset($data->properties)) {
|
41 |
$propertyNames = array();
|
42 |
//loop all and save property names
|
43 |
foreach ($data->properties as $one) {
|
@@ -1,12 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
class Dotdigitalgroup_Email_Model_Adminhtml_Source_Transactional_Ssl
|
3 |
-
{
|
4 |
-
public function toOptionArray()
|
5 |
-
{
|
6 |
-
return array(
|
7 |
-
'no' => Mage::helper('ddg')->__('No SSL'),
|
8 |
-
'tls' => Mage::helper('ddg')->__('TLS')
|
9 |
-
);
|
10 |
-
|
11 |
-
}
|
12 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,7 +1,7 @@
|
|
1 |
<?php
|
|
|
2 |
class Dotdigitalgroup_Email_Model_Api2_Subscriber_Rest_Admin_V1 extends Mage_Api2_Model_Resource
|
3 |
{
|
4 |
-
|
5 |
/**
|
6 |
* Create a subscriber
|
7 |
* @return array
|
@@ -38,7 +38,7 @@ class Dotdigitalgroup_Email_Model_Api2_Subscriber_Rest_Admin_V1 extends Mage_Api
|
|
38 |
}
|
39 |
|
40 |
$json = array('email' => $email);
|
41 |
-
|
42 |
}
|
43 |
|
44 |
}
|
@@ -93,14 +93,14 @@ class Dotdigitalgroup_Email_Model_Api2_Subscriber_Rest_Admin_V1 extends Mage_Api
|
|
93 |
$subscriber = Mage::getModel( 'newsletter/subscriber' )->loadByEmail( $email );
|
94 |
if ( $subscriber->getId() ) {
|
95 |
$subscriber->setCustomerId( $customerId )
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
} else {
|
100 |
Mage::helper( 'ddg' )->log( "REST Subscriber not found : " . $email);
|
101 |
}
|
102 |
|
103 |
-
|
104 |
}catch (Mage_Api2_Exception $e){
|
105 |
Mage::helper('ddg')->log($e->getMessage());
|
106 |
}catch (Exception $e){
|
1 |
<?php
|
2 |
+
|
3 |
class Dotdigitalgroup_Email_Model_Api2_Subscriber_Rest_Admin_V1 extends Mage_Api2_Model_Resource
|
4 |
{
|
|
|
5 |
/**
|
6 |
* Create a subscriber
|
7 |
* @return array
|
38 |
}
|
39 |
|
40 |
$json = array('email' => $email);
|
41 |
+
return json_encode($json);
|
42 |
}
|
43 |
|
44 |
}
|
93 |
$subscriber = Mage::getModel( 'newsletter/subscriber' )->loadByEmail( $email );
|
94 |
if ( $subscriber->getId() ) {
|
95 |
$subscriber->setCustomerId( $customerId )
|
96 |
+
->setSubscriberStatus( $status )
|
97 |
+
->setStoreId( $storeId )
|
98 |
+
->save();
|
99 |
} else {
|
100 |
Mage::helper( 'ddg' )->log( "REST Subscriber not found : " . $email);
|
101 |
}
|
102 |
|
103 |
+
return json_encode( $data );
|
104 |
}catch (Mage_Api2_Exception $e){
|
105 |
Mage::helper('ddg')->log($e->getMessage());
|
106 |
}catch (Exception $e){
|
@@ -667,7 +667,7 @@ class Dotdigitalgroup_Email_Model_Apiconnector_Client extends Dotdigitalgroup_Em
|
|
667 |
}
|
668 |
$apiData = array(
|
669 |
'Key' => $data->id,
|
670 |
-
'ContactIdentifier' => $data->
|
671 |
'Json' => json_encode($data->expose())
|
672 |
);
|
673 |
|
667 |
}
|
668 |
$apiData = array(
|
669 |
'Key' => $data->id,
|
670 |
+
'ContactIdentifier' => $data->email,
|
671 |
'Json' => json_encode($data->expose())
|
672 |
);
|
673 |
|
@@ -2,8 +2,8 @@
|
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Apiconnector_Contact
|
4 |
{
|
5 |
-
|
6 |
-
|
7 |
|
8 |
/**
|
9 |
* Contact sync.
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Apiconnector_Contact
|
4 |
{
|
5 |
+
protected $_start;
|
6 |
+
protected $_countCustomers = 0;
|
7 |
|
8 |
/**
|
9 |
* Contact sync.
|
@@ -17,14 +17,13 @@ class Dotdigitalgroup_Email_Model_Apiconnector_Customer
|
|
17 |
|
18 |
protected $_mapping_hash;
|
19 |
|
20 |
-
|
21 |
Mage_Newsletter_Model_Subscriber::STATUS_SUBSCRIBED => 'Subscribed',
|
22 |
Mage_Newsletter_Model_Subscriber::STATUS_NOT_ACTIVE => 'Not Active',
|
23 |
Mage_Newsletter_Model_Subscriber::STATUS_UNSUBSCRIBED => 'Unsubscribed',
|
24 |
Mage_Newsletter_Model_Subscriber::STATUS_UNCONFIRMED => 'Unconfirmed'
|
25 |
);
|
26 |
|
27 |
-
private $attribute_check = false;
|
28 |
|
29 |
/**
|
30 |
* constructor, mapping hash to map.
|
@@ -91,7 +90,7 @@ class Dotdigitalgroup_Email_Model_Apiconnector_Customer
|
|
91 |
|
92 |
public function getReviewCount()
|
93 |
{
|
94 |
-
return
|
95 |
}
|
96 |
|
97 |
public function getLastReviewDate(){
|
@@ -524,7 +523,7 @@ class Dotdigitalgroup_Email_Model_Apiconnector_Customer
|
|
524 |
* @return bool|string
|
525 |
* @throws Mage_Core_Exception
|
526 |
*/
|
527 |
-
|
528 |
{
|
529 |
$genderId = $this->customer->getGender();
|
530 |
if (is_numeric($genderId)) {
|
@@ -539,14 +538,14 @@ class Dotdigitalgroup_Email_Model_Apiconnector_Customer
|
|
539 |
return '';
|
540 |
}
|
541 |
|
542 |
-
|
543 |
$street = explode("\n", $street);
|
544 |
if(isset($street[$line - 1]))
|
545 |
return $street[$line - 1];
|
546 |
return '';
|
547 |
}
|
548 |
|
549 |
-
|
550 |
$websiteId = $this->customer->getWebsiteId();
|
551 |
$website = Mage::app()->getWebsite($websiteId);
|
552 |
if($website)
|
@@ -555,7 +554,7 @@ class Dotdigitalgroup_Email_Model_Apiconnector_Customer
|
|
555 |
return '';
|
556 |
}
|
557 |
|
558 |
-
|
559 |
{
|
560 |
$storeId = $this->customer->getStoreId();
|
561 |
$store = Mage::app()->getStore($storeId);
|
@@ -581,7 +580,7 @@ class Dotdigitalgroup_Email_Model_Apiconnector_Customer
|
|
581 |
return $this->_mapping_hash;
|
582 |
}
|
583 |
|
584 |
-
|
585 |
|
586 |
$groupId = $this->customer->getGroupId();
|
587 |
$group = Mage::getModel('customer/group')->load($groupId);
|
@@ -718,7 +717,7 @@ class Dotdigitalgroup_Email_Model_Apiconnector_Customer
|
|
718 |
}
|
719 |
|
720 |
|
721 |
-
|
722 |
if (Mage::getModel('enterprise_reward/reward_history')){
|
723 |
$collection = Mage::getModel('enterprise_reward/reward_history')->getCollection()
|
724 |
->addCustomerFilter($this->customer->getId())
|
@@ -895,7 +894,7 @@ class Dotdigitalgroup_Email_Model_Apiconnector_Customer
|
|
895 |
return $this->_getBrandValue($id);
|
896 |
}
|
897 |
|
898 |
-
|
899 |
{
|
900 |
$attribute = Mage::helper('ddg')->getWebsiteConfig(
|
901 |
Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_SYNC_DATA_FIELDS_BRAND_ATTRIBUTE,
|
17 |
|
18 |
protected $_mapping_hash;
|
19 |
|
20 |
+
protected $subscriber_status = array(
|
21 |
Mage_Newsletter_Model_Subscriber::STATUS_SUBSCRIBED => 'Subscribed',
|
22 |
Mage_Newsletter_Model_Subscriber::STATUS_NOT_ACTIVE => 'Not Active',
|
23 |
Mage_Newsletter_Model_Subscriber::STATUS_UNSUBSCRIBED => 'Unsubscribed',
|
24 |
Mage_Newsletter_Model_Subscriber::STATUS_UNCONFIRMED => 'Unconfirmed'
|
25 |
);
|
26 |
|
|
|
27 |
|
28 |
/**
|
29 |
* constructor, mapping hash to map.
|
90 |
|
91 |
public function getReviewCount()
|
92 |
{
|
93 |
+
return $this->reviewCollection->getSize();
|
94 |
}
|
95 |
|
96 |
public function getLastReviewDate(){
|
523 |
* @return bool|string
|
524 |
* @throws Mage_Core_Exception
|
525 |
*/
|
526 |
+
protected function _getCustomerGender()
|
527 |
{
|
528 |
$genderId = $this->customer->getGender();
|
529 |
if (is_numeric($genderId)) {
|
538 |
return '';
|
539 |
}
|
540 |
|
541 |
+
protected function _getStreet($street, $line){
|
542 |
$street = explode("\n", $street);
|
543 |
if(isset($street[$line - 1]))
|
544 |
return $street[$line - 1];
|
545 |
return '';
|
546 |
}
|
547 |
|
548 |
+
protected function _getWebsiteName(){
|
549 |
$websiteId = $this->customer->getWebsiteId();
|
550 |
$website = Mage::app()->getWebsite($websiteId);
|
551 |
if($website)
|
554 |
return '';
|
555 |
}
|
556 |
|
557 |
+
protected function _getStoreName()
|
558 |
{
|
559 |
$storeId = $this->customer->getStoreId();
|
560 |
$store = Mage::app()->getStore($storeId);
|
580 |
return $this->_mapping_hash;
|
581 |
}
|
582 |
|
583 |
+
protected function _getCustomerGroup(){
|
584 |
|
585 |
$groupId = $this->customer->getGroupId();
|
586 |
$group = Mage::getModel('customer/group')->load($groupId);
|
717 |
}
|
718 |
|
719 |
|
720 |
+
protected function _setReward() {
|
721 |
if (Mage::getModel('enterprise_reward/reward_history')){
|
722 |
$collection = Mage::getModel('enterprise_reward/reward_history')->getCollection()
|
723 |
->addCustomerFilter($this->customer->getId())
|
894 |
return $this->_getBrandValue($id);
|
895 |
}
|
896 |
|
897 |
+
protected function _getBrandValue($id)
|
898 |
{
|
899 |
$attribute = Mage::helper('ddg')->getWebsiteConfig(
|
900 |
Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_SYNC_DATA_FIELDS_BRAND_ATTRIBUTE,
|
@@ -1,4 +1,5 @@
|
|
1 |
<?php
|
|
|
2 |
class Dotdigitalgroup_Email_Model_Automation extends Mage_Core_Model_Abstract
|
3 |
{
|
4 |
const AUTOMATION_TYPE_NEW_CUSTOMER = 'customer_automation';
|
@@ -129,12 +130,12 @@ class Dotdigitalgroup_Email_Model_Automation extends Mage_Core_Model_Abstract
|
|
129 |
break;
|
130 |
}
|
131 |
}
|
132 |
-
|
133 |
{
|
134 |
$website = Mage::app()->getWebsite($this->websiteId);
|
135 |
Mage::helper('ddg')->updateDataFields($email, $website, $this->storeName);
|
136 |
}
|
137 |
-
|
138 |
{
|
139 |
$website = Mage::app()->getWebsite($this->websiteId);
|
140 |
$order = Mage::getModel('sales/order')->load($this->typeId);
|
@@ -187,7 +188,7 @@ class Dotdigitalgroup_Email_Model_Automation extends Mage_Core_Model_Abstract
|
|
187 |
*
|
188 |
* @return bool
|
189 |
*/
|
190 |
-
|
191 |
{
|
192 |
//program is not set
|
193 |
if (!$programId)
|
1 |
<?php
|
2 |
+
|
3 |
class Dotdigitalgroup_Email_Model_Automation extends Mage_Core_Model_Abstract
|
4 |
{
|
5 |
const AUTOMATION_TYPE_NEW_CUSTOMER = 'customer_automation';
|
130 |
break;
|
131 |
}
|
132 |
}
|
133 |
+
protected function _updateDefaultDatafields($email)
|
134 |
{
|
135 |
$website = Mage::app()->getWebsite($this->websiteId);
|
136 |
Mage::helper('ddg')->updateDataFields($email, $website, $this->storeName);
|
137 |
}
|
138 |
+
protected function _updateNewOrderDatafields($email)
|
139 |
{
|
140 |
$website = Mage::app()->getWebsite($this->websiteId);
|
141 |
$order = Mage::getModel('sales/order')->load($this->typeId);
|
188 |
*
|
189 |
* @return bool
|
190 |
*/
|
191 |
+
protected function _checkCampignEnrolmentActive($programId)
|
192 |
{
|
193 |
//program is not set
|
194 |
if (!$programId)
|
@@ -134,7 +134,7 @@ class Dotdigitalgroup_Email_Model_Campaign extends Mage_Core_Model_Abstract
|
|
134 |
/**
|
135 |
* @return mixed
|
136 |
*/
|
137 |
-
|
138 |
{
|
139 |
$emailCollection = $this->getCollection();
|
140 |
$emailCollection->addFieldToFilter('is_sent', array('null' => true))
|
134 |
/**
|
135 |
* @return mixed
|
136 |
*/
|
137 |
+
protected function _getEmailCampaigns()
|
138 |
{
|
139 |
$emailCollection = $this->getCollection();
|
140 |
$emailCollection->addFieldToFilter('is_sent', array('null' => true))
|
@@ -2,9 +2,9 @@
|
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Catalog extends Mage_Core_Model_Abstract
|
4 |
{
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
|
9 |
/**
|
10 |
* constructor
|
@@ -137,7 +137,7 @@ class Dotdigitalgroup_Email_Model_Catalog extends Mage_Core_Model_Abstract
|
|
137 |
* @param $store
|
138 |
* @return array|bool
|
139 |
*/
|
140 |
-
|
141 |
{
|
142 |
$products = $this->_getProductsToExport($store);
|
143 |
if($products){
|
@@ -159,7 +159,7 @@ class Dotdigitalgroup_Email_Model_Catalog extends Mage_Core_Model_Abstract
|
|
159 |
* @param $collectionName
|
160 |
* @param $websiteId
|
161 |
*/
|
162 |
-
|
163 |
{
|
164 |
$helper = Mage::helper('ddg');
|
165 |
$this->_productIds = array();
|
@@ -197,7 +197,7 @@ class Dotdigitalgroup_Email_Model_Catalog extends Mage_Core_Model_Abstract
|
|
197 |
* @param $modified
|
198 |
* @return bool|Mage_Catalog_Model_Resource_Product_Collection
|
199 |
*/
|
200 |
-
|
201 |
{
|
202 |
$limit = Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_TRANSACTIONAL_DATA_SYNC_LIMIT);
|
203 |
$connectorCollection = $this->getCollection();
|
@@ -291,7 +291,7 @@ class Dotdigitalgroup_Email_Model_Catalog extends Mage_Core_Model_Abstract
|
|
291 |
*
|
292 |
* @param $key
|
293 |
*/
|
294 |
-
|
295 |
{
|
296 |
$enabled = Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_API_ENABLED);
|
297 |
$sync = Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_SYNC_CATALOG_ENABLED);
|
@@ -331,7 +331,7 @@ class Dotdigitalgroup_Email_Model_Catalog extends Mage_Core_Model_Abstract
|
|
331 |
* @param $productId
|
332 |
* @return bool|Varien_Object
|
333 |
*/
|
334 |
-
|
335 |
{
|
336 |
$collection = $this->getCollection()
|
337 |
->addFieldToFilter('product_id', $productId)
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Catalog extends Mage_Core_Model_Abstract
|
4 |
{
|
5 |
+
protected $_start;
|
6 |
+
protected $_countProducts = 0;
|
7 |
+
protected $_productIds;
|
8 |
|
9 |
/**
|
10 |
* constructor
|
137 |
* @param $store
|
138 |
* @return array|bool
|
139 |
*/
|
140 |
+
protected function _exportCatalog($store)
|
141 |
{
|
142 |
$products = $this->_getProductsToExport($store);
|
143 |
if($products){
|
159 |
* @param $collectionName
|
160 |
* @param $websiteId
|
161 |
*/
|
162 |
+
protected function _exportInSingle($store, $collectionName, $websiteId)
|
163 |
{
|
164 |
$helper = Mage::helper('ddg');
|
165 |
$this->_productIds = array();
|
197 |
* @param $modified
|
198 |
* @return bool|Mage_Catalog_Model_Resource_Product_Collection
|
199 |
*/
|
200 |
+
protected function _getProductsToExport($store, $modified = false)
|
201 |
{
|
202 |
$limit = Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_TRANSACTIONAL_DATA_SYNC_LIMIT);
|
203 |
$connectorCollection = $this->getCollection();
|
291 |
*
|
292 |
* @param $key
|
293 |
*/
|
294 |
+
protected function _deleteFromAccount($key)
|
295 |
{
|
296 |
$enabled = Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_API_ENABLED);
|
297 |
$sync = Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_SYNC_CATALOG_ENABLED);
|
331 |
* @param $productId
|
332 |
* @return bool|Varien_Object
|
333 |
*/
|
334 |
+
protected function _loadProduct($productId)
|
335 |
{
|
336 |
$collection = $this->getCollection()
|
337 |
->addFieldToFilter('product_id', $productId)
|
@@ -2,21 +2,21 @@
|
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Connector_Account
|
4 |
{
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
|
21 |
/**
|
22 |
* @param $api_password
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Connector_Account
|
4 |
{
|
5 |
+
protected $_api_username;
|
6 |
+
protected $_api_password;
|
7 |
+
protected $_limit;
|
8 |
+
protected $_contactBookId;
|
9 |
+
protected $_subscriberBookId;
|
10 |
+
protected $_websites = array();
|
11 |
+
protected $_csv_headers;
|
12 |
+
protected $_customers_filename;
|
13 |
+
protected $_subscribers_filename;
|
14 |
+
protected $_mapping_hash;
|
15 |
+
protected $_contacts = array();
|
16 |
+
protected $_orders = array();
|
17 |
+
protected $_orderIds = array();
|
18 |
+
protected $_ordersForSingleSync = array();
|
19 |
+
protected $_orderIdsForSingleSync = array();
|
20 |
|
21 |
/**
|
22 |
* @param $api_password
|
@@ -7,7 +7,7 @@ class Dotdigitalgroup_Email_Model_Connector_Campaign
|
|
7 |
public $contacts = array();
|
8 |
public $emails = array();
|
9 |
public $emailSendId = array();
|
10 |
-
|
11 |
|
12 |
/**
|
13 |
* @param mixed $storeId
|
7 |
public $contacts = array();
|
8 |
public $emails = array();
|
9 |
public $emailSendId = array();
|
10 |
+
protected $_storeId;
|
11 |
|
12 |
/**
|
13 |
* @param mixed $storeId
|
@@ -79,7 +79,7 @@ class Dotdigitalgroup_Email_Model_Connector_Order
|
|
79 |
*/
|
80 |
public $order_status;
|
81 |
|
82 |
-
|
83 |
|
84 |
/**
|
85 |
* set the order information
|
@@ -122,7 +122,7 @@ class Dotdigitalgroup_Email_Model_Connector_Order
|
|
122 |
/**
|
123 |
* Shipping address.
|
124 |
*/
|
125 |
-
|
126 |
|
127 |
if ($orderData->getShippingAddress()) {
|
128 |
$shippingData = $orderData->getShippingAddress()->getData();
|
@@ -140,7 +140,7 @@ class Dotdigitalgroup_Email_Model_Connector_Order
|
|
140 |
/**
|
141 |
* Billing address.
|
142 |
*/
|
143 |
-
|
144 |
|
145 |
if ($orderData->getBillingAddress()) {
|
146 |
$billingData = $orderData->getBillingAddress()->getData();
|
@@ -158,7 +158,7 @@ class Dotdigitalgroup_Email_Model_Connector_Order
|
|
158 |
/**
|
159 |
* custom order attributes
|
160 |
*/
|
161 |
-
|
162 |
|
163 |
$helper = Mage::helper('ddg');
|
164 |
$website = Mage::app()->getStore($orderData->getStore())->getWebsite();
|
@@ -182,7 +182,7 @@ class Dotdigitalgroup_Email_Model_Connector_Order
|
|
182 |
* @param $line
|
183 |
* @return string
|
184 |
*/
|
185 |
-
|
186 |
{
|
187 |
$street = explode("\n", $street);
|
188 |
if ($line == 1) {
|
@@ -207,7 +207,7 @@ class Dotdigitalgroup_Email_Model_Connector_Order
|
|
207 |
|
208 |
}
|
209 |
|
210 |
-
|
211 |
{
|
212 |
$type = $field['DATA_TYPE'];
|
213 |
|
@@ -252,7 +252,7 @@ class Dotdigitalgroup_Email_Model_Connector_Order
|
|
252 |
* @param $field
|
253 |
* @param $value
|
254 |
*/
|
255 |
-
|
256 |
{
|
257 |
$this->custom[$field['COLUMN_NAME']] = $value;
|
258 |
}
|
@@ -263,7 +263,7 @@ class Dotdigitalgroup_Email_Model_Connector_Order
|
|
263 |
* @param $attributeSetId
|
264 |
* @return array
|
265 |
*/
|
266 |
-
|
267 |
{
|
268 |
$result = array();
|
269 |
$attributes = Mage::getResourceModel('catalog/product_attribute_collection')
|
@@ -283,7 +283,7 @@ class Dotdigitalgroup_Email_Model_Connector_Order
|
|
283 |
* @param $value
|
284 |
* @return string
|
285 |
*/
|
286 |
-
|
287 |
{
|
288 |
if (strlen($value) > 250)
|
289 |
$value = substr($value, 0, 250);
|
@@ -295,7 +295,7 @@ class Dotdigitalgroup_Email_Model_Connector_Order
|
|
295 |
* @param Mage_Sales_Model_Order_Item $orderItem
|
296 |
* @return array
|
297 |
*/
|
298 |
-
|
299 |
{
|
300 |
$orderItemOptions = $orderItem->getProductOptions();
|
301 |
|
@@ -330,7 +330,7 @@ class Dotdigitalgroup_Email_Model_Connector_Order
|
|
330 |
* @param Mage_Catalog_Model_Product $product
|
331 |
* @return string
|
332 |
*/
|
333 |
-
|
334 |
{
|
335 |
//check if empty. on true load model and cache result
|
336 |
if(empty($this->_attributeSet)){
|
@@ -358,7 +358,7 @@ class Dotdigitalgroup_Email_Model_Connector_Order
|
|
358 |
*
|
359 |
* @param Mage_Catalog_Model_Product $product
|
360 |
*/
|
361 |
-
|
362 |
{
|
363 |
$attributeSetModel = Mage::getModel( "eav/entity_attribute_set" );
|
364 |
$attributeSetModel->load( $product->getAttributeSetId() );
|
@@ -366,7 +366,7 @@ class Dotdigitalgroup_Email_Model_Connector_Order
|
|
366 |
$this->_attributeSet = $attributeSetModel;
|
367 |
}
|
368 |
|
369 |
-
|
370 |
|
371 |
$website = Mage::app()->getStore($orderData->getStore())->getWebsite();
|
372 |
|
@@ -412,7 +412,6 @@ class Dotdigitalgroup_Email_Model_Connector_Order
|
|
412 |
foreach ($configAttributes as $attribute_code) {
|
413 |
//if config attribute is in attribute set
|
414 |
if (in_array($attribute_code, $attributesFromAttributeSet)) {
|
415 |
-
|
416 |
//attribute input type
|
417 |
$inputType = $product->getResource()
|
418 |
->getAttribute($attribute_code)
|
79 |
*/
|
80 |
public $order_status;
|
81 |
|
82 |
+
protected $_attributeSet;
|
83 |
|
84 |
/**
|
85 |
* set the order information
|
122 |
/**
|
123 |
* Shipping address.
|
124 |
*/
|
125 |
+
protected function _setShippingData( $orderData ) {
|
126 |
|
127 |
if ($orderData->getShippingAddress()) {
|
128 |
$shippingData = $orderData->getShippingAddress()->getData();
|
140 |
/**
|
141 |
* Billing address.
|
142 |
*/
|
143 |
+
protected function _setBillingData($orderData) {
|
144 |
|
145 |
if ($orderData->getBillingAddress()) {
|
146 |
$billingData = $orderData->getBillingAddress()->getData();
|
158 |
/**
|
159 |
* custom order attributes
|
160 |
*/
|
161 |
+
protected function _setOrderCustomAttributes( $orderData ) {
|
162 |
|
163 |
$helper = Mage::helper('ddg');
|
164 |
$website = Mage::app()->getStore($orderData->getStore())->getWebsite();
|
182 |
* @param $line
|
183 |
* @return string
|
184 |
*/
|
185 |
+
protected function _getStreet($street, $line)
|
186 |
{
|
187 |
$street = explode("\n", $street);
|
188 |
if ($line == 1) {
|
207 |
|
208 |
}
|
209 |
|
210 |
+
protected function _getCustomAttributeValue($field, $orderData)
|
211 |
{
|
212 |
$type = $field['DATA_TYPE'];
|
213 |
|
252 |
* @param $field
|
253 |
* @param $value
|
254 |
*/
|
255 |
+
protected function _assignCustom($field, $value)
|
256 |
{
|
257 |
$this->custom[$field['COLUMN_NAME']] = $value;
|
258 |
}
|
263 |
* @param $attributeSetId
|
264 |
* @return array
|
265 |
*/
|
266 |
+
protected function _getAttributesArray($attributeSetId)
|
267 |
{
|
268 |
$result = array();
|
269 |
$attributes = Mage::getResourceModel('catalog/product_attribute_collection')
|
283 |
* @param $value
|
284 |
* @return string
|
285 |
*/
|
286 |
+
protected function _limitLength($value)
|
287 |
{
|
288 |
if (strlen($value) > 250)
|
289 |
$value = substr($value, 0, 250);
|
295 |
* @param Mage_Sales_Model_Order_Item $orderItem
|
296 |
* @return array
|
297 |
*/
|
298 |
+
protected function _getOrderItemOptions($orderItem)
|
299 |
{
|
300 |
$orderItemOptions = $orderItem->getProductOptions();
|
301 |
|
330 |
* @param Mage_Catalog_Model_Product $product
|
331 |
* @return string
|
332 |
*/
|
333 |
+
protected function _getAttributeSetName(Mage_Catalog_Model_Product $product)
|
334 |
{
|
335 |
//check if empty. on true load model and cache result
|
336 |
if(empty($this->_attributeSet)){
|
358 |
*
|
359 |
* @param Mage_Catalog_Model_Product $product
|
360 |
*/
|
361 |
+
protected function _loadAttributeModel(Mage_Catalog_Model_Product $product)
|
362 |
{
|
363 |
$attributeSetModel = Mage::getModel( "eav/entity_attribute_set" );
|
364 |
$attributeSetModel->load( $product->getAttributeSetId() );
|
366 |
$this->_attributeSet = $attributeSetModel;
|
367 |
}
|
368 |
|
369 |
+
protected function _setOrderItems( $orderData ) {
|
370 |
|
371 |
$website = Mage::app()->getStore($orderData->getStore())->getWebsite();
|
372 |
|
412 |
foreach ($configAttributes as $attribute_code) {
|
413 |
//if config attribute is in attribute set
|
414 |
if (in_array($attribute_code, $attributesFromAttributeSet)) {
|
|
|
415 |
//attribute input type
|
416 |
$inputType = $product->getResource()
|
417 |
->getAttribute($attribute_code)
|
@@ -35,7 +35,7 @@ class Dotdigitalgroup_Email_Model_Connector_Product
|
|
35 |
/**
|
36 |
* @var float
|
37 |
*/
|
38 |
-
public $
|
39 |
|
40 |
/**
|
41 |
* @var array
|
@@ -50,7 +50,7 @@ class Dotdigitalgroup_Email_Model_Connector_Product
|
|
50 |
/**
|
51 |
* @var string
|
52 |
*/
|
53 |
-
public $
|
54 |
|
55 |
/**
|
56 |
* @var string
|
@@ -77,15 +77,15 @@ class Dotdigitalgroup_Email_Model_Connector_Product
|
|
77 |
$options = Mage::getModel('catalog/product_visibility')->getOptionArray();
|
78 |
$this->visibility = $options[$product->getVisibility()];
|
79 |
$this->price = (float) number_format($product->getPrice(), 2, '.', '' );
|
80 |
-
$this->
|
81 |
$this->url = $product->getProductUrl();
|
82 |
-
$this->
|
83 |
$stock = Mage::getModel('cataloginventory/stock_item')->loadByProduct($product);
|
84 |
$this->stock = (float) number_format($stock->getQty(), 2, '.', '' );
|
85 |
|
86 |
$short_description = $product->getShortDescription();
|
87 |
//limit short description
|
88 |
-
if(strlen($short_description) > 250)
|
89 |
$short_description = substr($short_description, 0 , 250);
|
90 |
|
91 |
$this->short_description = $short_description;
|
@@ -110,7 +110,7 @@ class Dotdigitalgroup_Email_Model_Connector_Product
|
|
110 |
}
|
111 |
|
112 |
//bundle product options
|
113 |
-
if ($product->getTypeId() == Mage_Catalog_Model_Product_Type::TYPE_BUNDLE){
|
114 |
$optionCollection = $product->getTypeInstance()->getOptionsCollection();
|
115 |
$selectionCollection = $product->getTypeInstance()->getSelectionsCollection($product->getTypeInstance()->getOptionsIds());
|
116 |
$options = $optionCollection->appendSelections($selectionCollection);
|
@@ -133,7 +133,7 @@ class Dotdigitalgroup_Email_Model_Connector_Product
|
|
133 |
}
|
134 |
|
135 |
//configurable product options
|
136 |
-
if ($product->getTypeId() == Mage_Catalog_Model_Product_Type::TYPE_CONFIGURABLE){
|
137 |
$productAttributeOptions = $product->getTypeInstance(true)->getConfigurableAttributesAsArray($product);
|
138 |
foreach ($productAttributeOptions as $productAttribute) {
|
139 |
$count = 0;
|
35 |
/**
|
36 |
* @var float
|
37 |
*/
|
38 |
+
public $specialPrice = 0;
|
39 |
|
40 |
/**
|
41 |
* @var array
|
50 |
/**
|
51 |
* @var string
|
52 |
*/
|
53 |
+
public $imagePath = '';
|
54 |
|
55 |
/**
|
56 |
* @var string
|
77 |
$options = Mage::getModel('catalog/product_visibility')->getOptionArray();
|
78 |
$this->visibility = $options[$product->getVisibility()];
|
79 |
$this->price = (float) number_format($product->getPrice(), 2, '.', '' );
|
80 |
+
$this->specialPrice = (float) number_format($product->getSpecialPrice(), 2, '.', '' );
|
81 |
$this->url = $product->getProductUrl();
|
82 |
+
$this->imagePath = Mage::getModel('catalog/product_media_config')->getMediaUrl( $product->getSmallImage());
|
83 |
$stock = Mage::getModel('cataloginventory/stock_item')->loadByProduct($product);
|
84 |
$this->stock = (float) number_format($stock->getQty(), 2, '.', '' );
|
85 |
|
86 |
$short_description = $product->getShortDescription();
|
87 |
//limit short description
|
88 |
+
if (strlen($short_description) > 250)
|
89 |
$short_description = substr($short_description, 0 , 250);
|
90 |
|
91 |
$this->short_description = $short_description;
|
110 |
}
|
111 |
|
112 |
//bundle product options
|
113 |
+
if ($product->getTypeId() == Mage_Catalog_Model_Product_Type::TYPE_BUNDLE) {
|
114 |
$optionCollection = $product->getTypeInstance()->getOptionsCollection();
|
115 |
$selectionCollection = $product->getTypeInstance()->getSelectionsCollection($product->getTypeInstance()->getOptionsIds());
|
116 |
$options = $optionCollection->appendSelections($selectionCollection);
|
133 |
}
|
134 |
|
135 |
//configurable product options
|
136 |
+
if ($product->getTypeId() == Mage_Catalog_Model_Product_Type::TYPE_CONFIGURABLE) {
|
137 |
$productAttributeOptions = $product->getTypeInstance(true)->getConfigurableAttributesAsArray($product);
|
138 |
foreach ($productAttributeOptions as $productAttribute) {
|
139 |
$count = 0;
|
@@ -73,7 +73,7 @@ class Dotdigitalgroup_Email_Model_Connector_Quote
|
|
73 |
*/
|
74 |
public $custom = array();
|
75 |
|
76 |
-
|
77 |
|
78 |
/**
|
79 |
* set the quote information
|
@@ -197,7 +197,7 @@ class Dotdigitalgroup_Email_Model_Connector_Quote
|
|
197 |
* @param $line
|
198 |
* @return string
|
199 |
*/
|
200 |
-
|
201 |
{
|
202 |
$street = explode("\n", $street);
|
203 |
if ($line == 1) {
|
@@ -229,7 +229,7 @@ class Dotdigitalgroup_Email_Model_Connector_Quote
|
|
229 |
* @param $quoteData
|
230 |
* @return float|int|null|string
|
231 |
*/
|
232 |
-
|
233 |
{
|
234 |
$type = $field['DATA_TYPE'];
|
235 |
|
@@ -274,7 +274,7 @@ class Dotdigitalgroup_Email_Model_Connector_Quote
|
|
274 |
* @param $field
|
275 |
* @param $value
|
276 |
*/
|
277 |
-
|
278 |
{
|
279 |
$this->custom[$field['COLUMN_NAME']] = $value;
|
280 |
}
|
@@ -285,7 +285,7 @@ class Dotdigitalgroup_Email_Model_Connector_Quote
|
|
285 |
* @param Mage_Catalog_Model_Product $product
|
286 |
* @return string
|
287 |
*/
|
288 |
-
|
289 |
{
|
290 |
//check if empty. on true load model and cache result
|
291 |
if(empty($this->_attributeSet)){
|
@@ -313,7 +313,7 @@ class Dotdigitalgroup_Email_Model_Connector_Quote
|
|
313 |
*
|
314 |
* @param Mage_Catalog_Model_Product $product
|
315 |
*/
|
316 |
-
|
317 |
{
|
318 |
$attributeSetModel = Mage::getModel( "eav/entity_attribute_set" );
|
319 |
$attributeSetModel->load( $product->getAttributeSetId() );
|
73 |
*/
|
74 |
public $custom = array();
|
75 |
|
76 |
+
protected $_attributeSet;
|
77 |
|
78 |
/**
|
79 |
* set the quote information
|
197 |
* @param $line
|
198 |
* @return string
|
199 |
*/
|
200 |
+
protected function _getStreet($street, $line)
|
201 |
{
|
202 |
$street = explode("\n", $street);
|
203 |
if ($line == 1) {
|
229 |
* @param $quoteData
|
230 |
* @return float|int|null|string
|
231 |
*/
|
232 |
+
protected function _getCustomAttributeValue($field, $quoteData)
|
233 |
{
|
234 |
$type = $field['DATA_TYPE'];
|
235 |
|
274 |
* @param $field
|
275 |
* @param $value
|
276 |
*/
|
277 |
+
protected function _assignCustom($field, $value)
|
278 |
{
|
279 |
$this->custom[$field['COLUMN_NAME']] = $value;
|
280 |
}
|
285 |
* @param Mage_Catalog_Model_Product $product
|
286 |
* @return string
|
287 |
*/
|
288 |
+
protected function _getAttributeSetName(Mage_Catalog_Model_Product $product)
|
289 |
{
|
290 |
//check if empty. on true load model and cache result
|
291 |
if(empty($this->_attributeSet)){
|
313 |
*
|
314 |
* @param Mage_Catalog_Model_Product $product
|
315 |
*/
|
316 |
+
protected function _loadAttributeModel(Mage_Catalog_Model_Product $product)
|
317 |
{
|
318 |
$attributeSetModel = Mage::getModel( "eav/entity_attribute_set" );
|
319 |
$attributeSetModel->load( $product->getAttributeSetId() );
|
@@ -82,7 +82,7 @@ class Dotdigitalgroup_Email_Model_Contact extends Mage_Core_Model_Abstract
|
|
82 |
|
83 |
$collection->getSelect()->limit($pageSize);
|
84 |
|
85 |
-
return $collection
|
86 |
}
|
87 |
|
88 |
/**
|
@@ -140,7 +140,8 @@ class Dotdigitalgroup_Email_Model_Contact extends Mage_Core_Model_Abstract
|
|
140 |
->addFieldToFilter('is_guest', array('notnull' => true))
|
141 |
->addFieldToFilter('email_imported', array('null' => true))
|
142 |
->addFieldToFilter('website_id', $website->getId());
|
143 |
-
|
|
|
144 |
}
|
145 |
|
146 |
public function getNumberOfImportedContacs()
|
82 |
|
83 |
$collection->getSelect()->limit($pageSize);
|
84 |
|
85 |
+
return $collection;
|
86 |
}
|
87 |
|
88 |
/**
|
140 |
->addFieldToFilter('is_guest', array('notnull' => true))
|
141 |
->addFieldToFilter('email_imported', array('null' => true))
|
142 |
->addFieldToFilter('website_id', $website->getId());
|
143 |
+
|
144 |
+
return $guestCollection;
|
145 |
}
|
146 |
|
147 |
public function getNumberOfImportedContacs()
|
@@ -48,22 +48,24 @@ class Dotdigitalgroup_Email_Model_Cron
|
|
48 |
*/
|
49 |
public function reviewsAndWishlist()
|
50 |
{
|
51 |
-
//sync reviews
|
52 |
-
$this->
|
53 |
//sync wishlist
|
54 |
Mage::getModel('ddg_automation/wishlist')->sync();
|
55 |
}
|
56 |
|
57 |
/**
|
58 |
-
* review sync
|
59 |
*/
|
60 |
-
public function
|
61 |
{
|
62 |
-
//
|
63 |
-
Mage::getModel('ddg_automation/sales_order')->
|
|
|
64 |
//sync reviews
|
65 |
$result = Mage::getModel('ddg_automation/review')->sync();
|
66 |
-
|
|
|
67 |
}
|
68 |
|
69 |
/**
|
@@ -75,7 +77,8 @@ class Dotdigitalgroup_Email_Model_Cron
|
|
75 |
{
|
76 |
// send order
|
77 |
$orderResult = Mage::getModel('ddg_automation/sales_order')->sync();
|
78 |
-
|
|
|
79 |
}
|
80 |
|
81 |
/**
|
@@ -140,7 +143,8 @@ class Dotdigitalgroup_Email_Model_Cron
|
|
140 |
$message = 'Cleaning cronjob result : ' . $result;
|
141 |
$helper->log($message);
|
142 |
Mage::helper('ddg')->rayLog($message, 'model/cron.php');
|
143 |
-
|
|
|
144 |
}
|
145 |
|
146 |
|
48 |
*/
|
49 |
public function reviewsAndWishlist()
|
50 |
{
|
51 |
+
//sync reviews and product reminders
|
52 |
+
$this->reviewAndProductReminderSync();
|
53 |
//sync wishlist
|
54 |
Mage::getModel('ddg_automation/wishlist')->sync();
|
55 |
}
|
56 |
|
57 |
/**
|
58 |
+
* review sync and product reminder.
|
59 |
*/
|
60 |
+
public function reviewAndProductReminderSync()
|
61 |
{
|
62 |
+
//create product reminder campaigns
|
63 |
+
Mage::getModel('ddg_automation/sales_order')->createProductReminderReviewCampaigns();
|
64 |
+
|
65 |
//sync reviews
|
66 |
$result = Mage::getModel('ddg_automation/review')->sync();
|
67 |
+
|
68 |
+
return $result;
|
69 |
}
|
70 |
|
71 |
/**
|
77 |
{
|
78 |
// send order
|
79 |
$orderResult = Mage::getModel('ddg_automation/sales_order')->sync();
|
80 |
+
|
81 |
+
return $orderResult;
|
82 |
}
|
83 |
|
84 |
/**
|
143 |
$message = 'Cleaning cronjob result : ' . $result;
|
144 |
$helper->log($message);
|
145 |
Mage::helper('ddg')->rayLog($message, 'model/cron.php');
|
146 |
+
|
147 |
+
return $result;
|
148 |
}
|
149 |
|
150 |
|
@@ -36,7 +36,8 @@ class Dotdigitalgroup_Email_Model_Customer_Observer
|
|
36 |
|
37 |
if ($enabled) {
|
38 |
$client = Mage::helper('ddg')->getWebsiteApiClient($websiteId);
|
39 |
-
$subscribersAddressBook = Mage::helper('ddg')->getWebsiteConfig(
|
|
|
40 |
$response = $client->postContacts($emailBefore);
|
41 |
//check for matching email
|
42 |
if (isset($response->id)) {
|
@@ -210,7 +211,7 @@ class Dotdigitalgroup_Email_Model_Customer_Observer
|
|
210 |
*
|
211 |
* @param $review
|
212 |
*/
|
213 |
-
|
214 |
{
|
215 |
try{
|
216 |
$emailReview = Mage::getModel('ddg_automation/review');
|
@@ -246,7 +247,7 @@ class Dotdigitalgroup_Email_Model_Customer_Observer
|
|
246 |
* @param $wishlist
|
247 |
* @return $this
|
248 |
*/
|
249 |
-
|
250 |
{
|
251 |
try{
|
252 |
$emailWishlist = Mage::getModel('ddg_automation/wishlist');
|
36 |
|
37 |
if ($enabled) {
|
38 |
$client = Mage::helper('ddg')->getWebsiteApiClient($websiteId);
|
39 |
+
$subscribersAddressBook = Mage::helper('ddg')->getWebsiteConfig(
|
40 |
+
Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_SUBSCRIBERS_ADDRESS_BOOK_ID, $websiteId);
|
41 |
$response = $client->postContacts($emailBefore);
|
42 |
//check for matching email
|
43 |
if (isset($response->id)) {
|
211 |
*
|
212 |
* @param $review
|
213 |
*/
|
214 |
+
protected function _registerReview($review)
|
215 |
{
|
216 |
try{
|
217 |
$emailReview = Mage::getModel('ddg_automation/review');
|
247 |
* @param $wishlist
|
248 |
* @return $this
|
249 |
*/
|
250 |
+
protected function _registerWishlist($wishlist)
|
251 |
{
|
252 |
try{
|
253 |
$emailWishlist = Mage::getModel('ddg_automation/wishlist');
|
@@ -2,11 +2,11 @@
|
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Customer_Wishlist_Item
|
4 |
{
|
5 |
-
protected $
|
6 |
-
protected $
|
7 |
-
protected $
|
8 |
-
protected $
|
9 |
-
protected $
|
10 |
|
11 |
|
12 |
/**
|
@@ -26,7 +26,7 @@ class Dotdigitalgroup_Email_Model_Customer_Wishlist_Item
|
|
26 |
*/
|
27 |
public function setName($name)
|
28 |
{
|
29 |
-
$this->
|
30 |
return $this;
|
31 |
}
|
32 |
|
@@ -35,7 +35,7 @@ class Dotdigitalgroup_Email_Model_Customer_Wishlist_Item
|
|
35 |
*/
|
36 |
public function getName()
|
37 |
{
|
38 |
-
return $this->
|
39 |
}
|
40 |
|
41 |
/**
|
@@ -44,7 +44,7 @@ class Dotdigitalgroup_Email_Model_Customer_Wishlist_Item
|
|
44 |
*/
|
45 |
public function setQty($qty)
|
46 |
{
|
47 |
-
$this->
|
48 |
return $this;
|
49 |
}
|
50 |
|
@@ -53,7 +53,7 @@ class Dotdigitalgroup_Email_Model_Customer_Wishlist_Item
|
|
53 |
*/
|
54 |
public function getQty()
|
55 |
{
|
56 |
-
return $this->
|
57 |
}
|
58 |
|
59 |
/**
|
@@ -61,7 +61,7 @@ class Dotdigitalgroup_Email_Model_Customer_Wishlist_Item
|
|
61 |
*/
|
62 |
public function getTotalValueOfProduct()
|
63 |
{
|
64 |
-
return $this->
|
65 |
}
|
66 |
|
67 |
/**
|
@@ -70,10 +70,10 @@ class Dotdigitalgroup_Email_Model_Customer_Wishlist_Item
|
|
70 |
*/
|
71 |
public function setPrice($product)
|
72 |
{
|
73 |
-
$this->
|
74 |
-
$total = $this->
|
75 |
|
76 |
-
$this->
|
77 |
return $this;
|
78 |
}
|
79 |
|
@@ -82,7 +82,7 @@ class Dotdigitalgroup_Email_Model_Customer_Wishlist_Item
|
|
82 |
*/
|
83 |
public function getPrice()
|
84 |
{
|
85 |
-
return $this->
|
86 |
}
|
87 |
|
88 |
/**
|
@@ -91,7 +91,7 @@ class Dotdigitalgroup_Email_Model_Customer_Wishlist_Item
|
|
91 |
*/
|
92 |
public function setSku($sku)
|
93 |
{
|
94 |
-
$this->
|
95 |
return $this;
|
96 |
}
|
97 |
|
@@ -100,7 +100,7 @@ class Dotdigitalgroup_Email_Model_Customer_Wishlist_Item
|
|
100 |
*/
|
101 |
public function getSku()
|
102 |
{
|
103 |
-
return $this->
|
104 |
}
|
105 |
|
106 |
/**
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Customer_Wishlist_Item
|
4 |
{
|
5 |
+
protected $_sku;
|
6 |
+
protected $_qty;
|
7 |
+
protected $_name;
|
8 |
+
protected $_price;
|
9 |
+
protected $_totalValueOfProduct;
|
10 |
|
11 |
|
12 |
/**
|
26 |
*/
|
27 |
public function setName($name)
|
28 |
{
|
29 |
+
$this->_name = $name;
|
30 |
return $this;
|
31 |
}
|
32 |
|
35 |
*/
|
36 |
public function getName()
|
37 |
{
|
38 |
+
return $this->_name;
|
39 |
}
|
40 |
|
41 |
/**
|
44 |
*/
|
45 |
public function setQty($qty)
|
46 |
{
|
47 |
+
$this->_qty = (int)$qty;
|
48 |
return $this;
|
49 |
}
|
50 |
|
53 |
*/
|
54 |
public function getQty()
|
55 |
{
|
56 |
+
return $this->_qty;
|
57 |
}
|
58 |
|
59 |
/**
|
61 |
*/
|
62 |
public function getTotalValueOfProduct()
|
63 |
{
|
64 |
+
return $this->_totalValueOfProduct;
|
65 |
}
|
66 |
|
67 |
/**
|
70 |
*/
|
71 |
public function setPrice($product)
|
72 |
{
|
73 |
+
$this->_price = $product->getFinalPrice();
|
74 |
+
$total = $this->_price * $this->_qty;
|
75 |
|
76 |
+
$this->_totalValueOfProduct = number_format($total, 2, '.', ',');
|
77 |
return $this;
|
78 |
}
|
79 |
|
82 |
*/
|
83 |
public function getPrice()
|
84 |
{
|
85 |
+
return $this->_price;
|
86 |
}
|
87 |
|
88 |
/**
|
91 |
*/
|
92 |
public function setSku($sku)
|
93 |
{
|
94 |
+
$this->_sku = $sku;
|
95 |
return $this;
|
96 |
}
|
97 |
|
100 |
*/
|
101 |
public function getSku()
|
102 |
{
|
103 |
+
return $this->_sku;
|
104 |
}
|
105 |
|
106 |
/**
|
@@ -5,17 +5,14 @@ class Dotdigitalgroup_Email_Model_Email_Template extends Mage_Core_Model_Email_T
|
|
5 |
|
6 |
public function send($email, $name = null, array $variables = array())
|
7 |
{
|
8 |
-
|
9 |
$_helper = Mage::helper('ddg/transactional');
|
10 |
// If it's not enabled, just return the parent result.
|
11 |
-
if (
|
12 |
-
Mage::log('DDG Transactional is not enabled, fall back to parent class');
|
13 |
return parent::send($email, $name, $variables);
|
14 |
}
|
15 |
|
16 |
|
17 |
// As per parent class - except addition of before and after send events
|
18 |
-
|
19 |
if (!$this->isValidForSend()) {
|
20 |
Mage::log('Email is not valid for sending, this is a core error that often means there\'s a problem with your email templates.');
|
21 |
Mage::logException(new Exception('This letter cannot be sent.')); // translation is intentionally omitted
|
5 |
|
6 |
public function send($email, $name = null, array $variables = array())
|
7 |
{
|
|
|
8 |
$_helper = Mage::helper('ddg/transactional');
|
9 |
// If it's not enabled, just return the parent result.
|
10 |
+
if (! $_helper->isEnabled()) {
|
|
|
11 |
return parent::send($email, $name, $variables);
|
12 |
}
|
13 |
|
14 |
|
15 |
// As per parent class - except addition of before and after send events
|
|
|
16 |
if (!$this->isValidForSend()) {
|
17 |
Mage::log('Email is not valid for sending, this is a core error that often means there\'s a problem with your email templates.');
|
18 |
Mage::logException(new Exception('This letter cannot be sent.')); // translation is intentionally omitted
|
@@ -24,7 +24,7 @@ class Dotdigitalgroup_Email_Model_Importer extends Mage_Core_Model_Abstract
|
|
24 |
const IMPORT_TYPE_SUBSCRIBERS = 'Subscriber';
|
25 |
const IMPORT_TYPE_GUEST = 'Guest';
|
26 |
|
27 |
-
|
28 |
'Globally Suppressed',
|
29 |
'Blocked',
|
30 |
'Unsubscribed',
|
@@ -33,10 +33,11 @@ class Dotdigitalgroup_Email_Model_Importer extends Mage_Core_Model_Abstract
|
|
33 |
'Domain Suppressed',
|
34 |
'Failures',
|
35 |
'Invalid Entries',
|
36 |
-
'Mail Blocked'
|
|
|
37 |
);
|
38 |
|
39 |
-
|
40 |
'RejectedByWatchdog', 'InvalidFileFormat', 'Unknown',
|
41 |
'Failed', 'ExceedsAllowedContactLimit', 'NotAvailableInThisVersion'
|
42 |
);
|
@@ -122,11 +123,10 @@ class Dotdigitalgroup_Email_Model_Importer extends Mage_Core_Model_Abstract
|
|
122 |
}
|
123 |
//if curl error 28
|
124 |
$curlError = $client->getCurlError();
|
125 |
-
if($curlError) {
|
126 |
$item->setMessage($curlError)
|
127 |
->save();
|
128 |
-
}
|
129 |
-
else{
|
130 |
if ($response && !isset($response->message)) {
|
131 |
if ($response->status == 'Finished') {
|
132 |
$now = Mage::getSingleton('core/date')->gmtDate();
|
@@ -169,22 +169,23 @@ class Dotdigitalgroup_Email_Model_Importer extends Mage_Core_Model_Abstract
|
|
169 |
return true;
|
170 |
}
|
171 |
|
172 |
-
|
173 |
{
|
174 |
$helper = Mage::helper('ddg');
|
175 |
$client = $helper->getWebsiteApiClient($websiteId);
|
176 |
$data = $client->getContactImportReportFaults($id);
|
177 |
|
178 |
-
if($data){
|
179 |
$data = $this->_remove_utf8_bom($data);
|
180 |
$fileName = Mage::getBaseDir('var') . DS . 'DmTempCsvFromApi.csv';
|
181 |
$io = new Varien_Io_File();
|
|
|
182 |
$check = $io->write($fileName, $data);
|
183 |
-
if($check){
|
184 |
$csvArray = $this->_csv_to_array($fileName);
|
185 |
$io->rm($fileName);
|
186 |
Mage::getResourceModel('ddg_automation/contact')->unsubscribe($csvArray);
|
187 |
-
}else{
|
188 |
$helper->log('_processContactImportReportFaults: cannot save data to CSV file.');
|
189 |
}
|
190 |
}
|
@@ -193,8 +194,7 @@ class Dotdigitalgroup_Email_Model_Importer extends Mage_Core_Model_Abstract
|
|
193 |
/**
|
194 |
* actual importer queue processor
|
195 |
*/
|
196 |
-
|
197 |
-
{
|
198 |
if ($item = $this->_getQueue()) {
|
199 |
$helper = Mage::helper('ddg');
|
200 |
$websiteId = $item->getWebsiteId();
|
@@ -269,11 +269,11 @@ class Dotdigitalgroup_Email_Model_Importer extends Mage_Core_Model_Abstract
|
|
269 |
}
|
270 |
//if curl error 28
|
271 |
$curlError = $client->getCurlError();
|
272 |
-
if($curlError) {
|
273 |
$item->setMessage($curlError)
|
274 |
->setImportStatus(self::FAILED)
|
275 |
->save();
|
276 |
-
} else{
|
277 |
if (!$error) {
|
278 |
if ($item->getImportMode() == self::MODE_SINGLE_DELETE or
|
279 |
$item->getImportMode() == self::MODE_SINGLE or
|
@@ -287,17 +287,16 @@ class Dotdigitalgroup_Email_Model_Importer extends Mage_Core_Model_Abstract
|
|
287 |
|
288 |
//process again next item in queue
|
289 |
$this->_processQueue();
|
290 |
-
}
|
291 |
-
elseif(isset($result->id) && !isset($result->message)){
|
292 |
$item->setImportStatus(self::IMPORTING)
|
293 |
->setImportId($result->id)
|
294 |
->setImportStarted($now)
|
295 |
->setMessage('')
|
296 |
->save();
|
297 |
-
}
|
298 |
-
|
299 |
$item->setImportStatus(self::FAILED)
|
300 |
-
->setMessage($
|
301 |
|
302 |
if(isset($result->id))
|
303 |
$item->setImportId($result->id);
|
@@ -305,13 +304,15 @@ class Dotdigitalgroup_Email_Model_Importer extends Mage_Core_Model_Abstract
|
|
305 |
$item->save();
|
306 |
}
|
307 |
} elseif ($error) {
|
308 |
-
$item->setImportStatus(self::FAILED)
|
309 |
-
->setMessage($result->message);
|
310 |
|
311 |
-
|
312 |
-
$item->setImportId($result->id);
|
313 |
|
314 |
-
|
|
|
|
|
|
|
|
|
|
|
315 |
}
|
316 |
}
|
317 |
}
|
@@ -323,7 +324,7 @@ class Dotdigitalgroup_Email_Model_Importer extends Mage_Core_Model_Abstract
|
|
323 |
* @param bool $importing
|
324 |
* @return bool|Varien_Object
|
325 |
*/
|
326 |
-
|
327 |
{
|
328 |
$collection = $this->getCollection();
|
329 |
|
@@ -340,18 +341,18 @@ class Dotdigitalgroup_Email_Model_Importer extends Mage_Core_Model_Abstract
|
|
340 |
return false;
|
341 |
}
|
342 |
|
343 |
-
|
344 |
{
|
345 |
if(!file_exists($filename) || !is_readable($filename))
|
346 |
return FALSE;
|
347 |
|
348 |
$header = NULL;
|
349 |
$data = array();
|
350 |
-
if (($handle = fopen($filename, 'r')) !== FALSE)
|
351 |
-
|
352 |
-
while (($row = fgetcsv($handle)) !== FALSE)
|
353 |
-
|
354 |
-
|
355 |
$header = $row;
|
356 |
else
|
357 |
$data[] = array_combine($header, $row);
|
@@ -360,15 +361,15 @@ class Dotdigitalgroup_Email_Model_Importer extends Mage_Core_Model_Abstract
|
|
360 |
}
|
361 |
|
362 |
$contacts = array();
|
363 |
-
foreach($data as $item){
|
364 |
-
if(in_array($item['Reason'], $this->_reasons))
|
365 |
$contacts[] = $item['email'];
|
366 |
}
|
367 |
|
368 |
return $contacts;
|
369 |
}
|
370 |
|
371 |
-
|
372 |
{
|
373 |
$bom = pack('H*','EFBBBF');
|
374 |
$text = preg_replace("/^$bom/", '', $text);
|
24 |
const IMPORT_TYPE_SUBSCRIBERS = 'Subscriber';
|
25 |
const IMPORT_TYPE_GUEST = 'Guest';
|
26 |
|
27 |
+
protected $_reasons = array(
|
28 |
'Globally Suppressed',
|
29 |
'Blocked',
|
30 |
'Unsubscribed',
|
33 |
'Domain Suppressed',
|
34 |
'Failures',
|
35 |
'Invalid Entries',
|
36 |
+
'Mail Blocked',
|
37 |
+
'Suppressed by you'
|
38 |
);
|
39 |
|
40 |
+
protected $import_statuses = array(
|
41 |
'RejectedByWatchdog', 'InvalidFileFormat', 'Unknown',
|
42 |
'Failed', 'ExceedsAllowedContactLimit', 'NotAvailableInThisVersion'
|
43 |
);
|
123 |
}
|
124 |
//if curl error 28
|
125 |
$curlError = $client->getCurlError();
|
126 |
+
if ($curlError) {
|
127 |
$item->setMessage($curlError)
|
128 |
->save();
|
129 |
+
} else {
|
|
|
130 |
if ($response && !isset($response->message)) {
|
131 |
if ($response->status == 'Finished') {
|
132 |
$now = Mage::getSingleton('core/date')->gmtDate();
|
169 |
return true;
|
170 |
}
|
171 |
|
172 |
+
protected function _processContactImportReportFaults($id, $websiteId)
|
173 |
{
|
174 |
$helper = Mage::helper('ddg');
|
175 |
$client = $helper->getWebsiteApiClient($websiteId);
|
176 |
$data = $client->getContactImportReportFaults($id);
|
177 |
|
178 |
+
if ($data) {
|
179 |
$data = $this->_remove_utf8_bom($data);
|
180 |
$fileName = Mage::getBaseDir('var') . DS . 'DmTempCsvFromApi.csv';
|
181 |
$io = new Varien_Io_File();
|
182 |
+
$io->open();
|
183 |
$check = $io->write($fileName, $data);
|
184 |
+
if ($check) {
|
185 |
$csvArray = $this->_csv_to_array($fileName);
|
186 |
$io->rm($fileName);
|
187 |
Mage::getResourceModel('ddg_automation/contact')->unsubscribe($csvArray);
|
188 |
+
} else {
|
189 |
$helper->log('_processContactImportReportFaults: cannot save data to CSV file.');
|
190 |
}
|
191 |
}
|
194 |
/**
|
195 |
* actual importer queue processor
|
196 |
*/
|
197 |
+
protected function _processQueue() {
|
|
|
198 |
if ($item = $this->_getQueue()) {
|
199 |
$helper = Mage::helper('ddg');
|
200 |
$websiteId = $item->getWebsiteId();
|
269 |
}
|
270 |
//if curl error 28
|
271 |
$curlError = $client->getCurlError();
|
272 |
+
if ($curlError) {
|
273 |
$item->setMessage($curlError)
|
274 |
->setImportStatus(self::FAILED)
|
275 |
->save();
|
276 |
+
} else {
|
277 |
if (!$error) {
|
278 |
if ($item->getImportMode() == self::MODE_SINGLE_DELETE or
|
279 |
$item->getImportMode() == self::MODE_SINGLE or
|
287 |
|
288 |
//process again next item in queue
|
289 |
$this->_processQueue();
|
290 |
+
} elseif (isset($result->id) && !isset($result->message)) {
|
|
|
291 |
$item->setImportStatus(self::IMPORTING)
|
292 |
->setImportId($result->id)
|
293 |
->setImportStarted($now)
|
294 |
->setMessage('')
|
295 |
->save();
|
296 |
+
} else {
|
297 |
+
$message = (isset($result->message))? $result->message : 'Error unknown';
|
298 |
$item->setImportStatus(self::FAILED)
|
299 |
+
->setMessage($message);
|
300 |
|
301 |
if(isset($result->id))
|
302 |
$item->setImportId($result->id);
|
304 |
$item->save();
|
305 |
}
|
306 |
} elseif ($error) {
|
|
|
|
|
307 |
|
308 |
+
$message = (isset($result->message))? $result->message : 'Error unknown';
|
|
|
309 |
|
310 |
+
$item->setImportStatus(self::FAILED)
|
311 |
+
->setMessage($message);
|
312 |
+
if (isset($result->id))
|
313 |
+
$item->setImportId($result->id);
|
314 |
+
|
315 |
+
$item->save();
|
316 |
}
|
317 |
}
|
318 |
}
|
324 |
* @param bool $importing
|
325 |
* @return bool|Varien_Object
|
326 |
*/
|
327 |
+
protected function _getQueue($importing = false)
|
328 |
{
|
329 |
$collection = $this->getCollection();
|
330 |
|
341 |
return false;
|
342 |
}
|
343 |
|
344 |
+
protected function _csv_to_array($filename)
|
345 |
{
|
346 |
if(!file_exists($filename) || !is_readable($filename))
|
347 |
return FALSE;
|
348 |
|
349 |
$header = NULL;
|
350 |
$data = array();
|
351 |
+
if (($handle = fopen($filename, 'r')) !== FALSE) {
|
352 |
+
|
353 |
+
while (($row = fgetcsv($handle)) !== FALSE) {
|
354 |
+
|
355 |
+
if (!$header)
|
356 |
$header = $row;
|
357 |
else
|
358 |
$data[] = array_combine($header, $row);
|
361 |
}
|
362 |
|
363 |
$contacts = array();
|
364 |
+
foreach ($data as $item) {
|
365 |
+
if (in_array($item['Reason'], $this->_reasons))
|
366 |
$contacts[] = $item['email'];
|
367 |
}
|
368 |
|
369 |
return $contacts;
|
370 |
}
|
371 |
|
372 |
+
protected function _remove_utf8_bom($text)
|
373 |
{
|
374 |
$bom = pack('H*','EFBBBF');
|
375 |
$text = preg_replace("/^$bom/", '', $text);
|
@@ -100,7 +100,7 @@ class Dotdigitalgroup_Email_Model_Newsletter_Observer
|
|
100 |
return $this;
|
101 |
}
|
102 |
|
103 |
-
|
104 |
|
105 |
$storeId = $subscriber->getStoreId();
|
106 |
$store = Mage::app()->getStore($storeId);
|
100 |
return $this;
|
101 |
}
|
102 |
|
103 |
+
protected function _addSubscriberToAutomation($email, $subscriber, $websiteId){
|
104 |
|
105 |
$storeId = $subscriber->getStoreId();
|
106 |
$store = Mage::app()->getStore($storeId);
|
@@ -120,7 +120,8 @@ class Dotdigitalgroup_Email_Model_Order extends Mage_Core_Model_Abstract
|
|
120 |
->addFieldToFilter('store_id', array('in' => $storeIds));
|
121 |
|
122 |
$collection->getSelect()->limit($limit);
|
123 |
-
|
|
|
124 |
}
|
125 |
|
126 |
}
|
120 |
->addFieldToFilter('store_id', array('in' => $storeIds));
|
121 |
|
122 |
$collection->getSelect()->limit($limit);
|
123 |
+
|
124 |
+
return $collection;
|
125 |
}
|
126 |
|
127 |
}
|
@@ -2,10 +2,10 @@
|
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Quote extends Mage_Core_Model_Abstract
|
4 |
{
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
|
10 |
/**
|
11 |
* constructor
|
@@ -46,13 +46,18 @@ class Dotdigitalgroup_Email_Model_Quote extends Mage_Core_Model_Abstract
|
|
46 |
foreach (Mage::app()->getWebsites(true) as $website) {
|
47 |
|
48 |
$apiEnabled = Mage::helper('ddg')->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_API_ENABLED, $website);
|
49 |
-
$enabled
|
50 |
$storeIds = $website->getStoreIds();
|
51 |
-
|
|
|
52 |
//using bulk api
|
53 |
$helper->log('---------- Start quote bulk sync ----------');
|
54 |
$this->_start = microtime(true);
|
|
|
|
|
|
|
55 |
$this->_exportQuoteForWebsite($website);
|
|
|
56 |
//send quote as transactional data
|
57 |
if (isset($this->_quotes[$website->getId()])) {
|
58 |
$websiteQuotes = $this->_quotes[$website->getId()];
|
@@ -63,6 +68,7 @@ class Dotdigitalgroup_Email_Model_Quote extends Mage_Core_Model_Abstract
|
|
63 |
Dotdigitalgroup_Email_Model_Importer::MODE_BULK,
|
64 |
$website->getId()
|
65 |
);
|
|
|
66 |
//set imported
|
67 |
if ($check) {
|
68 |
$this->getResource()->setImported($this->_quoteIds);
|
@@ -85,30 +91,30 @@ class Dotdigitalgroup_Email_Model_Quote extends Mage_Core_Model_Abstract
|
|
85 |
*
|
86 |
* @param Mage_Core_Model_Website $website
|
87 |
*/
|
88 |
-
|
89 |
{
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
}
|
113 |
|
114 |
/**
|
@@ -120,7 +126,7 @@ class Dotdigitalgroup_Email_Model_Quote extends Mage_Core_Model_Abstract
|
|
120 |
*
|
121 |
* @return mixed
|
122 |
*/
|
123 |
-
|
124 |
{
|
125 |
$collection = $this->getCollection()
|
126 |
->addFieldToFilter('store_id', array('in' => $website->getStoreIds()))
|
@@ -132,9 +138,9 @@ class Dotdigitalgroup_Email_Model_Quote extends Mage_Core_Model_Abstract
|
|
132 |
} else {
|
133 |
$collection->addFieldToFilter('imported', array('null' => true));
|
134 |
}
|
135 |
-
|
136 |
$collection->getSelect()->limit($limit);
|
137 |
-
|
|
|
138 |
}
|
139 |
|
140 |
/**
|
@@ -142,14 +148,16 @@ class Dotdigitalgroup_Email_Model_Quote extends Mage_Core_Model_Abstract
|
|
142 |
*
|
143 |
* @param Mage_Core_Model_Website $website
|
144 |
*/
|
145 |
-
|
146 |
{
|
147 |
try {
|
148 |
$limit = Mage::helper('ddg')->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_TRANSACTIONAL_DATA_SYNC_LIMIT, $website);
|
149 |
$collection = $this->_getQuoteToImport($website, $limit, true);
|
150 |
|
|
|
151 |
foreach ($collection as $emailQuote) {
|
152 |
-
|
|
|
153 |
if($quote->getId()) {
|
154 |
|
155 |
$connectorQuote = Mage::getModel('ddg_automation/connector_quote', $quote);
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Quote extends Mage_Core_Model_Abstract
|
4 |
{
|
5 |
+
protected $_start;
|
6 |
+
protected $_quotes;
|
7 |
+
protected $_count = 0;
|
8 |
+
protected $_quoteIds;
|
9 |
|
10 |
/**
|
11 |
* constructor
|
46 |
foreach (Mage::app()->getWebsites(true) as $website) {
|
47 |
|
48 |
$apiEnabled = Mage::helper('ddg')->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_API_ENABLED, $website);
|
49 |
+
$enabled = Mage::helper('ddg')->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_SYNC_QUOTE_ENABLED, $website);
|
50 |
$storeIds = $website->getStoreIds();
|
51 |
+
//api and sync enabled, also the should have stores created for this website
|
52 |
+
if ($enabled && $apiEnabled && !empty($storeIds)) {
|
53 |
//using bulk api
|
54 |
$helper->log('---------- Start quote bulk sync ----------');
|
55 |
$this->_start = microtime(true);
|
56 |
+
/**
|
57 |
+
* get quotes for website to import.
|
58 |
+
*/
|
59 |
$this->_exportQuoteForWebsite($website);
|
60 |
+
|
61 |
//send quote as transactional data
|
62 |
if (isset($this->_quotes[$website->getId()])) {
|
63 |
$websiteQuotes = $this->_quotes[$website->getId()];
|
68 |
Dotdigitalgroup_Email_Model_Importer::MODE_BULK,
|
69 |
$website->getId()
|
70 |
);
|
71 |
+
|
72 |
//set imported
|
73 |
if ($check) {
|
74 |
$this->getResource()->setImported($this->_quoteIds);
|
91 |
*
|
92 |
* @param Mage_Core_Model_Website $website
|
93 |
*/
|
94 |
+
protected function _exportQuoteForWebsite(Mage_Core_Model_Website $website)
|
95 |
{
|
96 |
+
try{
|
97 |
+
//reset quotes
|
98 |
+
$this->_quotes = array();
|
99 |
+
$this->_quoteIds = array();
|
100 |
+
$limit = Mage::helper('ddg')->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_TRANSACTIONAL_DATA_SYNC_LIMIT, $website);
|
101 |
+
$collection = $this->_getQuoteToImport($website, $limit);
|
102 |
+
|
103 |
+
foreach ($collection as $emailQuote) {
|
104 |
+
$store = Mage::app()->getStore($emailQuote->getStoreId());
|
105 |
+
$quote = Mage::getModel('sales/quote')->setStore($store)->load($emailQuote->getQuoteId());
|
106 |
+
|
107 |
+
if ($quote->getId()) {
|
108 |
+
|
109 |
+
$connectorQuote = Mage::getModel('ddg_automation/connector_quote', $quote);
|
110 |
+
$this->_quotes[$website->getId()][] = $connectorQuote;
|
111 |
+
}
|
112 |
+
$this->_quoteIds[] = $emailQuote->getQuoteId();
|
113 |
+
$this->_count++;
|
114 |
+
}
|
115 |
+
}catch(Exception $e){
|
116 |
+
Mage::logException($e);
|
117 |
+
}
|
118 |
}
|
119 |
|
120 |
/**
|
126 |
*
|
127 |
* @return mixed
|
128 |
*/
|
129 |
+
protected function _getQuoteToImport(Mage_Core_Model_Website $website, $limit = 100, $modified = false)
|
130 |
{
|
131 |
$collection = $this->getCollection()
|
132 |
->addFieldToFilter('store_id', array('in' => $website->getStoreIds()))
|
138 |
} else {
|
139 |
$collection->addFieldToFilter('imported', array('null' => true));
|
140 |
}
|
|
|
141 |
$collection->getSelect()->limit($limit);
|
142 |
+
|
143 |
+
return $collection;
|
144 |
}
|
145 |
|
146 |
/**
|
148 |
*
|
149 |
* @param Mage_Core_Model_Website $website
|
150 |
*/
|
151 |
+
protected function _exportQuoteForWebsiteInSingle(Mage_Core_Model_Website $website)
|
152 |
{
|
153 |
try {
|
154 |
$limit = Mage::helper('ddg')->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_TRANSACTIONAL_DATA_SYNC_LIMIT, $website);
|
155 |
$collection = $this->_getQuoteToImport($website, $limit, true);
|
156 |
|
157 |
+
|
158 |
foreach ($collection as $emailQuote) {
|
159 |
+
$store = Mage::app()->getStore($emailQuote->getStoreId());
|
160 |
+
$quote = Mage::getModel('sales/quote')->setStore($store)->load($emailQuote->getQuoteId());
|
161 |
if($quote->getId()) {
|
162 |
|
163 |
$connectorQuote = Mage::getModel('ddg_automation/connector_quote', $quote);
|
@@ -292,21 +292,26 @@ class Dotdigitalgroup_Email_Model_Resource_Contact extends Mage_Core_Model_Mysql
|
|
292 |
|
293 |
try{
|
294 |
//un-subscribe from the email contact table.
|
295 |
-
|
|
|
|
|
296 |
$this->getMainTable(),
|
297 |
array(
|
298 |
'is_subscriber' => new Zend_Db_Expr('null'),
|
299 |
'suppressed' => '1'
|
300 |
),
|
301 |
-
|
302 |
);
|
303 |
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
|
|
|
|
|
|
310 |
}catch (Exception $e){
|
311 |
Mage::throwException($e->getMessage());
|
312 |
Mage::logException($e);
|
292 |
|
293 |
try{
|
294 |
//un-subscribe from the email contact table.
|
295 |
+
$whereCondition = $write->quoteInto('email IN (?)', $emails);
|
296 |
+
|
297 |
+
$write->update(
|
298 |
$this->getMainTable(),
|
299 |
array(
|
300 |
'is_subscriber' => new Zend_Db_Expr('null'),
|
301 |
'suppressed' => '1'
|
302 |
),
|
303 |
+
$whereCondition
|
304 |
);
|
305 |
|
306 |
+
// un-subscribe newsletter subscribers
|
307 |
+
$newsletterCollection = Mage::getModel('newsletter/subscriber')->getCollection()
|
308 |
+
->addFieldToFilter('subscriber_email', array('in' => $emails));
|
309 |
+
|
310 |
+
foreach ( $newsletterCollection as $subscriber ) {
|
311 |
+
$subscriber->setSubscriberStatus( Mage_Newsletter_Model_Subscriber::STATUS_UNSUBSCRIBED)
|
312 |
+
->save();
|
313 |
+
}
|
314 |
+
|
315 |
}catch (Exception $e){
|
316 |
Mage::throwException($e->getMessage());
|
317 |
Mage::logException($e);
|
@@ -2,10 +2,10 @@
|
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Review extends Mage_Core_Model_Abstract
|
4 |
{
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
|
10 |
const EMAIL_REVIEW_IMPORTED = 1;
|
11 |
|
@@ -80,7 +80,7 @@ class Dotdigitalgroup_Email_Model_Review extends Mage_Core_Model_Abstract
|
|
80 |
return $response;
|
81 |
}
|
82 |
|
83 |
-
|
84 |
{
|
85 |
$limit = Mage::helper('ddg')->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_TRANSACTIONAL_DATA_SYNC_LIMIT, $website);
|
86 |
$emailReviews = $this->_getReviewsToExport($website, $limit);
|
@@ -136,7 +136,7 @@ class Dotdigitalgroup_Email_Model_Review extends Mage_Core_Model_Abstract
|
|
136 |
}
|
137 |
}
|
138 |
|
139 |
-
|
140 |
{
|
141 |
return $this->getCollection()
|
142 |
->addFieldToFilter('review_imported', array('null' => 'true'))
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Review extends Mage_Core_Model_Abstract
|
4 |
{
|
5 |
+
protected $_start;
|
6 |
+
protected $_countReviews;
|
7 |
+
protected $_reviews;
|
8 |
+
protected $_reviewIds;
|
9 |
|
10 |
const EMAIL_REVIEW_IMPORTED = 1;
|
11 |
|
80 |
return $response;
|
81 |
}
|
82 |
|
83 |
+
protected function _exportReviewsForWebsite(Mage_Core_Model_Website $website)
|
84 |
{
|
85 |
$limit = Mage::helper('ddg')->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_TRANSACTIONAL_DATA_SYNC_LIMIT, $website);
|
86 |
$emailReviews = $this->_getReviewsToExport($website, $limit);
|
136 |
}
|
137 |
}
|
138 |
|
139 |
+
protected function _getReviewsToExport(Mage_Core_Model_Website $website, $limit = 100)
|
140 |
{
|
141 |
return $this->getCollection()
|
142 |
->addFieldToFilter('review_imported', array('null' => 'true'))
|
@@ -5,12 +5,12 @@ class Dotdigitalgroup_Email_Model_Rules extends Mage_Core_Model_Abstract
|
|
5 |
const ABANDONED = 1;
|
6 |
const REVIEW = 2;
|
7 |
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
|
15 |
/**
|
16 |
* constructor
|
@@ -149,16 +149,16 @@ class Dotdigitalgroup_Email_Model_Rules extends Mage_Core_Model_Abstract
|
|
149 |
{
|
150 |
$rule = $this->getActiveRuleForWebsite($type, $websiteId);
|
151 |
//if no rule then return the collection untouched
|
152 |
-
if(empty($rule))
|
153 |
return $collection;
|
154 |
|
155 |
//if rule has no conditions then return the collection untouched
|
156 |
$condition = unserialize($rule->getCondition());
|
157 |
-
if(empty($condition))
|
158 |
return $collection;
|
159 |
|
160 |
//join tables to collection according to type
|
161 |
-
if($type == self::ABANDONED){
|
162 |
$collection->getSelect()
|
163 |
->joinLeft(
|
164 |
array('quote_address' => 'sales_flat_quote_address'),
|
@@ -169,7 +169,7 @@ class Dotdigitalgroup_Email_Model_Rules extends Mage_Core_Model_Abstract
|
|
169 |
"main_table.entity_id = quote_payment.quote_id",
|
170 |
array('method')
|
171 |
)->where('address_type = ?', 'shipping');
|
172 |
-
}elseif($type == self::REVIEW){
|
173 |
$collection->getSelect()
|
174 |
->join(
|
175 |
array('order_address' => 'sales_flat_order_address'),
|
@@ -206,7 +206,7 @@ class Dotdigitalgroup_Email_Model_Rules extends Mage_Core_Model_Abstract
|
|
206 |
* @param $type
|
207 |
* @return mixed
|
208 |
*/
|
209 |
-
|
210 |
{
|
211 |
foreach($conditions as $condition){
|
212 |
$attribute = $condition['attribute'];
|
@@ -254,7 +254,7 @@ class Dotdigitalgroup_Email_Model_Rules extends Mage_Core_Model_Abstract
|
|
254 |
* @param $type
|
255 |
* @return mixed
|
256 |
*/
|
257 |
-
|
258 |
{
|
259 |
$fieldsConditions = array();
|
260 |
$multiFieldsConditions = array();
|
@@ -332,13 +332,14 @@ class Dotdigitalgroup_Email_Model_Rules extends Mage_Core_Model_Abstract
|
|
332 |
* @param $collection
|
333 |
* @return mixed
|
334 |
*/
|
335 |
-
|
336 |
{
|
|
|
337 |
//if no product attribute or collection empty return collection
|
338 |
-
if(empty($this->_productAttribute) or !$collection->getSize())
|
339 |
return $collection;
|
340 |
|
341 |
-
foreach($collection as $collectionItem){
|
342 |
$items = $collectionItem->getAllItems();
|
343 |
foreach($items as $item){
|
344 |
//loaded product
|
@@ -350,7 +351,7 @@ class Dotdigitalgroup_Email_Model_Rules extends Mage_Core_Model_Abstract
|
|
350 |
$product
|
351 |
);
|
352 |
|
353 |
-
foreach($this->_productAttribute as $productAttribute){
|
354 |
$attribute = $productAttribute['attribute'];
|
355 |
$cond = $productAttribute['conditions'];
|
356 |
$value = $productAttribute['cvalue'];
|
@@ -364,7 +365,7 @@ class Dotdigitalgroup_Email_Model_Rules extends Mage_Core_Model_Abstract
|
|
364 |
}
|
365 |
|
366 |
//if attribute is in product's attributes array
|
367 |
-
if(in_array($attribute,$attributes)){
|
368 |
$attr = Mage::getSingleton('eav/config')->getAttribute('catalog_product', $attribute);
|
369 |
//frontend type
|
370 |
$frontType = $attr->getFrontend()->getInputType();
|
@@ -376,7 +377,7 @@ class Dotdigitalgroup_Email_Model_Rules extends Mage_Core_Model_Abstract
|
|
376 |
$collection->removeItemByKey($collectionItem->getId());
|
377 |
continue 3;
|
378 |
}
|
379 |
-
}else{
|
380 |
$getter = 'get';
|
381 |
$exploded = explode('_', $attribute);
|
382 |
foreach ($exploded as $one) {
|
@@ -384,10 +385,10 @@ class Dotdigitalgroup_Email_Model_Rules extends Mage_Core_Model_Abstract
|
|
384 |
}
|
385 |
$attributeValue = call_user_func(array($product, $getter));
|
386 |
//if retrieved value is an array then loop through all array values. example can be categories
|
387 |
-
if(is_array($attributeValue)){
|
388 |
-
foreach($attributeValue as $attrValue){
|
389 |
//evaluate conditions on values. if true then unset item from collection
|
390 |
-
if($this->_evaluate($value, $cond, $attrValue)){
|
391 |
$collection->removeItemByKey($collectionItem->getId());
|
392 |
continue 3;
|
393 |
}
|
@@ -395,7 +396,7 @@ class Dotdigitalgroup_Email_Model_Rules extends Mage_Core_Model_Abstract
|
|
395 |
}
|
396 |
else{
|
397 |
//evaluate conditions on values. if true then unset item from collection
|
398 |
-
if($this->_evaluate($value, $cond, $attributeValue)){
|
399 |
$collection->removeItemByKey($collectionItem->getId());
|
400 |
continue 3;
|
401 |
}
|
@@ -416,7 +417,7 @@ class Dotdigitalgroup_Email_Model_Rules extends Mage_Core_Model_Abstract
|
|
416 |
* @param $var2
|
417 |
* @return bool
|
418 |
*/
|
419 |
-
|
420 |
{
|
421 |
switch ($op) {
|
422 |
case "eq":
|
5 |
const ABANDONED = 1;
|
6 |
const REVIEW = 2;
|
7 |
|
8 |
+
protected $_defaultOptions;
|
9 |
+
protected $_conditionMap;
|
10 |
+
protected $_attributeMapForQuote;
|
11 |
+
protected $_attributeMapForOrder;
|
12 |
+
protected $_productAttribute;
|
13 |
+
protected $_used = array();
|
14 |
|
15 |
/**
|
16 |
* constructor
|
149 |
{
|
150 |
$rule = $this->getActiveRuleForWebsite($type, $websiteId);
|
151 |
//if no rule then return the collection untouched
|
152 |
+
if (empty($rule))
|
153 |
return $collection;
|
154 |
|
155 |
//if rule has no conditions then return the collection untouched
|
156 |
$condition = unserialize($rule->getCondition());
|
157 |
+
if (empty($condition))
|
158 |
return $collection;
|
159 |
|
160 |
//join tables to collection according to type
|
161 |
+
if ($type == self::ABANDONED){
|
162 |
$collection->getSelect()
|
163 |
->joinLeft(
|
164 |
array('quote_address' => 'sales_flat_quote_address'),
|
169 |
"main_table.entity_id = quote_payment.quote_id",
|
170 |
array('method')
|
171 |
)->where('address_type = ?', 'shipping');
|
172 |
+
} elseif($type == self::REVIEW) {
|
173 |
$collection->getSelect()
|
174 |
->join(
|
175 |
array('order_address' => 'sales_flat_order_address'),
|
206 |
* @param $type
|
207 |
* @return mixed
|
208 |
*/
|
209 |
+
protected function _processAndCombination($collection, $conditions, $type)
|
210 |
{
|
211 |
foreach($conditions as $condition){
|
212 |
$attribute = $condition['attribute'];
|
254 |
* @param $type
|
255 |
* @return mixed
|
256 |
*/
|
257 |
+
protected function _processOrCombination($collection, $conditions, $type)
|
258 |
{
|
259 |
$fieldsConditions = array();
|
260 |
$multiFieldsConditions = array();
|
332 |
* @param $collection
|
333 |
* @return mixed
|
334 |
*/
|
335 |
+
protected function _processProductAttributes($collection)
|
336 |
{
|
337 |
+
|
338 |
//if no product attribute or collection empty return collection
|
339 |
+
if (empty($this->_productAttribute) or !$collection->getSize())
|
340 |
return $collection;
|
341 |
|
342 |
+
foreach ($collection as $collectionItem) {
|
343 |
$items = $collectionItem->getAllItems();
|
344 |
foreach($items as $item){
|
345 |
//loaded product
|
351 |
$product
|
352 |
);
|
353 |
|
354 |
+
foreach ($this->_productAttribute as $productAttribute) {
|
355 |
$attribute = $productAttribute['attribute'];
|
356 |
$cond = $productAttribute['conditions'];
|
357 |
$value = $productAttribute['cvalue'];
|
365 |
}
|
366 |
|
367 |
//if attribute is in product's attributes array
|
368 |
+
if (in_array($attribute,$attributes)) {
|
369 |
$attr = Mage::getSingleton('eav/config')->getAttribute('catalog_product', $attribute);
|
370 |
//frontend type
|
371 |
$frontType = $attr->getFrontend()->getInputType();
|
377 |
$collection->removeItemByKey($collectionItem->getId());
|
378 |
continue 3;
|
379 |
}
|
380 |
+
} else {
|
381 |
$getter = 'get';
|
382 |
$exploded = explode('_', $attribute);
|
383 |
foreach ($exploded as $one) {
|
385 |
}
|
386 |
$attributeValue = call_user_func(array($product, $getter));
|
387 |
//if retrieved value is an array then loop through all array values. example can be categories
|
388 |
+
if (is_array($attributeValue)) {
|
389 |
+
foreach ($attributeValue as $attrValue) {
|
390 |
//evaluate conditions on values. if true then unset item from collection
|
391 |
+
if ($this->_evaluate($value, $cond, $attrValue)) {
|
392 |
$collection->removeItemByKey($collectionItem->getId());
|
393 |
continue 3;
|
394 |
}
|
396 |
}
|
397 |
else{
|
398 |
//evaluate conditions on values. if true then unset item from collection
|
399 |
+
if ($this->_evaluate($value, $cond, $attributeValue)) {
|
400 |
$collection->removeItemByKey($collectionItem->getId());
|
401 |
continue 3;
|
402 |
}
|
417 |
* @param $var2
|
418 |
* @return bool
|
419 |
*/
|
420 |
+
protected function _evaluate($var1, $op, $var2)
|
421 |
{
|
422 |
switch ($op) {
|
423 |
case "eq":
|
@@ -8,77 +8,76 @@ class Dotdigitalgroup_Email_Model_Sales_Observer
|
|
8 |
* @param Varien_Event_Observer $observer
|
9 |
* @return $this
|
10 |
*/
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
}
|
82 |
|
83 |
|
84 |
/**
|
@@ -287,7 +286,7 @@ class Dotdigitalgroup_Email_Model_Sales_Observer
|
|
287 |
*
|
288 |
* @param Mage_Sales_Model_Quote $quote
|
289 |
*/
|
290 |
-
|
291 |
{
|
292 |
try {
|
293 |
$connectorQuote = Mage::getModel('ddg_automation/quote');
|
8 |
* @param Varien_Event_Observer $observer
|
9 |
* @return $this
|
10 |
*/
|
11 |
+
public function handleSalesOrderSaveAfter(Varien_Event_Observer $observer)
|
12 |
+
{
|
13 |
+
/** @var $order Mage_Sales_Model_Order */
|
14 |
+
$order = $observer->getEvent()->getOrder();
|
15 |
+
$status = $order->getStatus();
|
16 |
+
$storeId = $order->getStoreId();
|
17 |
+
$appEmulation = Mage::getSingleton('core/app_emulation');
|
18 |
+
$initialEnvironmentInfo = $appEmulation->startEnvironmentEmulation($storeId);
|
19 |
+
try{
|
20 |
+
$store = Mage::app()->getStore($storeId);
|
21 |
+
$storeName = $store->getName();
|
22 |
+
$websiteId = $store->getWebsiteId();
|
23 |
+
$customerEmail = $order->getCustomerEmail();
|
24 |
+
// start app emulation
|
25 |
+
$emailOrder = Mage::getModel('ddg_automation/order')->loadByOrderId($order->getEntityId(), $order->getQuoteId());
|
26 |
+
//reimport email order
|
27 |
+
$emailOrder->setUpdatedAt($order->getUpdatedAt())
|
28 |
+
->setStoreId($storeId)
|
29 |
+
->setOrderStatus($status);
|
30 |
+
if($emailOrder->getEmailImported() != Dotdigitalgroup_Email_Model_Contact::EMAIL_CONTACT_IMPORTED) {
|
31 |
+
$emailOrder->setEmailImported(null);
|
32 |
+
}
|
33 |
+
//if api is not enabled
|
34 |
+
if (!$store->getWebsite()->getConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_API_ENABLED)) {
|
35 |
+
$appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo);
|
36 |
+
return $this;
|
37 |
+
}
|
38 |
+
// check for order status change
|
39 |
+
$statusBefore = $order->getOrigData('status');
|
40 |
+
//check if order status changed
|
41 |
+
if ( $status!= $statusBefore) {
|
42 |
+
//If order status has changed and order is already imported then set modified to 1
|
43 |
+
if($emailOrder->getEmailImported() == Dotdigitalgroup_Email_Model_Contact::EMAIL_CONTACT_IMPORTED) {
|
44 |
+
$emailOrder->setModified(Dotdigitalgroup_Email_Model_Contact::EMAIL_CONTACT_IMPORTED);
|
45 |
+
}
|
46 |
+
$smsCampaign = Mage::getModel('ddg_automation/sms_campaign', $order);
|
47 |
+
$smsCampaign->setStatus($status);
|
48 |
+
$smsCampaign->sendSms();
|
49 |
+
}
|
50 |
+
// set back the current store
|
51 |
+
$appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo);
|
52 |
+
$emailOrder->save();
|
53 |
+
//Status check automation enrolment
|
54 |
+
$configStatusAutomationMap = unserialize(Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_AUTOMATION_STUDIO_ORDER_STATUS, $order->getStore()));
|
55 |
+
if(!empty($configStatusAutomationMap)){
|
56 |
+
foreach($configStatusAutomationMap as $configMap){
|
57 |
+
if($configMap['status'] == $status) {
|
58 |
+
try {
|
59 |
+
$programId = $configMap['automation'];
|
60 |
+
$automation = Mage::getModel( 'ddg_automation/automation' );
|
61 |
+
$automation->setEmail( $customerEmail )
|
62 |
+
->setAutomationType( 'order_automation_' . $status )
|
63 |
+
->setEnrolmentStatus( Dotdigitalgroup_Email_Model_Automation::AUTOMATION_STATUS_PENDING )
|
64 |
+
->setTypeId( $order->getId() )
|
65 |
+
->setWebsiteId( $websiteId )
|
66 |
+
->setStoreName( $storeName )
|
67 |
+
->setProgramId( $programId );
|
68 |
+
$automation->save();
|
69 |
+
}catch(Exception $e){
|
70 |
+
Mage::logException($e);
|
71 |
+
}
|
72 |
+
}
|
73 |
+
}
|
74 |
+
}
|
75 |
+
}catch(Exception $e){
|
76 |
+
Mage::logException($e);
|
77 |
+
$appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo);
|
78 |
+
}
|
79 |
+
return $this;
|
80 |
+
}
|
|
|
81 |
|
82 |
|
83 |
/**
|
286 |
*
|
287 |
* @param Mage_Sales_Model_Quote $quote
|
288 |
*/
|
289 |
+
protected function _registerQuote(Mage_Sales_Model_Quote $quote)
|
290 |
{
|
291 |
try {
|
292 |
$connectorQuote = Mage::getModel('ddg_automation/quote');
|
@@ -5,25 +5,25 @@ class Dotdigitalgroup_Email_Model_Sales_Order
|
|
5 |
/**
|
6 |
* @var array
|
7 |
*/
|
8 |
-
protected $
|
9 |
/**
|
10 |
* @var string
|
11 |
*/
|
12 |
-
|
13 |
/**
|
14 |
* @var string
|
15 |
*/
|
16 |
-
|
17 |
|
18 |
/**
|
19 |
* Global number of orders
|
20 |
* @var int
|
21 |
*/
|
22 |
-
|
23 |
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
|
28 |
/**
|
29 |
* initial sync the transactional data
|
@@ -35,7 +35,7 @@ class Dotdigitalgroup_Email_Model_Sales_Order
|
|
35 |
// Initialise a return hash containing results of our sync attempt
|
36 |
$this->_searchAccounts();
|
37 |
|
38 |
-
foreach ($this->
|
39 |
|
40 |
$orders = $account->getOrders();
|
41 |
$orderIds = $account->getOrderIds();
|
@@ -84,7 +84,7 @@ class Dotdigitalgroup_Email_Model_Sales_Order
|
|
84 |
$this->_setImported($orderIdsForSingleSync, true);
|
85 |
}
|
86 |
}
|
87 |
-
unset($this->
|
88 |
}
|
89 |
|
90 |
if ($this->_countOrders)
|
@@ -95,7 +95,7 @@ class Dotdigitalgroup_Email_Model_Sales_Order
|
|
95 |
/**
|
96 |
* Search the configuration data per website
|
97 |
*/
|
98 |
-
|
99 |
|
100 |
$helper = Mage::helper('ddg');
|
101 |
|
@@ -114,23 +114,23 @@ class Dotdigitalgroup_Email_Model_Sales_Order
|
|
114 |
|
115 |
// limit for orders included to sync
|
116 |
$limit = Mage::helper('ddg')->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_TRANSACTIONAL_DATA_SYNC_LIMIT, $website);
|
117 |
-
if (!isset($this->
|
118 |
$account = Mage::getModel('ddg_automation/connector_account')
|
119 |
->setApiUsername($this->_apiUsername)
|
120 |
->setApiPassword($this->_apiPassword);
|
121 |
-
$this->
|
122 |
}
|
123 |
|
124 |
-
$this->
|
125 |
-
$orderIds = array_merge($this->
|
126 |
-
$this->
|
127 |
-
$this->
|
128 |
-
$this->
|
129 |
$orderIdsForSingleSync = array_merge(
|
130 |
-
$this->
|
131 |
$this->_orderIdsForSingleSync
|
132 |
);
|
133 |
-
$this->
|
134 |
}
|
135 |
}
|
136 |
}
|
@@ -205,7 +205,7 @@ class Dotdigitalgroup_Email_Model_Sales_Order
|
|
205 |
*
|
206 |
* @return bool
|
207 |
*/
|
208 |
-
|
209 |
|
210 |
try{
|
211 |
$client = Mage::helper('ddg')->getWebsiteApiClient($websiteId);
|
@@ -257,15 +257,15 @@ class Dotdigitalgroup_Email_Model_Sales_Order
|
|
257 |
|
258 |
|
259 |
/**
|
260 |
-
* create
|
261 |
*
|
262 |
* @return bool
|
263 |
*/
|
264 |
-
public function
|
265 |
{
|
266 |
-
$this->
|
267 |
|
268 |
-
foreach($this->
|
269 |
$this->registerCampaign($collection, $websiteId);
|
270 |
}
|
271 |
}
|
@@ -278,18 +278,17 @@ class Dotdigitalgroup_Email_Model_Sales_Order
|
|
278 |
*
|
279 |
* @throws Exception
|
280 |
*/
|
281 |
-
|
282 |
-
|
283 |
-
$helper = Mage::helper('ddg/review');
|
284 |
-
$campaignId = $helper->getCampaign($websiteId);
|
285 |
|
|
|
|
|
|
|
286 |
if ($campaignId) {
|
287 |
foreach ($collection as $order) {
|
288 |
-
|
289 |
|
290 |
try {
|
291 |
-
$emailCampaign = Mage::getModel('ddg_automation/campaign')
|
292 |
-
$emailCampaign
|
293 |
->setEmail($order->getCustomerEmail())
|
294 |
->setStoreId($order->getStoreId())
|
295 |
->setCampaignId($campaignId)
|
@@ -297,11 +296,12 @@ class Dotdigitalgroup_Email_Model_Sales_Order
|
|
297 |
->setCreatedAt(Mage::getSingleton('core/date')->gmtDate())
|
298 |
->setOrderIncrementId($order->getIncrementId())
|
299 |
->setQuoteId($order->getQuoteId());
|
300 |
-
|
301 |
if($order->getCustomerId())
|
302 |
$emailCampaign->setCustomerId($order->getCustomerId());
|
303 |
|
304 |
$emailCampaign->save();
|
|
|
305 |
} catch (Exception $e) {
|
306 |
Mage::logException($e);
|
307 |
}
|
@@ -310,59 +310,57 @@ class Dotdigitalgroup_Email_Model_Sales_Order
|
|
310 |
}
|
311 |
|
312 |
/**
|
313 |
-
* search for orders
|
314 |
*/
|
315 |
-
|
316 |
|
317 |
-
|
318 |
|
319 |
-
foreach (Mage::app()->getWebsites(true) as $website){
|
320 |
|
321 |
-
$apiEnabled =
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
|
|
326 |
|
|
|
327 |
$storeIds = $website->getStoreIds();
|
328 |
-
if(empty($storeIds))
|
329 |
continue;
|
330 |
|
331 |
-
$
|
332 |
-
|
333 |
-
|
334 |
-
$campaignCollection = Mage::getModel('ddg_automation/campaign')->getCollection();
|
335 |
-
$campaignCollection
|
336 |
-
->addFieldToFilter('event_name', 'Order Review')
|
337 |
-
->load();
|
338 |
|
339 |
$campaignOrderIds = $campaignCollection->getColumnValues('order_increment_id');
|
340 |
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
$
|
|
|
345 |
$from = $from->subHour(2)
|
346 |
->toString('YYYY-MM-dd HH:mm:ss');
|
|
|
|
|
347 |
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
$collection->addFieldToFilter('main_table.status', $orderStatusFromConfig)
|
352 |
-
->addFieldToFilter('main_table.created_at', $created)
|
353 |
->addFieldToFilter('main_table.store_id', array('in' => $storeIds));
|
354 |
|
355 |
if (! empty($campaignOrderIds))
|
356 |
-
|
357 |
|
358 |
//process rules on collection
|
359 |
$ruleModel = Mage::getModel('ddg_automation/rules');
|
360 |
$collection = $ruleModel->process(
|
361 |
-
|
362 |
);
|
363 |
|
364 |
if ($collection->getSize())
|
365 |
-
$this->
|
366 |
}
|
367 |
}
|
368 |
}
|
@@ -415,7 +413,7 @@ class Dotdigitalgroup_Email_Model_Sales_Order
|
|
415 |
* @param $ids
|
416 |
* @param $modified
|
417 |
*/
|
418 |
-
|
419 |
|
420 |
try{
|
421 |
$coreResource = Mage::getSingleton('core/resource');
|
5 |
/**
|
6 |
* @var array
|
7 |
*/
|
8 |
+
protected $_accounts = array();
|
9 |
/**
|
10 |
* @var string
|
11 |
*/
|
12 |
+
protected $_apiUsername;
|
13 |
/**
|
14 |
* @var string
|
15 |
*/
|
16 |
+
protected $_apiPassword;
|
17 |
|
18 |
/**
|
19 |
* Global number of orders
|
20 |
* @var int
|
21 |
*/
|
22 |
+
protected $_countOrders = 0;
|
23 |
|
24 |
+
protected $_orderIds;
|
25 |
+
protected $_orderReminderReviewArray = array();
|
26 |
+
protected $_orderIdsForSingleSync;
|
27 |
|
28 |
/**
|
29 |
* initial sync the transactional data
|
35 |
// Initialise a return hash containing results of our sync attempt
|
36 |
$this->_searchAccounts();
|
37 |
|
38 |
+
foreach ($this->_accounts as $account) {
|
39 |
|
40 |
$orders = $account->getOrders();
|
41 |
$orderIds = $account->getOrderIds();
|
84 |
$this->_setImported($orderIdsForSingleSync, true);
|
85 |
}
|
86 |
}
|
87 |
+
unset($this->_accounts[$account->getApiUsername()]);
|
88 |
}
|
89 |
|
90 |
if ($this->_countOrders)
|
95 |
/**
|
96 |
* Search the configuration data per website
|
97 |
*/
|
98 |
+
protected function _searchAccounts() {
|
99 |
|
100 |
$helper = Mage::helper('ddg');
|
101 |
|
114 |
|
115 |
// limit for orders included to sync
|
116 |
$limit = Mage::helper('ddg')->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_TRANSACTIONAL_DATA_SYNC_LIMIT, $website);
|
117 |
+
if (!isset($this->_accounts[$this->_apiUsername])) {
|
118 |
$account = Mage::getModel('ddg_automation/connector_account')
|
119 |
->setApiUsername($this->_apiUsername)
|
120 |
->setApiPassword($this->_apiPassword);
|
121 |
+
$this->_accounts[$this->_apiUsername] = $account;
|
122 |
}
|
123 |
|
124 |
+
$this->_accounts[$this->_apiUsername]->setOrders($this->getConnectorOrders($website, $limit));
|
125 |
+
$orderIds = array_merge($this->_accounts[$this->_apiUsername]->getOrderIds(), $this->_orderIds);
|
126 |
+
$this->_accounts[$this->_apiUsername]->setOrderIds($orderIds);
|
127 |
+
$this->_accounts[$this->_apiUsername]->setWebsites($website->getId());
|
128 |
+
$this->_accounts[$this->_apiUsername]->setOrdersForSingleSync($this->getConnectorOrders($website, $limit, true));
|
129 |
$orderIdsForSingleSync = array_merge(
|
130 |
+
$this->_accounts[$this->_apiUsername]->getOrderIdsForSingleSync(),
|
131 |
$this->_orderIdsForSingleSync
|
132 |
);
|
133 |
+
$this->_accounts[$this->_apiUsername]->setOrderIdsForSingleSync($orderIdsForSingleSync);
|
134 |
}
|
135 |
}
|
136 |
}
|
205 |
*
|
206 |
* @return bool
|
207 |
*/
|
208 |
+
protected function _createGuestContact($email, $websiteId, $storeId) {
|
209 |
|
210 |
try{
|
211 |
$client = Mage::helper('ddg')->getWebsiteApiClient($websiteId);
|
257 |
|
258 |
|
259 |
/**
|
260 |
+
* create product reminder campaigns
|
261 |
*
|
262 |
* @return bool
|
263 |
*/
|
264 |
+
public function createProductReminderReviewCampaigns()
|
265 |
{
|
266 |
+
$this->searchOrdersForProductReminder();
|
267 |
|
268 |
+
foreach($this->_orderReminderReviewArray as $websiteId => $collection){
|
269 |
$this->registerCampaign($collection, $websiteId);
|
270 |
}
|
271 |
}
|
278 |
*
|
279 |
* @throws Exception
|
280 |
*/
|
281 |
+
protected function registerCampaign($collection, $websiteId) {
|
|
|
|
|
|
|
282 |
|
283 |
+
$helper = Mage::helper('ddg');
|
284 |
+
$campaignId = $helper->getReviewReminderCampaign($websiteId);
|
285 |
+
//campaign id is selected in config
|
286 |
if ($campaignId) {
|
287 |
foreach ($collection as $order) {
|
288 |
+
$helper->log('-- Order Product Reminder: ' . $order->getIncrementId() . ' Campaign Id: ' . $campaignId);
|
289 |
|
290 |
try {
|
291 |
+
$emailCampaign = Mage::getModel('ddg_automation/campaign')
|
|
|
292 |
->setEmail($order->getCustomerEmail())
|
293 |
->setStoreId($order->getStoreId())
|
294 |
->setCampaignId($campaignId)
|
296 |
->setCreatedAt(Mage::getSingleton('core/date')->gmtDate())
|
297 |
->setOrderIncrementId($order->getIncrementId())
|
298 |
->setQuoteId($order->getQuoteId());
|
299 |
+
//set customer id for campaign
|
300 |
if($order->getCustomerId())
|
301 |
$emailCampaign->setCustomerId($order->getCustomerId());
|
302 |
|
303 |
$emailCampaign->save();
|
304 |
+
|
305 |
} catch (Exception $e) {
|
306 |
Mage::logException($e);
|
307 |
}
|
310 |
}
|
311 |
|
312 |
/**
|
313 |
+
* search for orders for product review reminder
|
314 |
*/
|
315 |
+
protected function searchOrdersForProductReminder() {
|
316 |
|
317 |
+
$helper = Mage::helper('ddg');
|
318 |
|
319 |
+
foreach (Mage::app()->getWebsites(true) as $website) {
|
320 |
|
321 |
+
$apiEnabled = $helper->getWebsiteConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_API_ENABLED, $website);
|
322 |
+
$reviewReminderEnabled = $helper->isReviewReminderEnabled($website);
|
323 |
+
$reviewReminderOrderStatus = $helper->getReviewReminderOrderStatus($website);
|
324 |
+
$reviewReminderDelayInDays = $helper->getReviewReminderDelay($website);
|
325 |
+
//check for api and review enabled
|
326 |
+
if ($apiEnabled && $reviewReminderEnabled && $reviewReminderOrderStatus && $reviewReminderDelayInDays) {
|
327 |
|
328 |
+
//check for website with no stores
|
329 |
$storeIds = $website->getStoreIds();
|
330 |
+
if (empty($storeIds))
|
331 |
continue;
|
332 |
|
333 |
+
$campaignCollection = Mage::getModel('ddg_automation/campaign')->getCollection()
|
334 |
+
->addFieldToFilter('event_name', 'Order Review');
|
|
|
|
|
|
|
|
|
|
|
335 |
|
336 |
$campaignOrderIds = $campaignCollection->getColumnValues('order_increment_id');
|
337 |
|
338 |
+
//date time with config delay
|
339 |
+
$date = Mage::app()->getLocale()->date()
|
340 |
+
->subDay($reviewReminderDelayInDays);
|
341 |
+
$from = clone $date;
|
342 |
+
$to = $date->toString('YYYY-MM-dd HH:mm:ss');
|
343 |
$from = $from->subHour(2)
|
344 |
->toString('YYYY-MM-dd HH:mm:ss');
|
345 |
+
//created at date range
|
346 |
+
$createdAt = array( 'from' => $from, 'to' => $to, 'date' => true);
|
347 |
|
348 |
+
$orderCollection = Mage::getModel('sales/order')->getCollection()
|
349 |
+
->addFieldToFilter('main_table.status', $reviewReminderOrderStatus)
|
350 |
+
->addFieldToFilter('main_table.created_at', $createdAt)
|
|
|
|
|
351 |
->addFieldToFilter('main_table.store_id', array('in' => $storeIds));
|
352 |
|
353 |
if (! empty($campaignOrderIds))
|
354 |
+
$orderCollection->addFieldToFilter('main_table.increment_id', array('nin' => $campaignOrderIds));
|
355 |
|
356 |
//process rules on collection
|
357 |
$ruleModel = Mage::getModel('ddg_automation/rules');
|
358 |
$collection = $ruleModel->process(
|
359 |
+
$orderCollection, Dotdigitalgroup_Email_Model_Rules::REVIEW, $website->getId()
|
360 |
);
|
361 |
|
362 |
if ($collection->getSize())
|
363 |
+
$this->_orderReminderReviewArray[$website->getId()] = $collection;
|
364 |
}
|
365 |
}
|
366 |
}
|
413 |
* @param $ids
|
414 |
* @param $modified
|
415 |
*/
|
416 |
+
protected function _setImported($ids, $modified = false) {
|
417 |
|
418 |
try{
|
419 |
$coreResource = Mage::getSingleton('core/resource');
|
@@ -72,10 +72,11 @@ class Dotdigitalgroup_Email_Model_Sales_Quote
|
|
72 |
$from->sub('5', Zend_Date::MINUTE);
|
73 |
|
74 |
//active quotes
|
75 |
-
$quoteCollection = $this->_getStoreQuotes( $from->toString( 'YYYY-MM-dd HH:mm' ), $to->toString( 'YYYY-MM-dd HH:mm' ),
|
76 |
-
|
77 |
if ( $quoteCollection->getSize() ) {
|
78 |
-
Mage::helper( 'ddg' )->log( 'Customer lost baskets : ' . $num . ', from : ' . $from->toString( 'YYYY-MM-dd HH:mm' ) .
|
|
|
79 |
}
|
80 |
|
81 |
//campaign id for customers
|
@@ -121,7 +122,6 @@ class Dotdigitalgroup_Email_Model_Sales_Quote
|
|
121 |
}
|
122 |
}
|
123 |
}
|
124 |
-
|
125 |
}
|
126 |
}
|
127 |
if ($mode == 'all' || $mode == 'guests') {
|
@@ -188,24 +188,24 @@ class Dotdigitalgroup_Email_Model_Sales_Quote
|
|
188 |
}
|
189 |
}
|
190 |
|
191 |
-
|
192 |
{
|
193 |
$store = Mage::app()->getStore($storeId);
|
194 |
return $store->getConfig(constant('self::XML_PATH_LOSTBASKET_CUSTOMER_CAMPAIGN_' . $num));
|
195 |
}
|
196 |
-
|
197 |
{
|
198 |
$store = Mage::app()->getStore($storeId);
|
199 |
return $store->getConfig(constant('self::XML_PATH_LOSTBASKET_GUEST_CAMPAIGN_'. $num));
|
200 |
}
|
201 |
|
202 |
-
|
203 |
{
|
204 |
$store = Mage::app()->getstore($storeId);
|
205 |
return $store->getConfig(constant('self::XML_PATH_LOSTBASKET_CUSTOMER_INTERVAL_' . $num));
|
206 |
}
|
207 |
|
208 |
-
|
209 |
{
|
210 |
$store = Mage::app()->getStore($storeId);
|
211 |
return $store->getConfig(constant('self::XML_PATH_LOSTBASKET_GUEST_INTERVAL_' . $num));
|
@@ -232,7 +232,7 @@ class Dotdigitalgroup_Email_Model_Sales_Quote
|
|
232 |
* @param int $storeId
|
233 |
* @return Mage_Eav_Model_Entity_Collection_Abstract
|
234 |
*/
|
235 |
-
|
236 |
{
|
237 |
$updated = array(
|
238 |
'from' => $from,
|
@@ -243,8 +243,8 @@ class Dotdigitalgroup_Email_Model_Sales_Quote
|
|
243 |
->addFieldToFilter('is_active', 1)
|
244 |
->addFieldToFilter('items_count', array('gt' => 0))
|
245 |
->addFieldToFilter('customer_email', array('neq' => ''))
|
246 |
-
->addFieldToFilter('store_id', $storeId)
|
247 |
-
|
248 |
//guests
|
249 |
if ($guest) {
|
250 |
$salesCollection->addFieldToFilter( 'main_table.customer_id', array( 'null' => true ) );
|
@@ -258,6 +258,7 @@ class Dotdigitalgroup_Email_Model_Sales_Quote
|
|
258 |
$salesCollection = $ruleModel->process(
|
259 |
$salesCollection, Dotdigitalgroup_Email_Model_Rules::ABANDONED, Mage::app()->getStore($storeId)->getWebsiteId()
|
260 |
);
|
|
|
261 |
|
262 |
return $salesCollection;
|
263 |
}
|
@@ -271,7 +272,7 @@ class Dotdigitalgroup_Email_Model_Sales_Quote
|
|
271 |
*
|
272 |
* @return bool
|
273 |
*/
|
274 |
-
|
275 |
|
276 |
$cartLimit = Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_ABANDONED_CART_LIMIT, $storeId);
|
277 |
$locale = Mage::app()->getLocale()->getLocale();
|
72 |
$from->sub('5', Zend_Date::MINUTE);
|
73 |
|
74 |
//active quotes
|
75 |
+
$quoteCollection = $this->_getStoreQuotes( $from->toString( 'YYYY-MM-dd HH:mm' ), $to->toString( 'YYYY-MM-dd HH:mm' ),
|
76 |
+
$guest = false, $storeId );
|
77 |
if ( $quoteCollection->getSize() ) {
|
78 |
+
Mage::helper( 'ddg' )->log( 'Customer lost baskets : ' . $num . ', from : ' . $from->toString( 'YYYY-MM-dd HH:mm' ) .
|
79 |
+
':' . $to->toString( 'YYYY-MM-dd HH:mm' ) );
|
80 |
}
|
81 |
|
82 |
//campaign id for customers
|
122 |
}
|
123 |
}
|
124 |
}
|
|
|
125 |
}
|
126 |
}
|
127 |
if ($mode == 'all' || $mode == 'guests') {
|
188 |
}
|
189 |
}
|
190 |
|
191 |
+
protected function _getLostBasketCustomerCampaignId($num, $storeId)
|
192 |
{
|
193 |
$store = Mage::app()->getStore($storeId);
|
194 |
return $store->getConfig(constant('self::XML_PATH_LOSTBASKET_CUSTOMER_CAMPAIGN_' . $num));
|
195 |
}
|
196 |
+
protected function _getLostBasketGuestCampaignId($num, $storeId)
|
197 |
{
|
198 |
$store = Mage::app()->getStore($storeId);
|
199 |
return $store->getConfig(constant('self::XML_PATH_LOSTBASKET_GUEST_CAMPAIGN_'. $num));
|
200 |
}
|
201 |
|
202 |
+
protected function _getLostBasketCustomerInterval($num, $storeId)
|
203 |
{
|
204 |
$store = Mage::app()->getstore($storeId);
|
205 |
return $store->getConfig(constant('self::XML_PATH_LOSTBASKET_CUSTOMER_INTERVAL_' . $num));
|
206 |
}
|
207 |
|
208 |
+
protected function _getLostBasketGuestIterval($num, $storeId)
|
209 |
{
|
210 |
$store = Mage::app()->getStore($storeId);
|
211 |
return $store->getConfig(constant('self::XML_PATH_LOSTBASKET_GUEST_INTERVAL_' . $num));
|
232 |
* @param int $storeId
|
233 |
* @return Mage_Eav_Model_Entity_Collection_Abstract
|
234 |
*/
|
235 |
+
protected function _getStoreQuotes($from = null, $to = null, $guest = false, $storeId = 0)
|
236 |
{
|
237 |
$updated = array(
|
238 |
'from' => $from,
|
243 |
->addFieldToFilter('is_active', 1)
|
244 |
->addFieldToFilter('items_count', array('gt' => 0))
|
245 |
->addFieldToFilter('customer_email', array('neq' => ''))
|
246 |
+
->addFieldToFilter('store_id', $storeId);
|
247 |
+
|
248 |
//guests
|
249 |
if ($guest) {
|
250 |
$salesCollection->addFieldToFilter( 'main_table.customer_id', array( 'null' => true ) );
|
258 |
$salesCollection = $ruleModel->process(
|
259 |
$salesCollection, Dotdigitalgroup_Email_Model_Rules::ABANDONED, Mage::app()->getStore($storeId)->getWebsiteId()
|
260 |
);
|
261 |
+
$salesCollection->addFieldToFilter('main_table.updated_at', $updated);
|
262 |
|
263 |
return $salesCollection;
|
264 |
}
|
272 |
*
|
273 |
* @return bool
|
274 |
*/
|
275 |
+
protected function _checkCustomerCartLimit($email, $storeId) {
|
276 |
|
277 |
$cartLimit = Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_ABANDONED_CART_LIMIT, $storeId);
|
278 |
$locale = Mage::app()->getLocale()->getLocale();
|
@@ -7,34 +7,34 @@ class Dotdigitalgroup_Email_Model_Sms_Campaign
|
|
7 |
/**
|
8 |
* @var int
|
9 |
*/
|
10 |
-
|
11 |
/**
|
12 |
* @var string
|
13 |
*/
|
14 |
-
|
15 |
/**
|
16 |
* @var string
|
17 |
*/
|
18 |
-
|
19 |
/**
|
20 |
* @var string
|
21 |
*/
|
22 |
-
|
23 |
|
24 |
/**
|
25 |
* @var int
|
26 |
*/
|
27 |
-
|
28 |
|
29 |
/**
|
30 |
* @var array
|
31 |
*/
|
32 |
-
|
33 |
/**
|
34 |
* filter for the variables
|
35 |
* @var array
|
36 |
*/
|
37 |
-
|
38 |
|
39 |
|
40 |
/**
|
7 |
/**
|
8 |
* @var int
|
9 |
*/
|
10 |
+
protected $_storeId;
|
11 |
/**
|
12 |
* @var string
|
13 |
*/
|
14 |
+
protected $_status;
|
15 |
/**
|
16 |
* @var string
|
17 |
*/
|
18 |
+
protected $_customerFirstName;
|
19 |
/**
|
20 |
* @var string
|
21 |
*/
|
22 |
+
protected $_customerTelephone;
|
23 |
|
24 |
/**
|
25 |
* @var int
|
26 |
*/
|
27 |
+
protected $_incrementId;
|
28 |
|
29 |
/**
|
30 |
* @var array
|
31 |
*/
|
32 |
+
protected $_allsms = array(1, 2, 3, 4);
|
33 |
/**
|
34 |
* filter for the variables
|
35 |
* @var array
|
36 |
*/
|
37 |
+
protected $_vars = array('/customer_name/', '/order_number/', '/{{var /', '/}}/');
|
38 |
|
39 |
|
40 |
/**
|
@@ -2,10 +2,10 @@
|
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Wishlist extends Mage_Core_Model_Abstract
|
4 |
{
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
|
10 |
/**
|
11 |
* constructor
|
@@ -91,7 +91,7 @@ class Dotdigitalgroup_Email_Model_Wishlist extends Mage_Core_Model_Abstract
|
|
91 |
return $response;
|
92 |
}
|
93 |
|
94 |
-
|
95 |
{
|
96 |
//reset wishlists
|
97 |
$this->_wishlists = array();
|
@@ -139,7 +139,7 @@ class Dotdigitalgroup_Email_Model_Wishlist extends Mage_Core_Model_Abstract
|
|
139 |
}
|
140 |
}
|
141 |
|
142 |
-
|
143 |
{
|
144 |
$collection = $this->getCollection()
|
145 |
->addFieldToFilter('wishlist_imported', array('null' => true))
|
@@ -150,7 +150,7 @@ class Dotdigitalgroup_Email_Model_Wishlist extends Mage_Core_Model_Abstract
|
|
150 |
return $collection;
|
151 |
}
|
152 |
|
153 |
-
|
154 |
{
|
155 |
$helper = Mage::helper('ddg');
|
156 |
$client = $helper->getWebsiteApiClient($website);
|
@@ -209,7 +209,7 @@ class Dotdigitalgroup_Email_Model_Wishlist extends Mage_Core_Model_Abstract
|
|
209 |
$this->getResource()->setImported($this->_wishlistIds, true);
|
210 |
}
|
211 |
|
212 |
-
|
213 |
{
|
214 |
$collection = $this->getCollection()
|
215 |
->addFieldToFilter('wishlist_modified', 1)
|
2 |
|
3 |
class Dotdigitalgroup_Email_Model_Wishlist extends Mage_Core_Model_Abstract
|
4 |
{
|
5 |
+
protected $_start;
|
6 |
+
protected $_wishlists;
|
7 |
+
protected $_count = 0;
|
8 |
+
protected $_wishlistIds;
|
9 |
|
10 |
/**
|
11 |
* constructor
|
91 |
return $response;
|
92 |
}
|
93 |
|
94 |
+
protected function _exportWishlistForWebsite(Mage_Core_Model_Website $website)
|
95 |
{
|
96 |
//reset wishlists
|
97 |
$this->_wishlists = array();
|
139 |
}
|
140 |
}
|
141 |
|
142 |
+
protected function _getWishlistToImport(Mage_Core_Model_Website $website, $limit = 100)
|
143 |
{
|
144 |
$collection = $this->getCollection()
|
145 |
->addFieldToFilter('wishlist_imported', array('null' => true))
|
150 |
return $collection;
|
151 |
}
|
152 |
|
153 |
+
protected function _exportWishlistForWebsiteInSingle(Mage_Core_Model_Website $website)
|
154 |
{
|
155 |
$helper = Mage::helper('ddg');
|
156 |
$client = $helper->getWebsiteApiClient($website);
|
209 |
$this->getResource()->setImported($this->_wishlistIds, true);
|
210 |
}
|
211 |
|
212 |
+
protected function _getModifiedWishlistToImport(Mage_Core_Model_Website $website, $limit = 100)
|
213 |
{
|
214 |
$collection = $this->getCollection()
|
215 |
->addFieldToFilter('wishlist_modified', 1)
|
@@ -14,7 +14,7 @@ class Dotdigitalgroup_Email_Adminhtml_ConnectorController extends Mage_Adminhtml
|
|
14 |
$redirectUrl = Mage::helper('adminhtml')->getUrl('adminhtml/system_config/edit', array('section' => 'connector_data_mapping'));
|
15 |
|
16 |
if(!$apiModel){
|
17 |
-
Mage::getSingleton('adminhtml/session')->addNotice('Please enable api first.');
|
18 |
}else{
|
19 |
// get all possible datatifileds
|
20 |
$datafields = Mage::getModel('ddg_automation/connector_datafield')->getContactDatafields();
|
@@ -45,7 +45,7 @@ class Dotdigitalgroup_Email_Adminhtml_ConnectorController extends Mage_Adminhtml
|
|
45 |
Mage::getSingleton('adminhtml/session')->addNotice($result['message']);
|
46 |
} else {
|
47 |
Mage::getConfig()->cleanCache();
|
48 |
-
Mage::getSingleton('adminhtml/session')->addSuccess('All Datafields Created And Mapped.');
|
49 |
}
|
50 |
}
|
51 |
|
@@ -384,6 +384,19 @@ class Dotdigitalgroup_Email_Adminhtml_ConnectorController extends Mage_Adminhtml
|
|
384 |
$this->_redirectReferer();
|
385 |
}
|
386 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
387 |
protected function _isAllowed()
|
388 |
{
|
389 |
return Mage::getSingleton('admin/session')->isAllowed('system/config/connector_developer_settings');
|
14 |
$redirectUrl = Mage::helper('adminhtml')->getUrl('adminhtml/system_config/edit', array('section' => 'connector_data_mapping'));
|
15 |
|
16 |
if(!$apiModel){
|
17 |
+
Mage::getSingleton('adminhtml/session')->addNotice(Mage::helper('ddg')->__('Please enable api first.'));
|
18 |
}else{
|
19 |
// get all possible datatifileds
|
20 |
$datafields = Mage::getModel('ddg_automation/connector_datafield')->getContactDatafields();
|
45 |
Mage::getSingleton('adminhtml/session')->addNotice($result['message']);
|
46 |
} else {
|
47 |
Mage::getConfig()->cleanCache();
|
48 |
+
Mage::getSingleton('adminhtml/session')->addSuccess(Mage::helper('ddg')->__('All Datafields Created And Mapped.'));
|
49 |
}
|
50 |
}
|
51 |
|
384 |
$this->_redirectReferer();
|
385 |
}
|
386 |
|
387 |
+
/**
|
388 |
+
* Run Email importer sync.
|
389 |
+
*/
|
390 |
+
public function runimportersyncAction()
|
391 |
+
{
|
392 |
+
$result = Mage::getModel('ddg_automation/cron')->emailImporter();
|
393 |
+
if ($result['message'])
|
394 |
+
Mage::getSingleton('adminhtml/session')->addSuccess($result['message']);
|
395 |
+
|
396 |
+
$this->_redirectReferer();
|
397 |
+
|
398 |
+
}
|
399 |
+
|
400 |
protected function _isAllowed()
|
401 |
{
|
402 |
return Mage::getSingleton('admin/session')->isAllowed('system/config/connector_developer_settings');
|
@@ -1,12 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
class Dotdigitalgroup_Email_Adminhtml_CustomerController extends Mage_Adminhtml_Controller_Action
|
4 |
-
{
|
5 |
-
public function statAction()
|
6 |
-
{
|
7 |
-
// $this->getLayout();
|
8 |
-
// $this->renderLayout();
|
9 |
-
// $block = $this->getLayout()->createBlock('ddg_automation/adminhtml_customer_tab_stats');
|
10 |
-
// echo $block->toHtml();
|
11 |
-
}
|
12 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -19,11 +19,6 @@ class Dotdigitalgroup_Email_Adminhtml_Email_AutomationController extends Mage_Ad
|
|
19 |
$this->renderLayout();
|
20 |
}
|
21 |
|
22 |
-
public function editAction()
|
23 |
-
{
|
24 |
-
$this->_redirect('*/*');
|
25 |
-
}
|
26 |
-
|
27 |
/**
|
28 |
* main grid.
|
29 |
*/
|
19 |
$this->renderLayout();
|
20 |
}
|
21 |
|
|
|
|
|
|
|
|
|
|
|
22 |
/**
|
23 |
* main grid.
|
24 |
*/
|
@@ -28,7 +28,7 @@ class Dotdigitalgroup_Email_Adminhtml_Email_CampaignController extends Mage_Admi
|
|
28 |
public function deleteAction()
|
29 |
{
|
30 |
if ($id = $this->getRequest()->getParam('id')) {
|
31 |
-
$campaign = Mage::getModel('ddg_automation/campaign')->
|
32 |
try {
|
33 |
$campaign->delete();
|
34 |
$this->_getSession()->addSuccess(Mage::helper('ddg')->__('The campaign has been deleted.'));
|
28 |
public function deleteAction()
|
29 |
{
|
30 |
if ($id = $this->getRequest()->getParam('id')) {
|
31 |
+
$campaign = Mage::getModel('ddg_automation/campaign')->setId($id);
|
32 |
try {
|
33 |
$campaign->delete();
|
34 |
$this->_getSession()->addSuccess(Mage::helper('ddg')->__('The campaign has been deleted.'));
|
@@ -47,7 +47,7 @@ class Dotdigitalgroup_Email_Adminhtml_Email_ContactController extends Mage_Admin
|
|
47 |
public function deleteAction()
|
48 |
{
|
49 |
if ($id = $this->getRequest()->getParam('id')) {
|
50 |
-
$contact = Mage::getModel('ddg_automation/contact')->
|
51 |
try {
|
52 |
$contact->delete();
|
53 |
$this->_getSession()->addSuccess(Mage::helper('ddg')->__('The contact has been deleted.'));
|
47 |
public function deleteAction()
|
48 |
{
|
49 |
if ($id = $this->getRequest()->getParam('id')) {
|
50 |
+
$contact = Mage::getModel('ddg_automation/contact')->setId($id);
|
51 |
try {
|
52 |
$contact->delete();
|
53 |
$this->_getSession()->addSuccess(Mage::helper('ddg')->__('The contact has been deleted.'));
|
@@ -35,7 +35,7 @@ class Dotdigitalgroup_Email_Adminhtml_RulesController extends Mage_Adminhtml_Con
|
|
35 |
* @param $options
|
36 |
* @return string
|
37 |
*/
|
38 |
-
|
39 |
{
|
40 |
$block = $this->getLayout()->createBlock('core/html_select');
|
41 |
$block->setOptions($options)
|
@@ -127,4 +127,9 @@ class Dotdigitalgroup_Email_Adminhtml_RulesController extends Mage_Adminhtml_Con
|
|
127 |
$this->getResponse()->clearHeaders()->setHeader('Content-Type', 'application/json')->setBody(Mage::helper('core')->jsonEncode($response));
|
128 |
}
|
129 |
}
|
|
|
|
|
|
|
|
|
|
|
130 |
}
|
35 |
* @param $options
|
36 |
* @return string
|
37 |
*/
|
38 |
+
protected function _getOptionHtml($title, $name, $options)
|
39 |
{
|
40 |
$block = $this->getLayout()->createBlock('core/html_select');
|
41 |
$block->setOptions($options)
|
127 |
$this->getResponse()->clearHeaders()->setHeader('Content-Type', 'application/json')->setBody(Mage::helper('core')->jsonEncode($response));
|
128 |
}
|
129 |
}
|
130 |
+
|
131 |
+
protected function _isAllowed()
|
132 |
+
{
|
133 |
+
return Mage::getSingleton('admin/session')->isAllowed('email_connector/automation_rules');
|
134 |
+
}
|
135 |
}
|
@@ -27,13 +27,13 @@ class Dotdigitalgroup_Email_DynamicContentController extends Dotdigitalgroup_Ema
|
|
27 |
//throw new Exception('TE invoice : order not found: ' . $orderId);
|
28 |
Mage::helper('ddg')->log('order not found: ' . $orderId);
|
29 |
$this->sendResponse();
|
30 |
-
Mage::throwException('Order not found');
|
31 |
}
|
32 |
} else {
|
33 |
//throw new Exception('TE invoice : order_id missing :' . $orderId);
|
34 |
Mage::helper('ddg')->log('order_id missing :' . $orderId);
|
35 |
$this->sendResponse();
|
36 |
-
Mage::throwException('Order id is missing');
|
37 |
}
|
38 |
parent::preDispatch();
|
39 |
}
|
27 |
//throw new Exception('TE invoice : order not found: ' . $orderId);
|
28 |
Mage::helper('ddg')->log('order not found: ' . $orderId);
|
29 |
$this->sendResponse();
|
30 |
+
Mage::throwException(Mage::helper('ddg')->__('Order not found'));
|
31 |
}
|
32 |
} else {
|
33 |
//throw new Exception('TE invoice : order_id missing :' . $orderId);
|
34 |
Mage::helper('ddg')->log('order_id missing :' . $orderId);
|
35 |
$this->sendResponse();
|
36 |
+
Mage::throwException(Mage::helper('ddg')->__('Order id is missing'));
|
37 |
}
|
38 |
parent::preDispatch();
|
39 |
}
|
@@ -78,12 +78,12 @@ class Dotdigitalgroup_Email_EmailController extends Dotdigitalgroup_Email_Respon
|
|
78 |
} else {
|
79 |
Mage::helper('ddg')->log('order not found: ' . $orderId);
|
80 |
$this->sendResponse();
|
81 |
-
Mage::throwException('Order not found');
|
82 |
}
|
83 |
} else {
|
84 |
Mage::helper('ddg')->log('order_id missing :' . $orderId);
|
85 |
$this->sendResponse();
|
86 |
-
Mage::throwException('Order id is missing');
|
87 |
}
|
88 |
|
89 |
|
@@ -171,7 +171,7 @@ class Dotdigitalgroup_Email_EmailController extends Dotdigitalgroup_Email_Respon
|
|
171 |
/**
|
172 |
* process customer basket
|
173 |
*/
|
174 |
-
|
175 |
{
|
176 |
$customerSession = Mage::getSingleton('customer/session');
|
177 |
$configCartUrl = $this->_quote->getStore()->getWebsite()->getConfig(
|
@@ -220,7 +220,7 @@ class Dotdigitalgroup_Email_EmailController extends Dotdigitalgroup_Email_Respon
|
|
220 |
/**
|
221 |
* process guest basket
|
222 |
*/
|
223 |
-
|
224 |
{
|
225 |
$checkoutSession = Mage::getSingleton('checkout/session');
|
226 |
if($checkoutSession->getQuote() && $checkoutSession->getQuote()->hasItems()){
|
@@ -244,7 +244,7 @@ class Dotdigitalgroup_Email_EmailController extends Dotdigitalgroup_Email_Respon
|
|
244 |
/**
|
245 |
* check missing items from current quote and add
|
246 |
*/
|
247 |
-
|
248 |
{
|
249 |
$checkoutSession = Mage::getSingleton('checkout/session');
|
250 |
$currentQuote = $checkoutSession->getQuote();
|
@@ -268,7 +268,7 @@ class Dotdigitalgroup_Email_EmailController extends Dotdigitalgroup_Email_Respon
|
|
268 |
/**
|
269 |
* load quote and replace in session#1114
|
270 |
*/
|
271 |
-
|
272 |
{
|
273 |
$checkoutSession = Mage::getSingleton('checkout/session');
|
274 |
$quote = Mage::getSingleton('sales/quote')->load($this->_quote->getId());
|
78 |
} else {
|
79 |
Mage::helper('ddg')->log('order not found: ' . $orderId);
|
80 |
$this->sendResponse();
|
81 |
+
Mage::throwException(Mage::helper('ddg')->__('Order not found'));
|
82 |
}
|
83 |
} else {
|
84 |
Mage::helper('ddg')->log('order_id missing :' . $orderId);
|
85 |
$this->sendResponse();
|
86 |
+
Mage::throwException(Mage::helper('ddg')->__('Order id is missing'));
|
87 |
}
|
88 |
|
89 |
|
171 |
/**
|
172 |
* process customer basket
|
173 |
*/
|
174 |
+
protected function _handleCustomerBasket()
|
175 |
{
|
176 |
$customerSession = Mage::getSingleton('customer/session');
|
177 |
$configCartUrl = $this->_quote->getStore()->getWebsite()->getConfig(
|
220 |
/**
|
221 |
* process guest basket
|
222 |
*/
|
223 |
+
protected function _handleGuestBasket()
|
224 |
{
|
225 |
$checkoutSession = Mage::getSingleton('checkout/session');
|
226 |
if($checkoutSession->getQuote() && $checkoutSession->getQuote()->hasItems()){
|
244 |
/**
|
245 |
* check missing items from current quote and add
|
246 |
*/
|
247 |
+
protected function _checkMissingAndAdd()
|
248 |
{
|
249 |
$checkoutSession = Mage::getSingleton('checkout/session');
|
250 |
$currentQuote = $checkoutSession->getQuote();
|
268 |
/**
|
269 |
* load quote and replace in session#1114
|
270 |
*/
|
271 |
+
protected function _loadAndReplace()
|
272 |
{
|
273 |
$checkoutSession = Mage::getSingleton('checkout/session');
|
274 |
$quote = Mage::getSingleton('sales/quote')->load($this->_quote->getId());
|
@@ -16,7 +16,7 @@ class Dotdigitalgroup_Email_ResponseController extends Mage_Core_Controller_Fron
|
|
16 |
$auth = Mage::helper('ddg')->auth($this->getRequest()->getParam('code'));
|
17 |
if (!$auth){
|
18 |
$this->sendResponse();
|
19 |
-
Mage::throwException('Authentication failed!');
|
20 |
}
|
21 |
}
|
22 |
|
16 |
$auth = Mage::helper('ddg')->auth($this->getRequest()->getParam('code'));
|
17 |
if (!$auth){
|
18 |
$this->sendResponse();
|
19 |
+
Mage::throwException(Mage::helper('ddg')->__('Authentication failed!'));
|
20 |
}
|
21 |
}
|
22 |
|
@@ -60,7 +60,7 @@
|
|
60 |
<action>adminhtml/email_importer</action>
|
61 |
</email_connector_importer>
|
62 |
<email_connector_campaign translate="title">
|
63 |
-
<title>Email
|
64 |
<sort_order>80</sort_order>
|
65 |
<action>adminhtml/email_campaign</action>
|
66 |
</email_connector_campaign>
|
60 |
<action>adminhtml/email_importer</action>
|
61 |
</email_connector_importer>
|
62 |
<email_connector_campaign translate="title">
|
63 |
+
<title>Email Status</title>
|
64 |
<sort_order>80</sort_order>
|
65 |
<action>adminhtml/email_campaign</action>
|
66 |
</email_connector_campaign>
|
@@ -2,7 +2,7 @@
|
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Dotdigitalgroup_Email>
|
5 |
-
<version>5.
|
6 |
</Dotdigitalgroup_Email>
|
7 |
</modules>
|
8 |
<frontend>
|
@@ -132,11 +132,6 @@
|
|
132 |
<ddg_automation>
|
133 |
<class>Dotdigitalgroup_Email_Block</class>
|
134 |
</ddg_automation>
|
135 |
-
<adminhtml>
|
136 |
-
<rewrite>
|
137 |
-
<system_email_template_edit>Dotdigitalgroup_Email_Block_System_Email_Template_Edit</system_email_template_edit>
|
138 |
-
</rewrite>
|
139 |
-
</adminhtml>
|
140 |
</blocks>
|
141 |
<events>
|
142 |
<admin_system_config_changed_section_connector_api_credentials>
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Dotdigitalgroup_Email>
|
5 |
+
<version>5.2.0</version>
|
6 |
</Dotdigitalgroup_Email>
|
7 |
</modules>
|
8 |
<frontend>
|
132 |
<ddg_automation>
|
133 |
<class>Dotdigitalgroup_Email_Block</class>
|
134 |
</ddg_automation>
|
|
|
|
|
|
|
|
|
|
|
135 |
</blocks>
|
136 |
<events>
|
137 |
<admin_system_config_changed_section_connector_api_credentials>
|
@@ -35,8 +35,6 @@ sql:
|
|
35 |
locale:
|
36 |
- en_US#Dotdigitalgroup_Email.csv
|
37 |
block:
|
38 |
-
- Adminhtml#Campaign#Edit#Form.php
|
39 |
-
- Adminhtml#Campaign#Edit.php
|
40 |
- Adminhtml#Campaign#Grid.php
|
41 |
- Adminhtml#Column#Renderer#Imported.php
|
42 |
- Adminhtml#Column#Renderer#Status.php
|
@@ -71,7 +69,6 @@ block:
|
|
71 |
- Adminhtml#System#Advanced#Runsubscribersync.php
|
72 |
- Adminhtml#System#Advanced#Runwishlistsync.php
|
73 |
- Adminhtml#System#Advanced#Setupdatafields.php
|
74 |
-
- Adminhtml#System#Advanced#Suppressedcontacts.php
|
75 |
- Adminhtml#System#Automation#Connect.php
|
76 |
- Adminhtml#System#Config#Addressbook.php
|
77 |
- Adminhtml#System#Config#Datafield.php
|
@@ -139,12 +136,7 @@ block:
|
|
139 |
- Order#Creditmemo.php
|
140 |
- Order#Invoice.php
|
141 |
- Order#Shipping.php
|
142 |
-
- Recommended#Bestsellers.php
|
143 |
-
- Recommended#Mostviewed.php
|
144 |
- Recommended#Products.php
|
145 |
-
- Recommended#Push.php
|
146 |
-
- Recommended#Quoteproducts.php
|
147 |
-
- Recommended#Recentlyviewed.php
|
148 |
- Basket.php
|
149 |
- Coupon.php
|
150 |
- Order.php
|
@@ -154,7 +146,6 @@ helper:
|
|
154 |
- Data.php
|
155 |
- File.php
|
156 |
- Recommended.php
|
157 |
-
- Review.php
|
158 |
model:
|
159 |
- Abstract#Rest.php
|
160 |
- Adminhtml#Dashboard#Tabs#Analysis#Abandoned.php
|
@@ -238,27 +229,9 @@ design:
|
|
238 |
- adminhtml#default#default#template#connector#system#config#createdatafield.phtml
|
239 |
- frontend#base#default#layout#connector.xml
|
240 |
- frontend#base#default#layout#mailcheck.xml
|
241 |
-
- frontend#base#default#template#connector#creditmemo#items.phtml
|
242 |
-
- frontend#base#default#template#connector#creditmemo#new.phtml
|
243 |
-
- frontend#base#default#template#connector#creditmemo#newguest.phtml
|
244 |
-
- frontend#base#default#template#connector#creditmemo#update.phtml
|
245 |
-
- frontend#base#default#template#connector#creditmemo#updateguest.phtml
|
246 |
-
- frontend#base#default#template#connector#invoice#new.phtml
|
247 |
-
- frontend#base#default#template#connector#invoice#newguest.phtml
|
248 |
-
- frontend#base#default#template#connector#invoice#update.phtml
|
249 |
-
- frontend#base#default#template#connector#invoice#updateguest.phtml
|
250 |
-
- frontend#base#default#template#connector#order#items.phtml
|
251 |
-
- frontend#base#default#template#connector#order#new.phtml
|
252 |
-
- frontend#base#default#template#connector#order#newguest.phtml
|
253 |
-
- frontend#base#default#template#connector#order#update.phtml
|
254 |
-
- frontend#base#default#template#connector#order#updateguest.phtml
|
255 |
- frontend#base#default#template#connector#product#list.phtml
|
256 |
- frontend#base#default#template#connector#product#nosto.phtml
|
257 |
- frontend#base#default#template#connector#product#price.phtml
|
258 |
-
- frontend#base#default#template#connector#shipping#new.phtml
|
259 |
-
- frontend#base#default#template#connector#shipping#newguest.phtml
|
260 |
-
- frontend#base#default#template#connector#shipping#update.phtml
|
261 |
-
- frontend#base#default#template#connector#shipping#updateguest.phtml
|
262 |
- frontend#base#default#template#connector#basket.phtml
|
263 |
- frontend#base#default#template#connector#coupon.phtml
|
264 |
- frontend#base#default#template#connector#email_capture.phtml
|
35 |
locale:
|
36 |
- en_US#Dotdigitalgroup_Email.csv
|
37 |
block:
|
|
|
|
|
38 |
- Adminhtml#Campaign#Grid.php
|
39 |
- Adminhtml#Column#Renderer#Imported.php
|
40 |
- Adminhtml#Column#Renderer#Status.php
|
69 |
- Adminhtml#System#Advanced#Runsubscribersync.php
|
70 |
- Adminhtml#System#Advanced#Runwishlistsync.php
|
71 |
- Adminhtml#System#Advanced#Setupdatafields.php
|
|
|
72 |
- Adminhtml#System#Automation#Connect.php
|
73 |
- Adminhtml#System#Config#Addressbook.php
|
74 |
- Adminhtml#System#Config#Datafield.php
|
136 |
- Order#Creditmemo.php
|
137 |
- Order#Invoice.php
|
138 |
- Order#Shipping.php
|
|
|
|
|
139 |
- Recommended#Products.php
|
|
|
|
|
|
|
140 |
- Basket.php
|
141 |
- Coupon.php
|
142 |
- Order.php
|
146 |
- Data.php
|
147 |
- File.php
|
148 |
- Recommended.php
|
|
|
149 |
model:
|
150 |
- Abstract#Rest.php
|
151 |
- Adminhtml#Dashboard#Tabs#Analysis#Abandoned.php
|
229 |
- adminhtml#default#default#template#connector#system#config#createdatafield.phtml
|
230 |
- frontend#base#default#layout#connector.xml
|
231 |
- frontend#base#default#layout#mailcheck.xml
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
232 |
- frontend#base#default#template#connector#product#list.phtml
|
233 |
- frontend#base#default#template#connector#product#nosto.phtml
|
234 |
- frontend#base#default#template#connector#product#price.phtml
|
|
|
|
|
|
|
|
|
235 |
- frontend#base#default#template#connector#basket.phtml
|
236 |
- frontend#base#default#template#connector#coupon.phtml
|
237 |
- frontend#base#default#template#connector#email_capture.phtml
|
@@ -1381,7 +1381,7 @@
|
|
1381 |
</fields>
|
1382 |
</order_status_automation>
|
1383 |
<review_settings translate="label" module="ddg">
|
1384 |
-
<label>Review Settings</label>
|
1385 |
<frontend_type>text</frontend_type>
|
1386 |
<sort_order>300</sort_order>
|
1387 |
<show_in_default>1</show_in_default>
|
@@ -1397,6 +1397,7 @@
|
|
1397 |
<show_in_default>1</show_in_default>
|
1398 |
<show_in_website>1</show_in_website>
|
1399 |
<show_in_store>0</show_in_store>
|
|
|
1400 |
</enabled>
|
1401 |
<status translate="label" module="ddg">
|
1402 |
<label>Order Status</label>
|
@@ -1406,6 +1407,7 @@
|
|
1406 |
<show_in_default>1</show_in_default>
|
1407 |
<show_in_website>1</show_in_website>
|
1408 |
<show_in_store>0</show_in_store>
|
|
|
1409 |
</status>
|
1410 |
<delay>
|
1411 |
<label>Delay Period (Days)</label>
|
@@ -1415,18 +1417,8 @@
|
|
1415 |
<show_in_default>1</show_in_default>
|
1416 |
<show_in_website>1</show_in_website>
|
1417 |
<show_in_store>0</show_in_store>
|
1418 |
-
<comment><![CDATA[The system will
|
1419 |
</delay>
|
1420 |
-
<new_product>
|
1421 |
-
<label>New Product Only</label>
|
1422 |
-
<sort_order>40</sort_order>
|
1423 |
-
<frontend_type>select</frontend_type>
|
1424 |
-
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1425 |
-
<show_in_default>1</show_in_default>
|
1426 |
-
<show_in_website>1</show_in_website>
|
1427 |
-
<show_in_store>0</show_in_store>
|
1428 |
-
<comment><![CDATA[Only include not purchased before products only.]]></comment>
|
1429 |
-
</new_product>
|
1430 |
<campaign>
|
1431 |
<label>Campaign To Send</label>
|
1432 |
<sort_order>50</sort_order>
|
@@ -3065,12 +3057,21 @@
|
|
3065 |
<catalog_sync tranlate="label comment" module="ddg">
|
3066 |
<label>Catalog Sync</label>
|
3067 |
<frontend_model>ddg_automation/adminhtml_system_advanced_runcatalogsync</frontend_model>
|
3068 |
-
<sort_order>
|
3069 |
<show_in_default>1</show_in_default>
|
3070 |
<show_in_website>1</show_in_website>
|
3071 |
<show_in_store>0</show_in_store>
|
3072 |
<comment><![CDATA[Run the catalog sync manually.]]></comment>
|
3073 |
</catalog_sync>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3074 |
<actions_title translate="label" module="ddg">
|
3075 |
<label>Reset Sync Options</label>
|
3076 |
<frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
|
1381 |
</fields>
|
1382 |
</order_status_automation>
|
1383 |
<review_settings translate="label" module="ddg">
|
1384 |
+
<label>Review Reminder Settings</label>
|
1385 |
<frontend_type>text</frontend_type>
|
1386 |
<sort_order>300</sort_order>
|
1387 |
<show_in_default>1</show_in_default>
|
1397 |
<show_in_default>1</show_in_default>
|
1398 |
<show_in_website>1</show_in_website>
|
1399 |
<show_in_store>0</show_in_store>
|
1400 |
+
<comment><![CDATA[Enable cronjob to send the product reminder email campaigns.]]></comment>
|
1401 |
</enabled>
|
1402 |
<status translate="label" module="ddg">
|
1403 |
<label>Order Status</label>
|
1407 |
<show_in_default>1</show_in_default>
|
1408 |
<show_in_website>1</show_in_website>
|
1409 |
<show_in_store>0</show_in_store>
|
1410 |
+
<comment><![CDATA[Sends an email with above order status.]]></comment>
|
1411 |
</status>
|
1412 |
<delay>
|
1413 |
<label>Delay Period (Days)</label>
|
1417 |
<show_in_default>1</show_in_default>
|
1418 |
<show_in_website>1</show_in_website>
|
1419 |
<show_in_store>0</show_in_store>
|
1420 |
+
<comment><![CDATA[The system will delay the send of the above mentioned amount of days.]]></comment>
|
1421 |
</delay>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1422 |
<campaign>
|
1423 |
<label>Campaign To Send</label>
|
1424 |
<sort_order>50</sort_order>
|
3057 |
<catalog_sync tranlate="label comment" module="ddg">
|
3058 |
<label>Catalog Sync</label>
|
3059 |
<frontend_model>ddg_automation/adminhtml_system_advanced_runcatalogsync</frontend_model>
|
3060 |
+
<sort_order>58</sort_order>
|
3061 |
<show_in_default>1</show_in_default>
|
3062 |
<show_in_website>1</show_in_website>
|
3063 |
<show_in_store>0</show_in_store>
|
3064 |
<comment><![CDATA[Run the catalog sync manually.]]></comment>
|
3065 |
</catalog_sync>
|
3066 |
+
<importer_sync translate="label comment" module="ddg">
|
3067 |
+
<label>Importer Sync</label>
|
3068 |
+
<frontend_model>ddg_automation/adminhtml_system_advanced_runimportersync</frontend_model>
|
3069 |
+
<sort_order>59</sort_order>
|
3070 |
+
<show_in_default>1</show_in_default>
|
3071 |
+
<show_in_website>1</show_in_website>
|
3072 |
+
<show_in_store>0</show_in_store>
|
3073 |
+
<comment><![CDATA[Run the importer sync manually.]]></comment>
|
3074 |
+
</importer_sync>
|
3075 |
<actions_title translate="label" module="ddg">
|
3076 |
<label>Reset Sync Options</label>
|
3077 |
<frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
|
@@ -69,7 +69,7 @@ $table->addColumn('email_contact_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, a
|
|
69 |
'nullable' => true,
|
70 |
), 'Is Suppressed')
|
71 |
->addIndex($this->getIdxName($contactTable, array('email_contact_id')),
|
72 |
-
|
73 |
->addIndex($this->getIdxName($contactTable, array('is_guest')),
|
74 |
array('is_guest'))
|
75 |
->addIndex($this->getIdxName($contactTable, array('customer_id')),
|
@@ -86,7 +86,6 @@ $table->addColumn('email_contact_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, a
|
|
86 |
array('subscriber_imported'))
|
87 |
->addIndex($this->getIdxName($contactTable, array('suppressed')),
|
88 |
array('suppressed'))
|
89 |
-
|
90 |
->addForeignKey(
|
91 |
$installer->getFkName($contactTable, 'website_id', 'core/website', 'website_id'),
|
92 |
'website_id', $installer->getTable('core/website'), 'website_id',
|
69 |
'nullable' => true,
|
70 |
), 'Is Suppressed')
|
71 |
->addIndex($this->getIdxName($contactTable, array('email_contact_id')),
|
72 |
+
array('email_contact_id'))
|
73 |
->addIndex($this->getIdxName($contactTable, array('is_guest')),
|
74 |
array('is_guest'))
|
75 |
->addIndex($this->getIdxName($contactTable, array('customer_id')),
|
86 |
array('subscriber_imported'))
|
87 |
->addIndex($this->getIdxName($contactTable, array('suppressed')),
|
88 |
array('suppressed'))
|
|
|
89 |
->addForeignKey(
|
90 |
$installer->getFkName($contactTable, 'website_id', 'core/website', 'website_id'),
|
91 |
'website_id', $installer->getTable('core/website'), 'website_id',
|
@@ -585,10 +585,10 @@ $installer->getConnection()->createTable($table);
|
|
585 |
|
586 |
//wishlist populate
|
587 |
$select = $installer->getConnection()->select()
|
588 |
-
|
589 |
-
|
590 |
-
|
591 |
-
|
592 |
array('ce' => $installer->getTable('customer_entity')),
|
593 |
"wishlist.customer_id = ce.entity_id",
|
594 |
array('store_id')
|
@@ -652,13 +652,13 @@ $installer->getConnection()->createTable($table);
|
|
652 |
|
653 |
//populate quote table
|
654 |
$select = $installer->getConnection()->select()
|
655 |
-
|
656 |
-
|
657 |
-
|
658 |
-
|
659 |
-
|
660 |
-
|
661 |
-
|
662 |
|
663 |
$insertArray = array('quote_id', 'store_id', 'customer_id', 'created_at');
|
664 |
$sqlQuery = $select->insertFromSelect($quoteTable, $insertArray, false);
|
585 |
|
586 |
//wishlist populate
|
587 |
$select = $installer->getConnection()->select()
|
588 |
+
->from(
|
589 |
+
array('wishlist' => $installer->getTable('wishlist/wishlist')),
|
590 |
+
array('wishlist_id', 'customer_id', 'created_at' => 'updated_at')
|
591 |
+
)->joinLeft(
|
592 |
array('ce' => $installer->getTable('customer_entity')),
|
593 |
"wishlist.customer_id = ce.entity_id",
|
594 |
array('store_id')
|
652 |
|
653 |
//populate quote table
|
654 |
$select = $installer->getConnection()->select()
|
655 |
+
->from(
|
656 |
+
$installer->getTable('sales/quote'),
|
657 |
+
array('quote_id' => 'entity_id', 'store_id', 'customer_id', 'created_at')
|
658 |
+
)
|
659 |
+
->where('customer_id !=?', NULL )
|
660 |
+
->where('is_active =?', 1 )
|
661 |
+
->where('items_count >?', 0 );
|
662 |
|
663 |
$insertArray = array('quote_id', 'store_id', 'customer_id', 'created_at');
|
664 |
$sqlQuery = $select->insertFromSelect($quoteTable, $insertArray, false);
|
@@ -977,55 +977,54 @@ $table->addColumn('id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
|
|
977 |
'identity' => true,
|
978 |
'unsigned' => true,
|
979 |
'nullable' => false
|
980 |
-
), 'Primary Key')
|
981 |
-
|
982 |
-
|
983 |
-
|
984 |
-
|
985 |
-
|
986 |
-
|
987 |
-
|
988 |
-
|
989 |
-
|
990 |
-
|
991 |
-
|
992 |
-
|
993 |
-
|
994 |
-
|
995 |
-
|
996 |
-
|
997 |
-
|
998 |
-
|
999 |
-
|
1000 |
-
|
1001 |
-
|
1002 |
-
|
1003 |
-
|
1004 |
-
|
1005 |
-
|
1006 |
-
|
1007 |
-
|
1008 |
-
|
1009 |
-
|
1010 |
-
|
1011 |
-
|
1012 |
-
|
1013 |
-
|
1014 |
-
|
1015 |
-
|
1016 |
-
|
1017 |
-
|
1018 |
-
|
1019 |
-
|
1020 |
-
|
1021 |
-
|
1022 |
-
|
1023 |
-
|
1024 |
-
|
1025 |
-
|
1026 |
-
|
1027 |
-
|
1028 |
-
->setComment('Automation Status');
|
1029 |
$installer->getConnection()->createTable($table);
|
1030 |
|
1031 |
|
977 |
'identity' => true,
|
978 |
'unsigned' => true,
|
979 |
'nullable' => false
|
980 |
+
), 'Primary Key')
|
981 |
+
->addColumn('automation_type', Varien_Db_Ddl_Table::TYPE_VARCHAR, 255, array(
|
982 |
+
'nullable' => true,
|
983 |
+
), 'Automation Type')
|
984 |
+
->addColumn('store_name', Varien_Db_Ddl_Table::TYPE_VARCHAR, 255, array(
|
985 |
+
'nullable' => true,
|
986 |
+
), 'Automation Type')
|
987 |
+
->addColumn('enrolment_status', Varien_Db_Ddl_Table::TYPE_VARCHAR, 255, array(
|
988 |
+
'nullable' => false,
|
989 |
+
), 'Entrolment Status')
|
990 |
+
->addColumn('email', Varien_Db_Ddl_Table::TYPE_VARCHAR, 255, array(
|
991 |
+
'nullable' => true,
|
992 |
+
), 'Email')
|
993 |
+
->addColumn('type_id', Varien_Db_Ddl_Table::TYPE_VARCHAR, 255, array(
|
994 |
+
'nullable' => true,
|
995 |
+
), 'Type ID')
|
996 |
+
->addColumn('program_id', Varien_Db_Ddl_Table::TYPE_VARCHAR, 255, array(
|
997 |
+
'nullable' => true,
|
998 |
+
), 'Program ID')
|
999 |
+
->addColumn('website_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
|
1000 |
+
'unsigned' => true,
|
1001 |
+
'nullable' => false,
|
1002 |
+
), 'Website Id')
|
1003 |
+
->addColumn('message', Varien_Db_Ddl_Table::TYPE_VARCHAR, 255, array(
|
1004 |
+
'nullable' => false,
|
1005 |
+
), 'Message')
|
1006 |
+
->addColumn('created_at', Varien_Db_Ddl_Table::TYPE_TIMESTAMP, null, array(
|
1007 |
+
), 'Creation Time')
|
1008 |
+
->addColumn('updated_at', Varien_Db_Ddl_Table::TYPE_TIMESTAMP, null, array(
|
1009 |
+
), 'Update Time')
|
1010 |
+
->addIndex($installer->getIdxName($automationTable, array('automation_type')),
|
1011 |
+
array('automation_type'))->addIndex($installer->getIdxName($automationTable, array('enrolment_status')),
|
1012 |
+
array('enrolment_status'))
|
1013 |
+
->addIndex($installer->getIdxName($automationTable, array('type_id')),
|
1014 |
+
array('type_id'))
|
1015 |
+
->addIndex($installer->getIdxName($automationTable, array('email')),
|
1016 |
+
array('email'))
|
1017 |
+
->addIndex($installer->getIdxName($automationTable, array('program_id')),
|
1018 |
+
array('program_id'))
|
1019 |
+
->addIndex($installer->getIdxName($automationTable, array('message')),
|
1020 |
+
array('message'))
|
1021 |
+
->addIndex($installer->getIdxName($automationTable, array('created_at')),
|
1022 |
+
array('created_at'))
|
1023 |
+
->addIndex($installer->getIdxName($automationTable, array('updated_at')),
|
1024 |
+
array('updated_at'))
|
1025 |
+
->addIndex($installer->getIdxName($automationTable, array('website_id')),
|
1026 |
+
array('website_id'))
|
1027 |
+
->setComment('Automation Status');
|
|
|
1028 |
$installer->getConnection()->createTable($table);
|
1029 |
|
1030 |
|
@@ -20,7 +20,8 @@ $installer->run("
|
|
20 |
|
21 |
$installer->run("
|
22 |
ALTER TABLE `{$this->getTable('email_contact')}`
|
23 |
-
ADD CONSTRAINT `FK_EMAIL_CONTACT_WEBSITE_ID_CORE_WEBSITE_WEBSITE_ID` FOREIGN KEY (`website_id`) REFERENCES `{$installer->getTable('core_website')}`
|
|
|
24 |
|
25 |
");
|
26 |
|
20 |
|
21 |
$installer->run("
|
22 |
ALTER TABLE `{$this->getTable('email_contact')}`
|
23 |
+
ADD CONSTRAINT `FK_EMAIL_CONTACT_WEBSITE_ID_CORE_WEBSITE_WEBSITE_ID` FOREIGN KEY (`website_id`) REFERENCES `{$installer->getTable('core_website')}`
|
24 |
+
(`website_id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
25 |
|
26 |
");
|
27 |
|
@@ -131,10 +131,10 @@ $installer->getConnection()->createTable($table);
|
|
131 |
|
132 |
//wishlist populate
|
133 |
$select = $installer->getConnection()->select()
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
array('ce' => $installer->getTable('customer_entity')),
|
139 |
"wishlist.customer_id = ce.entity_id",
|
140 |
array('store_id')
|
131 |
|
132 |
//wishlist populate
|
133 |
$select = $installer->getConnection()->select()
|
134 |
+
->from(
|
135 |
+
array('wishlist' => $installer->getTable('wishlist/wishlist')),
|
136 |
+
array('wishlist_id', 'customer_id', 'created_at' => 'updated_at')
|
137 |
+
)->joinLeft(
|
138 |
array('ce' => $installer->getTable('customer_entity')),
|
139 |
"wishlist.customer_id = ce.entity_id",
|
140 |
array('store_id')
|
@@ -15,15 +15,16 @@ if (Mage::helper('ddg')->isEnterprise()) {
|
|
15 |
//customer segment table
|
16 |
$segmentTable = $installer->getTable( 'enterprise_customersegment/customer' );
|
17 |
//add additional column with segment ids
|
18 |
-
$installer->getConnection()
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
//update contact table with customer segment ids
|
25 |
$result = $installer->run( "update`{$contactTable}` c,(select customer_id, website_id, group_concat(`segment_id` separator ',') as segmentids
|
26 |
-
from `{$segmentTable}` group by customer_id) as s set c.segment_ids = segmentids, c.email_imported = null
|
|
|
27 |
|
28 |
}
|
29 |
|
15 |
//customer segment table
|
16 |
$segmentTable = $installer->getTable( 'enterprise_customersegment/customer' );
|
17 |
//add additional column with segment ids
|
18 |
+
$installer->getConnection()
|
19 |
+
->addColumn(
|
20 |
+
$contactTable,
|
21 |
+
'segment_ids',
|
22 |
+
'mediumtext'
|
23 |
+
);
|
24 |
//update contact table with customer segment ids
|
25 |
$result = $installer->run( "update`{$contactTable}` c,(select customer_id, website_id, group_concat(`segment_id` separator ',') as segmentids
|
26 |
+
from `{$segmentTable}` group by customer_id) as s set c.segment_ids = segmentids, c.email_imported = null
|
27 |
+
WHERE s.customer_id= c.customer_id and s.website_id = c.website_id");
|
28 |
|
29 |
}
|
30 |
|
@@ -13,10 +13,10 @@ if ($installer->getConnection()->isTableExists($automationTable)) {
|
|
13 |
}
|
14 |
$table = $installer->getConnection()->newTable($automationTable);
|
15 |
$table->addColumn('id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
), 'Primary Key')
|
21 |
->addColumn('automation_type', Varien_Db_Ddl_Table::TYPE_VARCHAR, 255, array(
|
22 |
'nullable' => true,
|
@@ -48,9 +48,9 @@ $table->addColumn('id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
|
|
48 |
->addColumn('updated_at', Varien_Db_Ddl_Table::TYPE_TIMESTAMP, null, array(
|
49 |
), 'Update Time')
|
50 |
->addIndex($this->getIdxName($automationTable, array('automation_type')),
|
51 |
-
|
52 |
->addIndex($this->getIdxName($automationTable, array('enrolment_status')),
|
53 |
-
|
54 |
->setComment('Automation Status');
|
55 |
$installer->getConnection()->createTable($table);
|
56 |
|
13 |
}
|
14 |
$table = $installer->getConnection()->newTable($automationTable);
|
15 |
$table->addColumn('id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
|
16 |
+
'primary' => true,
|
17 |
+
'identity' => true,
|
18 |
+
'unsigned' => true,
|
19 |
+
'nullable' => false
|
20 |
), 'Primary Key')
|
21 |
->addColumn('automation_type', Varien_Db_Ddl_Table::TYPE_VARCHAR, 255, array(
|
22 |
'nullable' => true,
|
48 |
->addColumn('updated_at', Varien_Db_Ddl_Table::TYPE_TIMESTAMP, null, array(
|
49 |
), 'Update Time')
|
50 |
->addIndex($this->getIdxName($automationTable, array('automation_type')),
|
51 |
+
array('automation_type'))
|
52 |
->addIndex($this->getIdxName($automationTable, array('enrolment_status')),
|
53 |
+
array('enrolment_status'))
|
54 |
->setComment('Automation Status');
|
55 |
$installer->getConnection()->createTable($table);
|
56 |
|
@@ -44,4 +44,4 @@
|
|
44 |
</div>
|
45 |
<?php else: ?>
|
46 |
<strong><?php echo "No activity found"; ?></strong>
|
47 |
-
<?php endif;
|
44 |
</div>
|
45 |
<?php else: ?>
|
46 |
<strong><?php echo "No activity found"; ?></strong>
|
47 |
+
<?php endif;
|
@@ -1,9 +1,9 @@
|
|
1 |
<?php if( sizeof($this->getTotals()) > 0 ): ?>
|
2 |
-
<?php foreach( $this->getTotals() as $
|
3 |
<div class="entry-edit" style="width: 400px">
|
4 |
-
<div class="entry-edit-head"><h4><?php echo $
|
5 |
<fieldset class="a-center bold">
|
6 |
-
<span class="nowrap" style="font-size:18px;color:#EA7601;"><?php echo $
|
7 |
</fieldset>
|
8 |
</div>
|
9 |
<?php endforeach; ?>
|
1 |
<?php if( sizeof($this->getTotals()) > 0 ): ?>
|
2 |
+
<?php foreach( $this->getTotals() as $total ): ?>
|
3 |
<div class="entry-edit" style="width: 400px">
|
4 |
+
<div class="entry-edit-head"><h4><?php echo $total['label'] ?></h4></div>
|
5 |
<fieldset class="a-center bold">
|
6 |
+
<span class="nowrap" style="font-size:18px;color:#EA7601;"><?php echo $total['value'] ?><span style="font-size:14px; color:#686868;"><?php echo $total['decimals'] ?></span></span>
|
7 |
</fieldset>
|
8 |
</div>
|
9 |
<?php endforeach; ?>
|
@@ -3,7 +3,8 @@
|
|
3 |
</div>
|
4 |
|
5 |
<div style="border: 4px solid #dfdfdf; overflow: scroll; height: 500px; padding: 5px;">
|
6 |
-
<div id="log_data" style="width:100%;height:500px;overflow:auto;margin:0px;padding:3px;background:black;color:#2EC029;
|
|
|
7 |
<?php echo nl2br(Mage::helper('ddg')->getLogFileContent()); ?>
|
8 |
</div>
|
9 |
</div>
|
3 |
</div>
|
4 |
|
5 |
<div style="border: 4px solid #dfdfdf; overflow: scroll; height: 500px; padding: 5px;">
|
6 |
+
<div id="log_data" style="width:100%;height:500px;overflow:auto;margin:0px;padding:3px;background:black;color:#2EC029;
|
7 |
+
font:normal 11px Lucida Console, Courier New, serif;">
|
8 |
<?php echo nl2br(Mage::helper('ddg')->getLogFileContent()); ?>
|
9 |
</div>
|
10 |
</div>
|
@@ -1,7 +1,7 @@
|
|
1 |
<div class="content-header">
|
2 |
<h3 class="icon-head head-newsletter-report"><?php echo $this->getTabTitle(); ?></h3>
|
3 |
</div>
|
4 |
-
<?php foreach ( $this->getCheckpoints() as $key => $
|
5 |
<?php $method = $this->getFormatedMethodName($key);
|
6 |
|
7 |
if (is_callable(array($this, $method))) {
|
@@ -19,15 +19,15 @@
|
|
19 |
<div class="entry-edit connector-fieldset-entry">
|
20 |
<div class="entry-edit-head collapseable ">
|
21 |
|
22 |
-
<a id="<?php echo $key;?>-head" class="<?php echo $data->getStyle();?>" href="#" onclick="Fieldset.toggleCollapse('<?php echo $key;?>',
|
23 |
-
|
24 |
|
25 |
</div>
|
26 |
<input id="<?php echo $key;?>-state" name="config_state[<?php echo $key ;?>]" type="hidden" value="<?php echo $collapsable;?>">
|
27 |
|
28 |
<fieldset class="collapseable" id="<?php echo $key;?>">
|
29 |
|
30 |
-
<legend><?php echo Mage::helper('ddg')->__($
|
31 |
<span><?php echo $data->getTitle();?></span><span class="<?php echo $data->getStyle();?>"><?php echo $data->getMessage();?></span>
|
32 |
<div class="<?php echo $showHowTo?>">
|
33 |
<ul class="howto">
|
1 |
<div class="content-header">
|
2 |
<h3 class="icon-head head-newsletter-report"><?php echo $this->getTabTitle(); ?></h3>
|
3 |
</div>
|
4 |
+
<?php foreach ( $this->getCheckpoints() as $key => $checkpoint ) :?>
|
5 |
<?php $method = $this->getFormatedMethodName($key);
|
6 |
|
7 |
if (is_callable(array($this, $method))) {
|
19 |
<div class="entry-edit connector-fieldset-entry">
|
20 |
<div class="entry-edit-head collapseable ">
|
21 |
|
22 |
+
<a id="<?php echo $key;?>-head" class="<?php echo $data->getStyle();?>" href="#" onclick="Fieldset.toggleCollapse('<?php echo $key;?>',
|
23 |
+
'<?php echo $this->getUrl('*/*/state') ;?>');return false;"><?php echo Mage::helper('ddg')->__($checkpoint) ?> </a>
|
24 |
|
25 |
</div>
|
26 |
<input id="<?php echo $key;?>-state" name="config_state[<?php echo $key ;?>]" type="hidden" value="<?php echo $collapsable;?>">
|
27 |
|
28 |
<fieldset class="collapseable" id="<?php echo $key;?>">
|
29 |
|
30 |
+
<legend><?php echo Mage::helper('ddg')->__($checkpoint); ?></legend>
|
31 |
<span><?php echo $data->getTitle();?></span><span class="<?php echo $data->getStyle();?>"><?php echo $data->getMessage();?></span>
|
32 |
<div class="<?php echo $showHowTo?>">
|
33 |
<ul class="howto">
|
@@ -3,18 +3,23 @@
|
|
3 |
<?php endif ?>
|
4 |
<?php if(!empty($tabs)): ?>
|
5 |
<ul id="<?php echo $this->getId() ?>" class="tabs">
|
6 |
-
<?php foreach ($tabs as $
|
7 |
-
<?php if (!$this->canShowTab($
|
8 |
-
<li <?php if($this->getTabIsHidden($
|
9 |
-
<a href="<?php echo $this->getTabUrl($
|
10 |
-
|
|
|
|
|
|
|
|
|
11 |
</a>
|
12 |
-
<div id="<?php echo $this->getTabId($
|
13 |
</li>
|
14 |
<?php endforeach; ?>
|
15 |
</ul>
|
16 |
<script type="text/javascript">
|
17 |
-
<?php echo $this->getJsObjectName() ?> = new varienTabs('<?php echo $this->getId() ?>', '<?php echo $this->getDestElementId() ?>',
|
|
|
18 |
</script>
|
19 |
<?php endif;
|
20 |
|
3 |
<?php endif ?>
|
4 |
<?php if(!empty($tabs)): ?>
|
5 |
<ul id="<?php echo $this->getId() ?>" class="tabs">
|
6 |
+
<?php foreach ($tabs as $tab): ?>
|
7 |
+
<?php if (!$this->canShowTab($tab)): continue; endif; ?>
|
8 |
+
<li <?php if($this->getTabIsHidden($tab)): ?> style="display:none"<?php endif; ?>>
|
9 |
+
<a href="<?php echo $this->getTabUrl($tab) ?>" id="<?php echo $this->getTabId($tab) ?>" name="<?php echo $this->getTabId($tab, false) ?>"
|
10 |
+
title="<?php echo $this->getTabTitle($tab) ?>" class="tab-item-link <?php echo $this->getTabClass($tab) ?>
|
11 |
+
<?php if (preg_match('/\s?ajax\s?/', $tab->getClass())):?> notloaded<?php endif;?>">
|
12 |
+
<span><span class="changed" title="<?php echo $this->__('The information in this tab has been changed.') ?>"></span><span class="error"
|
13 |
+
title="<?php echo $this->__('This tab contains invalid data. Please solve the problem before saving.') ?>"></span>
|
14 |
+
<?php echo $this->getTabLabel($tab); ?></span>
|
15 |
</a>
|
16 |
+
<div id="<?php echo $this->getTabId($tab) ?>_content" style="display:none; float: left; width: 100%;"><?php echo $this->getTabContent($tab) ?></div>
|
17 |
</li>
|
18 |
<?php endforeach; ?>
|
19 |
</ul>
|
20 |
<script type="text/javascript">
|
21 |
+
<?php echo $this->getJsObjectName() ?> = new varienTabs('<?php echo $this->getId() ?>', '<?php echo $this->getDestElementId() ?>',
|
22 |
+
'<?php echo $this->getActiveTabId() ?>', <?php echo $this->getAllShadowTabs()?>);
|
23 |
</script>
|
24 |
<?php endif;
|
25 |
|
@@ -3,19 +3,19 @@
|
|
3 |
<h4 style="text-align: center">
|
4 |
<?php echo $this->getTitle() ?>
|
5 |
</h4>
|
6 |
-
<?php foreach( $this->getTotals() as $
|
7 |
<div class="entry-edit" style="width: <?php echo $this->getColumnWidth() ?>">
|
8 |
-
<div class="entry-edit-head"><h4><?php echo $
|
9 |
<fieldset class="a-center bold">
|
10 |
<span class="nowrap" style="font-size:18px;color:#EA7601;">
|
11 |
<?php
|
12 |
-
if($
|
13 |
echo '0';
|
14 |
else
|
15 |
-
echo $
|
16 |
?>
|
17 |
<span style="font-size:14px; color:#686868;">
|
18 |
-
<?php echo $
|
19 |
</span>
|
20 |
</span>
|
21 |
</fieldset>
|
3 |
<h4 style="text-align: center">
|
4 |
<?php echo $this->getTitle() ?>
|
5 |
</h4>
|
6 |
+
<?php foreach( $this->getTotals() as $total ): ?>
|
7 |
<div class="entry-edit" style="width: <?php echo $this->getColumnWidth() ?>">
|
8 |
+
<div class="entry-edit-head"><h4><?php echo $total['label'] ?></h4></div>
|
9 |
<fieldset class="a-center bold">
|
10 |
<span class="nowrap" style="font-size:18px;color:#EA7601;">
|
11 |
<?php
|
12 |
+
if($total['value'] == '')
|
13 |
echo '0';
|
14 |
else
|
15 |
+
echo $total['value'];
|
16 |
?>
|
17 |
<span style="font-size:14px; color:#686868;">
|
18 |
+
<?php echo $total['decimals'] ?>
|
19 |
</span>
|
20 |
</span>
|
21 |
</fieldset>
|
@@ -1,295 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Magento
|
4 |
-
*
|
5 |
-
* NOTICE OF LICENSE
|
6 |
-
*
|
7 |
-
* This source file is subject to the Academic Free License (AFL 3.0)
|
8 |
-
* that is bundled with this package in the file LICENSE_AFL.txt.
|
9 |
-
* It is also available through the world-wide-web at this URL:
|
10 |
-
* http://opensource.org/licenses/afl-3.0.php
|
11 |
-
* If you did not receive a copy of the license and are unable to
|
12 |
-
* obtain it through the world-wide-web, please send an email
|
13 |
-
* to license@magentocommerce.com so we can send you a copy immediately.
|
14 |
-
*
|
15 |
-
* DISCLAIMER
|
16 |
-
*
|
17 |
-
* Do not edit or add to this file if you wish to upgrade Magento to newer
|
18 |
-
* versions in the future. If you wish to customize Magento for your
|
19 |
-
* needs please refer to http://www.magentocommerce.com for more information.
|
20 |
-
*
|
21 |
-
* @category design
|
22 |
-
* @package default_default
|
23 |
-
* @copyright Copyright (c) 2014 Magento Inc. (http://www.magentocommerce.com)
|
24 |
-
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
25 |
-
*/
|
26 |
-
?>
|
27 |
-
<div class="content-header">
|
28 |
-
<h3 class="icon-head head-system-email-template"><?php echo $this->getHeaderText() ?></h3>
|
29 |
-
<p class="content-buttons form-buttons">
|
30 |
-
<?php echo $this->getBackButtonHtml(); ?>
|
31 |
-
<?php echo $this->getResetButtonHtml(); ?>
|
32 |
-
<?php if($this->getEditMode()): ?>
|
33 |
-
<?php echo $this->getDeleteButtonHtml(); ?>
|
34 |
-
<?php endif ?>
|
35 |
-
<?php if(!$this->isTextType()): ?>
|
36 |
-
<?php echo $this->getToPlainButtonHtml(); ?>
|
37 |
-
<?php echo $this->getToHtmlButtonHtml(); ?>
|
38 |
-
<?php endif ?>
|
39 |
-
<?php echo $this->getPreviewButtonHtml(); ?>
|
40 |
-
<?php echo $this->getSaveButtonHtml(); ?>
|
41 |
-
</p>
|
42 |
-
</div>
|
43 |
-
<?php if (!$this->getEditMode()): ?>
|
44 |
-
<form action="<?php echo $this->getLoadUrl() ?>" method="post" id="email_template_load_form">
|
45 |
-
<?php echo $this->getBlockHtml('formkey')?>
|
46 |
-
<div class="entry-edit">
|
47 |
-
<div class="entry-edit-head">
|
48 |
-
<h4 class="icon-head head-edit-form fieldset-legend">
|
49 |
-
<?php echo Mage::helper('adminhtml')->__('Load default template') ?>
|
50 |
-
</h4>
|
51 |
-
<div class="form-buttons"></div>
|
52 |
-
</div>
|
53 |
-
<div class="fieldset">
|
54 |
-
<table class="form-list" cellspacing="0">
|
55 |
-
<tbody>
|
56 |
-
<tr>
|
57 |
-
<td class="label">
|
58 |
-
<label for="template_select">
|
59 |
-
<?php echo Mage::helper('adminhtml')->__('Template') ?>
|
60 |
-
<span class="required">*</span>
|
61 |
-
</label>
|
62 |
-
</td>
|
63 |
-
<td class="value">
|
64 |
-
<select id="template_select" name="code" class="select required-entry">
|
65 |
-
<?php foreach ($this->getTemplateOptions() as $_option): ?>
|
66 |
-
<option value="<?php echo $_option['value'] ?>"<?php echo $this->getOrigTemplateCode() == $_option['value'] ? ' selected="selected"' : '' ?>><?php echo $_option['label'] ?></option>
|
67 |
-
<?php endforeach; ?>
|
68 |
-
</select>
|
69 |
-
</td>
|
70 |
-
<td></td>
|
71 |
-
</tr>
|
72 |
-
<?php if(Mage::helper('ddg')->isEnabled(Mage::app()->getWebsite())): ?>
|
73 |
-
<tr>
|
74 |
-
<td class="label">
|
75 |
-
<label for="connector_select">
|
76 |
-
<?php echo Mage::helper('adminhtml')->__('dotmailer template') ?>
|
77 |
-
</label>
|
78 |
-
</td>
|
79 |
-
<td class="value">
|
80 |
-
<select id="connector_select" name="connector" class="select">
|
81 |
-
<?php foreach ($this->getConnectorTemplates() as $_option): ?>
|
82 |
-
<option value="<?php echo $_option['value'] ?>"><?php echo $_option['label'] ?></option>
|
83 |
-
<?php endforeach; ?>
|
84 |
-
</select>
|
85 |
-
</td>
|
86 |
-
<td></td>
|
87 |
-
</tr>
|
88 |
-
<?php endif; ?>
|
89 |
-
<tr>
|
90 |
-
<td class="label">
|
91 |
-
<label for="locale_select">
|
92 |
-
<?php echo Mage::helper('adminhtml')->__('Locale') ?>
|
93 |
-
<span class="required">*</span>
|
94 |
-
</label>
|
95 |
-
</td>
|
96 |
-
<td class="value">
|
97 |
-
<select id="locale_select" name="locale" class="select required-entry">
|
98 |
-
<?php foreach ($this->getLocaleOptions() as $_option): ?>
|
99 |
-
<option value="<?php echo $_option['value'] ?>"<?php if ($_option['value']==$this->getCurrentLocale()): ?> selected="selected"<?php endif; ?>><?php echo $_option['label'] ?></option>
|
100 |
-
<?php endforeach; ?>
|
101 |
-
</select>
|
102 |
-
</td>
|
103 |
-
<td></td>
|
104 |
-
</tr>
|
105 |
-
<tr>
|
106 |
-
<td class="label">
|
107 |
-
<label> </label>
|
108 |
-
</td>
|
109 |
-
<td class="value">
|
110 |
-
<?php echo $this->getLoadButtonHtml() ?>
|
111 |
-
</td>
|
112 |
-
<td></td>
|
113 |
-
</tr>
|
114 |
-
</tbody>
|
115 |
-
</table>
|
116 |
-
</div>
|
117 |
-
</div>
|
118 |
-
</form>
|
119 |
-
<?php endif ?>
|
120 |
-
<form action="<?php echo $this->getSaveUrl() ?>" method="post" id="email_template_edit_form">
|
121 |
-
<?php echo $this->getBlockHtml('formkey')?>
|
122 |
-
<fieldset>
|
123 |
-
<input type="hidden" id="change_flag_element" name="_change_type_flag" value="" />
|
124 |
-
<input type="hidden" id="orig_template_code" name="orig_template_code" value="<?php echo $this->getOrigTemplateCode() ?>" />
|
125 |
-
<?php echo $this->getFormHtml() ?>
|
126 |
-
</fieldset>
|
127 |
-
</form>
|
128 |
-
<form action="<?php echo $this->getPreviewUrl() ?>" method="post" id="email_template_preview_form" target="_blank">
|
129 |
-
<?php echo $this->getBlockHtml('formkey')?>
|
130 |
-
<div class="no-display">
|
131 |
-
<input type="hidden" id="preview_type" name="type" value="<?php echo $this->isTextType()?1:2 ?>" />
|
132 |
-
<input type="hidden" id="preview_text" name="text" value="" />
|
133 |
-
<input type="hidden" id="preview_styles" name="styles" value="" />
|
134 |
-
</div>
|
135 |
-
</form>
|
136 |
-
<script type="text/javascript">
|
137 |
-
//<![CDATA[
|
138 |
-
var templateForm = new varienForm('email_template_edit_form');
|
139 |
-
var templatePreviewForm = new varienForm('email_template_preview_form');
|
140 |
-
var templateControl = {
|
141 |
-
unconvertedText: '',
|
142 |
-
typeChange: false,
|
143 |
-
variables: null,
|
144 |
-
init: function () {
|
145 |
-
if ($('convert_button_back')) {
|
146 |
-
$('convert_button_back').hide();
|
147 |
-
}
|
148 |
-
this.renderPaths(<?php echo $this->getUsedDefaultForPaths(); ?>, 'used_default_for');
|
149 |
-
this.renderPaths(<?php echo $this->getUsedCurrentlyForPaths(); ?>, 'used_currently_for');
|
150 |
-
},
|
151 |
-
stripTags: function () {
|
152 |
-
if(!window.confirm("<?php echo $this->__('Are you sure that you want to strip tags?') ?>")) {
|
153 |
-
return false;
|
154 |
-
}
|
155 |
-
this.unconvertedText = $('template_text').value;
|
156 |
-
$('convert_button').hide();
|
157 |
-
$('template_text').value = $('template_text').value.stripScripts().replace(
|
158 |
-
new RegExp('<style[^>]*>[\\S\\s]*?</style>', 'img'), ''
|
159 |
-
).stripTags().strip();
|
160 |
-
$('convert_button_back').show();
|
161 |
-
$('field_template_styles').hide();
|
162 |
-
this.typeChange = true;
|
163 |
-
return false;
|
164 |
-
},
|
165 |
-
unStripTags: function () {
|
166 |
-
$('convert_button').show();
|
167 |
-
$('convert_button_back').hide();
|
168 |
-
$('template_text').value = this.unconvertedText;
|
169 |
-
$('field_template_styles').show();
|
170 |
-
this.typeChange = false;
|
171 |
-
return false;
|
172 |
-
},
|
173 |
-
save: function() {
|
174 |
-
if (this.typeChange) {
|
175 |
-
$('change_flag_element').value = '1';
|
176 |
-
}
|
177 |
-
templateForm.submit();
|
178 |
-
return false;
|
179 |
-
},
|
180 |
-
preview: function() {
|
181 |
-
if (this.typeChange) {
|
182 |
-
$('preview_type').value = 1;
|
183 |
-
} else {
|
184 |
-
$('preview_type').value = 2;
|
185 |
-
}
|
186 |
-
if (typeof tinyMCE == 'undefined' || !tinyMCE.getInstanceById('template_text')) {
|
187 |
-
$('preview_text').value = $('template_text').value;
|
188 |
-
} else {
|
189 |
-
$('preview_text').value = tinyMCE.getInstanceById('template_text').getHTML();
|
190 |
-
}
|
191 |
-
|
192 |
-
if ($('template_styles') != undefined) {
|
193 |
-
$('preview_styles').value = $('template_styles').value;
|
194 |
-
}
|
195 |
-
|
196 |
-
templatePreviewForm.submit();
|
197 |
-
return false;
|
198 |
-
},
|
199 |
-
|
200 |
-
deleteTemplate: function() {
|
201 |
-
if(window.confirm("<?php echo $this->__('Are you sure that you want to delete this template?') ?>")) {
|
202 |
-
window.location.href = '<?php echo $this->getDeleteUrl() ?>';
|
203 |
-
}
|
204 |
-
},
|
205 |
-
|
206 |
-
load: function() {
|
207 |
-
var form = new varienForm('email_template_load_form');
|
208 |
-
|
209 |
-
if (!form.validator.validate()) {
|
210 |
-
return;
|
211 |
-
}
|
212 |
-
|
213 |
-
this.variables = null;
|
214 |
-
|
215 |
-
new Ajax.Request($('email_template_load_form').action, {
|
216 |
-
parameters: Form.serialize($('email_template_load_form'), true),
|
217 |
-
area: $('email_template_load_form'),
|
218 |
-
onComplete: function (transport) {
|
219 |
-
if (transport.responseText.isJSON()) {
|
220 |
-
var fields = $H(transport.responseText.evalJSON());
|
221 |
-
fields.each(function(pair) {
|
222 |
-
if ($(pair.key)) {
|
223 |
-
$(pair.key).value = pair.value.strip();
|
224 |
-
}
|
225 |
-
if (pair.key == 'template_type') {
|
226 |
-
if (pair.value == 1) {
|
227 |
-
this.typeChange = true;
|
228 |
-
$('convert_button').hide();
|
229 |
-
$('convert_button_back').hide();
|
230 |
-
} else {
|
231 |
-
this.typeChange = false;
|
232 |
-
$('convert_button_back').hide();
|
233 |
-
$('convert_button').show();
|
234 |
-
}
|
235 |
-
}
|
236 |
-
if (pair.key == 'orig_template_used_default_for') {
|
237 |
-
if(pair.value.length){
|
238 |
-
$('used_default_for').show();
|
239 |
-
this.renderPaths(pair.value, 'used_default_for');
|
240 |
-
}
|
241 |
-
else{
|
242 |
-
$('used_default_for').hide();
|
243 |
-
}
|
244 |
-
}
|
245 |
-
}.bind(this));
|
246 |
-
}
|
247 |
-
}.bind(this)
|
248 |
-
});
|
249 |
-
|
250 |
-
},
|
251 |
-
|
252 |
-
renderPaths: function(paths, fieldId){
|
253 |
-
var field = $(fieldId);
|
254 |
-
if(field){
|
255 |
-
field.down('td').next('td').update(this.parsePath(paths, '<span class="path-delimiter"> -> </span>', '<br />'));
|
256 |
-
}
|
257 |
-
},
|
258 |
-
|
259 |
-
parsePath: function (value, pathDelimiter, lineDelimiter) {
|
260 |
-
if (Object.isArray(value)) {
|
261 |
-
var result = [];
|
262 |
-
for (var i = 0, len = value.length; i < len; i++) {
|
263 |
-
result.push(this.parsePath(value[i], pathDelimiter, pathDelimiter));
|
264 |
-
}
|
265 |
-
return result.join(lineDelimiter);
|
266 |
-
}
|
267 |
-
|
268 |
-
if(!Object.isString(value) && value.title) {
|
269 |
-
value = (value.url ? '<a href="' + value.url + '">' + value.title + '</a>' : value.title) + (value.scope ? ' <span class="path-scope-label">(' + value.scope + ')</span>' : '');
|
270 |
-
}
|
271 |
-
|
272 |
-
return value;
|
273 |
-
},
|
274 |
-
|
275 |
-
openVariableChooser: function() {
|
276 |
-
Variables.init('template_text');
|
277 |
-
if (this.variables == null) {
|
278 |
-
Variables.resetData();
|
279 |
-
this.variables = $('variables').value.evalJSON();
|
280 |
-
var templateVariablesValue = $('template_variables').value;
|
281 |
-
if (this.variables && templateVariablesValue) {
|
282 |
-
if (templateVariables = templateVariablesValue.evalJSON()) {
|
283 |
-
this.variables.push(templateVariables);
|
284 |
-
}
|
285 |
-
}
|
286 |
-
}
|
287 |
-
if (this.variables) {
|
288 |
-
Variables.openVariableChooser(this.variables);
|
289 |
-
}
|
290 |
-
}
|
291 |
-
};
|
292 |
-
|
293 |
-
templateControl.init();
|
294 |
-
//]]>
|
295 |
-
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -15,7 +15,9 @@
|
|
15 |
<h4 style="margin-top: 10px;"><?php echo $this->__('Additional Newsletter Subscriptions') ?></h4>
|
16 |
<?php foreach($additionalBooks as $books): ?>
|
17 |
<li class="control">
|
18 |
-
<input type="checkbox" name="additional_subscriptions[]" id ="<?php echo $books["name"] ?>"
|
|
|
|
|
19 |
<label for="additional_subscription"><?php echo $books["name"] ?></label>
|
20 |
</li>
|
21 |
<?php endforeach; ?>
|
@@ -28,7 +30,9 @@
|
|
28 |
<div class="field">
|
29 |
<label for="<?php echo $dataField['name'] ?>"><?php echo $dataField['name'] ?></label>
|
30 |
<div class="input-box">
|
31 |
-
<input type="text" class="input-text" title="<?php echo $dataField['name'] ?>"
|
|
|
|
|
32 |
<?php if($dataField['type'] == "Date"): ?>
|
33 |
<?php echo $this->getChildHtml('html_calendar'); ?>
|
34 |
<script type="text/javascript">
|
@@ -66,4 +70,4 @@
|
|
66 |
}
|
67 |
});
|
68 |
</script>
|
69 |
-
<?php endif;
|
15 |
<h4 style="margin-top: 10px;"><?php echo $this->__('Additional Newsletter Subscriptions') ?></h4>
|
16 |
<?php foreach($additionalBooks as $books): ?>
|
17 |
<li class="control">
|
18 |
+
<input type="checkbox" name="additional_subscriptions[]" id ="<?php echo $books["name"] ?>"
|
19 |
+
value="<?php echo $books["value"] ?>" title="<?php echo $books["name"] ?>"
|
20 |
+
<?php if($books["subscribed"]): ?> checked="checked"<?php endif; ?> class="checkbox" />
|
21 |
<label for="additional_subscription"><?php echo $books["name"] ?></label>
|
22 |
</li>
|
23 |
<?php endforeach; ?>
|
30 |
<div class="field">
|
31 |
<label for="<?php echo $dataField['name'] ?>"><?php echo $dataField['name'] ?></label>
|
32 |
<div class="input-box">
|
33 |
+
<input type="text" class="input-text" title="<?php echo $dataField['name'] ?>"
|
34 |
+
value="<?php echo $dataField['value'] ?>" name="data_fields[<?php echo $dataField['name'] ?>]"
|
35 |
+
id="<?php echo $dataField['name'] ?>" />
|
36 |
<?php if($dataField['type'] == "Date"): ?>
|
37 |
<?php echo $this->getChildHtml('html_calendar'); ?>
|
38 |
<script type="text/javascript">
|
70 |
}
|
71 |
});
|
72 |
</script>
|
73 |
+
<?php endif;
|
@@ -1,8 +1,6 @@
|
|
1 |
<?php
|
2 |
-
|
3 |
$items = $this->getBasketItems();
|
4 |
$helper = Mage::helper('core');
|
5 |
-
|
6 |
?>
|
7 |
<?php if($items): ?>
|
8 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
@@ -14,61 +12,61 @@ $helper = Mage::helper('core');
|
|
14 |
</head>
|
15 |
<body">
|
16 |
<?php
|
17 |
-
$
|
18 |
-
$
|
19 |
-
$
|
20 |
-
$
|
21 |
?>
|
22 |
<style>
|
23 |
.product-name{
|
24 |
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_COLOR);?>;
|
25 |
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_FONT_SIZE);?>;
|
26 |
-
<?php if(in_array('bold', $
|
27 |
font-weight: bold;
|
28 |
<?php endif; ?>
|
29 |
-
<?php if(in_array('italic', $
|
30 |
font-style: italic;
|
31 |
<?php endif; ?>
|
32 |
-
<?php if(in_array('underline', $
|
33 |
text-decoration: underline;
|
34 |
<?php endif; ?>
|
35 |
}
|
36 |
.product-price{
|
37 |
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_COLOR);?>;
|
38 |
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_FONT_SIZE);?>;
|
39 |
-
<?php if(in_array('bold', $
|
40 |
font-weight: bold;
|
41 |
<?php endif; ?>
|
42 |
-
<?php if(in_array('italic', $
|
43 |
font-style: italic;
|
44 |
<?php endif; ?>
|
45 |
-
<?php if(in_array('underline', $
|
46 |
text-decoration: underline;
|
47 |
<?php endif; ?>
|
48 |
}
|
49 |
.proudct-url{
|
50 |
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_COLOR);?>;
|
51 |
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_FONT_SIZE);?>;
|
52 |
-
<?php if(in_array('bold', $
|
53 |
font-weight: bold;
|
54 |
<?php endif; ?>
|
55 |
-
<?php if(in_array('italic', $
|
56 |
font-style: italic;
|
57 |
<?php endif; ?>
|
58 |
-
<?php if(in_array('underline', $
|
59 |
text-decoration: underline;
|
60 |
<?php endif; ?>
|
61 |
}
|
62 |
.other-text{
|
63 |
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_OTHER_COLOR);?>;
|
64 |
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_OTHER_FONT_SIZE);?>;
|
65 |
-
<?php if(in_array('bold', $
|
66 |
font-weight: bold;
|
67 |
<?php endif; ?>
|
68 |
-
<?php if(in_array('italic', $
|
69 |
font-style: italic;
|
70 |
<?php endif; ?>
|
71 |
-
<?php if(in_array('underline', $
|
72 |
text-decoration: underline;
|
73 |
<?php endif; ?>
|
74 |
}
|
@@ -129,9 +127,9 @@ $helper = Mage::helper('core');
|
|
129 |
</style>
|
130 |
<table style ='float:left; width:600px; border: 1px solid #cbd3d4; border-collapse: collapse; padding: 5px;' class="product-table">
|
131 |
<tr>
|
132 |
-
<th class="other-text" style="border-bottom: 1px solid #cbd3d4; border-right: 1px solid #cbd3d4;"
|
133 |
-
<th class="other-text" style="border-bottom: 1px solid #cbd3d4; border-right: 1px solid #cbd3d4;"
|
134 |
-
<th class="other-text" style="border-bottom: 1px solid #cbd3d4; border-right: 1px solid #cbd3d4;"
|
135 |
<th class="other-text" style="border-bottom: 1px solid #cbd3d4;">Total</th>
|
136 |
</tr>
|
137 |
|
@@ -151,7 +149,8 @@ $helper = Mage::helper('core');
|
|
151 |
<img alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>"
|
152 |
src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(85);?>" width="85" height="85" align="middle" border="0">
|
153 |
</td>
|
154 |
-
<td class="product-name" style="padding: 1px; border-bottom: 1px solid #cbd3d4; border-right: 1px solid #cbd3d4;">
|
|
|
155 |
<td class="product-price" style="padding: 1px; border-bottom: 1px solid #cbd3d4; border-right: 1px solid #cbd3d4;"><?php echo (int)$one->getQty();?></td>
|
156 |
<td class="product-price" style="padding: 1px; border-bottom: 1px solid #cbd3d4;"><?php echo $total;?></td>
|
157 |
</tr>
|
@@ -190,4 +189,4 @@ $helper = Mage::helper('core');
|
|
190 |
</table>
|
191 |
</body>
|
192 |
</html>
|
193 |
-
<?php endif;
|
1 |
<?php
|
|
|
2 |
$items = $this->getBasketItems();
|
3 |
$helper = Mage::helper('core');
|
|
|
4 |
?>
|
5 |
<?php if($items): ?>
|
6 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
12 |
</head>
|
13 |
<body">
|
14 |
<?php
|
15 |
+
$nameStyle = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_STYLE));
|
16 |
+
$priceStyle = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_STYLE));
|
17 |
+
$linkStyle = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_STYLE));
|
18 |
+
$otherStyle = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_OTHER_STYLE));
|
19 |
?>
|
20 |
<style>
|
21 |
.product-name{
|
22 |
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_COLOR);?>;
|
23 |
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_FONT_SIZE);?>;
|
24 |
+
<?php if(in_array('bold', $nameStyle)): ?>
|
25 |
font-weight: bold;
|
26 |
<?php endif; ?>
|
27 |
+
<?php if(in_array('italic', $nameStyle)): ?>
|
28 |
font-style: italic;
|
29 |
<?php endif; ?>
|
30 |
+
<?php if(in_array('underline', $nameStyle)): ?>
|
31 |
text-decoration: underline;
|
32 |
<?php endif; ?>
|
33 |
}
|
34 |
.product-price{
|
35 |
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_COLOR);?>;
|
36 |
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_FONT_SIZE);?>;
|
37 |
+
<?php if(in_array('bold', $priceStyle)): ?>
|
38 |
font-weight: bold;
|
39 |
<?php endif; ?>
|
40 |
+
<?php if(in_array('italic', $priceStyle)): ?>
|
41 |
font-style: italic;
|
42 |
<?php endif; ?>
|
43 |
+
<?php if(in_array('underline', $priceStyle)): ?>
|
44 |
text-decoration: underline;
|
45 |
<?php endif; ?>
|
46 |
}
|
47 |
.proudct-url{
|
48 |
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_COLOR);?>;
|
49 |
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_FONT_SIZE);?>;
|
50 |
+
<?php if(in_array('bold', $linkStyle)): ?>
|
51 |
font-weight: bold;
|
52 |
<?php endif; ?>
|
53 |
+
<?php if(in_array('italic', $linkStyle)): ?>
|
54 |
font-style: italic;
|
55 |
<?php endif; ?>
|
56 |
+
<?php if(in_array('underline', $linkStyle)): ?>
|
57 |
text-decoration: underline;
|
58 |
<?php endif; ?>
|
59 |
}
|
60 |
.other-text{
|
61 |
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_OTHER_COLOR);?>;
|
62 |
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_OTHER_FONT_SIZE);?>;
|
63 |
+
<?php if(in_array('bold', $otherStyle)): ?>
|
64 |
font-weight: bold;
|
65 |
<?php endif; ?>
|
66 |
+
<?php if(in_array('italic', $otherStyle)): ?>
|
67 |
font-style: italic;
|
68 |
<?php endif; ?>
|
69 |
+
<?php if(in_array('underline', $otherStyle)): ?>
|
70 |
text-decoration: underline;
|
71 |
<?php endif; ?>
|
72 |
}
|
127 |
</style>
|
128 |
<table style ='float:left; width:600px; border: 1px solid #cbd3d4; border-collapse: collapse; padding: 5px;' class="product-table">
|
129 |
<tr>
|
130 |
+
<th class="other-text" style="border-bottom: 1px solid #cbd3d4; border-right: 1px solid #cbd3d4;"><?php echo $this->__("Image");?></th>
|
131 |
+
<th class="other-text" style="border-bottom: 1px solid #cbd3d4; border-right: 1px solid #cbd3d4;"><?php echo $this->__("Description");?></th>
|
132 |
+
<th class="other-text" style="border-bottom: 1px solid #cbd3d4; border-right: 1px solid #cbd3d4;"><?php echo $this->__("Quantity");?></th>
|
133 |
<th class="other-text" style="border-bottom: 1px solid #cbd3d4;">Total</th>
|
134 |
</tr>
|
135 |
|
149 |
<img alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>"
|
150 |
src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(85);?>" width="85" height="85" align="middle" border="0">
|
151 |
</td>
|
152 |
+
<td class="product-name" style="padding: 1px; border-bottom: 1px solid #cbd3d4; border-right: 1px solid #cbd3d4;">
|
153 |
+
Product Name : <a class="proudct-url" href="<?php echo $productUrl;?>"><?php echo $_product->getName() . '</a></br>'. $inStock;?></td>
|
154 |
<td class="product-price" style="padding: 1px; border-bottom: 1px solid #cbd3d4; border-right: 1px solid #cbd3d4;"><?php echo (int)$one->getQty();?></td>
|
155 |
<td class="product-price" style="padding: 1px; border-bottom: 1px solid #cbd3d4;"><?php echo $total;?></td>
|
156 |
</tr>
|
189 |
</table>
|
190 |
</body>
|
191 |
</html>
|
192 |
+
<?php endif;
|
@@ -23,5 +23,5 @@
|
|
23 |
<div class="edc-coupon">
|
24 |
<?php echo $coupon; ?>
|
25 |
</div>
|
26 |
-
<?php endif;
|
27 |
|
23 |
<div class="edc-coupon">
|
24 |
<?php echo $coupon; ?>
|
25 |
</div>
|
26 |
+
<?php endif;
|
27 |
|
@@ -1,140 +0,0 @@
|
|
1 |
-
<?php $_order = $this->getOrder();
|
2 |
-
$creditmemoItems = $this->getCreditmemoItems();
|
3 |
-
?>
|
4 |
-
<table cellspacing="0" cellpadding="0" border="0" width="650">
|
5 |
-
<thead>
|
6 |
-
<tr>
|
7 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Item</th>
|
8 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">SKU</th>
|
9 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Qty</th>
|
10 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Subtotal</th>
|
11 |
-
</tr>
|
12 |
-
</thead>
|
13 |
-
<tbody>
|
14 |
-
|
15 |
-
|
16 |
-
<?php $i=0; foreach ($creditmemoItems as $_item): $i++ ?>
|
17 |
-
<?php
|
18 |
-
if($_item->getParentItemId()) continue;?>
|
19 |
-
<tr <?php echo $i%2?'bgcolor="#eeeded"':'' ?>>
|
20 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;" width="70%"><?php echo $_item->getName() ?></td>
|
21 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;"><?php echo $_item->getSku();?></td>
|
22 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;"><?php echo sprintf('%s', $_item->getQtyOrdered()) ?></td>
|
23 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
24 |
-
<?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
|
25 |
-
<?php if ($this->helper('tax')->displayCartBothPrices()): ?>
|
26 |
-
<span class="label"><?php echo $this->__('Excl. Tax'); ?>:</span>
|
27 |
-
<?php endif; ?>
|
28 |
-
<?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'email', $_order->getStore())): ?>
|
29 |
-
<?php echo $_order->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?>
|
30 |
-
<?php else: ?>
|
31 |
-
<?php echo $_order->formatPrice($_item->getRowTotal()) ?>
|
32 |
-
<?php endif; ?>
|
33 |
-
|
34 |
-
<?php if (Mage::helper('weee')->getApplied($_item)): ?>
|
35 |
-
<br />
|
36 |
-
<?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'email', $_order->getStore())): ?>
|
37 |
-
<small>
|
38 |
-
<?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
|
39 |
-
<span class="nobr"><?php echo $tax['title']; ?>: <?php echo $_order->formatPrice($tax['row_amount'],true,true); ?></span><br />
|
40 |
-
<?php endforeach; ?>
|
41 |
-
</small>
|
42 |
-
<?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'email', $_order->getStore())): ?>
|
43 |
-
<?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
|
44 |
-
<span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo $_order->formatPrice($tax['row_amount_incl_tax'],true,true); ?></small></span><br />
|
45 |
-
<?php endforeach; ?>
|
46 |
-
<?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'email', $_order->getStore())): ?>
|
47 |
-
<small>
|
48 |
-
<?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
|
49 |
-
<span class="nobr"><?php echo $tax['title']; ?>: <?php echo $_order->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span><br />
|
50 |
-
<?php endforeach; ?>
|
51 |
-
</small>
|
52 |
-
<?php endif; ?>
|
53 |
-
|
54 |
-
<?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'email', $_order->getStore())): ?>
|
55 |
-
<br />
|
56 |
-
<span class="nobr"><?php echo Mage::helper('weee')->__('Total'); ?>:<br /> <?php echo $_order->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?></span>
|
57 |
-
<?php endif; ?>
|
58 |
-
<?php endif; ?>
|
59 |
-
<?php endif; ?>
|
60 |
-
|
61 |
-
|
62 |
-
<?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
|
63 |
-
<?php if ($this->helper('tax')->displayCartBothPrices()): ?>
|
64 |
-
<br /><span class="label"><?php echo $this->__('Incl. Tax'); ?>:</span>
|
65 |
-
<?php endif; ?>
|
66 |
-
<?php $_incl = $this->helper('checkout')->getSubtotalInclTax($_item); ?>
|
67 |
-
<?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'email', $_order->getStore())): ?>
|
68 |
-
<?php echo $_order->formatPrice($_incl+$_item->getWeeeTaxAppliedRowAmount()); ?>
|
69 |
-
<?php else: ?>
|
70 |
-
<?php echo $_order->formatPrice($_incl-$_item->getWeeeTaxRowDisposition()) ?>
|
71 |
-
<?php endif; ?>
|
72 |
-
<?php if (Mage::helper('weee')->getApplied($_item)): ?>
|
73 |
-
<br />
|
74 |
-
<?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'email', $_order->getStore())): ?>
|
75 |
-
<small>
|
76 |
-
<?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
|
77 |
-
<span class="nobr"><?php echo $tax['title']; ?>: <?php echo $_order->formatPrice($tax['row_amount'],true,true); ?></span><br />
|
78 |
-
<?php endforeach; ?>
|
79 |
-
</small>
|
80 |
-
<?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'email', $_order->getStore())): ?>
|
81 |
-
<?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
|
82 |
-
<span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo $_order->formatPrice($tax['row_amount_incl_tax'],true,true); ?></small></span><br />
|
83 |
-
<?php endforeach; ?>
|
84 |
-
<?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'email', $_order->getStore())): ?>
|
85 |
-
<small>
|
86 |
-
<?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
|
87 |
-
<span class="nobr"><?php echo $tax['title']; ?>: <?php echo $_order->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span><br />
|
88 |
-
<?php endforeach; ?>
|
89 |
-
</small>
|
90 |
-
<?php endif; ?>
|
91 |
-
|
92 |
-
<?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'email', $_order->getStore())): ?>
|
93 |
-
<span class="nobr"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>:<br /> <?php echo $_order->formatPrice($_incl+$_item->getWeeeTaxAppliedRowAmount()); ?></span>
|
94 |
-
<?php endif; ?>
|
95 |
-
<?php endif; ?>
|
96 |
-
<?php endif; ?>
|
97 |
-
</td>
|
98 |
-
</tr>
|
99 |
-
<?php endforeach ?>
|
100 |
-
|
101 |
-
</tbody>
|
102 |
-
<tfoot>
|
103 |
-
|
104 |
-
<tr>
|
105 |
-
<td></td>
|
106 |
-
<td colspan="2" align="right" style="padding:3px 9px"><?php echo Mage::helper('sales')->__('Subtotal') ?></td>
|
107 |
-
<td align="right" style="padding:3px 9px"><?php echo $_order->formatPrice($_order->getSubtotal()) ?></td>
|
108 |
-
</tr>
|
109 |
-
<?php
|
110 |
-
|
111 |
-
if ($_order->getDiscountAmount() > 0): ?>
|
112 |
-
<tr>
|
113 |
-
<td></td>
|
114 |
-
<td colspan="2" align="right" style="padding:3px 9px"><?php echo Mage::helper('sales')->__('Discount') ?></td>
|
115 |
-
<td align="right" style="padding:3px 9px"><?php echo $_order->formatPrice($_order->getDiscountAmount()) ?></td>
|
116 |
-
</tr>
|
117 |
-
<?php endif; ?>
|
118 |
-
<?php if ($_order->getShippingAmount() > 0): ?>
|
119 |
-
<tr>
|
120 |
-
<td></td>
|
121 |
-
<td colspan="2" align="right" style="padding:3px 9px"><?php echo Mage::helper('sales')->__('Shipping Amount') ?></td>
|
122 |
-
<td align="right" style="padding:3px 9px"><?php echo $_order->formatPrice($_order->getShippingAmount()) ?></td>
|
123 |
-
</tr>
|
124 |
-
<?php endif; ?>
|
125 |
-
<?php if ($_order->getTaxAmount() > 0): ?>
|
126 |
-
<tr>
|
127 |
-
<td></td>
|
128 |
-
<td colspan="2" align="right" style="padding:3px 9px"><?php echo Mage::helper('sales')->__('Tax Amount') ?></td>
|
129 |
-
<td align="right" style="padding:3px 9px"><?php echo $_order->formatPrice($_order->getTaxAmount()) ?></td>
|
130 |
-
</tr>
|
131 |
-
<?php endif; ?>
|
132 |
-
<tr>
|
133 |
-
<td></td>
|
134 |
-
<td colspan="2" align="right" style="padding:3px 9px"><strong><?php echo Mage::helper('sales')->__('Grand Total') ?></strong></td>
|
135 |
-
<td align="right" style="padding:6px 9px"><strong><?php echo $_order->formatPrice($_order->getGrandTotal()) ?></strong></td>
|
136 |
-
</tr>
|
137 |
-
</tfoot>
|
138 |
-
</table>
|
139 |
-
|
140 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,80 +0,0 @@
|
|
1 |
-
<?php $order = $this->getOrder(); ?>
|
2 |
-
<?php if($order): ?>
|
3 |
-
<?php
|
4 |
-
$creditmemo = $order->getCreditmemosCollection()->getFirstItem();
|
5 |
-
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment());
|
6 |
-
?>
|
7 |
-
<style>
|
8 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
9 |
-
</style>
|
10 |
-
<body style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
11 |
-
<div style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
12 |
-
<table cellspacing="0" cellpadding="0" border="0" width="100%">
|
13 |
-
<tr>
|
14 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
15 |
-
<!-- [ header starts here] -->
|
16 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
17 |
-
<!-- [ middle starts here] -->
|
18 |
-
<tr>
|
19 |
-
<td>
|
20 |
-
<h2 style="font-size:18px; font-weight:normal; margin:0;">Your Credit Memo #<?php echo $creditmemo->getIncrementId();?> for Order #<?php echo $order->getIncrementId();?></h2>
|
21 |
-
</td>
|
22 |
-
</tr>
|
23 |
-
<tr>
|
24 |
-
<td>
|
25 |
-
<table cellspacing="0" cellpadding="0" border="0" width="650">
|
26 |
-
<thead>
|
27 |
-
<tr>
|
28 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Billing Information:</th>
|
29 |
-
<th width="10"></th>
|
30 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Payment Method:</th>
|
31 |
-
</tr>
|
32 |
-
</thead>
|
33 |
-
<tbody>
|
34 |
-
<tr>
|
35 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
36 |
-
<?php echo $order->getBillingAddress()->format('html');?>
|
37 |
-
</td>
|
38 |
-
<td> </td>
|
39 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
40 |
-
<?php echo $paymentBlock->toHtml();?>
|
41 |
-
</td>
|
42 |
-
</tr>
|
43 |
-
</tbody>
|
44 |
-
</table>
|
45 |
-
<br/>
|
46 |
-
<?php if($order->getIsNotVirtual()):?>
|
47 |
-
<table cellspacing="0" cellpadding="0" border="0" width="650">
|
48 |
-
<thead>
|
49 |
-
<tr>
|
50 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Information:</th>
|
51 |
-
<th width="10"></th>
|
52 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Method:</th>
|
53 |
-
</tr>
|
54 |
-
</thead>
|
55 |
-
<tbody>
|
56 |
-
<tr>
|
57 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
58 |
-
<?php echo $order->getShippingAddress()->format('html');?>
|
59 |
-
|
60 |
-
</td>
|
61 |
-
<td> </td>
|
62 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
63 |
-
<?php echo $this->escapeHtml($order->getShippingDescription());?>
|
64 |
-
|
65 |
-
</td>
|
66 |
-
</tr>
|
67 |
-
</tbody>
|
68 |
-
</table>
|
69 |
-
<br/>
|
70 |
-
<?php endif;?>
|
71 |
-
<?php echo $this->getChildHtml('connector_creditmemo_items');?>
|
72 |
-
</td>
|
73 |
-
</tr>
|
74 |
-
</table>
|
75 |
-
</td>
|
76 |
-
</tr>
|
77 |
-
</table>
|
78 |
-
</div>
|
79 |
-
</body>
|
80 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,81 +0,0 @@
|
|
1 |
-
<?php $order = $this->getOrder(); ?>
|
2 |
-
<?php if($order): ?>
|
3 |
-
<?php
|
4 |
-
$creditmemo = $order->getCreditmemosCollection()->getFirstItem();
|
5 |
-
$billing = $order->getBillingAddress();
|
6 |
-
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment());
|
7 |
-
?>
|
8 |
-
<style>
|
9 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
10 |
-
</style>
|
11 |
-
<body style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
12 |
-
<div style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
13 |
-
<table cellspacing="0" cellpadding="0" border="0" width="100%">
|
14 |
-
<tr>
|
15 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
16 |
-
<!-- [ header starts here] -->
|
17 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
18 |
-
<!-- [ middle starts here] -->
|
19 |
-
<tr>
|
20 |
-
<td>
|
21 |
-
<h2 style="font-size:18px; font-weight:normal; margin:0;">Your Credit Memo #<?php echo $creditmemo->getIncrementId();?> for Order #<?php echo $order->getIncrementId();?></h2>
|
22 |
-
</td>
|
23 |
-
</tr>
|
24 |
-
<tr>
|
25 |
-
<td>
|
26 |
-
<table cellspacing="0" cellpadding="0" border="0" width="650">
|
27 |
-
<thead>
|
28 |
-
<tr>
|
29 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Billing Information:</th>
|
30 |
-
<th width="10"></th>
|
31 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Payment Method:</th>
|
32 |
-
</tr>
|
33 |
-
</thead>
|
34 |
-
<tbody>
|
35 |
-
<tr>
|
36 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
37 |
-
<?php echo $order->getBillingAddress()->format('html');?>
|
38 |
-
</td>
|
39 |
-
<td> </td>
|
40 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
41 |
-
<?php echo $paymentBlock->toHtml();?>
|
42 |
-
</td>
|
43 |
-
</tr>
|
44 |
-
</tbody>
|
45 |
-
</table>
|
46 |
-
<br/>
|
47 |
-
<?php if($order->getIsNotVirtual()):?>
|
48 |
-
<table cellspacing="0" cellpadding="0" border="0" width="650">
|
49 |
-
<thead>
|
50 |
-
<tr>
|
51 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Information:</th>
|
52 |
-
<th width="10"></th>
|
53 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Method:</th>
|
54 |
-
</tr>
|
55 |
-
</thead>
|
56 |
-
<tbody>
|
57 |
-
<tr>
|
58 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
59 |
-
<?php echo $order->getShippingAddress()->format('html');?>
|
60 |
-
|
61 |
-
</td>
|
62 |
-
<td> </td>
|
63 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
64 |
-
<?php echo $this->escapeHtml($order->getShippingDescription());?>
|
65 |
-
|
66 |
-
</td>
|
67 |
-
</tr>
|
68 |
-
</tbody>
|
69 |
-
</table>
|
70 |
-
<br/>
|
71 |
-
<?php endif;?>
|
72 |
-
<?php echo $this->getChildHtml('connector_creditmemo_items');?>
|
73 |
-
</td>
|
74 |
-
</tr>
|
75 |
-
</table>
|
76 |
-
</td>
|
77 |
-
</tr>
|
78 |
-
</table>
|
79 |
-
</div>
|
80 |
-
</body>
|
81 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,34 +0,0 @@
|
|
1 |
-
<?php $order = $this->getOrder(); ?>
|
2 |
-
<?php if($order): ?>
|
3 |
-
<?php
|
4 |
-
$creditmemo = $order->getCreditmemosCollection()->getFirstItem();
|
5 |
-
$comment = $creditmemo->getCommentsCollection()->getFirstItem()->getComment();
|
6 |
-
?>
|
7 |
-
<style>
|
8 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
9 |
-
</style>
|
10 |
-
<body style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
11 |
-
<div style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
12 |
-
<table cellspacing="0" cellpadding="0" border="0" height="100%" width="100%">
|
13 |
-
<tr>
|
14 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
15 |
-
<!-- [ header starts here] -->
|
16 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
17 |
-
<!-- [ middle starts here] -->
|
18 |
-
<tr>
|
19 |
-
<td valign="top">
|
20 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;">
|
21 |
-
Your order # <?php echo $order->getIncrementId();?> has been <br/>
|
22 |
-
<strong><?php echo $order->getStatusLabel();?></strong>.
|
23 |
-
</p>
|
24 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;">You can check the status of your order by <a href="<?php echo $this->getBaseUrl();?>customer/account/" style="color:#1E7EC8;">logging into your account</a>.</p>
|
25 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;"><?php echo $this->escapeHtml($comment);?></p>
|
26 |
-
</td>
|
27 |
-
</tr>
|
28 |
-
</table>
|
29 |
-
</td>
|
30 |
-
</tr>
|
31 |
-
</table>
|
32 |
-
</div>
|
33 |
-
</body>
|
34 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,34 +0,0 @@
|
|
1 |
-
<?php $order = $this->getOrder(); ?>
|
2 |
-
<?php if($order): ?>
|
3 |
-
<?php
|
4 |
-
$creditmemo = $order->getCreditmemosCollection()->getFirstItem();
|
5 |
-
$billing = $order->getBillingAddress();
|
6 |
-
$comment = $creditmemo->getCommentsCollection()->getFirstItem()->getComment();
|
7 |
-
?>
|
8 |
-
<style>
|
9 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
10 |
-
</style>
|
11 |
-
<body style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
12 |
-
<div style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
13 |
-
<table cellspacing="0" cellpadding="0" border="0" height="100%" width="100%">
|
14 |
-
<tr>
|
15 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
16 |
-
<!-- [ header starts here] -->
|
17 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
18 |
-
<!-- [ middle starts here] -->
|
19 |
-
<tr>
|
20 |
-
<td valign="top">
|
21 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;">
|
22 |
-
Your order # <?php echo $order->getIncrementId();?> has been <br/>
|
23 |
-
<strong><?php echo $order->getStatusLabel();?></strong>.
|
24 |
-
</p>
|
25 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;"><?php echo $this->escapeHtml($comment);?></p>
|
26 |
-
</td>
|
27 |
-
</tr>
|
28 |
-
</table>
|
29 |
-
</td>
|
30 |
-
</tr>
|
31 |
-
</table>
|
32 |
-
</div>
|
33 |
-
</body>
|
34 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,5 +1,5 @@
|
|
1 |
|
2 |
-
<?php $
|
3 |
|
4 |
<script type="text/javascript">
|
5 |
//Email Capture For Quote
|
@@ -23,7 +23,7 @@
|
|
23 |
//validate email
|
24 |
if(el.value && this.validateEmail(el.value)){
|
25 |
//ajax call
|
26 |
-
new Ajax.Request('<?php echo $
|
27 |
method: 'post',
|
28 |
parameters:{
|
29 |
email:el.value
|
@@ -60,7 +60,7 @@
|
|
60 |
//validate email
|
61 |
if(el.value && this.validateEmail(el.value)){
|
62 |
//ajax call
|
63 |
-
new Ajax.Request('<?php echo $
|
64 |
method: 'post',
|
65 |
parameters:{
|
66 |
email:el.value
|
1 |
|
2 |
+
<?php $baseUrl = Mage::app()->getStore()->getBaseUrl(Mage_Core_Model_Store::URL_TYPE_LINK, true); ?>
|
3 |
|
4 |
<script type="text/javascript">
|
5 |
//Email Capture For Quote
|
23 |
//validate email
|
24 |
if(el.value && this.validateEmail(el.value)){
|
25 |
//ajax call
|
26 |
+
new Ajax.Request('<?php echo $baseUrl; ?>' + 'connector/ajax/emailcapture', {
|
27 |
method: 'post',
|
28 |
parameters:{
|
29 |
email:el.value
|
60 |
//validate email
|
61 |
if(el.value && this.validateEmail(el.value)){
|
62 |
//ajax call
|
63 |
+
new Ajax.Request('<?php echo $baseUrl; ?>' + 'connector/ajax/emailcapture', {
|
64 |
method: 'post',
|
65 |
parameters:{
|
66 |
email:el.value
|
@@ -18,4 +18,4 @@
|
|
18 |
});
|
19 |
//]]>
|
20 |
</script>
|
21 |
-
<?php endif;
|
18 |
});
|
19 |
//]]>
|
20 |
</script>
|
21 |
+
<?php endif;
|
@@ -1,90 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
$order = $this->getOrder();
|
3 |
-
?>
|
4 |
-
<?php if($order): ?>
|
5 |
-
<?php
|
6 |
-
$invoice = $order->getInvoiceCollection()->getLastItem();
|
7 |
-
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment());
|
8 |
-
?>
|
9 |
-
<style>
|
10 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
11 |
-
</style>
|
12 |
-
<body style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
13 |
-
<div style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
14 |
-
<table cellspacing="0" cellpadding="0" border="0" height="100%" width="100%">
|
15 |
-
<tr>
|
16 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
17 |
-
<!-- [ header starts here] -->
|
18 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
19 |
-
<!-- [ middle starts here] -->
|
20 |
-
<tr>
|
21 |
-
<td valign="top">
|
22 |
-
<p style="font-size:12px; line-height:16px; margin:0;">
|
23 |
-
You can check the status of your order by <a href="<?php echo $this->getBaseUrl();?>customer/account/" style="color:#1E7EC8;">logging into your account</a>.
|
24 |
-
</p>
|
25 |
-
</td>
|
26 |
-
</tr>
|
27 |
-
<tr>
|
28 |
-
<td>
|
29 |
-
<h2 style="font-size:18px; font-weight:normal; margin:0;">Your Invoice #<?php echo $invoice->getIncrementId();?> for Order #<?php echo $order->getIncrementId();?></h2>
|
30 |
-
</td>
|
31 |
-
</tr>
|
32 |
-
<tr>
|
33 |
-
<td>
|
34 |
-
<table cellspacing="0" cellpadding="0" border="0" width="650">
|
35 |
-
<thead>
|
36 |
-
<tr>
|
37 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Billing Information:</th>
|
38 |
-
<th width="10"></th>
|
39 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Payment Method:</th>
|
40 |
-
</tr>
|
41 |
-
</thead>
|
42 |
-
<tbody>
|
43 |
-
<tr>
|
44 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
45 |
-
<?php echo $order->getBillingAddress()->format('html');?>
|
46 |
-
</td>
|
47 |
-
<td> </td>
|
48 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
49 |
-
<?php echo $paymentBlock->toHtml();?>
|
50 |
-
</td>
|
51 |
-
</tr>
|
52 |
-
</tbody>
|
53 |
-
</table>
|
54 |
-
<br/>
|
55 |
-
<?php if ($order->getIsNotVirtual()):?>
|
56 |
-
<table cellspacing="0" cellpadding="0" border="0" width="100%">
|
57 |
-
<thead>
|
58 |
-
<tr>
|
59 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Information:</th>
|
60 |
-
<th width="10"></th>
|
61 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Method:</th>
|
62 |
-
</tr>
|
63 |
-
</thead>
|
64 |
-
<tbody>
|
65 |
-
<tr>
|
66 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
67 |
-
<?php echo $order->getShippingAddress()->format('html');?>
|
68 |
-
|
69 |
-
</td>
|
70 |
-
<td> </td>
|
71 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
72 |
-
<?php echo $this->escapeHtml($order->getShippingDescription());?>
|
73 |
-
</td>
|
74 |
-
</tr>
|
75 |
-
</tbody>
|
76 |
-
</table>
|
77 |
-
<br/>
|
78 |
-
<?php endif;?>
|
79 |
-
<?php echo $this->getChildHtml('connector_order_items');?>
|
80 |
-
</td>
|
81 |
-
</tr>
|
82 |
-
<tr>
|
83 |
-
</tr>
|
84 |
-
</table>
|
85 |
-
</td>
|
86 |
-
</tr>
|
87 |
-
</table>
|
88 |
-
</div>
|
89 |
-
</body>
|
90 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,83 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
$order = $this->getOrder();
|
3 |
-
?>
|
4 |
-
<?php if($order): ?>
|
5 |
-
<?php
|
6 |
-
$invoice = $order->getInvoiceCollection()->getLastItem();
|
7 |
-
$billing = $order->getBillingAddress();
|
8 |
-
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment());
|
9 |
-
?>
|
10 |
-
<style>
|
11 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
12 |
-
</style>
|
13 |
-
<body style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
14 |
-
<div style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
15 |
-
<table cellspacing="0" cellpadding="0" border="0" height="100%" width="100%">
|
16 |
-
<tr>
|
17 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
18 |
-
<!-- [ header starts here] -->
|
19 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
20 |
-
<!-- [ middle starts here] -->
|
21 |
-
<tr>
|
22 |
-
<td>
|
23 |
-
<h2 style="font-size:18px; font-weight:normal; margin:0;">Your Invoice #<?php echo $invoice->getIncrementId();?> for Order #<?php echo $order->getIncrementId();?></h2>
|
24 |
-
</td>
|
25 |
-
</tr>
|
26 |
-
<tr>
|
27 |
-
<td>
|
28 |
-
<table cellspacing="0" cellpadding="0" border="0" width="650">
|
29 |
-
<thead>
|
30 |
-
<tr>
|
31 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Billing Information:</th>
|
32 |
-
<th width="10"></th>
|
33 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Payment Method:</th>
|
34 |
-
</tr>
|
35 |
-
</thead>
|
36 |
-
<tbody>
|
37 |
-
<tr>
|
38 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
39 |
-
<?php echo $billing->format('html');?>
|
40 |
-
</td>
|
41 |
-
<td> </td>
|
42 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
43 |
-
<?php echo $paymentBlock->toHtml();?>
|
44 |
-
</td>
|
45 |
-
</tr>
|
46 |
-
</tbody>
|
47 |
-
</table>
|
48 |
-
<br/>
|
49 |
-
<?php if($order->getIsNotVirtual()):?>
|
50 |
-
<table cellspacing="0" cellpadding="0" border="0" width="650">
|
51 |
-
<thead>
|
52 |
-
<tr>
|
53 |
-
<th align="left" width="650" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Information:</th>
|
54 |
-
<th width="10"></th>
|
55 |
-
<th align="left" width="650" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Method:</th>
|
56 |
-
</tr>
|
57 |
-
</thead>
|
58 |
-
<tbody>
|
59 |
-
<tr>
|
60 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
61 |
-
<?php echo $order->getShippingAddress()->format('html');?>
|
62 |
-
|
63 |
-
</td>
|
64 |
-
<td> </td>
|
65 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
66 |
-
<?php echo $this->escapeHtml($order->getShippingDescription());?>
|
67 |
-
|
68 |
-
</td>
|
69 |
-
</tr>
|
70 |
-
</tbody>
|
71 |
-
</table>
|
72 |
-
<br/>
|
73 |
-
<?php endif;?>
|
74 |
-
<?php echo $this->getChildHtml('connector_order_items');?>
|
75 |
-
</td>
|
76 |
-
</tr>
|
77 |
-
</table>
|
78 |
-
</td>
|
79 |
-
</tr>
|
80 |
-
</table>
|
81 |
-
</div>
|
82 |
-
</body>
|
83 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,36 +0,0 @@
|
|
1 |
-
<?php $order = $this->getOrder(); ?>
|
2 |
-
<?php if($order): ?>
|
3 |
-
<?php
|
4 |
-
$invoice = $order->getInvoiceCollection()->getLastItem();
|
5 |
-
$comment = $invoice->getCommentsCollection()->getFirstItem()->getComment();
|
6 |
-
$billing = $order->getBillingAddress();
|
7 |
-
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment());
|
8 |
-
?>
|
9 |
-
<style>
|
10 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
11 |
-
</style>
|
12 |
-
<body style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
13 |
-
<div style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
14 |
-
<table cellspacing="0" cellpadding="0" border="0" height="100%" width="100%">
|
15 |
-
<tr>
|
16 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
17 |
-
<!-- [ header starts here] -->
|
18 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
19 |
-
<!-- [ middle starts here] -->
|
20 |
-
<tr>
|
21 |
-
<td valign="top">
|
22 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;">
|
23 |
-
Your order # <?php echo $order->getIncrementId();?> has been <br/>
|
24 |
-
<strong><?php echo $order->getStatusLabel();?></strong>.
|
25 |
-
</p>
|
26 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;">You can check the status of your order by <a href="<?php echo $this->getBaseUrl();?>customer/account/"}}" style="color:#1E7EC8;">logging into your account</a>.</p>
|
27 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;"><?php echo $this->escapeHtml($comment);?></p>
|
28 |
-
</td>
|
29 |
-
</tr>
|
30 |
-
</table>
|
31 |
-
</td>
|
32 |
-
</tr>
|
33 |
-
</table>
|
34 |
-
</div>
|
35 |
-
</body>
|
36 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,37 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
$order = $this->getOrder();
|
3 |
-
?>
|
4 |
-
<?php if($order): ?>
|
5 |
-
<?php
|
6 |
-
$invoice = $order->getInvoiceCollection()->getLastItem();
|
7 |
-
$comment = $invoice->getCommentsCollection()->getFirstItem()->getComment();
|
8 |
-
$billing = $order->getBillingAddress();
|
9 |
-
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment());
|
10 |
-
?>
|
11 |
-
<style>
|
12 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
13 |
-
</style>
|
14 |
-
<body style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
15 |
-
<div style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
16 |
-
<table cellspacing="0" cellpadding="0" border="0" height="100%" width="100%">
|
17 |
-
<tr>
|
18 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
19 |
-
<!-- [ header starts here] -->
|
20 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
21 |
-
<!-- [ middle starts here] -->
|
22 |
-
<tr>
|
23 |
-
<td valign="top">
|
24 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;">
|
25 |
-
Your order # <?php echo $order->getIncrementId();?> has been <br/>
|
26 |
-
<strong><?php echo $order->getStatusLabel();?></strong>.
|
27 |
-
</p>
|
28 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;"><?php echo $this->escapeHtml($comment);?></p>
|
29 |
-
</td>
|
30 |
-
</tr>
|
31 |
-
</table>
|
32 |
-
</td>
|
33 |
-
</tr>
|
34 |
-
</table>
|
35 |
-
</div>
|
36 |
-
</body>
|
37 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,138 +0,0 @@
|
|
1 |
-
<?php $_order = $this->getOrder() ?>
|
2 |
-
<table cellspacing="0" cellpadding="0" border="0" width="650">
|
3 |
-
<thead>
|
4 |
-
<tr>
|
5 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Item</th>
|
6 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">SKU</th>
|
7 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Qty</th>
|
8 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Subtotal</th>
|
9 |
-
</tr>
|
10 |
-
</thead>
|
11 |
-
<tbody>
|
12 |
-
|
13 |
-
|
14 |
-
<?php $i=0; foreach ($_order->getAllItems() as $_item): $i++ ?>
|
15 |
-
<?php
|
16 |
-
if($_item->getParentItemId()) continue;?>
|
17 |
-
<tr <?php echo $i%2?'bgcolor="#eeeded"':'' ?>>
|
18 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;" width="70%"><?php echo $_item->getName() ?></td>
|
19 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;"><?php echo $_item->getSku();?></td>
|
20 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;"><?php echo sprintf('%s', $_item->getQtyOrdered()) ?></td>
|
21 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
22 |
-
<?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
|
23 |
-
<?php if ($this->helper('tax')->displayCartBothPrices()): ?>
|
24 |
-
<span class="label"><?php echo $this->__('Excl. Tax'); ?>:</span>
|
25 |
-
<?php endif; ?>
|
26 |
-
<?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'email', $_order->getStore())): ?>
|
27 |
-
<?php echo $_order->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?>
|
28 |
-
<?php else: ?>
|
29 |
-
<?php echo $_order->formatPrice($_item->getRowTotal()) ?>
|
30 |
-
<?php endif; ?>
|
31 |
-
|
32 |
-
<?php if (Mage::helper('weee')->getApplied($_item)): ?>
|
33 |
-
<br />
|
34 |
-
<?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'email', $_order->getStore())): ?>
|
35 |
-
<small>
|
36 |
-
<?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
|
37 |
-
<span class="nobr"><?php echo $tax['title']; ?>: <?php echo $_order->formatPrice($tax['row_amount'],true,true); ?></span><br />
|
38 |
-
<?php endforeach; ?>
|
39 |
-
</small>
|
40 |
-
<?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'email', $_order->getStore())): ?>
|
41 |
-
<?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
|
42 |
-
<span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo $_order->formatPrice($tax['row_amount_incl_tax'],true,true); ?></small></span><br />
|
43 |
-
<?php endforeach; ?>
|
44 |
-
<?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'email', $_order->getStore())): ?>
|
45 |
-
<small>
|
46 |
-
<?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
|
47 |
-
<span class="nobr"><?php echo $tax['title']; ?>: <?php echo $_order->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span><br />
|
48 |
-
<?php endforeach; ?>
|
49 |
-
</small>
|
50 |
-
<?php endif; ?>
|
51 |
-
|
52 |
-
<?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'email', $_order->getStore())): ?>
|
53 |
-
<br />
|
54 |
-
<span class="nobr"><?php echo Mage::helper('weee')->__('Total'); ?>:<br /> <?php echo $_order->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?></span>
|
55 |
-
<?php endif; ?>
|
56 |
-
<?php endif; ?>
|
57 |
-
<?php endif; ?>
|
58 |
-
|
59 |
-
|
60 |
-
<?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
|
61 |
-
<?php if ($this->helper('tax')->displayCartBothPrices()): ?>
|
62 |
-
<br /><span class="label"><?php echo $this->__('Incl. Tax'); ?>:</span>
|
63 |
-
<?php endif; ?>
|
64 |
-
<?php $_incl = $this->helper('checkout')->getSubtotalInclTax($_item); ?>
|
65 |
-
<?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'email', $_order->getStore())): ?>
|
66 |
-
<?php echo $_order->formatPrice($_incl+$_item->getWeeeTaxAppliedRowAmount()); ?>
|
67 |
-
<?php else: ?>
|
68 |
-
<?php echo $_order->formatPrice($_incl-$_item->getWeeeTaxRowDisposition()) ?>
|
69 |
-
<?php endif; ?>
|
70 |
-
<?php if (Mage::helper('weee')->getApplied($_item)): ?>
|
71 |
-
<br />
|
72 |
-
<?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'email', $_order->getStore())): ?>
|
73 |
-
<small>
|
74 |
-
<?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
|
75 |
-
<span class="nobr"><?php echo $tax['title']; ?>: <?php echo $_order->formatPrice($tax['row_amount'],true,true); ?></span><br />
|
76 |
-
<?php endforeach; ?>
|
77 |
-
</small>
|
78 |
-
<?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'email', $_order->getStore())): ?>
|
79 |
-
<?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
|
80 |
-
<span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo $_order->formatPrice($tax['row_amount_incl_tax'],true,true); ?></small></span><br />
|
81 |
-
<?php endforeach; ?>
|
82 |
-
<?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'email', $_order->getStore())): ?>
|
83 |
-
<small>
|
84 |
-
<?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
|
85 |
-
<span class="nobr"><?php echo $tax['title']; ?>: <?php echo $_order->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span><br />
|
86 |
-
<?php endforeach; ?>
|
87 |
-
</small>
|
88 |
-
<?php endif; ?>
|
89 |
-
|
90 |
-
<?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'email', $_order->getStore())): ?>
|
91 |
-
<span class="nobr"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>:<br /> <?php echo $_order->formatPrice($_incl+$_item->getWeeeTaxAppliedRowAmount()); ?></span>
|
92 |
-
<?php endif; ?>
|
93 |
-
<?php endif; ?>
|
94 |
-
<?php endif; ?>
|
95 |
-
</td>
|
96 |
-
</tr>
|
97 |
-
<?php endforeach ?>
|
98 |
-
|
99 |
-
</tbody>
|
100 |
-
<tfoot>
|
101 |
-
|
102 |
-
<tr>
|
103 |
-
<td></td>
|
104 |
-
<td colspan="2" align="right" style="padding:3px 9px"><?php echo Mage::helper('sales')->__('Subtotal') ?></td>
|
105 |
-
<td align="right" style="padding:3px 9px"><?php echo $_order->formatPrice($_order->getSubtotal()) ?></td>
|
106 |
-
</tr>
|
107 |
-
<?php
|
108 |
-
|
109 |
-
if ($_order->getDiscountAmount() > 0): ?>
|
110 |
-
<tr>
|
111 |
-
<td></td>
|
112 |
-
<td colspan="2" align="right" style="padding:3px 9px"><?php echo Mage::helper('sales')->__('Discount') ?></td>
|
113 |
-
<td align="right" style="padding:3px 9px"><?php echo $_order->formatPrice($_order->getDiscountAmount()) ?></td>
|
114 |
-
</tr>
|
115 |
-
<?php endif; ?>
|
116 |
-
<?php if ($_order->getShippingAmount() > 0): ?>
|
117 |
-
<tr>
|
118 |
-
<td></td>
|
119 |
-
<td colspan="2" align="right" style="padding:3px 9px"><?php echo Mage::helper('sales')->__('Shipping Amount') ?></td>
|
120 |
-
<td align="right" style="padding:3px 9px"><?php echo $_order->formatPrice($_order->getShippingAmount()) ?></td>
|
121 |
-
</tr>
|
122 |
-
<?php endif; ?>
|
123 |
-
<?php if ($_order->getTaxAmount() > 0): ?>
|
124 |
-
<tr>
|
125 |
-
<td></td>
|
126 |
-
<td colspan="2" align="right" style="padding:3px 9px"><?php echo Mage::helper('sales')->__('Tax Amount') ?></td>
|
127 |
-
<td align="right" style="padding:3px 9px"><?php echo $_order->formatPrice($_order->getTaxAmount()) ?></td>
|
128 |
-
</tr>
|
129 |
-
<?php endif; ?>
|
130 |
-
<tr>
|
131 |
-
<td></td>
|
132 |
-
<td colspan="2" align="right" style="padding:3px 9px"><strong><?php echo Mage::helper('sales')->__('Grand Total') ?></strong></td>
|
133 |
-
<td align="right" style="padding:6px 9px"><strong><?php echo $_order->formatPrice($_order->getGrandTotal()) ?></strong></td>
|
134 |
-
</tr>
|
135 |
-
</tfoot>
|
136 |
-
</table>
|
137 |
-
|
138 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,82 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
$order = $this->getOrder();
|
3 |
-
?>
|
4 |
-
<?php if($order): ?>
|
5 |
-
<?php
|
6 |
-
$storeId = Mage::app()->getStore()->getId();
|
7 |
-
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment());
|
8 |
-
$paymentBlock->getMethod()->setStore($storeId);
|
9 |
-
?>
|
10 |
-
<style>
|
11 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
12 |
-
</style>
|
13 |
-
<body style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
14 |
-
<div style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
15 |
-
<table cellspacing="0" cellpadding="0" border="0" width="100%">
|
16 |
-
<tr>
|
17 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
18 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
19 |
-
<tr>
|
20 |
-
<td>
|
21 |
-
<h2 style="font-size:18px; font-weight:normal; margin:0;">Your Order #<?php echo $order->getIncrementId();?> <small>(placed on <?php echo $order->getCreatedAtFormated('long');?>)</small></h2>
|
22 |
-
</td>
|
23 |
-
</tr>
|
24 |
-
<tr>
|
25 |
-
<td>
|
26 |
-
<table cellspacing="0" cellpadding="0" border="0" width="650">
|
27 |
-
<thead>
|
28 |
-
<tr>
|
29 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Billing Information:</th>
|
30 |
-
<th width="10"></th>
|
31 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Payment Method:</th>
|
32 |
-
</tr>
|
33 |
-
</thead>
|
34 |
-
<tbody>
|
35 |
-
<tr>
|
36 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
37 |
-
<?php echo $order->getBillingAddress()->format('html');?>
|
38 |
-
</td>
|
39 |
-
<td> </td>
|
40 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
41 |
-
<?php echo $paymentBlock->toHtml();?>
|
42 |
-
</td>
|
43 |
-
</tr>
|
44 |
-
</tbody>
|
45 |
-
</table>
|
46 |
-
<br/>
|
47 |
-
<?php if($order->getIsNotVirtual()):?>
|
48 |
-
<table cellspacing="0" cellpadding="0" border="0" width="650">
|
49 |
-
<thead>
|
50 |
-
<tr>
|
51 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Information:</th>
|
52 |
-
<th width="10"></th>
|
53 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Method:</th>
|
54 |
-
</tr>
|
55 |
-
</thead>
|
56 |
-
<tbody>
|
57 |
-
<tr>
|
58 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
59 |
-
<?php echo $order->getShippingAddress()->format('html');?>
|
60 |
-
|
61 |
-
</td>
|
62 |
-
<td> </td>
|
63 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
64 |
-
<?php echo $this->escapeHtml($order->getShippingDescription());?>
|
65 |
-
|
66 |
-
</td>
|
67 |
-
</tr>
|
68 |
-
</tbody>
|
69 |
-
</table>
|
70 |
-
<br/>
|
71 |
-
<?php endif;?>
|
72 |
-
<?php echo $this->getChildHtml('connector_order_items');?>
|
73 |
-
<p style="font-size:12px; margin:0 0 10px 0"><?php echo $order->getEmailCustomerNote();?></p>
|
74 |
-
</td>
|
75 |
-
</tr>
|
76 |
-
</table>
|
77 |
-
</td>
|
78 |
-
</tr>
|
79 |
-
</table>
|
80 |
-
</div>
|
81 |
-
</body>
|
82 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,84 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
$order = $this->getOrder();
|
3 |
-
?>
|
4 |
-
<?php if($order): ?>
|
5 |
-
<?php
|
6 |
-
$storeId = Mage::app()->getStore()->getId();
|
7 |
-
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment());
|
8 |
-
$paymentBlock->getMethod()->setStore($storeId);
|
9 |
-
?>
|
10 |
-
<style>
|
11 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
12 |
-
</style>
|
13 |
-
<body style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
14 |
-
<div style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
15 |
-
<table cellspacing="0" cellpadding="0" border="0" width="100%">
|
16 |
-
<tr>
|
17 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
18 |
-
<!-- [ header starts here] -->
|
19 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
20 |
-
<!-- [ middle starts here] -->
|
21 |
-
<tr>
|
22 |
-
<td>
|
23 |
-
<h2 style="font-size:18px; font-weight:normal; margin:0;">Your Order #<?php echo $order->getIncrementId();?> <small>(placed on <?php echo $order->getCreatedAtFormated('long');?>)</small></h2>
|
24 |
-
</td>
|
25 |
-
</tr>
|
26 |
-
<tr>
|
27 |
-
<td>
|
28 |
-
<table cellspacing="0" cellpadding="0" border="0" width="650">
|
29 |
-
<thead>
|
30 |
-
<tr>
|
31 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Billing Information:</th>
|
32 |
-
<th width="10"></th>
|
33 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Payment Method:</th>
|
34 |
-
</tr>
|
35 |
-
</thead>
|
36 |
-
<tbody>
|
37 |
-
<tr>
|
38 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
39 |
-
<?php echo $order->getBillingAddress()->format('html');?>
|
40 |
-
</td>
|
41 |
-
<td> </td>
|
42 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
43 |
-
<?php echo $paymentBlock->toHtml();?>
|
44 |
-
</td>
|
45 |
-
</tr>
|
46 |
-
</tbody>
|
47 |
-
</table>
|
48 |
-
<br/>
|
49 |
-
<?php if($order->getIsNotVirtual()):?>
|
50 |
-
<table cellspacing="0" cellpadding="0" border="0" width="100%">
|
51 |
-
<thead>
|
52 |
-
<tr>
|
53 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Information:</th>
|
54 |
-
<th width="10"></th>
|
55 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Method:</th>
|
56 |
-
</tr>
|
57 |
-
</thead>
|
58 |
-
<tbody>
|
59 |
-
<tr>
|
60 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
61 |
-
<?php echo $order->getShippingAddress()->format('html');?>
|
62 |
-
|
63 |
-
</td>
|
64 |
-
<td> </td>
|
65 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
66 |
-
<?php echo $this->escapeHtml($order->getShippingDescription());?>
|
67 |
-
|
68 |
-
</td>
|
69 |
-
</tr>
|
70 |
-
</tbody>
|
71 |
-
</table>
|
72 |
-
<br/>
|
73 |
-
<?php endif;?>
|
74 |
-
<?php echo $this->getChildHtml('connector_order_items');?>
|
75 |
-
<p style="font-size:12px; margin:0 10px 10px 0"><?php echo $order->getEmailCustomerNote();?></p>
|
76 |
-
</td>
|
77 |
-
</tr>
|
78 |
-
</table>
|
79 |
-
</td>
|
80 |
-
</tr>
|
81 |
-
</table>
|
82 |
-
</div>
|
83 |
-
</body>
|
84 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,36 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
$order = $this->getOrder();
|
3 |
-
?>
|
4 |
-
<?php if($order): ?>
|
5 |
-
<?php
|
6 |
-
$allstatues = $order->getAllStatusHistory();
|
7 |
-
$comment = (isset($allstatues[0]))? $allstatues[0]->getComment() : '';
|
8 |
-
?>
|
9 |
-
<style>
|
10 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
11 |
-
</style>
|
12 |
-
<body style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
13 |
-
<div style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
14 |
-
<table cellspacing="0" cellpadding="0" border="0" height="100%" width="100%">
|
15 |
-
<tr>
|
16 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
17 |
-
<!-- [ header starts here] -->
|
18 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
19 |
-
<!-- [ middle starts here] -->
|
20 |
-
<tr>
|
21 |
-
<td valign="top">
|
22 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;">
|
23 |
-
Your order # <?php echo $order->getIncrementId();?> has been <br/>
|
24 |
-
<strong><?php echo $order->getStatusLabel();?></strong>.
|
25 |
-
</p>
|
26 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;">You can check the status of your order by <a href="<?php echo $this->getBaseUrl();?>customer/account/" style="color:#1E7EC8;">logging into your account</a>.</p>
|
27 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;"><?php echo $this->escapeHtml($comment);?></p>
|
28 |
-
</td>
|
29 |
-
</tr>
|
30 |
-
</table>
|
31 |
-
</td>
|
32 |
-
</tr>
|
33 |
-
</table>
|
34 |
-
</div>
|
35 |
-
</body>
|
36 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,37 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
$order = $this->getOrder();
|
3 |
-
?>
|
4 |
-
<?php if($order): ?>
|
5 |
-
<?php
|
6 |
-
$allstatues = $order->getAllStatusHistory();
|
7 |
-
$billing = $order->getBillingAddress();
|
8 |
-
$billingName = ($billing)? $billing->getName() : '';
|
9 |
-
$comment = (isset($allstatues[0]))? $allstatues[0]->getComment() : '';
|
10 |
-
?>
|
11 |
-
<style>
|
12 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
13 |
-
</style>
|
14 |
-
<body style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
15 |
-
<div style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
16 |
-
<table cellspacing="0" cellpadding="0" border="0" height="100%" width="100%">
|
17 |
-
<tr>
|
18 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
19 |
-
<!-- [ header starts here] -->
|
20 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
21 |
-
<!-- [ middle starts here] -->
|
22 |
-
<tr>
|
23 |
-
<td valign="top">
|
24 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;">
|
25 |
-
Your order # <?php echo $order->getIncrementId();?> has been <br/>
|
26 |
-
<strong><?php echo $order->getStatusLabel();?></strong>.
|
27 |
-
</p>
|
28 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;"><?php echo $this->escapeHtml($comment);?></p>
|
29 |
-
</td>
|
30 |
-
</tr>
|
31 |
-
</table>
|
32 |
-
</td>
|
33 |
-
</tr>
|
34 |
-
</table>
|
35 |
-
</div>
|
36 |
-
</body>
|
37 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -2,17 +2,18 @@
|
|
2 |
$i = 0;
|
3 |
$mode = $this->getMode();
|
4 |
$products = $this->getLoadedProductCollection();
|
5 |
-
|
6 |
-
|
7 |
-
<?php
|
|
|
8 |
$name_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_STYLE));
|
9 |
$price_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_STYLE));
|
10 |
$link_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_STYLE));
|
11 |
-
?>
|
12 |
-
<style>
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
<?php if(in_array('bold', $name_style)): ?>
|
17 |
font-weight: bold;
|
18 |
<?php endif; ?>
|
@@ -22,10 +23,10 @@ foreach ($products as $key => $_product) :?>
|
|
22 |
<?php if(in_array('underline', $name_style)): ?>
|
23 |
text-decoration: underline;
|
24 |
<?php endif; ?>
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
<?php if(in_array('bold', $price_style)): ?>
|
30 |
font-weight: bold;
|
31 |
<?php endif; ?>
|
@@ -35,10 +36,10 @@ foreach ($products as $key => $_product) :?>
|
|
35 |
<?php if(in_array('underline', $price_style)): ?>
|
36 |
text-decoration: underline;
|
37 |
<?php endif; ?>
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
<?php if(in_array('bold', $link_style)): ?>
|
43 |
font-weight: bold;
|
44 |
<?php endif; ?>
|
@@ -48,38 +49,41 @@ foreach ($products as $key => $_product) :?>
|
|
48 |
<?php if(in_array('underline', $link_style)): ?>
|
49 |
text-decoration: underline;
|
50 |
<?php endif; ?>
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
display: block;
|
59 |
-
margin-left: auto;
|
60 |
-
margin-right: auto
|
61 |
-
}
|
62 |
-
.product-table td{
|
63 |
-
width: 25%;
|
64 |
-
padding-bottom: 10px;
|
65 |
-
}
|
66 |
-
/** Styling from config field **/
|
67 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
68 |
-
/** Responsive **/
|
69 |
-
@media (max-width: 760px) {
|
70 |
-
/* Force table to not be like tables anymore */
|
71 |
-
table, thead, tbody, th, td, tr {
|
72 |
display: block;
|
|
|
|
|
73 |
}
|
74 |
.product-table td{
|
75 |
-
width:
|
|
|
76 |
}
|
77 |
-
|
78 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
79 |
}
|
80 |
-
|
81 |
-
|
82 |
|
|
|
|
|
83 |
<table class="product-table" border="0" width="147" cellpadding="0" cellspacing="0" style='border-collapse: collapse; font-size:12;'><tr>
|
84 |
<?php endif;?>
|
85 |
<?php if($mode == 'list'):?>
|
@@ -87,7 +91,10 @@ foreach ($products as $key => $_product) :?>
|
|
87 |
<?php endif;?>
|
88 |
|
89 |
<td style="vertical-align: text-top; padding-right: 2px;">
|
90 |
-
<a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>"
|
|
|
|
|
|
|
91 |
<div class="product-name" align="center"><b><?php echo $this->escapeHtml(substr($_product->getName(), 0, 40));?></b></div>
|
92 |
<div class="product-price" align="center"><?php echo $this->getPriceHtml($_product, true) ?></div>
|
93 |
<div align="center">
|
2 |
$i = 0;
|
3 |
$mode = $this->getMode();
|
4 |
$products = $this->getLoadedProductCollection();
|
5 |
+
?>
|
6 |
+
|
7 |
+
<?php if(!empty($products)): ?>
|
8 |
+
<?php
|
9 |
$name_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_STYLE));
|
10 |
$price_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_STYLE));
|
11 |
$link_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_STYLE));
|
12 |
+
?>
|
13 |
+
<style>
|
14 |
+
.product-name{
|
15 |
+
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_COLOR);?>;
|
16 |
+
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_FONT_SIZE);?>;
|
17 |
<?php if(in_array('bold', $name_style)): ?>
|
18 |
font-weight: bold;
|
19 |
<?php endif; ?>
|
23 |
<?php if(in_array('underline', $name_style)): ?>
|
24 |
text-decoration: underline;
|
25 |
<?php endif; ?>
|
26 |
+
}
|
27 |
+
.product-price{
|
28 |
+
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_COLOR);?>;
|
29 |
+
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_FONT_SIZE);?>;
|
30 |
<?php if(in_array('bold', $price_style)): ?>
|
31 |
font-weight: bold;
|
32 |
<?php endif; ?>
|
36 |
<?php if(in_array('underline', $price_style)): ?>
|
37 |
text-decoration: underline;
|
38 |
<?php endif; ?>
|
39 |
+
}
|
40 |
+
.proudct-url{
|
41 |
+
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_COLOR);?>;
|
42 |
+
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_FONT_SIZE);?>;
|
43 |
<?php if(in_array('bold', $link_style)): ?>
|
44 |
font-weight: bold;
|
45 |
<?php endif; ?>
|
49 |
<?php if(in_array('underline', $link_style)): ?>
|
50 |
text-decoration: underline;
|
51 |
<?php endif; ?>
|
52 |
+
}
|
53 |
+
.product-table{
|
54 |
+
font-family: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_DOC_FONT);?>;
|
55 |
+
background-color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_DOC_BG_COLOR);?>;
|
56 |
+
width: 100%;
|
57 |
+
}
|
58 |
+
.product-table img{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
59 |
display: block;
|
60 |
+
margin-left: auto;
|
61 |
+
margin-right: auto
|
62 |
}
|
63 |
.product-table td{
|
64 |
+
width: 25%;
|
65 |
+
padding-bottom: 10px;
|
66 |
}
|
67 |
+
/** Styling from config field **/
|
68 |
+
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
69 |
+
/** Responsive **/
|
70 |
+
@media (max-width: 760px) {
|
71 |
+
/* Force table to not be like tables anymore */
|
72 |
+
table, thead, tbody, th, td, tr {
|
73 |
+
display: block;
|
74 |
+
}
|
75 |
+
.product-table td{
|
76 |
+
width: 172px !important;
|
77 |
+
}
|
78 |
+
.product-table {
|
79 |
+
width: auto !important;
|
80 |
+
}
|
81 |
}
|
82 |
+
</style>
|
83 |
+
<?php endif; ?>
|
84 |
|
85 |
+
<?php foreach ($products as $key => $_product) :?>
|
86 |
+
<?php if($i == 0):?>
|
87 |
<table class="product-table" border="0" width="147" cellpadding="0" cellspacing="0" style='border-collapse: collapse; font-size:12;'><tr>
|
88 |
<?php endif;?>
|
89 |
<?php if($mode == 'list'):?>
|
91 |
<?php endif;?>
|
92 |
|
93 |
<td style="vertical-align: text-top; padding-right: 2px;">
|
94 |
+
<a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>"
|
95 |
+
class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>"
|
96 |
+
width="140" height="135" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" align="middle" /></a>
|
97 |
+
|
98 |
<div class="product-name" align="center"><b><?php echo $this->escapeHtml(substr($_product->getName(), 0, 40));?></b></div>
|
99 |
<div class="product-price" align="center"><?php echo $this->getPriceHtml($_product, true) ?></div>
|
100 |
<div align="center">
|
@@ -3,4 +3,4 @@
|
|
3 |
<div class="nosto_element" id="<?php echo $slot; ?>">
|
4 |
<?php echo $products; ?>
|
5 |
</div>
|
6 |
-
<?php endif;
|
3 |
<div class="nosto_element" id="<?php echo $slot; ?>">
|
4 |
<?php echo $products; ?>
|
5 |
</div>
|
6 |
+
<?php endif;
|
@@ -1,123 +1,125 @@
|
|
1 |
<?php
|
2 |
$i = 0;
|
3 |
-
$helper = Mage::helper('ddg
|
4 |
$order = $this->getOrder();
|
5 |
?>
|
6 |
<?php if($order): ?>
|
|
|
7 |
<?php
|
8 |
-
$
|
9 |
-
$
|
10 |
-
$
|
11 |
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
|
13 |
-
<?php
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
<?php if(in_array('bold', $name_style)): ?>
|
27 |
-
font-weight: bold;
|
28 |
-
<?php endif; ?>
|
29 |
-
<?php if(in_array('italic', $name_style)): ?>
|
30 |
-
font-style: italic;
|
31 |
-
<?php endif; ?>
|
32 |
-
<?php if(in_array('underline', $name_style)): ?>
|
33 |
-
text-decoration: underline;
|
34 |
-
<?php endif; ?>
|
35 |
-
}
|
36 |
-
.product-price{
|
37 |
-
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_COLOR);?>;
|
38 |
-
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_FONT_SIZE);?>;
|
39 |
-
<?php if(in_array('bold', $price_style)): ?>
|
40 |
-
font-weight: bold;
|
41 |
-
<?php endif; ?>
|
42 |
-
<?php if(in_array('italic', $price_style)): ?>
|
43 |
-
font-style: italic;
|
44 |
-
<?php endif; ?>
|
45 |
-
<?php if(in_array('underline', $price_style)): ?>
|
46 |
-
text-decoration: underline;
|
47 |
-
<?php endif; ?>
|
48 |
-
}
|
49 |
-
.proudct-url{
|
50 |
-
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_COLOR);?>;
|
51 |
-
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_FONT_SIZE);?>;
|
52 |
-
<?php if(in_array('bold', $link_style)): ?>
|
53 |
-
font-weight: bold;
|
54 |
-
<?php endif; ?>
|
55 |
-
<?php if(in_array('italic', $link_style)): ?>
|
56 |
-
font-style: italic;
|
57 |
-
<?php endif; ?>
|
58 |
-
<?php if(in_array('underline', $link_style)): ?>
|
59 |
-
text-decoration: underline;
|
60 |
-
<?php endif; ?>
|
61 |
-
}
|
62 |
-
.product-table{
|
63 |
-
font-family: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_DOC_FONT);?>;
|
64 |
-
background-color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_DOC_BG_COLOR);?>;
|
65 |
-
width: 100%;
|
66 |
-
}
|
67 |
-
.product-table img{
|
68 |
-
display: block;
|
69 |
-
margin-left: auto;
|
70 |
-
margin-right: auto
|
71 |
-
}
|
72 |
-
.product-table td{
|
73 |
-
width: 25%;
|
74 |
-
padding-bottom: 10px;
|
75 |
-
}
|
76 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
77 |
-
/** Responsive **/
|
78 |
-
@media (max-width: 760px) {
|
79 |
-
/* Force table to not be like tables anymore */
|
80 |
-
table, thead, tbody, th, td, tr {
|
81 |
-
display: block;
|
82 |
-
}
|
83 |
-
.product-table td{
|
84 |
-
width: 172px !important;
|
85 |
-
}
|
86 |
-
.product-table table{
|
87 |
-
width: auto !important;
|
88 |
-
}
|
89 |
-
}
|
90 |
-
</style>
|
91 |
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
|
|
|
|
97 |
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
|
|
|
|
|
|
|
|
|
|
103 |
</a>
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
</a>
|
114 |
-
</div>
|
115 |
-
</td>
|
116 |
|
117 |
-
<?php if($i++ % 4 ==3 && $mode == 'grid'):?></tr><tr><?php endif;?>
|
118 |
-
<?php endforeach;?>
|
119 |
-
<?php if( $i > 0):?>
|
120 |
-
</table>
|
121 |
-
<?php endif;?>
|
122 |
-
<?php endif; ?>
|
123 |
-
<?php endif; ?>
|
1 |
<?php
|
2 |
$i = 0;
|
3 |
+
$helper = Mage::helper('ddg');
|
4 |
$order = $this->getOrder();
|
5 |
?>
|
6 |
<?php if($order): ?>
|
7 |
+
|
8 |
<?php
|
9 |
+
$name_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_STYLE));
|
10 |
+
$price_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_STYLE));
|
11 |
+
$link_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_STYLE));
|
12 |
?>
|
13 |
+
<style>
|
14 |
+
.product-name{
|
15 |
+
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_COLOR);?>;
|
16 |
+
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_FONT_SIZE);?>;
|
17 |
+
<?php if(in_array('bold', $name_style)): ?>
|
18 |
+
font-weight: bold;
|
19 |
+
<?php endif; ?>
|
20 |
+
<?php if(in_array('italic', $name_style)): ?>
|
21 |
+
font-style: italic;
|
22 |
+
<?php endif; ?>
|
23 |
+
<?php if(in_array('underline', $name_style)): ?>
|
24 |
+
text-decoration: underline;
|
25 |
+
<?php endif; ?>
|
26 |
+
}
|
27 |
+
.product-price{
|
28 |
+
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_COLOR);?>;
|
29 |
+
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_FONT_SIZE);?>;
|
30 |
+
<?php if(in_array('bold', $price_style)): ?>
|
31 |
+
font-weight: bold;
|
32 |
+
<?php endif; ?>
|
33 |
+
<?php if(in_array('italic', $price_style)): ?>
|
34 |
+
font-style: italic;
|
35 |
+
<?php endif; ?>
|
36 |
+
<?php if(in_array('underline', $price_style)): ?>
|
37 |
+
text-decoration: underline;
|
38 |
+
<?php endif; ?>
|
39 |
+
}
|
40 |
+
.proudct-url{
|
41 |
+
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_COLOR);?>;
|
42 |
+
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_FONT_SIZE);?>;
|
43 |
+
<?php if(in_array('bold', $link_style)): ?>
|
44 |
+
font-weight: bold;
|
45 |
+
<?php endif; ?>
|
46 |
+
<?php if(in_array('italic', $link_style)): ?>
|
47 |
+
font-style: italic;
|
48 |
+
<?php endif; ?>
|
49 |
+
<?php if(in_array('underline', $link_style)): ?>
|
50 |
+
text-decoration: underline;
|
51 |
+
<?php endif; ?>
|
52 |
+
}
|
53 |
+
.product-table{
|
54 |
+
font-family: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_DOC_FONT);?>;
|
55 |
+
background-color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_DOC_BG_COLOR);?>;
|
56 |
+
width: 100%;
|
57 |
+
}
|
58 |
+
.product-table img{
|
59 |
+
display: block;
|
60 |
+
margin-left: auto;
|
61 |
+
margin-right: auto
|
62 |
+
}
|
63 |
+
.product-table td{
|
64 |
+
width: 25%;
|
65 |
+
padding-bottom: 10px;
|
66 |
+
}
|
67 |
+
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
68 |
+
/** Responsive **/
|
69 |
+
@media (max-width: 760px) {
|
70 |
+
/* Force table to not be like tables anymore */
|
71 |
+
table, thead, tbody, th, td, tr {
|
72 |
+
display: block;
|
73 |
+
}
|
74 |
+
.product-table td{
|
75 |
+
width: 172px !important;
|
76 |
+
}
|
77 |
+
.product-table table{
|
78 |
+
width: auto !important;
|
79 |
+
}
|
80 |
+
}
|
81 |
+
</style>
|
82 |
|
83 |
+
<?php
|
84 |
+
$website = Mage::app()->getStore($order->getStoreId())->getWebsite();
|
85 |
+
$mode = $helper->getReviewDisplayType($website);
|
86 |
+
$items = $order->getAllVisibleItems();
|
87 |
+
$productIds = array();
|
88 |
+
//get the product ids for the collection
|
89 |
+
foreach ( $items as $item ) {
|
90 |
+
$productIds[] = $item->getProductId();
|
91 |
+
}
|
92 |
+
$items = Mage::getModel('catalog/product')->getCollection()
|
93 |
+
->addAttributeToSelect('*')
|
94 |
+
->addFieldToFilter('entity_id', array('in' => $productIds));
|
95 |
+
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
96 |
|
97 |
+
<?php foreach ($items as $item) :?>
|
98 |
+
<?php if($i == 0):?>
|
99 |
+
<table class="product-table" border="0" width="147" cellpadding="0" cellspacing="0" style='border-collapse: collapse;'><tr>
|
100 |
+
<?php endif;?>
|
101 |
+
<?php if($mode == 'list'):?>
|
102 |
+
</tr><tr>
|
103 |
+
<?php endif;?>
|
104 |
|
105 |
+
<td style="vertical-align: text-top; padding-right: 2px;">
|
106 |
+
<a href="<?php echo Mage::getUrl('review/product/list', array('id'=> $item->getId())).$helper->getReviewReminderAnchor($website) ?>"
|
107 |
+
title="<?php echo $this->stripTags($this->getImageLabel($item, 'small_image'), null, true) ?>" class="product-image">
|
108 |
+
<img src="<?php echo $this->helper('catalog/image')->init($item, 'small_image')->resize(135); ?>" width="140" height="135"
|
109 |
+
alt="<?php echo $this->stripTags($this->getImageLabel($item, 'small_image'), null, true) ?>" align="middle" />
|
110 |
+
</a>
|
111 |
+
<div class="product-name" align="center"><b><?php echo substr($item->getName(), 0, 40);?></b></div>
|
112 |
+
<div align="center">
|
113 |
+
<a class="proudct-url" href="<?php echo Mage::getUrl('review/product/list', array('id'=> $item->getId())) .
|
114 |
+
$helper->getReviewReminderAnchor($website);?>"><?php echo $this->__('Leave a review'); ?>
|
115 |
</a>
|
116 |
+
</div>
|
117 |
+
</td>
|
118 |
+
|
119 |
+
<?php if($i++ % 4 ==3 && $mode == 'grid'):?></tr><tr><?php endif;?>
|
120 |
+
<?php endforeach;?>
|
121 |
+
<?php if( $i > 0):?>
|
122 |
+
</table>
|
123 |
+
<?php endif;?>
|
124 |
+
<?php endif;
|
|
|
|
|
|
|
125 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,81 +0,0 @@
|
|
1 |
-
<?php $order = $this->getOrder(); ?>
|
2 |
-
<?php if($order): ?>
|
3 |
-
<?php
|
4 |
-
$shipping = $order->getShipmentsCollection()->getFirstItem();
|
5 |
-
$comment = $shipping->getCommentsCollection()->getFirstItem()->getComment();
|
6 |
-
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment());
|
7 |
-
?>
|
8 |
-
<style>
|
9 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
10 |
-
</style>
|
11 |
-
<body style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
12 |
-
<div style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
13 |
-
<table cellspacing="0" cellpadding="0" border="0" height="100%" width="100%">
|
14 |
-
<tr>
|
15 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
16 |
-
<!-- [ header starts here] -->
|
17 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
18 |
-
<!-- [ middle starts here] -->
|
19 |
-
<tr>
|
20 |
-
<td>
|
21 |
-
<h2 style="font-size:18px; font-weight:normal; margin:0;">Your Shipment #<?php echo $shipping->getIncrementId();?> for Order #<?php echo $order->getIncrementId();?></h2>
|
22 |
-
</td>
|
23 |
-
</tr>
|
24 |
-
<tr>
|
25 |
-
<td>
|
26 |
-
<table cellspacing="0" cellpadding="0" border="0" width="650">
|
27 |
-
<thead>
|
28 |
-
<tr>
|
29 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Billing Information:</th>
|
30 |
-
<th width="10"></th>
|
31 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Payment Method:</th>
|
32 |
-
</tr>
|
33 |
-
</thead>
|
34 |
-
<tbody>
|
35 |
-
<tr>
|
36 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
37 |
-
<?php echo $order->getBillingAddress()->format('html');?>
|
38 |
-
</td>
|
39 |
-
<td> </td>
|
40 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
41 |
-
<?php echo $paymentBlock->toHtml();?>
|
42 |
-
</td>
|
43 |
-
</tr>
|
44 |
-
</tbody>
|
45 |
-
</table>
|
46 |
-
<br/>
|
47 |
-
<table cellspacing="0" cellpadding="0" border="0" width="100%">
|
48 |
-
<thead>
|
49 |
-
<tr>
|
50 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Information:</th>
|
51 |
-
<th width="10"></th>
|
52 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Method:</th>
|
53 |
-
</tr>
|
54 |
-
</thead>
|
55 |
-
<tbody>
|
56 |
-
<tr>
|
57 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
58 |
-
<?php echo $order->getShippingAddress()->format('html');?>
|
59 |
-
|
60 |
-
</td>
|
61 |
-
<td> </td>
|
62 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
63 |
-
<?php echo $this->escapeHtml($order->getShippingDescription());?>
|
64 |
-
|
65 |
-
</td>
|
66 |
-
</tr>
|
67 |
-
</tbody>
|
68 |
-
</table>
|
69 |
-
<br/>
|
70 |
-
<?php echo $this->getChildHtml('connector_shipping_items');?>
|
71 |
-
<?php echo $this->getChildHtml('connector_shipping_track');?>
|
72 |
-
<p style="font-size:12px; margin:0 10px 10px 0"><?php echo $this->escapeHtml($comment);?></p>
|
73 |
-
</td>
|
74 |
-
</tr>
|
75 |
-
</table>
|
76 |
-
</td>
|
77 |
-
</tr>
|
78 |
-
</table>
|
79 |
-
</div>
|
80 |
-
</body>
|
81 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,82 +0,0 @@
|
|
1 |
-
<?php $order = $this->getOrder(); ?>
|
2 |
-
<?php if($order): ?>
|
3 |
-
<?php
|
4 |
-
$billing = $order->getBillingAddress();
|
5 |
-
$shipping = $order->getShipmentsCollection()->getFirstItem();
|
6 |
-
$comment = $shipping->getCommentsCollection()->getFirstItem()->getComment();
|
7 |
-
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment());
|
8 |
-
?>
|
9 |
-
<style>
|
10 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
11 |
-
</style>
|
12 |
-
<body style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
13 |
-
<div style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
14 |
-
<table cellspacing="0" cellpadding="0" border="0" height="100%" width="100%">
|
15 |
-
<tr>
|
16 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
17 |
-
<!-- [ header starts here] -->
|
18 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
19 |
-
<!-- [ middle starts here] -->
|
20 |
-
<tr>
|
21 |
-
<td>
|
22 |
-
<h2 style="font-size:18px; font-weight:normal; margin:0;">Your Shipment #<?php echo $shipping->getIncrementId();?> for Order #<?php echo $order->getIncrementId();?></h2>
|
23 |
-
</td>
|
24 |
-
</tr>
|
25 |
-
<tr>
|
26 |
-
<td>
|
27 |
-
<table cellspacing="0" cellpadding="0" border="0" width="650">
|
28 |
-
<thead>
|
29 |
-
<tr>
|
30 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Billing Information:</th>
|
31 |
-
<th width="10"></th>
|
32 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Payment Method:</th>
|
33 |
-
</tr>
|
34 |
-
</thead>
|
35 |
-
<tbody>
|
36 |
-
<tr>
|
37 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
38 |
-
<?php echo $order->getBillingAddress()->format('html');?>
|
39 |
-
</td>
|
40 |
-
<td> </td>
|
41 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
42 |
-
<?php echo $paymentBlock->toHtml();?>
|
43 |
-
</td>
|
44 |
-
</tr>
|
45 |
-
</tbody>
|
46 |
-
</table>
|
47 |
-
<br/>
|
48 |
-
<table cellspacing="0" cellpadding="0" border="0" width="100%">
|
49 |
-
<thead>
|
50 |
-
<tr>
|
51 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Information:</th>
|
52 |
-
<th width="10"></th>
|
53 |
-
<th align="left" width="325" bgcolor="#EAEAEA" style="font-size:13px; padding:5px 9px 6px 9px; line-height:1em;">Shipping Method:</th>
|
54 |
-
</tr>
|
55 |
-
</thead>
|
56 |
-
<tbody>
|
57 |
-
<tr>
|
58 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
59 |
-
<?php echo $order->getShippingAddress()->format('html');?>
|
60 |
-
|
61 |
-
</td>
|
62 |
-
<td> </td>
|
63 |
-
<td valign="top" style="font-size:12px; padding:7px 9px 9px 9px; border-left:1px solid #EAEAEA; border-bottom:1px solid #EAEAEA; border-right:1px solid #EAEAEA;">
|
64 |
-
<?php echo $order->getShippingDescription();?>
|
65 |
-
|
66 |
-
</td>
|
67 |
-
</tr>
|
68 |
-
</tbody>
|
69 |
-
</table>
|
70 |
-
<br/>
|
71 |
-
<?php echo $this->getChildHtml('connector_shipping_items');?>
|
72 |
-
<?php echo $this->getChildHtml('connector_shipping_track');?>
|
73 |
-
<p style="font-size:12px; margin:0 10px 10px 0"><?php echo $this->escapeHtml($comment);?></p>
|
74 |
-
</td>
|
75 |
-
</tr>
|
76 |
-
</table>
|
77 |
-
</td>
|
78 |
-
</tr>
|
79 |
-
</table>
|
80 |
-
</div>
|
81 |
-
</body>
|
82 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,35 +0,0 @@
|
|
1 |
-
<?php $order = $this->getOrder(); ?>
|
2 |
-
<?php if($order): ?>
|
3 |
-
<?php
|
4 |
-
$shipping = $order->getShipmentsCollection()->getFirstItem();
|
5 |
-
$comment = $shipping->getCommentsCollection()->getFirstItem()->getComment();
|
6 |
-
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment());
|
7 |
-
?>
|
8 |
-
<style>
|
9 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
10 |
-
</style>
|
11 |
-
<body style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
12 |
-
<div style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
13 |
-
<table cellspacing="0" cellpadding="0" border="0" height="100%" width="100%">
|
14 |
-
<tr>
|
15 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
16 |
-
<!-- [ header starts here] -->
|
17 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
18 |
-
<!-- [ middle starts here] -->
|
19 |
-
<tr>
|
20 |
-
<td valign="top">
|
21 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;">
|
22 |
-
Your order # <?php echo $order->getIncrementId();?> has been <br/>
|
23 |
-
<strong><?php echo $order->getStatusLabel();?></strong>.
|
24 |
-
</p>
|
25 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;">You can check the status of your order by <a href="<?php echo $this->getBaseUrl();?>customer/account/" style="color:#1E7EC8;">logging into your account</a>.</p>
|
26 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;"><?php echo $this->escapeHtml($comment);?></p>
|
27 |
-
</td>
|
28 |
-
</tr>
|
29 |
-
</table>
|
30 |
-
</td>
|
31 |
-
</tr>
|
32 |
-
</table>
|
33 |
-
</div>
|
34 |
-
</body>
|
35 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1,35 +0,0 @@
|
|
1 |
-
<?php $order = $this->getOrder(); ?>
|
2 |
-
<?php if($order): ?>
|
3 |
-
<?php
|
4 |
-
$billing = $order->getBillingAddress();
|
5 |
-
$shipping = $order->getShipmentsCollection()->getFirstItem();
|
6 |
-
$comment = $shipping->getCommentsCollection()->getFirstItem()->getComment();
|
7 |
-
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment());
|
8 |
-
?>
|
9 |
-
<style>
|
10 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
11 |
-
</style>
|
12 |
-
<body style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
13 |
-
<div style=" font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:0; padding:0;">
|
14 |
-
<table cellspacing="0" cellpadding="0" border="0" height="100%" width="100%">
|
15 |
-
<tr>
|
16 |
-
<td align="center" valign="top" style="padding:20px 0 20px 0">
|
17 |
-
<!-- [ header starts here] -->
|
18 |
-
<table bgcolor="#FFFFFF" cellspacing="0" cellpadding="10" border="0" width="650" style="border:1px solid #E0E0E0;">
|
19 |
-
<!-- [ middle starts here] -->
|
20 |
-
<tr>
|
21 |
-
<td valign="top">
|
22 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;">
|
23 |
-
Your order # <?php echo $order->getIncrementId();?> has been <br/>
|
24 |
-
<strong><?php echo $order->getStatusLabel();?></strong>.
|
25 |
-
</p>
|
26 |
-
<p style="font-size:12px; line-height:16px; margin:0 0 10px 0;"><?php echo $this->escapeHtml($comment);?></p>
|
27 |
-
</td>
|
28 |
-
</tr>
|
29 |
-
</table>
|
30 |
-
</td>
|
31 |
-
</tr>
|
32 |
-
</table>
|
33 |
-
</div>
|
34 |
-
</body>
|
35 |
-
<?php endif; ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -4,85 +4,86 @@
|
|
4 |
$items = $this->getWishlistItems();
|
5 |
?>
|
6 |
<?php if($items): ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
<?php foreach ($items as $item) :?>
|
8 |
<?php $_product = $item->getProduct(); ?>
|
9 |
<?php if($i == 0):?>
|
10 |
-
<?php
|
11 |
-
$name_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_STYLE));
|
12 |
-
$price_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_STYLE));
|
13 |
-
$link_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_STYLE));
|
14 |
-
?>
|
15 |
-
<style>
|
16 |
-
.product-name{
|
17 |
-
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_COLOR);?>;
|
18 |
-
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_FONT_SIZE);?>;
|
19 |
-
<?php if(in_array('bold', $name_style)): ?>
|
20 |
-
font-weight: bold;
|
21 |
-
<?php endif; ?>
|
22 |
-
<?php if(in_array('italic', $name_style)): ?>
|
23 |
-
font-style: italic;
|
24 |
-
<?php endif; ?>
|
25 |
-
<?php if(in_array('underline', $name_style)): ?>
|
26 |
-
text-decoration: underline;
|
27 |
-
<?php endif; ?>
|
28 |
-
}
|
29 |
-
.product-price{
|
30 |
-
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_COLOR);?>;
|
31 |
-
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_FONT_SIZE);?>;
|
32 |
-
<?php if(in_array('bold', $price_style)): ?>
|
33 |
-
font-weight: bold;
|
34 |
-
<?php endif; ?>
|
35 |
-
<?php if(in_array('italic', $price_style)): ?>
|
36 |
-
font-style: italic;
|
37 |
-
<?php endif; ?>
|
38 |
-
<?php if(in_array('underline', $price_style)): ?>
|
39 |
-
text-decoration: underline;
|
40 |
-
<?php endif; ?>
|
41 |
-
}
|
42 |
-
.proudct-url{
|
43 |
-
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_COLOR);?>;
|
44 |
-
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_FONT_SIZE);?>;
|
45 |
-
<?php if(in_array('bold', $link_style)): ?>
|
46 |
-
font-weight: bold;
|
47 |
-
<?php endif; ?>
|
48 |
-
<?php if(in_array('italic', $link_style)): ?>
|
49 |
-
font-style: italic;
|
50 |
-
<?php endif; ?>
|
51 |
-
<?php if(in_array('underline', $link_style)): ?>
|
52 |
-
text-decoration: underline;
|
53 |
-
<?php endif; ?>
|
54 |
-
}
|
55 |
-
.product-table{
|
56 |
-
font-family: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_DOC_FONT);?>;
|
57 |
-
background-color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_DOC_BG_COLOR);?>;
|
58 |
-
width: 100%;
|
59 |
-
}
|
60 |
-
.product-table img{
|
61 |
-
display: block;
|
62 |
-
margin-left: auto;
|
63 |
-
margin-right: auto
|
64 |
-
}
|
65 |
-
.product-table td{
|
66 |
-
width: 25%;
|
67 |
-
padding-bottom: 10px;
|
68 |
-
}
|
69 |
-
/** Styling from config field **/
|
70 |
-
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
71 |
-
/** Responsive **/
|
72 |
-
@media (max-width: 760px) {
|
73 |
-
/* Force table to not be like tables anymore */
|
74 |
-
table, thead, tbody, th, td, tr {
|
75 |
-
display: block;
|
76 |
-
}
|
77 |
-
.product-table td{
|
78 |
-
width: 172px !important;
|
79 |
-
}
|
80 |
-
.product-table {
|
81 |
-
width: auto !important;
|
82 |
-
}
|
83 |
-
}
|
84 |
-
</style>
|
85 |
-
|
86 |
<table class="product-table" border="0" width="147" cellpadding="0" cellspacing="0" style='border-collapse: collapse; font-size:12;'><tr>
|
87 |
<?php endif;?>
|
88 |
<?php if($mode == 'list'):?>
|
@@ -91,7 +92,7 @@
|
|
91 |
|
92 |
<td style="vertical-align: text-top; padding-right: 2px;">
|
93 |
<a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="140" height="135" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" align="middle" /></a>
|
94 |
-
<div class="product-name" align="center"><b><?php echo substr($_product->getName(), 0, 40);?></b></div>
|
95 |
<div class="product-price" align="center"><?php echo $this->getPriceHtml($_product, true) ?></div>
|
96 |
<div align="center">
|
97 |
<a class="proudct-url" href="<?php echo $_product->getProductUrl();?>">
|
@@ -109,5 +110,5 @@
|
|
109 |
<?php endforeach;?>
|
110 |
<?php if( $i > 0):?> </table>
|
111 |
<?php endif; ?>
|
112 |
-
<?php endif;
|
113 |
|
4 |
$items = $this->getWishlistItems();
|
5 |
?>
|
6 |
<?php if($items): ?>
|
7 |
+
|
8 |
+
<?php
|
9 |
+
$name_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_STYLE));
|
10 |
+
$price_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_STYLE));
|
11 |
+
$link_style = explode(',', Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_STYLE));
|
12 |
+
?>
|
13 |
+
<style>
|
14 |
+
.product-name{
|
15 |
+
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_COLOR);?>;
|
16 |
+
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_NAME_FONT_SIZE);?>;
|
17 |
+
<?php if(in_array('bold', $name_style)): ?>
|
18 |
+
font-weight: bold;
|
19 |
+
<?php endif; ?>
|
20 |
+
<?php if(in_array('italic', $name_style)): ?>
|
21 |
+
font-style: italic;
|
22 |
+
<?php endif; ?>
|
23 |
+
<?php if(in_array('underline', $name_style)): ?>
|
24 |
+
text-decoration: underline;
|
25 |
+
<?php endif; ?>
|
26 |
+
}
|
27 |
+
.product-price{
|
28 |
+
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_COLOR);?>;
|
29 |
+
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_PRICE_FONT_SIZE);?>;
|
30 |
+
<?php if(in_array('bold', $price_style)): ?>
|
31 |
+
font-weight: bold;
|
32 |
+
<?php endif; ?>
|
33 |
+
<?php if(in_array('italic', $price_style)): ?>
|
34 |
+
font-style: italic;
|
35 |
+
<?php endif; ?>
|
36 |
+
<?php if(in_array('underline', $price_style)): ?>
|
37 |
+
text-decoration: underline;
|
38 |
+
<?php endif; ?>
|
39 |
+
}
|
40 |
+
.proudct-url{
|
41 |
+
color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_COLOR);?>;
|
42 |
+
font-size: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_LINK_FONT_SIZE);?>;
|
43 |
+
<?php if(in_array('bold', $link_style)): ?>
|
44 |
+
font-weight: bold;
|
45 |
+
<?php endif; ?>
|
46 |
+
<?php if(in_array('italic', $link_style)): ?>
|
47 |
+
font-style: italic;
|
48 |
+
<?php endif; ?>
|
49 |
+
<?php if(in_array('underline', $link_style)): ?>
|
50 |
+
text-decoration: underline;
|
51 |
+
<?php endif; ?>
|
52 |
+
}
|
53 |
+
.product-table{
|
54 |
+
font-family: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_DOC_FONT);?>;
|
55 |
+
background-color: <?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_DOC_BG_COLOR);?>;
|
56 |
+
width: 100%;
|
57 |
+
}
|
58 |
+
.product-table img{
|
59 |
+
display: block;
|
60 |
+
margin-left: auto;
|
61 |
+
margin-right: auto
|
62 |
+
}
|
63 |
+
.product-table td{
|
64 |
+
width: 25%;
|
65 |
+
padding-bottom: 10px;
|
66 |
+
}
|
67 |
+
/** Styling from config field **/
|
68 |
+
<?php echo Mage::getStoreConfig(Dotdigitalgroup_Email_Helper_Config::XML_PATH_CONNECTOR_DYNAMIC_STYLING);?>
|
69 |
+
/** Responsive **/
|
70 |
+
@media (max-width: 760px) {
|
71 |
+
/* Force table to not be like tables anymore */
|
72 |
+
table, thead, tbody, th, td, tr {
|
73 |
+
display: block;
|
74 |
+
}
|
75 |
+
.product-table td{
|
76 |
+
width: 172px !important;
|
77 |
+
}
|
78 |
+
.product-table {
|
79 |
+
width: auto !important;
|
80 |
+
}
|
81 |
+
}
|
82 |
+
</style>
|
83 |
+
|
84 |
<?php foreach ($items as $item) :?>
|
85 |
<?php $_product = $item->getProduct(); ?>
|
86 |
<?php if($i == 0):?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
87 |
<table class="product-table" border="0" width="147" cellpadding="0" cellspacing="0" style='border-collapse: collapse; font-size:12;'><tr>
|
88 |
<?php endif;?>
|
89 |
<?php if($mode == 'list'):?>
|
92 |
|
93 |
<td style="vertical-align: text-top; padding-right: 2px;">
|
94 |
<a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="140" height="135" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" align="middle" /></a>
|
95 |
+
<div class="product-name" align="center"><b><?php echo Mage::helper('core')->jsQuoteEscape(substr($_product->getName(), 0, 40));?></b></div>
|
96 |
<div class="product-price" align="center"><?php echo $this->getPriceHtml($_product, true) ?></div>
|
97 |
<div align="center">
|
98 |
<a class="proudct-url" href="<?php echo $_product->getProductUrl();?>">
|
110 |
<?php endforeach;?>
|
111 |
<?php if( $i > 0):?> </table>
|
112 |
<?php endif; ?>
|
113 |
+
<?php endif;
|
114 |
|
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>dotmailermagento</name>
|
4 |
-
<version>5.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
|
7 |
<channel>community</channel>
|
@@ -26,9 +26,9 @@ Release Highlights:
|
|
26 |

|
27 |
+ Reporting: Now within the Newsletter section in Magento you can view the import status of contacts and orders, as well as the sending status of transactional and lost basket emails.</notes>
|
28 |
<authors><author><name>Calin Diacon</name><user>cdiacon</user><email>calin.diacon@dotmailer.com</email></author><author><name>Adeel Qamar</name><user>adeel</user><email>adeel.qamar@dotmailer.com</email></author></authors>
|
29 |
-
<date>2015-
|
30 |
-
<time>
|
31 |
-
<contents><target name="magecommunity"><dir name="Dotdigitalgroup"><dir name="Email"><dir name="Block"><dir name="Adminhtml"><dir name="Automation"><dir name="Edit"><file name="Form.php" hash="436877f0f8c2df572f33b25666d78769"/></dir><file name="Edit.php" hash="a9494e5817d7ae19c206f15260eb6c81"/><file name="Grid.php" hash="83a8f872ac9832179862ceb49cd3c4cc"/></dir><file name="Automation.php" hash="7e1b876bf5619cb4533fb935b67b7103"/><dir name="Campaign"><file name="Grid.php" hash="ed3b11f23f8029c7af4dd63f5dceed0e"/></dir><file name="Campaign.php" hash="1b09266adba5191df1d39330e4832d41"/><dir name="Catalog"><file name="Grid.php" hash="e5545ec424a1011117e869984e90a754"/></dir><file name="Catalog.php" hash="f9d97d5ff57987714788ef0511405d46"/><dir name="Column"><dir name="Renderer"><file name="Delete.php" hash="2741323edb5151b4211244ccf115d796"/><file name="Imported.php" hash="894d7ead94e40d20cabb082346830c35"/><file name="Reset.php" hash="f85c3f41af7e6929dc169fb231e24162"/><file name="Script.php" hash="d4f0356fc226028af5857549733a84d3"/><file name="Status.php" hash="42180e34e981f2998c35697bf049c786"/><file name="Sync.php" hash="253fb9fbfc1c450e1ae8332b466896da"/><file name="Website.php" hash="ca2c1f34b86e5ccf022fdc395cf07084"/></dir></dir><dir name="Config"><dir name="Automation"><file name="Customdatafields.php" hash="7ae2aef7d636c19dd2fcc9ba57ab4635"/></dir><file name="Customdatafields.php" hash="ee28b3fe691ade18fcc217b330d8dac6"/><dir name="Rules"><file name="Customdatafields.php" hash="c56d50e7eb3854ec67e026023d38d4d7"/></dir><file name="Select.php" hash="b92091e08d7e24032be9b8aea033b81d"/></dir><dir name="Contact"><dir name="Edit"><file name="Form.php" hash="1d0f6eba1f3a59c38ccfc01b3d5eb447"/></dir><file name="Edit.php" hash="051408ea54be21761e1ab2210ea0bc30"/><file name="Grid.php" hash="5d3dd60e4a530a64370c744717b2b49e"/></dir><file name="Contact.php" hash="ecf231c9d8eb789a4f0863f92d323c38"/><dir name="Customer"><dir name="Tab"><file name="Stats.php" hash="b10d350b265e14c788785b7538719f92"/></dir><file name="Tab.php" hash="507172f634c4db4350fb0288464a348a"/></dir><dir name="Dashboard"><file name="Switcher.php" hash="dac118060238aef3b2a4f60d11c0a3eb"/><dir name="Tabs"><dir name="Analysis"><file name="Abandonedcarts.php" hash="425a8936f80001f405cb13d18bf3741e"/><file name="Customer.php" hash="231b3c4d0e9877b84398b0354e5cbd03"/><file name="Rfm.php" hash="ef72ef59162d2c553090af6db3da1a87"/><file name="Sales.php" hash="77efe9da2c49f7639a37eb77868bdce0"/><file name="Subscriber.php" hash="9596bc770c09362e2612b53bcf4e4c2b"/></dir><file name="Analysis.php" hash="2849c6482644b7cdfa4cbb6db6b71df4"/><dir name="General"><file name="Data.php" hash="498868562604f48522acd599561cd436"/></dir><file name="General.php" hash="c46f8796bda3da6ea8117fccfe36a817"/><file name="Logs.php" hash="1fc8ae9c5e8370718f70075afa8e3d81"/><file name="Status.php" hash="83b5897478e515ebe989221d1040b401"/></dir><file name="Tabs.php" hash="8da89ad9d407a489b04ae47924e0b30f"/></dir><file name="Dashboard.php" hash="49c26d63147138d42aceb8538273402d"/><dir name="Importer"><file name="Grid.php" hash="8ef94d26ef4f323891f13e80afcdc150"/></dir><file name="Importer.php" hash="833d5c2a48f40c9fa27aed4bbd74bd2c"/><dir name="Order"><file name="Grid.php" hash="96e62a99c8295f442377124d37a114f2"/></dir><file name="Order.php" hash="dc6b0cd9c9ac9d8c291f72dbbd4c1a15"/><dir name="Quote"><file name="Grid.php" hash="241108bfb525bbbad0c543fef7673546"/></dir><file name="Quote.php" hash="edcacdf20da2f046ab4654dceef2399f"/><dir name="Review"><file name="Grid.php" hash="85919ad9bfc19eec32e673a699f850c5"/></dir><file name="Review.php" hash="822d452ee01499b4b493e19e6d810afd"/><dir name="Rules"><dir name="Edit"><file name="Form.php" hash="13f8b943873d30609ca3a2af6c72f502"/><dir name="Tab"><file name="Conditions.php" hash="1a11c398065666e0b77e0bf30827c81e"/><file name="Main.php" hash="aaf575a2db857eaac0f9e5006064fc3d"/></dir><file name="Tabs.php" hash="99c7258e593bff52b3976c359ad4235a"/></dir><file name="Edit.php" hash="bf987a05ecfc0c7540c6f86275582733"/><file name="Grid.php" hash="6a9077456ab1b8b72ed26406af336437"/></dir><file name="Rules.php" hash="4dc3b7ac89293d996f3e2a8fd3d12eb9"/><dir name="Sales"><dir name="Order"><dir name="Creditmemo"><file name="View.php" hash="ab9cfcc946e03f8b8fdf33d606222427"/></dir></dir></dir><dir name="System"><dir name="Advanced"><file name="Deletecontactids.php" hash="293320187b8ec5514ff69e027a808321"/><file name="Notification.php" hash="0ea9608a09ae2dad6e4c78738c583c2d"/><file name="Reimportcatalog.php" hash="a497ac63a609440dbd723bc3a2a2819f"/><file name="Reimportorders.php" hash="d29f38c149d2fbfb6b8589491b050247"/><file name="Reimportquotes.php" hash="6089df53be37afe6c4f9f10147730bc7"/><file name="Reimportreviews.php" hash="2c14cd482a448be01c8ceb3d0a9c7dd5"/><file name="Reimportsubscribers.php" hash="43b98ca37accc978ba8e9bd087b9a2c7"/><file name="Reimportwishlists.php" hash="f6bce4f06bc91f69242bd2f59220285d"/><file name="Reset.php" hash="41053dc403c95328402c0e3886307859"/><file name="Resetcustomersimport.php" hash="21bab61f962ed4a3a3c14656781c4e3b"/><file name="Runcatalogsync.php" hash="ecaa5a7b8ebc78a5f84f0870a90a0cd9"/><file name="Runcontactsync.php" hash="747b338c4fe3d3603ce60a68b7e1d5c4"/><file name="Runordersync.php" hash="58d7672919b3387d73472e6a10a850af"/><file name="Runquotesync.php" hash="c4bbc5616a080b5dbaad02717225f507"/><file name="Runreviewsync.php" hash="dafef47cb94f595af038698f1f233421"/><file name="Runsubscribersync.php" hash="090707901889d4bae741fe59747cfbff"/><file name="Runwishlistsync.php" hash="8453adae849a6ad9aaecb1f27dc46b72"/><file name="Setupdatafields.php" hash="48373eb08bb90bf4417c830723a4df11"/><file name=".DS_Store" hash="194577a7e20bdcc7afbb718f502c134c"/></dir><file name="Ajaxvalidate.php" hash="2647705ecfcd6c1cd39489febd38b490"/><dir name="Automation"><file name="Connect.php" hash="cbe5ebdaa07cdef1086b681740cfff0f"/></dir><dir name="Config"><file name="Addressbook.php" hash="ac68b4c742413e5cdcce9c5c78e836a9"/><file name="Colorpicker.php" hash="a22c6d50728e2edaf43399093b1f4a61"/><file name="Datafield.php" hash="5b30377c5423fcccd424c4ca0ad3224f"/><file name="Enterprisevalidator.php" hash="92b60f1f8ca067887dc17afac7be6f24"/><file name="Resetcontacts.php" hash="22ef003f51db85bed2ebb85c5834b352"/><file name="Resetguests.php" hash="002ced7daec912bdad0890b26afcc4a0"/><file name="Resetsubscribers.php" hash="d5be1a595576ea63883c0249be835c7f"/><file name="Validator.php" hash="995386364c7434ad50bb87477c46f6eb"/><file name="Waitingfield.php" hash="7ffe44f6ae4b879336344882ba7e020e"/><file name="Wrapper.php" hash="2813c1d11255f10bc1ff804650a634b7"/></dir><dir name="Dynamic"><file name="Addressbookbutton.php" hash="744ca8346bf67fb7c7b96f92ad67e993"/><dir name="Basket"><file name="Crosssell.php" hash="aa00e37f15d822bf8448fbe79d70d1d5"/><file name="Related.php" hash="a1b0f467eee4513be21fdc58bdf6e59e"/><file name="Upsell.php" hash="dc7a0dbea77d7c88c9fbb660131d1773"/></dir><file name="Bestsellers.php" hash="47d8b2f89290c034c1c74ae0dad5463a"/><file name="Couponinfo.php" hash="646acc6eb041db4041c1df04e2e2fe26"/><file name="Creditmemonew.php" hash="c36bcff6b33f441b11cc5a45a5abe60d"/><file name="Crosssell.php" hash="e1085bb71156dcb1bb012044c5d4a076"/><file name="Datafieldbutton.php" hash="369eec55df4d51ce367abb9c81402976"/><file name="Fallbackchooser.php" hash="28601a2fb0407ece1269a9e3d95757de"/><file name="Fallbackcontainer.php" hash="e3044fc492790758b646a9a656ea1f79"/><dir name="Feefo"><file name="Reviews.php" hash="8a32c6e10d93621fe63c6307c5da17da"/><file name="Score.php" hash="a5a2b4a16e1645107c9dd360dbf03a6b"/></dir><file name="Gridlist.php" hash="9329c6aa0ab3118b8f03af66761f038d"/><file name="Lostbasket.php" hash="506dd83329b4b342af7239a419925a93"/><file name="Manualchooser.php" hash="d9e2e198bb53fdf4a329915db7d07281"/><file name="Manualcontainer.php" hash="689696990974ce7cd1db3df3b73bb864"/><file name="Mostviewed.php" hash="cd49997a51f34aa36470dae896336fee"/><file name="Nosto.php" hash="ec90847ea7170baf8bc197057a13dcac"/><file name="Productpush.php" hash="2623fd4a941ff0e06504dc87b877bb50"/><file name="Recentlyviewed.php" hash="b73e60e76daaca15891e3cbc3700182c"/><file name="Related.php" hash="8b8022dac18181a3ab11837be34beced"/><file name="Review.php" hash="02a962eaf8231981f3d999be9a904c77"/><file name="Upsell.php" hash="898fe5ffc06063450034a8980f54db33"/><dir name="Wishlist"><file name="Crosssell.php" hash="c5c191438715b4f8ad36c62b705cfbb5"/><file name="Related.php" hash="d94412911bb7b85ce73718adc244d6e8"/><file name="Upsell.php" hash="d79aed858a2f4c2a29299fe8868d7ef7"/></dir><file name="Wishlist.php" hash="46c433fda7ec07c82025d88014d93471"/></dir><file name="Emailapivalidate.php" hash="d2b05128440217064792b82e0911e1e6"/><file name="Installation.php" hash="03707c42dcca01e1c156b48a6246a74c"/><dir name="Sms"><file name="Smsmessagefour.php" hash="d5f61111d9c58ee99dc10cb53afea060"/><file name="Smsmessageone.php" hash="00b65d2fcd16c11b93db8fff1ffda069"/><file name="Smsmessagethree.php" hash="eec8120e729a8dd0d248e184564eefcd"/><file name="Smsmessagetwo.php" hash="5f9fa9aca352c389a2cd75ef4366baed"/></dir><dir name="Url"><file name="Creditmemoupdate.php" hash="07113ed35f709e2e65c4c61521e560a8"/><file name="Creditmemoupdateguest.php" hash="034e033269cf142f930b6bff1c36d10a"/><file name="Customerconfirmation.php" hash="260a57d13b20cda7229eb33c9a73559c"/><file name="Customerconfirmed.php" hash="1743ddf8f308eb375f44ac32da3c3c91"/><file name="Customernew.php" hash="2878ef6c84303614ac3426838f8b65d5"/><file name="Invoiceupdate.php" hash="d4eb69e2e0f5e3b7e9ea1da5d3adb578"/><file name="Invoiceupdateguest.php" hash="1ebd3c14e380043fa16b7e36d821d15c"/><file name="Newcreditmemo.php" hash="20b55e9ce5371a371ff0c94bd0fda178"/><file name="Newcreditmemoguest.php" hash="5bd16181c61c1bfb98e6eea3e1c7281f"/><file name="Newinvoice.php" hash="ff95c29ff62359ab2d0366098029a704"/><file name="Newinvoiceguest.php" hash="d05a14bb52facf8635c89642165e39ec"/><file name="Neworder.php" hash="f67882d758909fda7364fa04cb51e2f0"/><file name="Neworderguest.php" hash="ac3b96283e7e5e3ce68e35bf84f9043d"/><file name="Newshipment.php" hash="f059c430fb155c8f9da10b6dd4c67e01"/><file name="Newshipmentguest.php" hash="f73d439fb93eb7f20289e021b10b69a8"/><file name="Orderupdate.php" hash="1c27f18bf9ff58c1f0668539b7ca6896"/><file name="Orderupdateguest.php" hash="d4a2479efa67e900fbe69f6954707076"/><file name="Shipmentupdate.php" hash="f6f2fe91a159b8bf9c70c3a8773a058c"/><file name="Shipmentupdateguest.php" hash="f0ce96ef2e562cae6d155e4d38f1dcac"/></dir></dir><dir name="Widget"><dir name="Chooser"><file name="Product.php" hash="b2f77407f30411d5447fbd1ffac3e415"/></dir></dir><dir name="Wishlist"><file name="Grid.php" hash="fc60afe27facac4a3fb4677ba1aa2fbe"/></dir><file name="Wishlist.php" hash="74f5fb49b057af35ee320f442c664a6b"/></dir><file name="Basket.php" hash="435ae9c1945579ac9da0b4b9025f5251"/><file name="Coupon.php" hash="fe3affe1a8d9a7a885d81f19f4adb51e"/><dir name="Customer"><dir name="Account"><file name="Books.php" hash="6ab8f5f63d96188f9823e580c11dc7bd"/></dir></dir><file name="Edc.php" hash="d44dcf1413fca50a4d6cad12bcfc7a71"/><file name="Feefo.php" hash="b22ae2a4a60920a089ddccb45582482c"/><dir name="Order"><file name="Creditmemo.php" hash="d555e9f31e6fe0203170ba2620407119"/><file name="Invoice.php" hash="f47b6cb4c61849b6b84a4e6e84038cdc"/><file name="Shipping.php" hash="a3a1c9aa093b9dfa3f94eaea1dba9a81"/></dir><file name="Order.php" hash="263f75b72c1c0130f49cf73fee5dc7ef"/><file name="Products.php" hash="d38365bc368c1d6e8e867de39c4a1495"/><dir name="Recommended"><file name="Products.php" hash="b2c71bccc08a722297695d462d0c8e67"/><file name="Wishlistproducts.php" hash="966cde9e39e4a429b07bf592005eb82b"/></dir><dir name="System"><dir name="Email"><dir name="Template"><file name="Edit.php" hash="74dc9f59ad9ae1794aec084aac4fa811"/></dir></dir></dir><file name="Wishlist.php" hash="02ac8be0a7325f369d75c53c3b5f5952"/></dir><dir name="Helper"><file name="Config.php" hash="cad7e0156e164947b5a9932316b60723"/><file name="Dashboard.php" hash="fd6aaa5877cd92ece44db35a66353765"/><file name="Data.php" hash="7aab568e93a24489294304156127f362"/><file name="File.php" hash="152383a2910ded13aae097c386cf4947"/><file name="Recommended.php" hash="d77533b7b110828e07f7a9d9a80606fe"/><file name="Review.php" hash="df5fbc8a07818618886ffbadc64782d1"/><file name="Transactional.php" hash="a399ced08b031a9d5f4cdab3d28db6a6"/></dir><dir name="Model"><dir name="Abstract"><file name="Rest.php" hash="2ae2e2ac0851da8c7c38a4edc136cef5"/></dir><dir name="Adminhtml"><dir name="Dashboard"><file name="Content.php" hash="a415e7d3fad5d27ce27f6172a50d4997"/><dir name="Tabs"><dir name="Analysis"><file name="Abandoned.php" hash="915c2e848bdb8c2629a90d6d4326b8e8"/><file name="Customer.php" hash="f56d20e6620589c31b8468d8f06d975e"/><file name="Orders.php" hash="9ac9df6980ecedcdcd2567656ebc3a4c"/><file name="Rfm.php" hash="1bd137928d701485c995b6a236ea1ef6"/><file name="Subscriber.php" hash="1b44da59332b7f233499abe3408ed70a"/></dir></dir></dir><file name="Observer.php" hash="d0de99361d7afd45d86788700eedb216"/><dir name="Source"><file name="Addressbooks.php" hash="af92437b4ed2a7fc6fede455420f11c0"/><file name="Addressbookspref.php" hash="e5ff9e837bad955fdcd69265783c9cb0"/><dir name="Advanced"><file name="Abandonedlimit.php" hash="cd280151523091f85af89b0e22ff0abf"/><file name="Attributes.php" hash="9d08d5ab758447987c7ab9ba6d5c45b2"/><file name="Cronexpressionsone.php" hash="3877dd7041189aedf2c972b4361d2134"/><file name="Cronexpressionstwo.php" hash="0a97c58dff29e17a8448ff0c17e393d7"/><file name="Frequency.php" hash="28292fba0dd62bb6730ccd7bfa2b8e70"/><file name="Quoteattributes.php" hash="a1ddcbd001b9cd5b40157ba3c9435bef"/><file name="Transdata.php" hash="5c670a26d641c4b7e73bbaff48af3dd6"/></dir><file name="Attributes.php" hash="4b079aac1a25bec3c7c7e4152a66daa8"/><dir name="Automation"><file name="Programme.php" hash="a7143fecceaa7b7f6905634510112ef1"/></dir><file name="Campaigns.php" hash="35014267c18ab36cd6d849318914185e"/><dir name="Contact"><file name="Imported.php" hash="f44a906cb28c81c709c649b6ed8a0ccd"/><file name="Modified.php" hash="30e2f9e3d55ecd65a3cd0be1136db38d"/></dir><dir name="Customer"><dir name="Attributes"><file name="Select.php" hash="a77542918db6d3ba1c0298b475e8e9ed"/></dir></dir><file name="Datafields.php" hash="0a12d3c9c63476ea6981e416dfec6155"/><dir name="Datamapping"><file name="Datafieldaccess.php" hash="eba7f16c5e03ebc4bca00b1dcfc5dbc7"/><file name="Datafieldtype.php" hash="1b9ac7be92d60718981d4b17be4dbeda"/></dir><dir name="Dynamic"><file name="Displaytype.php" hash="3c84fc4962406d0e4b974e1c0e40f6e4"/><file name="Gridview.php" hash="5f033792839adf57fb37b277dc662237"/></dir><file name="Fontpicker.php" hash="a943850c33229bc471ad9e94023347e3"/><file name="Fontsize.php" hash="7eb842a6f895b3f8a279c53fa961f173"/><dir name="Importer"><file name="Mode.php" hash="6a4649e9311b6aaf2997a434438dfb29"/><file name="Status.php" hash="97dfab5de2ada065f335ede94301c27c"/></dir><dir name="Lostbaskets"><file name="Interval.php" hash="e3ed7930ab2b4526c0d6d2b76784331c"/><file name="Intervalminute.php" hash="7777a4757d8fa8deebfa94cca9ac4053"/></dir><file name="Orderstatus.php" hash="b02456d91d6e27ae9f330c2b16b0fb8f"/><file name="Publicdatafields.php" hash="4a162948a4ee37b8e2d38490aa4d41c1"/><dir name="Reviews"><file name="Delay.php" hash="393704cfa870165ef3b3ba59e454953b"/></dir><dir name="Rules"><file name="Condition.php" hash="377f65c9b5ee85e44b2fb4ac72021770"/><file name="Type.php" hash="2ccd61f1f5a098e876b79ac24529d41b"/><file name="Value.php" hash="94d4df5777c098e5f04f5be125772ce5"/></dir><file name="Styling.php" hash="b8578fc89114359933b7bdc64f49b4d3"/><dir name="Sweettooth"><file name="Yesno.php" hash="8345e519b0e6b8eb75bca72a16e66014"/></dir><dir name="Sync"><dir name="Catalog"><file name="Attributes.php" hash="323d3400bb91b89ff880421823f54052"/><file name="Type.php" hash="265862a32c3d11509bf4f9ec3fac65fb"/><file name="Values.php" hash="30eedb9ac9f72edb94d9abef91b9fcfb"/><file name="Visibility.php" hash="84cc10186bfc1d00dd967027f6c2a413"/></dir><file name="Yesno.php" hash="4cde23e3613eaaf04a65454540620e6b"/></dir><dir name="Transactional"><file name="Mode.php" hash="02f45553e3bc342ddd3f205993a5384e"/><file name="Port.php" hash="3dc1b86a9034e2098f98921109d7187f"/><file name="Ssl.php" hash="256550ab7cc09ce240f3dd4a4e2d4324"/></dir></dir></dir><dir name="Api2"><dir name="Subscriber"><dir name="Rest"><dir name="Admin"><file name="V1.php" hash="129b412cb9d43ed2368eb1a86e11609c"/></dir></dir></dir></dir><dir name="Apiconnector"><file name="Client.php" hash="8e3c2949fa7be3c34a86f5dc0b70f055"/><file name="Contact.php" hash="8653894b4ea2fc66d88ff6b64df67e52"/><file name="Customer.php" hash="7066d90001ecd63cc17b8bdef585f6d5"/><file name="Test.php" hash="c1c0274bb9b707af55ebdd7a4263bf6e"/></dir><file name="Automation.php" hash="46b46f6f00bd4ad07c3ac97e27857ab9"/><file name="Campaign.php" hash="eb793621c5c53eb45ea95d22c7be8c94"/><file name="Catalog.php" hash="6fb3bd93975d29c15b17cb5ce388f3eb"/><dir name="Connector"><file name="Account.php" hash="6e6bf814a8ce5a14a3496ecc4c305190"/><file name="Campaign.php" hash="e221755bbbe55bcbd2bff9b260d645b1"/><file name="Datafield.php" hash="616fa71b66833c5bb6abd5c3e24876f9"/><file name="Order.php" hash="66975a73ac3ec452c6714ada4ac5aa4c"/><file name="Product.php" hash="89faebabd39224fe768714c2f426a3e5"/><file name="Quote.php" hash="b86a2638b9e6ae6c3363d2d77125c0f2"/></dir><file name="Contact.php" hash="16f950b64036b529ecea0cb487146f82"/><dir name="Controller"><file name="Observer.php" hash="b01537009a0061c4266fbf2f8c52251d"/></dir><file name="Cron.php" hash="d6f3e99013ac3b3dc15db633ff00a19a"/><dir name="Customer"><file name="Guest.php" hash="bd1e1b8f82f25d808700c33f726cb19a"/><file name="Observer.php" hash="b9376cd4ba6ce646300aa31e30b514ec"/><dir name="Review"><file name="Rating.php" hash="a91b68302e270aa08ea3762f63225a80"/></dir><file name="Review.php" hash="f17180683194eca1e49782c36e310200"/><dir name="Wishlist"><file name="Item.php" hash="c37c6d9700771e57a039ac7f5ebe68b9"/></dir><file name="Wishlist.php" hash="598eddf031e56fa752bf64fe32773da5"/></dir><file name="Customer.php" hash="e1dd3b479c9bbf125cf1ec36206d1c7f"/><dir name="Email"><file name="Template.php" hash="18e12b6d6f7e275d8444fe37411f92cd"/></dir><file name="Email.php" hash="6cf3844e7f4c75c534a50486631ec10e"/><file name="Feed.php" hash="09151ffa241990ed28f4acb99c7d72ca"/><file name="Importer.php" hash="ab77cd2cde8ef227bf2b4c5cb87831a0"/><dir name="Newsletter"><file name="Observer.php" hash="b7091557caad19c22d247baa5e3751a5"/><file name="Sub.php" hash="a8a3fd672f62288be68001b3dc0bd58d"/><file name="Subscriber.php" hash="53c2ba474048763384dbcd0a6d590488"/></dir><file name="Order.php" hash="721ba8aa79daae66d2ec421143435fbc"/><file name="Quote.php" hash="1ca4b5c44aa678d0e2e29b09d2939c1c"/><dir name="Resource"><dir name="Automation"><file name="Collection.php" hash="b0e7826c3c153cac3d9bcaed76d1d75e"/></dir><file name="Automation.php" hash="902f696eb797323101f1a3b4c9abf84d"/><dir name="Campaign"><file name="Collection.php" hash="736cc4414d45d0dca975101bc75919c6"/></dir><file name="Campaign.php" hash="b2d6c5e4396794efd97562f2f23f2f40"/><dir name="Catalog"><file name="Collection.php" hash="ef157bd81d50a49e94058b986aac5b2e"/></dir><file name="Catalog.php" hash="e447f04904e9b964359497c79a6ea1eb"/><dir name="Contact"><file name="Collection.php" hash="a6da2689f90a668b08a549a200f9c6a9"/></dir><file name="Contact.php" hash="dcfef90f2f9ac7d3d9d3c17dec5c7591"/><dir name="Importer"><file name="Collection.php" hash="605d0e7091f309e6a5f6e2d15513c8bf"/></dir><file name="Importer.php" hash="565087fd0df9fa9c2f84cc5ac5e20e17"/><dir name="Order"><file name="Collection.php" hash="87cf24cbbd5d6c0141b7c401238b5c50"/></dir><file name="Order.php" hash="11fcf2784fb5f80594e6672d867c3d5a"/><dir name="Quote"><file name="Collection.php" hash="4d9ed530f86edb24c2d8e89db3c2b6b1"/></dir><file name="Quote.php" hash="598747a52e2a2d41dd7582bba69fef4a"/><dir name="Review"><file name="Collection.php" hash="c7e03d9bd662df5dd2a1a31e246b97e4"/></dir><file name="Review.php" hash="761eec4269e616ec356634d9346020b6"/><dir name="Rules"><file name="Collection.php" hash="b0da90dc943d5c6a8dd47d3fe245677c"/></dir><file name="Rules.php" hash="4b688c552b91487c22482f059cb49bc9"/><file name="Segment.php" hash="32b94ab790a3508658a663d2e2361065"/><file name="Setup.php" hash="442dda9eabbd1fb6e88e7d2baaa2a28c"/><dir name="Wishlist"><file name="Collection.php" hash="6d75820d8b8d5ed1af2fc77522205a8d"/></dir><file name="Wishlist.php" hash="6047d392299414bbf17c9aaf83a159ff"/></dir><file name="Review.php" hash="e9ca80670d3a7befea508d88c8970c32"/><file name="Rules.php" hash="98b8f5541915251e59b74c60443772ac"/><dir name="Sales"><file name="Observer.php" hash="5147fdc3908b9e9d4b3ef5183f7f5288"/><file name="Order.php" hash="c3d2dae9d43a979f427c9b60ae14a0cd"/><file name="Quote.php" hash="9dcff90aa74c8e04cbc2cd9cf55ede67"/></dir><dir name="Sms"><file name="Campaign.php" hash="010e082c861a29930b78dced7bd0b22b"/></dir><dir name="Sweettooth"><file name="Observer.php" hash="36ce70503cd8abbafd8b5340a06d2072"/></dir><file name="Wishlist.php" hash="7e6bdf367eb399024afb91a9575e296f"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="ConnectorController.php" hash="799e6b5bedd00ae6e3258aa4223cf930"/><file name="CustomerController.php" hash="c28f84e3c4d7603382e33a931f3c831a"/><dir name="Email"><file name="AutomationController.php" hash="028db05f18ee05a7d7869f22f5b6c41c"/><file name="CampaignController.php" hash="b74d05cbce2391ef3fb3d148d5822d20"/><file name="CatalogController.php" hash="e43c7a33bec07c1cedbd73a0aa9c54af"/><file name="ContactController.php" hash="4594622b77cabb08b75bb632a178964f"/><file name="DashboardController.php" hash="13572a0ae47a09ed1cd4af0b870e8320"/><file name="ImporterController.php" hash="21540bb7f839cafcc6f70b7bee5b2774"/><file name="OrderController.php" hash="64b719cf2a80847b82a7849be7ffe68c"/><file name="QuoteController.php" hash="4167890a19fa6716e64a79afca55e2e3"/><file name="ReviewController.php" hash="13d74d52e160555e0c029a360d562a51"/><file name="RulesController.php" hash="6e33826563242604e83fe25344f7bf3e"/><file name="StudioController.php" hash="c24e13f8fb26805937b71d8d3eebcddc"/><file name="WishlistController.php" hash="b4d3a20f38a0a45886cc7dfa963894dc"/></dir><file name="RulesController.php" hash="98e5a0fc5983baf46eee5eb1bd185333"/><dir name="System"><dir name="Email"><file name="TemplateController.php" hash="98d9c1f5aae8f94de0102ccdcdb2fe7c"/></dir></dir><dir name="Widget"><file name="ChooserController.php" hash="7607cec3305ab9d4381c89fa12703a64"/></dir></dir><file name="AjaxController.php" hash="cd16d360815bfcf72b77a78d9dc938f0"/><dir name="Customer"><file name="AccountController.php" hash="4b78330a34d2985fa2526c935073a65f"/><file name="NewsletterController.php" hash="f7425d9524504163d6e91ae3fa640c88"/></dir><file name="DynamicContentController.php" hash="dcfc5df598412e5f630608cf08768c72"/><file name="EmailController.php" hash="d9dd2de4b462112118e5e32b02978e1c"/><file name="FeefoController.php" hash="f3613defc5132cdabc5536483ae75bb5"/><file name="ProductsController.php" hash="d54c85bc071a0fcda6a8e5969e3c5f63"/><file name="QuoteproductsController.php" hash="3867af36e829e4cf22d81a4d96757d6a"/><file name="ReportController.php" hash="c8c670deae7bec4e17bb3251015dfffb"/><file name="ResponseController.php" hash="fa37fedd598a8b353ee13d8e962759bd"/><file name="WishlistController.php" hash="a8d20ad1304bf13a5de8847e726d9ee5"/></dir><dir name="etc"><file name="adminhtml.xml" hash="8f7bee00ad2baf155ed0e7cbe2dd1e25"/><file name="api2.xml" hash="e6be0fdc4206cb242f22b2335476b497"/><file name="config.xml" hash="ce750c73d71c98250ad440ba1657cb02"/><file name="files.yaml" hash="bdf56ddeb595f73caabe120894d0b286"/><file name="system.xml" hash="f335383d2689bb449c37b63fcf6984a3"/></dir><dir name="sql"><dir name="email_connector_setup"><file name="mysql4-install-0.1.0.php" hash="26042b2a6d9cd6241d52f826188483f4"/><file name="mysql4-install-3.0.0.php" hash="0454445ec8e47bf09cc5a94c5bffc03a"/><file name="mysql4-install-4.0.0.php" hash="a0234b5c4bc00d20564c57e8338784d7"/><file name="mysql4-install-5.0.0.php" hash="a3188b1ded81bbd5b59b63f6e38de4de"/><file name="mysql4-upgrade-1.1.1-1.1.2.php" hash="7fae25a8ae47fe0ba692076ac04237a4"/><file name="mysql4-upgrade-1.1.2-1.5.0.php" hash="34ac896f6e681c56d8d2dd6bf411215e"/><file name="mysql4-upgrade-1.5.0-2.0.0.php" hash="75020a02255ea63e9bc4599d85ab4e2f"/><file name="mysql4-upgrade-2.0.0-2.0.1.php" hash="2f71a10d19eddd97c9eba9af840e4f09"/><file name="mysql4-upgrade-2.0.1-2.0.2.php" hash="6b7af944ebc76328d16223cdb245c568"/><file name="mysql4-upgrade-2.0.3-2.0.4.php" hash="d71788287371f0f5416f81e03245d281"/><file name="mysql4-upgrade-2.0.4-2.0.5.php" hash="f2080852fd1e0512da9bf1074767a9b3"/><file name="mysql4-upgrade-2.0.5-2.0.6.php" hash="438ea31fe7b8ed88160ae8c231ec9ccc"/><file name="mysql4-upgrade-3.0.1-3.0.2.php" hash="7c53b291487987ae73929acea576bc51"/><file name="mysql4-upgrade-3.0.3-3.0.4.php" hash="7adaa83b6da0000ca7d1491c3af76682"/><file name="mysql4-upgrade-3.0.4-3.0.5.php" hash="c08939ca13713f335bacc593d0e780d3"/><file name="mysql4-upgrade-3.1.2-3.1.3.php" hash="f5ba2c14acd01144297fab7070558ddd"/><file name="mysql4-upgrade-3.2.1-3.3.0.php" hash="1b6540a260f25ae849f433cb60f0c39d"/><file name="mysql4-upgrade-3.3.0-3.3.1.php" hash="c7c63ebee282543d71dd4f8699d27c86"/><file name="mysql4-upgrade-3.3.2-3.3.3.php" hash="1707de69aa9294821195cfafa1a1798e"/><file name="mysql4-upgrade-3.4.0-4.0.0.php" hash="9ca61b554058b976031c4dfc2baa5a48"/><file name="mysql4-upgrade-4.0.0-4.1.0.php" hash="987700db6020c9bc607117ef3d46f771"/><file name="mysql4-upgrade-4.1.3-5.0.0.php" hash="c762c1263e3595162100ff48db52597b"/><file name="mysql4-upgrade-5.0.0-5.0.1.php" hash="a8603a251c822c67d0afde4b64d82da6"/><file name="mysql4-upgrade-5.0.4-5.1.0.php" hash="4640e2ea0587c2b3ead18cfa29b5fa04"/></dir></dir></dir><dir name="Mailcheck"><dir name="Helper"><file name="Data.php" hash="589b8909f08143ad44234f05911488df"/></dir><dir name="etc"><file name="config.xml" hash="841542418fa8e50cb53a3bde50ce38f4"/><file name="jstranslator.xml" hash="d0f175944d2c14badd2cade8d4a40585"/><file name="system.xml" hash="7d64665436e5eb104a1316c32338ec72"/></dir></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="connector.xml" hash="4a5ad4efa2ea66fe9deccb81196582a1"/><file name="mailcheck.xml" hash="ff97a71e8124f8e6e55d951124addace"/></dir><dir name="template"><dir name="connector"><file name="additional-newsletter-pref.phtml" hash="5a5eb99d46d23dd618106f32688daabd"/><file name="basket.phtml" hash="cad15b4b20ad3489a6342d62dfdf9e42"/><file name="coupon.phtml" hash="07888698e1fb67778e4867a9b2317593"/><dir><dir name="creditmemo"><file name="items.phtml" hash="e911de4e7f2717698e4041c7046ed5a5"/><file name="new.phtml" hash="b6cd1d03e035c487f4b7f42e42782dd9"/><file name="newguest.phtml" hash="18b75cf7b4cee9b6853a98285e2195c1"/><file name="update.phtml" hash="fca8e2a9664e083a1395db8e6deddb02"/><file name="updateguest.phtml" hash="bbedb48ecdfc3983feba709ab9cbea4d"/></dir><dir name="customer"><file name="stats.phtml" hash="b26f6331faa6b3e662b14e5bde8c66d8"/></dir><dir name="feefo"><file name="reviews.phtml" hash="cd1dc08242588b1427534326eb7525ab"/><file name="score.phtml" hash="74d48f68f5d0ec044a8c067fa7f3c631"/></dir><dir name="invoice"><file name="new.phtml" hash="5071b6ffa75d7400bb5e4f3d4304f04a"/><file name="newguest.phtml" hash="254828a0c9400232ba62b2518b4bb246"/><file name="update.phtml" hash="3832a322ca53f4676c5cffeb47f2064b"/><file name="updateguest.phtml" hash="7fc8cfdd31af6c65a00e45d301d6bf69"/></dir><dir name="order"><file name="items.phtml" hash="9d149cbb8fe1e4c2736c6d77323abfc0"/><file name="new.phtml" hash="7d0cae172eb123d8ed491f6e8cc7e3d2"/><file name="newguest.phtml" hash="a1cca92e394fdb476030ee214ce9bbe1"/><file name="update.phtml" hash="471adf8334316e1e3270af403c1da796"/><file name="updateguest.phtml" hash="66ce43e3a2f70a70cd931253d0af4b95"/></dir><dir name="product"><file name="list.phtml" hash="e70abd933d0ede5ce2f0816d73a6540c"/><file name="nosto.phtml" hash="4c16e297faf2ad1a55a9e0a5309dd2aa"/><file name="price.phtml" hash="4d0674f2d03160617536338744330ff4"/></dir><dir name="shipping"><file name="new.phtml" hash="f0f419c9cc62ff12c94ec3426e3ae566"/><file name="newguest.phtml" hash="6e35f29c9643612a446b289e75831edd"/><file name="update.phtml" hash="b49ceefccea37e8cae2f4bc13dc0d6d6"/><file name="updateguest.phtml" hash="ddb77ce7d58b3d29ecd779078ecbd59d"/></dir></dir><file name="email_capture.phtml" hash="879403b63407bed8b2c17ff5ee7592e2"/><file name="email_capture_init.phtml" hash="6cace9896c340d3bc05e54b48e376888"/><file name="review.phtml" hash="5ea70647870d9422847f6adbbac2e7b0"/><file name="roi_code.phtml" hash="108934652f443d0328a60893cad70742"/><file name="tracking_code.phtml" hash="1bbccb72db1a769ef8e14e0df2c9febd"/><file name="wishlist.phtml" hash="50fba04e823d37802f2f896894ad7ab0"/></dir><dir name="page"><file name="blank.phtml" hash="7a10ef1534ebe3b449cf051799e5a066"/></dir><dir name="mailcheck"><file name="scripts.phtml" hash="adbf073bb2cb944c44b11d79bcca1eb5"/></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><dir name="connector"><file name="email.xml" hash="907e33ef044db87b0cbdadd480c5c43a"/></dir></dir><dir name="template"><dir name="connector"><file name="appcues.phtml" hash="11bb1143b5334bbcbf182d17a118f281"/><file name="beacon.phtml" hash="18d507b6041ac64b167d27a606fdcb83"/><dir><dir name="customer"><file name="stats.phtml" hash="39212effdbf09ea987f06a81b7f9d9bc"/></dir><dir name="dashboard"><file name="accountbar.phtml" hash="6041f857396a9ba87d737d6fdfcdc775"/><file name="content.phtml" hash="9e5c843b6323ea80c410662fb4f39793"/><file name="logs.phtml" hash="8d1f415d0e7f90e5aa186a7a2dbafd63"/><file name="status.phtml" hash="2b6576584376f3573c3b9a899d8afbb1"/><dir name="tabs"><dir name="analysis"><file name="index.phtml" hash="a9ef11d470dae139ad5243fc1bc91431"/><file name="rfm.phtml" hash="8129887ef234cd4571aa28c5fd124d3b"/></dir><file name="data.phtml" hash="6be723c64762c23b0eebfc92021afee2"/><dir name="general"><file name="index.phtml" hash="68fa10c2aeef745d80b60317c9461a94"/></dir></dir><file name="tabs.phtml" hash="f6de685d30e2d67ae411ce010bc713a3"/></dir><dir name="system"><dir name="config"><file name="createdatafield.phtml" hash="a1a571fa0957d7fadf346d1b89c5a0b0"/></dir><dir name="email"><dir name="template"><file name="edit.phtml" hash="59cf12fc34d44601486fc056c5c3339a"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Dotdigitalgroup_Email.xml" hash="8745c0b2eae08783b6203a613acdbcb8"/><file name="Dotdigitalgroup_Mailcheck.xml" hash="247272e2cc981e8b91af95962b0f0470"/></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="connector"><file name="config.css" hash="433bf71f40517a667ee9aba495f1746c"/><file name="dashboard.css" hash="08e2c6ae799757fd68a85781311f2b97"/></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="js"><dir name="mailcheck"><file name="init.js" hash="585e518d5d2dd2d0f50243f51a3c881b"/></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="en_US"><file name="Dotdigitalgroup_Email.csv" hash="67022e746e28d74b86509b70f336db4f"/></dir></target><target name="mageweb"><dir name="lib"><dir name="Raygun4php"><dir><dir name="Exception"><file name="UnsatisfiedDependencyException.php" hash="32b7fff3854ba20107b89a100550dc41"/><file name="UnsupportedOperationException.php" hash="951d8a9fc2bdfae0acc432ea6dabffa4"/></dir></dir><file name="README.md" hash="0aed7c6a52f358016b2c1b8f5e4e35ed"/><file name="Raygun4PhpException.php" hash="f6d4ef9f38a74578b115fbdf6e2fd3c5"/><file name="RaygunClient.php" hash="f9511057d3280a3a6d02b9b2a1517fd1"/><file name="RaygunClientMessage.php" hash="df9bd918ff13b50146b252208a5ce737"/><file name="RaygunEnvironmentMessage.php" hash="a7dff1914fcb7f6a61577b758edba47e"/><file name="RaygunExceptionMessage.php" hash="fcf7e3cbf9fbafb3ff4a6d56135a190d"/><file name="RaygunExceptionTraceLineMessage.php" hash="8aa87f7ddee8c00855737e85bbcb29cd"/><file name="RaygunIdentifier.php" hash="49461fa525594b15f3a350fd1da1c2a0"/><file name="RaygunMessage.php" hash="865eaa58577265fb52a85ee861102625"/><file name="RaygunMessageDetails.php" hash="2403453f658d7a943bd476e7fad186d7"/><file name="RaygunRequestMessage.php" hash="038703138dcd19aefbc9a7e44bd6f198"/><file name="Uuid.php" hash="9db740992b0dad17bf2047d13565b428"/><file name="cacert.crt" hash="47961e7ef15667c93cd99be01b51f00a"/></dir><dir name="connector"><dir><dir name="feefo"><file name="feedback-no-th.xsl" hash="239c40764293a65b85d9f86479ced8b6"/><file name="feedback.xsl" hash="7167570192e48fdf57baa9c2cf56986b"/></dir></dir></dir></dir><dir name="js"><dir name="connector"><dir><dir name="procolor-1.0"><dir name="img"><file name="procolor_win_bars.png" hash="a8e41fdddd2253309e0b3e5154668c24"/><file name="procolor_win_bg.gif" hash="c0558cecd0e0ffb9ca89efe00f422261"/><file name="procolor_win_bg.png" hash="4e2a34cc64888fe264fcf6249dfe40da"/><file name="procolor_win_boxes.png" hash="e971c1ca87a0cb52d32408270d00a0da"/><file name="procolor_win_close.png" hash="20a8bb9433157962ab25d86d28d088a3"/><file name="procolor_win_drop.png" hash="9ddce741de330573f082ffe83005d691"/><file name="procolor_win_palette_raw.png" hash="ea98dde528e987029af6e24dbef53922"/><file name="procolor_win_sel_circle.gif" hash="3674b62db5a6eaa4dcedb0749dde4106"/><file name="procolor_win_sel_circle.png" hash="d76195d1777e9a14ebc1a242ab712037"/><file name="procolor_win_sel_rect.gif" hash="b74a72aaf1ea21d55b8751079f283537"/><file name="procolor_win_sel_rect.png" hash="5513589e2b6dc1a980a4e65a746005d0"/><file name="procolor_win_wheel_black.png" hash="62353005bb70bbfa8ffd700112d72582"/><file name="procolor_win_wheel_rgb.jpg" hash="afdd3852c3788a58794ddf1de9557fd8"/></dir><file name="procolor.compressed.js" hash="79e463efad21212e4096d40b9e17d96c"/><file name="procolor.js" hash="93ec3cb6a0356cce4cf8e51006dfaeec"/></dir></dir><file name="selector.js" hash="5dc1900967679a41c70ed5f1755240e2"/></dir><dir name="mailcheck"><file name="magentoMailcheck.js" hash="b4eaabac0b6e8753e09ab6ea449e6519"/><file name="mailcheck.min.js" hash="25966edf6e585822063b48dd34bcee9b"/></dir></dir></target></contents>
|
32 |
<compatible/>
|
33 |
<dependencies><required><php><min>1.5.2</min><max>6.0.0</max></php><extension><name>curl</name><min>7.15.1</min><max>7.30.0</max></extension></required></dependencies>
|
34 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>dotmailermagento</name>
|
4 |
+
<version>5.2.0</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
|
7 |
<channel>community</channel>
|
26 |

|
27 |
+ Reporting: Now within the Newsletter section in Magento you can view the import status of contacts and orders, as well as the sending status of transactional and lost basket emails.</notes>
|
28 |
<authors><author><name>Calin Diacon</name><user>cdiacon</user><email>calin.diacon@dotmailer.com</email></author><author><name>Adeel Qamar</name><user>adeel</user><email>adeel.qamar@dotmailer.com</email></author></authors>
|
29 |
+
<date>2015-12-14</date>
|
30 |
+
<time>15:41:46</time>
|
31 |
+
<contents><target name="magecommunity"><dir name="Dotdigitalgroup"><dir name="Email"><dir name="Block"><dir name="Adminhtml"><dir name="Automation"><file name="Grid.php" hash="7059908834fdfed28182e2fe672e0d33"/></dir><file name="Automation.php" hash="7e1b876bf5619cb4533fb935b67b7103"/><dir name="Campaign"><file name="Grid.php" hash="ed3b11f23f8029c7af4dd63f5dceed0e"/></dir><file name="Campaign.php" hash="1b09266adba5191df1d39330e4832d41"/><dir name="Catalog"><file name="Grid.php" hash="e5545ec424a1011117e869984e90a754"/></dir><file name="Catalog.php" hash="f9d97d5ff57987714788ef0511405d46"/><dir name="Column"><dir name="Renderer"><file name="Delete.php" hash="2741323edb5151b4211244ccf115d796"/><file name="Imported.php" hash="894d7ead94e40d20cabb082346830c35"/><file name="Reset.php" hash="f85c3f41af7e6929dc169fb231e24162"/><file name="Script.php" hash="d4f0356fc226028af5857549733a84d3"/><file name="Status.php" hash="92c7256da2ca42ec9c11c255e2cd4e51"/><file name="Sync.php" hash="c85a2e4784b73e709bfe82468a4200b0"/><file name="Website.php" hash="ca2c1f34b86e5ccf022fdc395cf07084"/></dir></dir><dir name="Config"><dir name="Automation"><file name="Customdatafields.php" hash="7ae2aef7d636c19dd2fcc9ba57ab4635"/></dir><file name="Customdatafields.php" hash="ee28b3fe691ade18fcc217b330d8dac6"/><dir name="Rules"><file name="Customdatafields.php" hash="c56d50e7eb3854ec67e026023d38d4d7"/></dir><file name="Select.php" hash="b92091e08d7e24032be9b8aea033b81d"/></dir><dir name="Contact"><dir name="Edit"><file name="Form.php" hash="1d0f6eba1f3a59c38ccfc01b3d5eb447"/></dir><file name="Edit.php" hash="051408ea54be21761e1ab2210ea0bc30"/><file name="Grid.php" hash="5d3dd60e4a530a64370c744717b2b49e"/></dir><file name="Contact.php" hash="ecf231c9d8eb789a4f0863f92d323c38"/><dir name="Customer"><dir name="Tab"><file name="Stats.php" hash="ee77ed9c68e790842d308eab4dd8e8c2"/></dir><file name="Tab.php" hash="507172f634c4db4350fb0288464a348a"/></dir><dir name="Dashboard"><file name="Switcher.php" hash="dac118060238aef3b2a4f60d11c0a3eb"/><dir name="Tabs"><dir name="Analysis"><file name="Abandonedcarts.php" hash="b5ca264c215c98545c882646f4d44bd2"/><file name="Customer.php" hash="01ab9dc18bce37c70de130393ed85902"/><file name="Rfm.php" hash="29e94c92b7c577274a4a70f314e6e5a4"/><file name="Sales.php" hash="6abc5d3bb6f1e668ffa696cd34e3adf4"/><file name="Subscriber.php" hash="4dc3d4a2553a64befd5a94cd64d9658e"/></dir><file name="Analysis.php" hash="b2d6a5a2bab0c8117b89d0f6e91051e2"/><dir name="General"><file name="Data.php" hash="f55fbdda9c380b3ad01c4672e05fcea7"/></dir><file name="General.php" hash="d79b87c420c7c708f7ef86fe18d244c0"/><file name="Logs.php" hash="1fc8ae9c5e8370718f70075afa8e3d81"/><file name="Status.php" hash="48737849dac3ebaba5df9d3ad0b3f6ad"/></dir><file name="Tabs.php" hash="8da89ad9d407a489b04ae47924e0b30f"/></dir><file name="Dashboard.php" hash="1f06a5dcb5a934d239c9627b9bbea822"/><dir name="Importer"><file name="Grid.php" hash="8de43bab33f75c0f64198709dbb1b5e9"/></dir><file name="Importer.php" hash="833d5c2a48f40c9fa27aed4bbd74bd2c"/><dir name="Order"><file name="Grid.php" hash="96e62a99c8295f442377124d37a114f2"/></dir><file name="Order.php" hash="dc6b0cd9c9ac9d8c291f72dbbd4c1a15"/><dir name="Quote"><file name="Grid.php" hash="241108bfb525bbbad0c543fef7673546"/></dir><file name="Quote.php" hash="edcacdf20da2f046ab4654dceef2399f"/><dir name="Review"><file name="Grid.php" hash="85919ad9bfc19eec32e673a699f850c5"/></dir><file name="Review.php" hash="822d452ee01499b4b493e19e6d810afd"/><dir name="Rules"><dir name="Edit"><file name="Form.php" hash="13f8b943873d30609ca3a2af6c72f502"/><dir name="Tab"><file name="Conditions.php" hash="1a11c398065666e0b77e0bf30827c81e"/><file name="Main.php" hash="aaf575a2db857eaac0f9e5006064fc3d"/></dir><file name="Tabs.php" hash="99c7258e593bff52b3976c359ad4235a"/></dir><file name="Edit.php" hash="bf987a05ecfc0c7540c6f86275582733"/><file name="Grid.php" hash="6a9077456ab1b8b72ed26406af336437"/></dir><file name="Rules.php" hash="4dc3b7ac89293d996f3e2a8fd3d12eb9"/><dir name="Sales"><dir name="Order"><dir name="Creditmemo"><file name="View.php" hash="ab9cfcc946e03f8b8fdf33d606222427"/></dir></dir></dir><dir name="System"><dir name="Advanced"><file name="Deletecontactids.php" hash="293320187b8ec5514ff69e027a808321"/><file name="Notification.php" hash="0ea9608a09ae2dad6e4c78738c583c2d"/><file name="Reimportcatalog.php" hash="a497ac63a609440dbd723bc3a2a2819f"/><file name="Reimportorders.php" hash="d29f38c149d2fbfb6b8589491b050247"/><file name="Reimportquotes.php" hash="6089df53be37afe6c4f9f10147730bc7"/><file name="Reimportreviews.php" hash="2c14cd482a448be01c8ceb3d0a9c7dd5"/><file name="Reimportsubscribers.php" hash="43b98ca37accc978ba8e9bd087b9a2c7"/><file name="Reimportwishlists.php" hash="f6bce4f06bc91f69242bd2f59220285d"/><file name="Reset.php" hash="41053dc403c95328402c0e3886307859"/><file name="Resetcustomersimport.php" hash="21bab61f962ed4a3a3c14656781c4e3b"/><file name="Runcatalogsync.php" hash="ecaa5a7b8ebc78a5f84f0870a90a0cd9"/><file name="Runcontactsync.php" hash="747b338c4fe3d3603ce60a68b7e1d5c4"/><file name="Runimportersync.php" hash="e2eee8773c0019dd7e8c5d9553a75d39"/><file name="Runordersync.php" hash="58d7672919b3387d73472e6a10a850af"/><file name="Runquotesync.php" hash="c4bbc5616a080b5dbaad02717225f507"/><file name="Runreviewsync.php" hash="dafef47cb94f595af038698f1f233421"/><file name="Runsubscribersync.php" hash="090707901889d4bae741fe59747cfbff"/><file name="Runwishlistsync.php" hash="8453adae849a6ad9aaecb1f27dc46b72"/><file name="Setupdatafields.php" hash="48373eb08bb90bf4417c830723a4df11"/><file name=".DS_Store" hash="194577a7e20bdcc7afbb718f502c134c"/></dir><file name="Ajaxvalidate.php" hash="2647705ecfcd6c1cd39489febd38b490"/><dir name="Automation"><file name="Connect.php" hash="6a104d54949f4dd845e2dd273ec59b59"/></dir><dir name="Config"><file name="Addressbook.php" hash="ac68b4c742413e5cdcce9c5c78e836a9"/><file name="Colorpicker.php" hash="a22c6d50728e2edaf43399093b1f4a61"/><file name="Datafield.php" hash="5b30377c5423fcccd424c4ca0ad3224f"/><file name="Enterprisevalidator.php" hash="92b60f1f8ca067887dc17afac7be6f24"/><file name="Resetcontacts.php" hash="22ef003f51db85bed2ebb85c5834b352"/><file name="Resetguests.php" hash="002ced7daec912bdad0890b26afcc4a0"/><file name="Resetsubscribers.php" hash="d5be1a595576ea63883c0249be835c7f"/><file name="Validator.php" hash="995386364c7434ad50bb87477c46f6eb"/><file name="Waitingfield.php" hash="7ffe44f6ae4b879336344882ba7e020e"/><file name="Wrapper.php" hash="2813c1d11255f10bc1ff804650a634b7"/></dir><dir name="Dynamic"><file name="Addressbookbutton.php" hash="744ca8346bf67fb7c7b96f92ad67e993"/><dir name="Basket"><file name="Crosssell.php" hash="aa00e37f15d822bf8448fbe79d70d1d5"/><file name="Related.php" hash="a1b0f467eee4513be21fdc58bdf6e59e"/><file name="Upsell.php" hash="dc7a0dbea77d7c88c9fbb660131d1773"/></dir><file name="Bestsellers.php" hash="47d8b2f89290c034c1c74ae0dad5463a"/><file name="Couponinfo.php" hash="646acc6eb041db4041c1df04e2e2fe26"/><file name="Creditmemonew.php" hash="c36bcff6b33f441b11cc5a45a5abe60d"/><file name="Crosssell.php" hash="e1085bb71156dcb1bb012044c5d4a076"/><file name="Datafieldbutton.php" hash="369eec55df4d51ce367abb9c81402976"/><file name="Fallbackchooser.php" hash="28601a2fb0407ece1269a9e3d95757de"/><file name="Fallbackcontainer.php" hash="e3044fc492790758b646a9a656ea1f79"/><dir name="Feefo"><file name="Reviews.php" hash="8a32c6e10d93621fe63c6307c5da17da"/><file name="Score.php" hash="a5a2b4a16e1645107c9dd360dbf03a6b"/></dir><file name="Gridlist.php" hash="9329c6aa0ab3118b8f03af66761f038d"/><file name="Lostbasket.php" hash="506dd83329b4b342af7239a419925a93"/><file name="Manualchooser.php" hash="d9e2e198bb53fdf4a329915db7d07281"/><file name="Manualcontainer.php" hash="689696990974ce7cd1db3df3b73bb864"/><file name="Mostviewed.php" hash="cd49997a51f34aa36470dae896336fee"/><file name="Nosto.php" hash="ec90847ea7170baf8bc197057a13dcac"/><file name="Productpush.php" hash="2623fd4a941ff0e06504dc87b877bb50"/><file name="Recentlyviewed.php" hash="b73e60e76daaca15891e3cbc3700182c"/><file name="Related.php" hash="8b8022dac18181a3ab11837be34beced"/><file name="Review.php" hash="02a962eaf8231981f3d999be9a904c77"/><file name="Upsell.php" hash="898fe5ffc06063450034a8980f54db33"/><dir name="Wishlist"><file name="Crosssell.php" hash="c5c191438715b4f8ad36c62b705cfbb5"/><file name="Related.php" hash="d94412911bb7b85ce73718adc244d6e8"/><file name="Upsell.php" hash="d79aed858a2f4c2a29299fe8868d7ef7"/></dir><file name="Wishlist.php" hash="46c433fda7ec07c82025d88014d93471"/></dir><file name="Emailapivalidate.php" hash="d2b05128440217064792b82e0911e1e6"/><file name="Installation.php" hash="03707c42dcca01e1c156b48a6246a74c"/><dir name="Sms"><file name="Smsmessagefour.php" hash="d5f61111d9c58ee99dc10cb53afea060"/><file name="Smsmessageone.php" hash="00b65d2fcd16c11b93db8fff1ffda069"/><file name="Smsmessagethree.php" hash="eec8120e729a8dd0d248e184564eefcd"/><file name="Smsmessagetwo.php" hash="5f9fa9aca352c389a2cd75ef4366baed"/></dir><dir name="Url"><file name="Creditmemoupdate.php" hash="07113ed35f709e2e65c4c61521e560a8"/><file name="Creditmemoupdateguest.php" hash="034e033269cf142f930b6bff1c36d10a"/><file name="Customerconfirmation.php" hash="260a57d13b20cda7229eb33c9a73559c"/><file name="Customerconfirmed.php" hash="1743ddf8f308eb375f44ac32da3c3c91"/><file name="Customernew.php" hash="2878ef6c84303614ac3426838f8b65d5"/><file name="Invoiceupdate.php" hash="d4eb69e2e0f5e3b7e9ea1da5d3adb578"/><file name="Invoiceupdateguest.php" hash="1ebd3c14e380043fa16b7e36d821d15c"/><file name="Newcreditmemo.php" hash="20b55e9ce5371a371ff0c94bd0fda178"/><file name="Newcreditmemoguest.php" hash="5bd16181c61c1bfb98e6eea3e1c7281f"/><file name="Newinvoice.php" hash="ff95c29ff62359ab2d0366098029a704"/><file name="Newinvoiceguest.php" hash="d05a14bb52facf8635c89642165e39ec"/><file name="Neworder.php" hash="f67882d758909fda7364fa04cb51e2f0"/><file name="Neworderguest.php" hash="ac3b96283e7e5e3ce68e35bf84f9043d"/><file name="Newshipment.php" hash="f059c430fb155c8f9da10b6dd4c67e01"/><file name="Newshipmentguest.php" hash="f73d439fb93eb7f20289e021b10b69a8"/><file name="Orderupdate.php" hash="1c27f18bf9ff58c1f0668539b7ca6896"/><file name="Orderupdateguest.php" hash="d4a2479efa67e900fbe69f6954707076"/><file name="Shipmentupdate.php" hash="f6f2fe91a159b8bf9c70c3a8773a058c"/><file name="Shipmentupdateguest.php" hash="f0ce96ef2e562cae6d155e4d38f1dcac"/></dir></dir><dir name="Widget"><dir name="Chooser"><file name="Product.php" hash="b2f77407f30411d5447fbd1ffac3e415"/></dir></dir><dir name="Wishlist"><file name="Grid.php" hash="fc60afe27facac4a3fb4677ba1aa2fbe"/></dir><file name="Wishlist.php" hash="74f5fb49b057af35ee320f442c664a6b"/></dir><file name="Basket.php" hash="435ae9c1945579ac9da0b4b9025f5251"/><file name="Coupon.php" hash="fe3affe1a8d9a7a885d81f19f4adb51e"/><dir name="Customer"><dir name="Account"><file name="Books.php" hash="4513840169af5af3ecb5682111c8798b"/></dir></dir><file name="Edc.php" hash="5a9937398bd001e4cccb4620cedf624a"/><file name="Feefo.php" hash="69eae3b3ef72a610ef7671347095127e"/><dir name="Order"><file name="Creditmemo.php" hash="3b8be146530d2ef5b408c91dda73dd9d"/><file name="Invoice.php" hash="0e2e69a44e6952e4803afe0778b57567"/><file name="Shipping.php" hash="dec79e54b6029c8a478b519f99470e72"/></dir><file name="Order.php" hash="ce3098054467d5f5c21840469e5a512a"/><file name="Products.php" hash="d38365bc368c1d6e8e867de39c4a1495"/><dir name="Recommended"><file name="Products.php" hash="507a2ab57f718870064272084cf58bb6"/><file name="Wishlistproducts.php" hash="943a5b7697bacb899cb4e81a587fe334"/></dir><file name="Wishlist.php" hash="c0adad8c73b8cbf50596c202032422e3"/></dir><dir name="Helper"><file name="Config.php" hash="550a3230f37f0335de2267d037328358"/><file name="Dashboard.php" hash="19fb73389f2ef6a65c83325e8059de67"/><file name="Data.php" hash="460f62593e4052c9cb9391a466bf5e2a"/><file name="File.php" hash="93f15c70a6babbc8174098bcac0758be"/><file name="Recommended.php" hash="d77533b7b110828e07f7a9d9a80606fe"/><file name="Transactional.php" hash="a399ced08b031a9d5f4cdab3d28db6a6"/></dir><dir name="Model"><dir name="Abstract"><file name="Rest.php" hash="9dcbb422c4bb28bab2e88c9ba0b21cba"/></dir><dir name="Adminhtml"><dir name="Dashboard"><file name="Content.php" hash="a415e7d3fad5d27ce27f6172a50d4997"/><dir name="Tabs"><dir name="Analysis"><file name="Abandoned.php" hash="915c2e848bdb8c2629a90d6d4326b8e8"/><file name="Customer.php" hash="f56d20e6620589c31b8468d8f06d975e"/><file name="Orders.php" hash="9ac9df6980ecedcdcd2567656ebc3a4c"/><file name="Rfm.php" hash="1bd137928d701485c995b6a236ea1ef6"/><file name="Subscriber.php" hash="1b44da59332b7f233499abe3408ed70a"/></dir></dir></dir><file name="Observer.php" hash="ca17335a3a44a498b98170f7fe07ecb4"/><dir name="Source"><file name="Addressbooks.php" hash="af92437b4ed2a7fc6fede455420f11c0"/><file name="Addressbookspref.php" hash="be0c23d42b1a30f9c719c382be865e8d"/><dir name="Advanced"><file name="Abandonedlimit.php" hash="cd280151523091f85af89b0e22ff0abf"/><file name="Attributes.php" hash="9d08d5ab758447987c7ab9ba6d5c45b2"/><file name="Cronexpressionsone.php" hash="3877dd7041189aedf2c972b4361d2134"/><file name="Cronexpressionstwo.php" hash="0a97c58dff29e17a8448ff0c17e393d7"/><file name="Frequency.php" hash="28292fba0dd62bb6730ccd7bfa2b8e70"/><file name="Quoteattributes.php" hash="a1ddcbd001b9cd5b40157ba3c9435bef"/><file name="Transdata.php" hash="5c670a26d641c4b7e73bbaff48af3dd6"/></dir><file name="Attributes.php" hash="4b079aac1a25bec3c7c7e4152a66daa8"/><dir name="Automation"><file name="Programme.php" hash="d65ea01f846798ded93b420889da89c2"/></dir><file name="Campaigns.php" hash="35014267c18ab36cd6d849318914185e"/><dir name="Contact"><file name="Imported.php" hash="f44a906cb28c81c709c649b6ed8a0ccd"/><file name="Modified.php" hash="30e2f9e3d55ecd65a3cd0be1136db38d"/></dir><dir name="Customer"><dir name="Attributes"><file name="Select.php" hash="a77542918db6d3ba1c0298b475e8e9ed"/></dir></dir><file name="Datafields.php" hash="0a12d3c9c63476ea6981e416dfec6155"/><dir name="Datamapping"><file name="Datafieldaccess.php" hash="eba7f16c5e03ebc4bca00b1dcfc5dbc7"/><file name="Datafieldtype.php" hash="1b9ac7be92d60718981d4b17be4dbeda"/></dir><dir name="Dynamic"><file name="Displaytype.php" hash="3c84fc4962406d0e4b974e1c0e40f6e4"/><file name="Gridview.php" hash="5f033792839adf57fb37b277dc662237"/></dir><file name="Fontpicker.php" hash="a943850c33229bc471ad9e94023347e3"/><file name="Fontsize.php" hash="7eb842a6f895b3f8a279c53fa961f173"/><dir name="Importer"><file name="Mode.php" hash="6a4649e9311b6aaf2997a434438dfb29"/><file name="Status.php" hash="97dfab5de2ada065f335ede94301c27c"/></dir><dir name="Lostbaskets"><file name="Interval.php" hash="e3ed7930ab2b4526c0d6d2b76784331c"/><file name="Intervalminute.php" hash="7777a4757d8fa8deebfa94cca9ac4053"/></dir><file name="Orderstatus.php" hash="b02456d91d6e27ae9f330c2b16b0fb8f"/><file name="Publicdatafields.php" hash="28c5710e4618e3ee90e8432a66aad31e"/><dir name="Reviews"><file name="Delay.php" hash="393704cfa870165ef3b3ba59e454953b"/></dir><dir name="Rules"><file name="Condition.php" hash="377f65c9b5ee85e44b2fb4ac72021770"/><file name="Type.php" hash="2ccd61f1f5a098e876b79ac24529d41b"/><file name="Value.php" hash="94d4df5777c098e5f04f5be125772ce5"/></dir><file name="Styling.php" hash="ff6d61cb3b533db33c26fd303befd09c"/><dir name="Sweettooth"><file name="Yesno.php" hash="8345e519b0e6b8eb75bca72a16e66014"/></dir><dir name="Sync"><dir name="Catalog"><file name="Attributes.php" hash="323d3400bb91b89ff880421823f54052"/><file name="Type.php" hash="265862a32c3d11509bf4f9ec3fac65fb"/><file name="Values.php" hash="30eedb9ac9f72edb94d9abef91b9fcfb"/><file name="Visibility.php" hash="84cc10186bfc1d00dd967027f6c2a413"/></dir><file name="Yesno.php" hash="00c1b84aeb7f10fafea884410e4e408a"/></dir><dir name="Transactional"><file name="Mode.php" hash="02f45553e3bc342ddd3f205993a5384e"/><file name="Port.php" hash="3dc1b86a9034e2098f98921109d7187f"/></dir></dir></dir><dir name="Api2"><dir name="Subscriber"><dir name="Rest"><dir name="Admin"><file name="V1.php" hash="388059f47bcfc581ab084676e5fa5953"/></dir></dir></dir></dir><dir name="Apiconnector"><file name="Client.php" hash="9efa9cd1261165abd0c10bfff9a62b83"/><file name="Contact.php" hash="4f041bb45a08415faef415f6f7b8e2fb"/><file name="Customer.php" hash="b83a108e33c28fd6ec8c46adde3cb446"/><file name="Test.php" hash="c1c0274bb9b707af55ebdd7a4263bf6e"/></dir><file name="Automation.php" hash="bfa50bdec7764e573391003773d5c70b"/><file name="Campaign.php" hash="08e6f1f963c05afac07288b66b305609"/><file name="Catalog.php" hash="4aa25dbe530cb3f2ad6c57d0a0f88cb4"/><dir name="Connector"><file name="Account.php" hash="11d1674896695b0cd15b891ab5165fb4"/><file name="Campaign.php" hash="6358f4a22cadd80a985865353eec0112"/><file name="Datafield.php" hash="616fa71b66833c5bb6abd5c3e24876f9"/><file name="Order.php" hash="9d8025ac4b78a6e6320705a24c45af0a"/><file name="Product.php" hash="d1d35faa5a0d9f7a4e6ec900b8413cfa"/><file name="Quote.php" hash="3f5a94f5de010c1a2c5e96c27e6b14f4"/></dir><file name="Contact.php" hash="6f48a12c66a13e8aa2b4ef4828aaade8"/><dir name="Controller"><file name="Observer.php" hash="b01537009a0061c4266fbf2f8c52251d"/></dir><file name="Cron.php" hash="ff2fcf008d5b4b16e4c1cd5616bfcc5a"/><dir name="Customer"><file name="Guest.php" hash="bd1e1b8f82f25d808700c33f726cb19a"/><file name="Observer.php" hash="1562634f26756a4a6956816ff879a835"/><dir name="Review"><file name="Rating.php" hash="a91b68302e270aa08ea3762f63225a80"/></dir><file name="Review.php" hash="f17180683194eca1e49782c36e310200"/><dir name="Wishlist"><file name="Item.php" hash="c5faac748a970502457e92dbb1f2df69"/></dir><file name="Wishlist.php" hash="598eddf031e56fa752bf64fe32773da5"/></dir><file name="Customer.php" hash="e1dd3b479c9bbf125cf1ec36206d1c7f"/><dir name="Email"><file name="Template.php" hash="1b6d1a45b2af72a7a0aa92a835f2c558"/></dir><file name="Email.php" hash="6cf3844e7f4c75c534a50486631ec10e"/><file name="Feed.php" hash="09151ffa241990ed28f4acb99c7d72ca"/><file name="Importer.php" hash="fe40d3282cfc73fb90a8d8403e1cce1d"/><dir name="Newsletter"><file name="Observer.php" hash="33111ce1f54e8549c76955bbdf8c7ee2"/><file name="Sub.php" hash="a8a3fd672f62288be68001b3dc0bd58d"/><file name="Subscriber.php" hash="53c2ba474048763384dbcd0a6d590488"/></dir><file name="Order.php" hash="012e78e61057a2a33285a68ec93a7999"/><file name="Quote.php" hash="7c13764201f798464dfbbb6123370b76"/><dir name="Resource"><dir name="Automation"><file name="Collection.php" hash="b0e7826c3c153cac3d9bcaed76d1d75e"/></dir><file name="Automation.php" hash="902f696eb797323101f1a3b4c9abf84d"/><dir name="Campaign"><file name="Collection.php" hash="736cc4414d45d0dca975101bc75919c6"/></dir><file name="Campaign.php" hash="b2d6c5e4396794efd97562f2f23f2f40"/><dir name="Catalog"><file name="Collection.php" hash="ef157bd81d50a49e94058b986aac5b2e"/></dir><file name="Catalog.php" hash="e447f04904e9b964359497c79a6ea1eb"/><dir name="Contact"><file name="Collection.php" hash="a6da2689f90a668b08a549a200f9c6a9"/></dir><file name="Contact.php" hash="e7c076d0f5efe25bdf2a94503820e4cb"/><dir name="Importer"><file name="Collection.php" hash="605d0e7091f309e6a5f6e2d15513c8bf"/></dir><file name="Importer.php" hash="565087fd0df9fa9c2f84cc5ac5e20e17"/><dir name="Order"><file name="Collection.php" hash="87cf24cbbd5d6c0141b7c401238b5c50"/></dir><file name="Order.php" hash="11fcf2784fb5f80594e6672d867c3d5a"/><dir name="Quote"><file name="Collection.php" hash="4d9ed530f86edb24c2d8e89db3c2b6b1"/></dir><file name="Quote.php" hash="598747a52e2a2d41dd7582bba69fef4a"/><dir name="Review"><file name="Collection.php" hash="c7e03d9bd662df5dd2a1a31e246b97e4"/></dir><file name="Review.php" hash="761eec4269e616ec356634d9346020b6"/><dir name="Rules"><file name="Collection.php" hash="b0da90dc943d5c6a8dd47d3fe245677c"/></dir><file name="Rules.php" hash="4b688c552b91487c22482f059cb49bc9"/><file name="Segment.php" hash="32b94ab790a3508658a663d2e2361065"/><file name="Setup.php" hash="442dda9eabbd1fb6e88e7d2baaa2a28c"/><dir name="Wishlist"><file name="Collection.php" hash="6d75820d8b8d5ed1af2fc77522205a8d"/></dir><file name="Wishlist.php" hash="6047d392299414bbf17c9aaf83a159ff"/></dir><file name="Review.php" hash="e35b2eae08be29cf58686e8b1ab3854e"/><file name="Rules.php" hash="ab5ece927a411a2f77e5c515555f814f"/><dir name="Sales"><file name="Observer.php" hash="e9aa80219d3af19b2c8b0aa482e999ae"/><file name="Order.php" hash="cd5abf018a37abdccc60a595b5e00217"/><file name="Quote.php" hash="3c6dbd5722f6d2e50832b8ea14f726c1"/></dir><dir name="Sms"><file name="Campaign.php" hash="79714d233916229b905a081fbda164c5"/></dir><dir name="Sweettooth"><file name="Observer.php" hash="36ce70503cd8abbafd8b5340a06d2072"/></dir><file name="Wishlist.php" hash="5b14130bf3c4975f6c9335c5a1a993d4"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="ConnectorController.php" hash="1fcd0cc5396b18a78b00ef5cb17952f9"/><dir name="Email"><file name="AutomationController.php" hash="12ebc887254ac470d418492eb0bacba8"/><file name="CampaignController.php" hash="dbe5e2bbfeab5b33315dc63f9c5ee7ad"/><file name="CatalogController.php" hash="e43c7a33bec07c1cedbd73a0aa9c54af"/><file name="ContactController.php" hash="b9c342c297d243661cc9a8e58f778257"/><file name="DashboardController.php" hash="13572a0ae47a09ed1cd4af0b870e8320"/><file name="ImporterController.php" hash="21540bb7f839cafcc6f70b7bee5b2774"/><file name="OrderController.php" hash="64b719cf2a80847b82a7849be7ffe68c"/><file name="QuoteController.php" hash="4167890a19fa6716e64a79afca55e2e3"/><file name="ReviewController.php" hash="13d74d52e160555e0c029a360d562a51"/><file name="RulesController.php" hash="6e33826563242604e83fe25344f7bf3e"/><file name="StudioController.php" hash="c24e13f8fb26805937b71d8d3eebcddc"/><file name="WishlistController.php" hash="b4d3a20f38a0a45886cc7dfa963894dc"/></dir><file name="RulesController.php" hash="629d3517648602792cb43c71c97dc0c9"/><dir name="System"><dir name="Email"><file name="TemplateController.php" hash="98d9c1f5aae8f94de0102ccdcdb2fe7c"/></dir></dir><dir name="Widget"><file name="ChooserController.php" hash="7607cec3305ab9d4381c89fa12703a64"/></dir></dir><file name="AjaxController.php" hash="cd16d360815bfcf72b77a78d9dc938f0"/><dir name="Customer"><file name="AccountController.php" hash="4b78330a34d2985fa2526c935073a65f"/><file name="NewsletterController.php" hash="f7425d9524504163d6e91ae3fa640c88"/></dir><file name="DynamicContentController.php" hash="c8e6dd34bfadc36701ce15478c79cddd"/><file name="EmailController.php" hash="c9a9a843d2f8e386a5669fd27c1cd79c"/><file name="FeefoController.php" hash="f3613defc5132cdabc5536483ae75bb5"/><file name="ProductsController.php" hash="d54c85bc071a0fcda6a8e5969e3c5f63"/><file name="QuoteproductsController.php" hash="3867af36e829e4cf22d81a4d96757d6a"/><file name="ReportController.php" hash="c8c670deae7bec4e17bb3251015dfffb"/><file name="ResponseController.php" hash="b30cec90880bf1646cda32561f0edff3"/><file name="WishlistController.php" hash="a8d20ad1304bf13a5de8847e726d9ee5"/></dir><dir name="etc"><file name="adminhtml.xml" hash="6cceb9fd48260c046b190bc8002df639"/><file name="api2.xml" hash="e6be0fdc4206cb242f22b2335476b497"/><file name="config.xml" hash="ec90fc12ef21125e84e7fb902d59e39e"/><file name="files.yaml" hash="f84a8e4814f128cd57cabe1f64f5360e"/><file name="system.xml" hash="a5ae837b7a5dd269d2009c21739b003f"/></dir><dir name="sql"><dir name="email_connector_setup"><file name="mysql4-install-0.1.0.php" hash="26042b2a6d9cd6241d52f826188483f4"/><file name="mysql4-install-3.0.0.php" hash="0874c77e934295ba2c68f9d553eb90ba"/><file name="mysql4-install-4.0.0.php" hash="8b534d2b2f5e2ef7443108fdf57ebdf0"/><file name="mysql4-install-5.0.0.php" hash="911128612ce03cd67068bb821af024f0"/><file name="mysql4-upgrade-1.1.1-1.1.2.php" hash="7fae25a8ae47fe0ba692076ac04237a4"/><file name="mysql4-upgrade-1.1.2-1.5.0.php" hash="34ac896f6e681c56d8d2dd6bf411215e"/><file name="mysql4-upgrade-1.5.0-2.0.0.php" hash="75020a02255ea63e9bc4599d85ab4e2f"/><file name="mysql4-upgrade-2.0.0-2.0.1.php" hash="2f71a10d19eddd97c9eba9af840e4f09"/><file name="mysql4-upgrade-2.0.1-2.0.2.php" hash="6b7af944ebc76328d16223cdb245c568"/><file name="mysql4-upgrade-2.0.3-2.0.4.php" hash="97ff7b08533c33b97398b91ec68ceaf1"/><file name="mysql4-upgrade-2.0.4-2.0.5.php" hash="f2080852fd1e0512da9bf1074767a9b3"/><file name="mysql4-upgrade-2.0.5-2.0.6.php" hash="438ea31fe7b8ed88160ae8c231ec9ccc"/><file name="mysql4-upgrade-3.0.1-3.0.2.php" hash="7c53b291487987ae73929acea576bc51"/><file name="mysql4-upgrade-3.0.3-3.0.4.php" hash="7adaa83b6da0000ca7d1491c3af76682"/><file name="mysql4-upgrade-3.0.4-3.0.5.php" hash="c08939ca13713f335bacc593d0e780d3"/><file name="mysql4-upgrade-3.1.2-3.1.3.php" hash="f5ba2c14acd01144297fab7070558ddd"/><file name="mysql4-upgrade-3.2.1-3.3.0.php" hash="1b6540a260f25ae849f433cb60f0c39d"/><file name="mysql4-upgrade-3.3.0-3.3.1.php" hash="df5afd27a3d0e542f85f762af28d5c85"/><file name="mysql4-upgrade-3.3.2-3.3.3.php" hash="1707de69aa9294821195cfafa1a1798e"/><file name="mysql4-upgrade-3.4.0-4.0.0.php" hash="39b55697d152529c4ba32ff6b9cffa48"/><file name="mysql4-upgrade-4.0.0-4.1.0.php" hash="fd8ffbebbbc4d04a2b9e1c90344ae6cc"/><file name="mysql4-upgrade-4.1.3-5.0.0.php" hash="c762c1263e3595162100ff48db52597b"/><file name="mysql4-upgrade-5.0.0-5.0.1.php" hash="a8603a251c822c67d0afde4b64d82da6"/><file name="mysql4-upgrade-5.0.4-5.1.0.php" hash="4640e2ea0587c2b3ead18cfa29b5fa04"/></dir></dir></dir><dir name="Mailcheck"><dir name="Helper"><file name="Data.php" hash="589b8909f08143ad44234f05911488df"/></dir><dir name="etc"><file name="config.xml" hash="841542418fa8e50cb53a3bde50ce38f4"/><file name="jstranslator.xml" hash="d0f175944d2c14badd2cade8d4a40585"/><file name="system.xml" hash="7d64665436e5eb104a1316c32338ec72"/></dir></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="connector.xml" hash="4a5ad4efa2ea66fe9deccb81196582a1"/><file name="mailcheck.xml" hash="ff97a71e8124f8e6e55d951124addace"/></dir><dir name="template"><dir name="connector"><file name="additional-newsletter-pref.phtml" hash="db1251a0475c0947fd8e5854da4fd9ae"/><file name="basket.phtml" hash="fef3c4961495d63ae2a99c77dde591ff"/><file name="coupon.phtml" hash="2b5164dcd30b0311ed90e2e523403d65"/><dir><dir name="customer"><file name="stats.phtml" hash="b26f6331faa6b3e662b14e5bde8c66d8"/></dir><dir name="feefo"><file name="reviews.phtml" hash="cd1dc08242588b1427534326eb7525ab"/><file name="score.phtml" hash="74d48f68f5d0ec044a8c067fa7f3c631"/></dir><dir name="product"><file name="list.phtml" hash="a07f871bc93483fe16d9271f01a5dfef"/><file name="nosto.phtml" hash="fe3d6efaca5d739374c29046c87c8a86"/><file name="price.phtml" hash="4d0674f2d03160617536338744330ff4"/></dir></dir><file name="email_capture.phtml" hash="faf17eaeb824877f5998f1e3ab91504d"/><file name="email_capture_init.phtml" hash="f485003272b78400308d3af73574f4a7"/><file name="review.phtml" hash="38d28e9de70c280c73bcf25dd604581b"/><file name="roi_code.phtml" hash="108934652f443d0328a60893cad70742"/><file name="tracking_code.phtml" hash="1bbccb72db1a769ef8e14e0df2c9febd"/><file name="wishlist.phtml" hash="a891cd526661c4c6ec42c94af22b4bd0"/></dir><dir name="page"><file name="blank.phtml" hash="7a10ef1534ebe3b449cf051799e5a066"/></dir><dir name="mailcheck"><file name="scripts.phtml" hash="adbf073bb2cb944c44b11d79bcca1eb5"/></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><dir name="connector"><file name="email.xml" hash="907e33ef044db87b0cbdadd480c5c43a"/></dir></dir><dir name="template"><dir name="connector"><file name="appcues.phtml" hash="11bb1143b5334bbcbf182d17a118f281"/><file name="beacon.phtml" hash="18d507b6041ac64b167d27a606fdcb83"/><dir><dir name="customer"><file name="stats.phtml" hash="0b842d3ccaa1cc33098be44a7935f97f"/></dir><dir name="dashboard"><file name="accountbar.phtml" hash="e01c432f6690613fd2845769777830cf"/><file name="content.phtml" hash="9e5c843b6323ea80c410662fb4f39793"/><file name="logs.phtml" hash="197596058232e7abd79dbbba860268cb"/><file name="status.phtml" hash="eb2fb3ef2d76df71fd453f1ddb376226"/><dir name="tabs"><dir name="analysis"><file name="index.phtml" hash="a9ef11d470dae139ad5243fc1bc91431"/><file name="rfm.phtml" hash="8129887ef234cd4571aa28c5fd124d3b"/></dir><file name="data.phtml" hash="bd7952625a3697cf4e5ef3cd0feb0a80"/><dir name="general"><file name="index.phtml" hash="68fa10c2aeef745d80b60317c9461a94"/></dir></dir><file name="tabs.phtml" hash="8df8befdd2f2300b177aacaca5d8a278"/></dir><dir name="system"><dir name="config"><file name="createdatafield.phtml" hash="a1a571fa0957d7fadf346d1b89c5a0b0"/></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Dotdigitalgroup_Email.xml" hash="8745c0b2eae08783b6203a613acdbcb8"/><file name="Dotdigitalgroup_Mailcheck.xml" hash="247272e2cc981e8b91af95962b0f0470"/></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="connector"><file name="config.css" hash="433bf71f40517a667ee9aba495f1746c"/><file name="dashboard.css" hash="08e2c6ae799757fd68a85781311f2b97"/></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="js"><dir name="mailcheck"><file name="init.js" hash="585e518d5d2dd2d0f50243f51a3c881b"/></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="en_US"><file name="Dotdigitalgroup_Email.csv" hash="67022e746e28d74b86509b70f336db4f"/></dir></target><target name="mageweb"><dir name="lib"><dir name="Raygun4php"><dir><dir name="Exception"><file name="UnsatisfiedDependencyException.php" hash="32b7fff3854ba20107b89a100550dc41"/><file name="UnsupportedOperationException.php" hash="951d8a9fc2bdfae0acc432ea6dabffa4"/></dir></dir><file name="README.md" hash="0aed7c6a52f358016b2c1b8f5e4e35ed"/><file name="Raygun4PhpException.php" hash="f6d4ef9f38a74578b115fbdf6e2fd3c5"/><file name="RaygunClient.php" hash="f9511057d3280a3a6d02b9b2a1517fd1"/><file name="RaygunClientMessage.php" hash="df9bd918ff13b50146b252208a5ce737"/><file name="RaygunEnvironmentMessage.php" hash="a7dff1914fcb7f6a61577b758edba47e"/><file name="RaygunExceptionMessage.php" hash="fcf7e3cbf9fbafb3ff4a6d56135a190d"/><file name="RaygunExceptionTraceLineMessage.php" hash="8aa87f7ddee8c00855737e85bbcb29cd"/><file name="RaygunIdentifier.php" hash="49461fa525594b15f3a350fd1da1c2a0"/><file name="RaygunMessage.php" hash="865eaa58577265fb52a85ee861102625"/><file name="RaygunMessageDetails.php" hash="2403453f658d7a943bd476e7fad186d7"/><file name="RaygunRequestMessage.php" hash="038703138dcd19aefbc9a7e44bd6f198"/><file name="Uuid.php" hash="9db740992b0dad17bf2047d13565b428"/><file name="cacert.crt" hash="47961e7ef15667c93cd99be01b51f00a"/></dir><dir name="connector"><dir><dir name="feefo"><file name="feedback-no-th.xsl" hash="239c40764293a65b85d9f86479ced8b6"/><file name="feedback.xsl" hash="7167570192e48fdf57baa9c2cf56986b"/></dir></dir></dir></dir><dir name="js"><dir name="connector"><dir><dir name="procolor-1.0"><dir name="img"><file name="procolor_win_bars.png" hash="a8e41fdddd2253309e0b3e5154668c24"/><file name="procolor_win_bg.gif" hash="c0558cecd0e0ffb9ca89efe00f422261"/><file name="procolor_win_bg.png" hash="4e2a34cc64888fe264fcf6249dfe40da"/><file name="procolor_win_boxes.png" hash="e971c1ca87a0cb52d32408270d00a0da"/><file name="procolor_win_close.png" hash="20a8bb9433157962ab25d86d28d088a3"/><file name="procolor_win_drop.png" hash="9ddce741de330573f082ffe83005d691"/><file name="procolor_win_palette_raw.png" hash="ea98dde528e987029af6e24dbef53922"/><file name="procolor_win_sel_circle.gif" hash="3674b62db5a6eaa4dcedb0749dde4106"/><file name="procolor_win_sel_circle.png" hash="d76195d1777e9a14ebc1a242ab712037"/><file name="procolor_win_sel_rect.gif" hash="b74a72aaf1ea21d55b8751079f283537"/><file name="procolor_win_sel_rect.png" hash="5513589e2b6dc1a980a4e65a746005d0"/><file name="procolor_win_wheel_black.png" hash="62353005bb70bbfa8ffd700112d72582"/><file name="procolor_win_wheel_rgb.jpg" hash="afdd3852c3788a58794ddf1de9557fd8"/></dir><file name="procolor.compressed.js" hash="79e463efad21212e4096d40b9e17d96c"/><file name="procolor.js" hash="93ec3cb6a0356cce4cf8e51006dfaeec"/></dir></dir><file name="selector.js" hash="5dc1900967679a41c70ed5f1755240e2"/></dir><dir name="mailcheck"><file name="magentoMailcheck.js" hash="b4eaabac0b6e8753e09ab6ea449e6519"/><file name="mailcheck.min.js" hash="25966edf6e585822063b48dd34bcee9b"/></dir></dir></target></contents>
|
32 |
<compatible/>
|
33 |
<dependencies><required><php><min>1.5.2</min><max>6.0.0</max></php><extension><name>curl</name><min>7.15.1</min><max>7.30.0</max></extension></required></dependencies>
|
34 |
</package>
|