SOAP_ShoppingAnalytics - Version 1.0.0

Version Notes

Soap Roi Tracker

Download this release

Release Info

Developer Soap Media
Extension SOAP_ShoppingAnalytics
Version 1.0.0
Comparing to
See all releases


Version 1.0.0

app/code/local/SOAP/ShoppingAnalytics/Block/Hint.php ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * @author SOAP Media
4
+ */
5
+ class SOAP_ShoppingAnalytics_Block_Hint
6
+ extends Mage_Adminhtml_Block_Abstract
7
+ implements Varien_Data_Form_Element_Renderer_Interface
8
+ {
9
+ protected $_template = 'shoppinganalytics/system/config/fieldset/hint.phtml';
10
+
11
+ public function render(Varien_Data_Form_Element_Abstract $element)
12
+ {
13
+ return $this->toHtml();
14
+ }
15
+
16
+ public function getShoppingAnalyticsVersion()
17
+ {
18
+ return (string) Mage::getConfig()->getNode('modules/SOAP_ShoppingAnalytics/version');
19
+ }
20
+ }
app/code/local/SOAP/ShoppingAnalytics/Block/Sa.php ADDED
@@ -0,0 +1,164 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * NOTICE OF LICENSE
4
+ *
5
+ * This source file is subject to the Open Software License (OSL 3.0)
6
+ * that is bundled with this package in the file LICENSE.txt.
7
+ * It is also available through the world-wide-web at this URL:
8
+ * http://opensource.org/licenses/osl-3.0.php
9
+ * If you did not receive a copy of the license and are unable to
10
+ * obtain it through the world-wide-web, please send an email
11
+ * to license@magentocommerce.com so we can send you a copy immediately.
12
+ *
13
+ * @category Mage
14
+ * @package SOAP_ShoppingAnalytics
15
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
16
+ */
17
+
18
+
19
+ /**
20
+ * ShoppingAnalytics Page Block
21
+ *
22
+ * @category Mage
23
+ * @package SOAP_ShoppingAnalytics
24
+ * @author SOAP Media
25
+ */
26
+ class SOAP_ShoppingAnalytics_Block_Sa extends Mage_Core_Block_Template
27
+ {
28
+ public function getPageName()
29
+ {
30
+ return $this->_getData('page_name');
31
+ }
32
+
33
+ protected function _getPageTrackingCode($accountId)
34
+ {
35
+ return "
36
+ _roi.push(['_setMerchantId', '{$this->jsQuoteEscape($accountId)}']);
37
+ ";
38
+ }
39
+
40
+ protected function _getOrdersTrackingCode($accountId = 0)
41
+ {
42
+ $categoryModel = Mage::getModel('catalog/category');
43
+
44
+ $orderIds = $this->getOrderIds();
45
+ if (empty($orderIds) || !is_array($orderIds)) {
46
+ return;
47
+ }
48
+ $collection = Mage::getResourceModel('sales/order_collection')
49
+ ->addFieldToFilter('entity_id', array('in' => $orderIds))
50
+ ;
51
+ $result = array();
52
+ foreach ($collection as $order) {
53
+ if ($order->getIsVirtual()) {
54
+ $address = $order->getBillingAddress();
55
+ } else {
56
+ $address = $order->getShippingAddress();
57
+ }
58
+ $result[] = sprintf("_roi.push(['_setMerchantId', '%s']);",
59
+ $this->jsQuoteEscape($accountId)
60
+ );
61
+ $result[] = sprintf("_roi.push(['_setOrderId', '%s']);",
62
+ $order->getIncrementId()
63
+ );
64
+ $result[] = sprintf("_roi.push(['_setOrderAmount', '%s']);",
65
+ $order->getBaseGrandTotal()
66
+ );
67
+ $result[] = sprintf("_roi.push(['_setOrderNotes', '%s']);",
68
+ 'Notes'
69
+ );
70
+
71
+ foreach ($order->getAllVisibleItems() as $item) {
72
+ //Cat IDs
73
+ $catIDs = $item->getProduct()->getCategoryIds();
74
+ $category = $categoryModel->load($catIDs[0]);
75
+ $catName = $category->getName();
76
+
77
+ $result[] = sprintf("_roi.push(['_addItem', '%s', '%s', '%s', '%s', '%s', '%s']);",
78
+ $this->jsQuoteEscape($item->getSku()),
79
+ $this->jsQuoteEscape($item->getName()),
80
+ $catIDs[0] ? $catIDs[0] : '',
81
+ $catName ? $catName : '',
82
+ $item->getBasePrice(),
83
+ $item->getQtyOrdered()
84
+ );
85
+ }
86
+ $result[] = "_roi.push(['_trackTrans']);";
87
+ }
88
+ return implode("\n", $result);
89
+ }
90
+
91
+ protected function _addGoogleTrackingCode()
92
+ {
93
+ $orderIds = $this->getOrderIds();
94
+ if (empty($orderIds) || !is_array($orderIds)) {
95
+ return;
96
+ }
97
+ $collection = Mage::getResourceModel('sales/order_collection')
98
+ ->addFieldToFilter('entity_id', array('in' => $orderIds))
99
+ ;
100
+
101
+ foreach ($collection as $order)
102
+ {
103
+ $value = $order->getBaseGrandTotal();
104
+ if (!Mage::helper('shoppinganalytics')->isGoogleTrackingAvailable())
105
+ {
106
+ return '';
107
+ }
108
+ else {
109
+ $id = Mage::getStoreConfig('shopping/tracking/account');
110
+ $format = Mage::getStoreConfig('shopping/tracking/format');
111
+ $language = Mage::getStoreConfig('shopping/tracking/language');
112
+ $colour = Mage::getStoreConfig('shopping/tracking/colour');
113
+ $label = Mage::getStoreConfig('shopping/tracking/label');
114
+
115
+ if ($value > 0)
116
+ {
117
+ $totalValue = 'var google_conversion_value = "'.$value.'"';
118
+ }
119
+ else {
120
+ $totalValue = '';
121
+ }
122
+
123
+ return '<!-- Google Tracking Code -->
124
+ <script type="text/javascript">
125
+ /* <![CDATA[ */
126
+ var google_conversion_id = '.$id.';
127
+ var google_conversion_language = "'.$language.'";
128
+ var google_conversion_format = "'.$format.'";
129
+ var google_conversion_color = "'.$colour.'";
130
+ var google_conversion_label = "'.$label.'";
131
+ '.$totalValue.'
132
+
133
+ /* ]]> */
134
+ </script>
135
+ <script type="text/javascript" src="http://www.googleadservices.com/pagead/conversion.js"></script>
136
+
137
+ <noscript>
138
+ <img height=1 width=1 border=0
139
+ src="http://www.googleadservices.com/pagead/
140
+ conversion/'.$id.'/?value='.$value.'
141
+ &label='.$label.'&script=0">
142
+ </noscript>
143
+ <!-- END Google Tracking Code -->';
144
+ }
145
+ }
146
+ }
147
+
148
+ protected function _toHtml()
149
+ {
150
+ if (!Mage::helper('shoppinganalytics')->isShoppingAnalyticsAvailable() && !Mage::helper('shoppinganalytics')->isGoogleTrackingAvailable()) {
151
+ return '';
152
+ }
153
+ elseif (Mage::helper('shoppinganalytics')->isShoppingAnalyticsAvailable())
154
+ {
155
+ return parent::_toHtml();
156
+ }
157
+ elseif (Mage::helper('shoppinganalytics')->isGoogleTrackingAvailable()) {
158
+ return $this->_addGoogleTrackingCode();
159
+ }
160
+ }
161
+ }
162
+
163
+
164
+
app/code/local/SOAP/ShoppingAnalytics/Helper/Data.php ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * NOTICE OF LICENSE
4
+ *
5
+ * This source file is subject to the Open Software License (OSL 3.0)
6
+ * that is bundled with this package in the file LICENSE.txt.
7
+ * It is also available through the world-wide-web at this URL:
8
+ * http://opensource.org/licenses/osl-3.0.php
9
+ * If you did not receive a copy of the license and are unable to
10
+ * obtain it through the world-wide-web, please send an email
11
+ * to license@magentocommerce.com so we can send you a copy immediately.
12
+ *
13
+ * @category Mage
14
+ * @package Mage_ShoppingAnalytics
15
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
16
+ */
17
+
18
+
19
+ /**
20
+ * ShoppingAnalytics data helper
21
+ *
22
+ * @category SOAP
23
+ * @package SOAP_ShoppingAnalytics
24
+ */
25
+ class SOAP_ShoppingAnalytics_Helper_Data extends Mage_Core_Helper_Abstract
26
+ {
27
+ const XML_PATH_SHOPPING_ACTIVE = 'shopping/analytics/active';
28
+ const XML_PATH_SHOPPING_ACCOUNT = 'shopping/analytics/account';
29
+
30
+ const XML_PATH_TRACKING_ACTIVE = 'shopping/tracking/active';
31
+ const XML_PATH_TRACKING_ACCOUNT = 'shopping/tracking/account';
32
+
33
+ public function isShoppingAnalyticsAvailable($store = null)
34
+ {
35
+ $accountId = Mage::getStoreConfig(self::XML_PATH_SHOPPING_ACCOUNT, $store);
36
+ return $accountId && Mage::getStoreConfigFlag(self::XML_PATH_SHOPPING_ACTIVE, $store);
37
+ }
38
+
39
+ public function isGoogleTrackingAvailable($store = null)
40
+ {
41
+ $accountId = Mage::getStoreConfig(self::XML_PATH_TRACKING_ACCOUNT, $store);
42
+ return $accountId && Mage::getStoreConfigFlag(self::XML_PATH_TRACKING_ACTIVE, $store);
43
+ }
44
+ }
app/code/local/SOAP/ShoppingAnalytics/Model/Observer.php ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * NOTICE OF LICENSE
4
+ *
5
+ * This source file is subject to the Open Software License (OSL 3.0)
6
+ * that is bundled with this package in the file LICENSE.txt.
7
+ * It is also available through the world-wide-web at this URL:
8
+ * http://opensource.org/licenses/osl-3.0.php
9
+ * If you did not receive a copy of the license and are unable to
10
+ * obtain it through the world-wide-web, please send an email
11
+ * to license@magentocommerce.com so we can send you a copy immediately.
12
+ *
13
+ * @category Mage
14
+ * @package Mage_ShoppingAnalytics
15
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
16
+ */
17
+
18
+
19
+ /**
20
+ * Shopping Analytics module observer
21
+ *
22
+ * @category Mage
23
+ * @package Mage_ShoppingAnalytics
24
+ */
25
+ class SOAP_ShoppingAnalytics_Model_Observer
26
+ {
27
+ protected $_isShoppingCheckoutLinkAdded = false;
28
+
29
+ public function order_success_page_view($observer)
30
+ {
31
+ $this->setShoppingAnalyticsOnOrderSuccessPageView($observer);
32
+ }
33
+
34
+ public function setShoppingAnalyticsOnOrderSuccessPageView(Varien_Event_Observer $observer)
35
+ {
36
+ $orderIds = $observer->getEvent()->getOrderIds();
37
+ if (empty($orderIds) || !is_array($orderIds)) {
38
+ return;
39
+ }
40
+ $block = Mage::app()->getFrontController()->getAction()->getLayout()->getBlock('shopping_analytics');
41
+ if ($block) {
42
+ $block->setOrderIds($orderIds);
43
+ }
44
+ }
45
+
46
+
47
+ }
app/code/local/SOAP/ShoppingAnalytics/etc/adminhtml.xml ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * NOTICE OF LICENSE
5
+ *
6
+ * This source file is subject to the Academic Free License (AFL 3.0)
7
+ * that is bundled with this package in the file LICENSE_AFL.txt.
8
+ * It is also available through the world-wide-web at this URL:
9
+ * http://opensource.org/licenses/afl-3.0.php
10
+ * If you did not receive a copy of the license and are unable to
11
+ * obtain it through the world-wide-web, please send an email
12
+ * to license@magentocommerce.com so we can send you a copy immediately.
13
+ *
14
+ * @category Mage
15
+ * @package SOAP_ShoppingAnalytics
16
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
17
+ */
18
+ -->
19
+ <config>
20
+ <acl>
21
+ <resources>
22
+ <admin>
23
+ <children>
24
+ <system>
25
+ <children>
26
+ <config>
27
+ <children>
28
+ <shopping translate="title" module="shoppinganalytics">
29
+ <title>ROI Tracker</title>
30
+ </shopping>
31
+ </children>
32
+ </config>
33
+ </children>
34
+ </system>
35
+ </children>
36
+ </admin>
37
+ </resources>
38
+ </acl>
39
+ </config>
app/code/local/SOAP/ShoppingAnalytics/etc/config.xml ADDED
@@ -0,0 +1,97 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * NOTICE OF LICENSE
5
+ *
6
+ * This source file is subject to the Academic Free License (AFL 3.0)
7
+ * that is bundled with this package in the file LICENSE_AFL.txt.
8
+ * It is also available through the world-wide-web at this URL:
9
+ * http://opensource.org/licenses/afl-3.0.php
10
+ * If you did not receive a copy of the license and are unable to
11
+ * obtain it through the world-wide-web, please send an email
12
+ * to license@magentocommerce.com so we can send you a copy immediately.
13
+ *
14
+ * @category Mage
15
+ * @package SOAP_ShoppingAnalytics
16
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
17
+ */
18
+ -->
19
+ <config>
20
+ <modules>
21
+ <SOAP_ShoppingAnalytics>
22
+ <version>1.0</version>
23
+ </SOAP_ShoppingAnalytics>
24
+ </modules>
25
+ <global>
26
+ <models>
27
+ <shoppinganalytics>
28
+ <class>SOAP_ShoppingAnalytics_Model</class>
29
+ </shoppinganalytics>
30
+ </models>
31
+ <blocks>
32
+ <shoppinganalytics>
33
+ <class>SOAP_ShoppingAnalytics_Block</class>
34
+ </shoppinganalytics>
35
+ </blocks>
36
+ <helpers>
37
+ <shoppinganalytics>
38
+ <class>SOAP_ShoppingAnalytics_Helper</class>
39
+ </shoppinganalytics>
40
+ </helpers>
41
+ </global>
42
+ <frontend>
43
+ <translate>
44
+ <modules>
45
+ <SOAP_ShoppingAnalytics>
46
+ <files>
47
+ <default>SOAP_ShoppingAnalytics.csv</default>
48
+ </files>
49
+ </SOAP_ShoppingAnalytics>
50
+ </modules>
51
+ </translate>
52
+ <events>
53
+ <checkout_onepage_controller_success_action>
54
+ <observers>
55
+ <shoppinganalytics_order_success>
56
+ <class>shoppinganalytics/observer</class>
57
+ <method>setShoppingAnalyticsOnOrderSuccessPageView</method>
58
+ </shoppinganalytics_order_success>
59
+ </observers>
60
+ </checkout_onepage_controller_success_action>
61
+ <checkout_multishipping_controller_success_action>
62
+ <observers>
63
+ <shoppinganalytics_order_success>
64
+ <class>shoppinganalytics/observer</class>
65
+ <method>setShoppingAnalyticsOnOrderSuccessPageView</method>
66
+ </shoppinganalytics_order_success>
67
+ </observers>
68
+ </checkout_multishipping_controller_success_action>
69
+ <shoppingcheckout_block_link_html_before>
70
+ <observers>
71
+ <shoppinganalytics_shoppingcheckout_integration>
72
+ <class>shoppinganalytics/observer</class>
73
+ <method>injectAnalyticsInShoppingCheckoutLink</method>
74
+ </shoppinganalytics_shoppingcheckout_integration>
75
+ </observers>
76
+ </shoppingcheckout_block_link_html_before>
77
+ </events>
78
+ <layout>
79
+ <updates>
80
+ <shoppinganalytics>
81
+ <file>shoppinganalytics.xml</file>
82
+ </shoppinganalytics>
83
+ </updates>
84
+ </layout>
85
+ </frontend>
86
+ <adminhtml>
87
+ <translate>
88
+ <modules>
89
+ <SOAP_ShoppingAnalytics>
90
+ <files>
91
+ <default>SOAP_ShoppingAnalytics.csv</default>
92
+ </files>
93
+ </SOAP_ShoppingAnalytics>
94
+ </modules>
95
+ </translate>
96
+ </adminhtml>
97
+ </config>
app/code/local/SOAP/ShoppingAnalytics/etc/system.xml ADDED
@@ -0,0 +1,133 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * NOTICE OF LICENSE
5
+ *
6
+ * This source file is subject to the Academic Free License (AFL 3.0)
7
+ * that is bundled with this package in the file LICENSE_AFL.txt.
8
+ * It is also available through the world-wide-web at this URL:
9
+ * http://opensource.org/licenses/afl-3.0.php
10
+ * If you did not receive a copy of the license and are unable to
11
+ * obtain it through the world-wide-web, please send an email
12
+ * to license@magentocommerce.com so we can send you a copy immediately.
13
+ *
14
+ * @category Mage
15
+ * @package SOAP_ShoppingAnalytics
16
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
17
+ */
18
+ -->
19
+ <config>
20
+ <tabs>
21
+ <shoppingroi translate="label">
22
+ <label>ROI Tracker</label>
23
+ <sort_order>1</sort_order>
24
+ </shoppingroi>
25
+ </tabs>
26
+ <sections>
27
+ <shopping translate="label" module="shoppinganalytics">
28
+ <label>ROI Tracker</label>
29
+ <tab>shoppingroi</tab>
30
+ <frontend_type>text</frontend_type>
31
+ <sort_order>340</sort_order>
32
+ <show_in_default>1</show_in_default>
33
+ <show_in_website>1</show_in_website>
34
+ <show_in_store>1</show_in_store>
35
+ <groups>
36
+ <hint>
37
+ <frontend_model>shoppinganalytics/hint</frontend_model>
38
+ <sort_order>0</sort_order>
39
+ <show_in_default>1</show_in_default>
40
+ <show_in_website>1</show_in_website>
41
+ <show_in_store>1</show_in_store>
42
+ </hint>
43
+ <analytics translate="label">
44
+ <label>Shopping.com ROI Tracker</label>
45
+ <frontend_type>text</frontend_type>
46
+ <sort_order>10</sort_order>
47
+ <show_in_default>1</show_in_default>
48
+ <show_in_website>1</show_in_website>
49
+ <show_in_store>1</show_in_store>
50
+ <fields>
51
+ <active translate="label">
52
+ <label>Enabled</label>
53
+ <frontend_type>select</frontend_type>
54
+ <source_model>adminhtml/system_config_source_yesno</source_model>
55
+ <sort_order>10</sort_order>
56
+ <show_in_default>1</show_in_default>
57
+ <show_in_website>1</show_in_website>
58
+ <show_in_store>1</show_in_store>
59
+ </active>
60
+ <account translate="label">
61
+ <label>Account Number</label>
62
+ <frontend_type>text</frontend_type>
63
+ <sort_order>20</sort_order>
64
+ <show_in_default>1</show_in_default>
65
+ <show_in_website>1</show_in_website>
66
+ <show_in_store>1</show_in_store>
67
+ </account>
68
+ </fields>
69
+ </analytics>
70
+ <tracking translate="label">
71
+ <label>Google AdWords Tracking Code</label>
72
+ <frontend_type>text</frontend_type>
73
+ <sort_order>15</sort_order>
74
+ <show_in_default>1</show_in_default>
75
+ <show_in_website>1</show_in_website>
76
+ <show_in_store>1</show_in_store>
77
+ <fields>
78
+ <active translate="label">
79
+ <label>Enabled</label>
80
+ <frontend_type>select</frontend_type>
81
+ <source_model>adminhtml/system_config_source_yesno</source_model>
82
+ <sort_order>10</sort_order>
83
+ <show_in_default>1</show_in_default>
84
+ <show_in_website>1</show_in_website>
85
+ <show_in_store>1</show_in_store>
86
+ </active>
87
+ <account translate="label">
88
+ <label>Conversion ID</label>
89
+ <frontend_type>text</frontend_type>
90
+ <sort_order>20</sort_order>
91
+ <show_in_default>1</show_in_default>
92
+ <show_in_website>1</show_in_website>
93
+ <show_in_store>1</show_in_store>
94
+ </account>
95
+ <format translate="label">
96
+ <label>Conversion Format</label>
97
+ <frontend_type>text</frontend_type>
98
+ <sort_order>25</sort_order>
99
+ <show_in_default>1</show_in_default>
100
+ <show_in_website>1</show_in_website>
101
+ <show_in_store>1</show_in_store>
102
+ </format>
103
+ <language translate="label">
104
+ <label>Language</label>
105
+ <frontend_type>select</frontend_type>
106
+ <source_model>adminhtml/system_config_source_locale</source_model>
107
+ <sort_order>30</sort_order>
108
+ <show_in_default>1</show_in_default>
109
+ <show_in_website>1</show_in_website>
110
+ <show_in_store>1</show_in_store>
111
+ </language>
112
+ <label translate="label">
113
+ <label>Label</label>
114
+ <frontend_type>text</frontend_type>
115
+ <sort_order>40</sort_order>
116
+ <show_in_default>1</show_in_default>
117
+ <show_in_website>1</show_in_website>
118
+ <show_in_store>1</show_in_store>
119
+ </label>
120
+ <colour translate="label">
121
+ <label>Colour</label>
122
+ <frontend_type>text</frontend_type>
123
+ <sort_order>50</sort_order>
124
+ <show_in_default>1</show_in_default>
125
+ <show_in_website>1</show_in_website>
126
+ <show_in_store>1</show_in_store>
127
+ </colour>
128
+ </fields>
129
+ </tracking>
130
+ </groups>
131
+ </shopping>
132
+ </sections>
133
+ </config>
app/design/adminhtml/default/default/template/shoppinganalytics/system/config/fieldset/hint.phtml ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <style>
2
+ .soap-notice{
3
+ background: none repeat scroll 0 0 #EAF0EE;
4
+ border: 1px solid #CCCCCC;
5
+ margin-bottom: 10px;
6
+ padding: 11px 0 0 10px;
7
+ }
8
+ </style>
9
+
10
+ <div class="soap-notice">
11
+ <h4><strong style="color:#EA7601;">ROI Tracker v<?php echo $this->getShoppingAnalyticsVersion(); ?> by <a href="http://www.soapmedia.co.uk/" target="_blank">Soap Media</a></strong></h4>
12
+ <p>To keep upto date on this and other modules follow us on <a href="http://twitter.com/soapmedia" target="_blank">twitter</a> or <a href="http://www.facebook.com/soapmedia" target="_blank">facebook</a></p>
13
+ </div>
app/design/frontend/base/default/layout/shoppinganalytics.xml ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * NOTICE OF LICENSE
5
+ *
6
+ * This source file is subject to the Academic Free License (AFL 3.0)
7
+ * that is bundled with this package in the file LICENSE_AFL.txt.
8
+ * It is also available through the world-wide-web at this URL:
9
+ * http://opensource.org/licenses/afl-3.0.php
10
+ * If you did not receive a copy of the license and are unable to
11
+ * obtain it through the world-wide-web, please send an email
12
+ * to license@magentocommerce.com so we can send you a copy immediately.
13
+ *
14
+ * @category design
15
+ * @package base_default
16
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
17
+ */
18
+
19
+ -->
20
+ <layout version="0.1.0">
21
+ <default>
22
+ <!-- SOAP_ShoppingAnalytics -->
23
+ <reference name="after_body_start">
24
+ <block type="shoppinganalytics/sa" name="shopping_analytics" as="shopping_analytics" template="shoppinganalytics/sa.phtml" />
25
+ </reference>
26
+ </default>
27
+ </layout>
app/design/frontend/base/default/template/shoppinganalytics/sa.phtml ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * NOTICE OF LICENSE
4
+ *
5
+ * This source file is subject to the Academic Free License (AFL 3.0)
6
+ * that is bundled with this package in the file LICENSE_AFL.txt.
7
+ * It is also available through the world-wide-web at this URL:
8
+ * http://opensource.org/licenses/afl-3.0.php
9
+ * If you did not receive a copy of the license and are unable to
10
+ * obtain it through the world-wide-web, please send an email
11
+ * to license@magentocommerce.com so we can send you a copy immediately.
12
+ *
13
+ * @category design
14
+ * @package base_default
15
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
16
+ */
17
+ ?>
18
+ <?php if (!Mage::helper('core/cookie')->isUserNotAllowSaveCookie()): ?>
19
+ <?php $accountId = Mage::getStoreConfig(SOAP_ShoppingAnalytics_Helper_Data::XML_PATH_SHOPPING_ACCOUNT) ?>
20
+
21
+ <!-- BEGIN SHOPPING ROI CODE -->
22
+ <script type="text/javascript">
23
+ //<![CDATA[
24
+ var _roi = _roi || [];
25
+ <?php echo $this->_getOrdersTrackingCode($accountId) ?>
26
+ //]]>
27
+ </script>
28
+ <script type="text/javascript" src="https://stat.dealtime.com/ROI/ROI2.js"></script>
29
+ <!-- END SHOPPING ROI CODE -->
30
+
31
+ <?php echo $this->_addGoogleTrackingCode() ?>
32
+
33
+ <?php endif; ?>
app/etc/modules/SOAP_ShoppingAnalyics.xml ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" ?>
2
+ <config>
3
+ <modules>
4
+ <SOAP_ShoppingAnalytics>
5
+ <active>true</active>
6
+ <codePool>local</codePool>
7
+ <depends>
8
+ <Mage_Core/>
9
+ </depends>
10
+ </SOAP_ShoppingAnalytics>
11
+ </modules>
12
+ </config>
package.xml ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <package>
3
+ <name>SOAP_ShoppingAnalytics</name>
4
+ <version>1.0.0</version>
5
+ <stability>stable</stability>
6
+ <license uri="http://www.gnu.org/licenses/gpl.html">GNU General Public License</license>
7
+ <channel>community</channel>
8
+ <extends/>
9
+ <summary>ROI Tracker - Tracks Conversion data to third party platforms</summary>
10
+ <description>Adds the option to enable third party ROI Tracking; Adwords conversion tracking code and Shopping.com ROI tracker code&#xD;
11
+ &#xD;
12
+ &#xD;
13
+ The Magento ROI Tracker enables the option to easily manage Adwords conversion tracking code on the Magento thanks you / order completion page. It also has the option to enable the Shopping.com tracking code and in future we will look to add support for other third party ROI tracking tools.&#xD;
14
+ &#xD;
15
+ To keep up to date follow the our &lt;a href="http://www.soapmedia.co.uk/magento-roi-tracking-extension/"&gt;Mangeto ROI Tracking&lt;/a&gt; post on our blog</description>
16
+ <notes>Soap Roi Tracker</notes>
17
+ <authors><author><name>Soap Media</name><user>toocanx</user><email>adam@soapmedia.co.uk</email></author></authors>
18
+ <date>2012-10-12</date>
19
+ <time>13:27:21</time>
20
+ <contents><target name="magelocal"><dir><dir name="SOAP"><dir><dir name="ShoppingAnalytics"><dir name="Block"><file name="Hint.php" hash="072d7b20b293ac5bc8352221c095820b"/><file name="Sa.php" hash="378ffaa629ad08c5887af7c3ecea807b"/></dir><dir name="Helper"><file name="Data.php" hash="7c5e58f47122354512bc2635d7ff0e0a"/></dir><dir name="Model"><file name="Observer.php" hash="bcb871edd134be8e1ed0a37cfbae96a9"/></dir><dir name="etc"><file name="adminhtml.xml" hash="da2d3619541c4df47c925d3921a62847"/><file name="config.xml" hash="8fee8cbb9ba10dc4bf7278ca33ee12b6"/><file name="system.xml" hash="5d58de07e777de221458f8e2e371a9f8"/></dir></dir></dir></dir></dir></target><target name="magedesign"><dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="shoppinganalytics"><dir name="system"><dir name="config"><dir name="fieldset"><file name="hint.phtml" hash="685eedf009fc1494fd266ca93a27923a"/></dir></dir></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="shoppinganalytics.xml" hash="287589c95687eb245f78ab95b6492093"/></dir><dir name="template"><dir name="shoppinganalytics"><file name="sa.phtml" hash="f7a0624636886f313d5a90e1adaa2fd8"/></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir><dir name="modules"><file name="SOAP_ShoppingAnalyics.xml" hash="356026928a86b699d9a6ff759b43f617"/></dir></dir></target></contents>
21
+ <compatible/>
22
+ <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
23
+ </package>