Version Notes
Automatic updating: Increasingly takes care of changing catalogues, new products or products out-of-stock. As your catalogue changes, so do our bundles.
Affordability: Pricing is a crucial part of making good bundles i.e. someone buying a laptop can be sold a bag, but not vice-versa. Our price algorithms make sure that bundled products fit into a price range that would make it attractive to your users.
Personalised bundles: Our powerful algorithms drive personalised bundling experiences for your users based on their behaviour, intent & propensity to purchase.
Dynamic Discounting: You can set discounts on bundles or allow our system to determine instances for discounting based on the user’s likelihood to buy.
Stock responsive: Out-of-stock bundles are automatically & instantly eliminated, giving your users the best experience possible.
Mobile ready: Works on any device, any screen size & can also be integrated into a mobile app.
On page optimisation: Bundles are constantly tested on page to make sure that only the best performing bundles are shown.
Category/Brand filtering: Don’t want to run bundles on a category, SKU or a brand? Increasingly has filtering built in to protect any filtering you may require.
Release Info
Developer | Increasingly |
Extension | increasingly_key |
Version | 1.0.2 |
Comparing to | |
See all releases |
Code changes from version 1.0.1 to 1.0.2
- app/code/community/Increasingly/Analytics/Helper/Data.php +3 -3
- app/code/community/Increasingly/Analytics/Helper/ProductFormatter.php +2 -1
- app/code/community/Increasingly/Analytics/Model/Observer.php +0 -4
- app/code/community/Increasingly/Analytics/controllers/AddbundletocartController.php +3 -3
- app/code/community/Increasingly/Analytics/controllers/Adminhtml/DataIntegrationController.php +1 -0
- app/code/community/Increasingly/Analytics/sql/setup/mysql-install-1.0.0.php +1 -1
- app/code/community/Increasingly/Analytics/sql/setup/mysql-install-1.0.2.php +29 -0
- app/design/frontend/base/default/template/increasingly/cart.phtml +1 -1
- app/design/frontend/base/default/template/increasingly/track.phtml +2 -16
- package.xml +21 -6
@@ -191,11 +191,11 @@ class Increasingly_Analytics_Helper_Data extends Mage_Core_Helper_Abstract
|
|
191 |
foreach($userBundleCollection as $userBundle){
|
192 |
$userBundle->getBundleId();
|
193 |
$userBundle->getDiscountPrice();
|
194 |
-
$userBundle->
|
195 |
array_push($bundleData,
|
196 |
array('id' => $userBundle->getBundleId(),
|
197 |
'discountPrice' => $userBundle->getDiscountPrice(),
|
198 |
-
'
|
199 |
));
|
200 |
}
|
201 |
}
|
@@ -270,7 +270,7 @@ class Increasingly_Analytics_Helper_Data extends Mage_Core_Helper_Abstract
|
|
270 |
$signature = md5($encodedData.$api_secret);
|
271 |
$url = 'http://optimizedby.increasingly.co/ImportData';
|
272 |
$client = new Varien_Http_Client($url);
|
273 |
-
|
274 |
$postData = array(
|
275 |
'signature' => $signature,
|
276 |
'eventData' => $encodedData
|
191 |
foreach($userBundleCollection as $userBundle){
|
192 |
$userBundle->getBundleId();
|
193 |
$userBundle->getDiscountPrice();
|
194 |
+
$userBundle->getTotalPrice();
|
195 |
array_push($bundleData,
|
196 |
array('id' => $userBundle->getBundleId(),
|
197 |
'discountPrice' => $userBundle->getDiscountPrice(),
|
198 |
+
'totalPrice' => $userBundle->getTotalPrice()
|
199 |
));
|
200 |
}
|
201 |
}
|
270 |
$signature = md5($encodedData.$api_secret);
|
271 |
$url = 'http://optimizedby.increasingly.co/ImportData';
|
272 |
$client = new Varien_Http_Client($url);
|
273 |
+
|
274 |
$postData = array(
|
275 |
'signature' => $signature,
|
276 |
'eventData' => $encodedData
|
@@ -58,7 +58,8 @@ class Increasingly_Analytics_Helper_ProductFormatter extends Mage_Core_Helper_Ab
|
|
58 |
$productDefaultImage = $product->getData('image');
|
59 |
if(!empty($productDefaultImage) && $productDefaultImage !== 'no_selection')
|
60 |
{
|
61 |
-
|
|
|
62 |
}
|
63 |
else
|
64 |
{
|
58 |
$productDefaultImage = $product->getData('image');
|
59 |
if(!empty($productDefaultImage) && $productDefaultImage !== 'no_selection')
|
60 |
{
|
61 |
+
//$productData['image_url'] = $product->getImageUrl();
|
62 |
+
$productData['image_url'] = Mage::getModel('catalog/product_media_config')->getMediaUrl($product->getImage());
|
63 |
}
|
64 |
else
|
65 |
{
|
@@ -202,10 +202,6 @@ class Increasingly_Analytics_Model_Observer
|
|
202 |
$helper = Mage::helper('increasingly_analytics');
|
203 |
$priceFormatter = Mage::helper('increasingly_analytics/PriceFormatter');
|
204 |
$product = Mage::getModel('catalog/product')->load($productId);
|
205 |
-
Mage::log($product->getPrice()*0.80, null, 'Increasingly_Analytics.log');
|
206 |
-
$product->setSpecialPrice( ($product->getPrice() * .80) );
|
207 |
-
$product->setData('special_price', 99.99);
|
208 |
-
$product->save();
|
209 |
if ($helper->isEnabled()){
|
210 |
$data = array(
|
211 |
'product_id' => $cartProduct->getId(),
|
202 |
$helper = Mage::helper('increasingly_analytics');
|
203 |
$priceFormatter = Mage::helper('increasingly_analytics/PriceFormatter');
|
204 |
$product = Mage::getModel('catalog/product')->load($productId);
|
|
|
|
|
|
|
|
|
205 |
if ($helper->isEnabled()){
|
206 |
$data = array(
|
207 |
'product_id' => $cartProduct->getId(),
|
@@ -146,7 +146,7 @@ class Increasingly_Analytics_AddbundletocartController extends Mage_Core_Control
|
|
146 |
$bundle_id = $data[0]["bundle_id"];
|
147 |
$productIds = [];
|
148 |
$discountPrice = $data[0]["discountPrice"];
|
149 |
-
$
|
150 |
$product = Mage::getModel('catalog/product');
|
151 |
$product->load($productId);
|
152 |
$this->cart->addProduct($product,array('qty' => 1));
|
@@ -169,7 +169,7 @@ class Increasingly_Analytics_AddbundletocartController extends Mage_Core_Control
|
|
169 |
$bundle_id = $data[0]["bundle_id"];
|
170 |
$productIds = [];
|
171 |
$discountPrice = $data[0]["discountPrice"];
|
172 |
-
$
|
173 |
$inStockProducts = [];
|
174 |
$outOfStockProducts = [];
|
175 |
$productErrorStr = "";
|
@@ -219,7 +219,7 @@ class Increasingly_Analytics_AddbundletocartController extends Mage_Core_Control
|
|
219 |
$userBundle->setProductIds($productIdsStr);
|
220 |
$userBundle->setIncreasinglyVisitorId($cookieValue);
|
221 |
$userBundle->setDiscountPrice($discountPrice);
|
222 |
-
$userBundle->
|
223 |
$userBundle->save();
|
224 |
}
|
225 |
//Set cart was updated flag
|
146 |
$bundle_id = $data[0]["bundle_id"];
|
147 |
$productIds = [];
|
148 |
$discountPrice = $data[0]["discountPrice"];
|
149 |
+
$totalPrice = $data[0]["totalPrice"];
|
150 |
$product = Mage::getModel('catalog/product');
|
151 |
$product->load($productId);
|
152 |
$this->cart->addProduct($product,array('qty' => 1));
|
169 |
$bundle_id = $data[0]["bundle_id"];
|
170 |
$productIds = [];
|
171 |
$discountPrice = $data[0]["discountPrice"];
|
172 |
+
$totalPrice = $data[0]["totalPrice"];
|
173 |
$inStockProducts = [];
|
174 |
$outOfStockProducts = [];
|
175 |
$productErrorStr = "";
|
219 |
$userBundle->setProductIds($productIdsStr);
|
220 |
$userBundle->setIncreasinglyVisitorId($cookieValue);
|
221 |
$userBundle->setDiscountPrice($discountPrice);
|
222 |
+
$userBundle->setTotalPrice($totalPrice);
|
223 |
$userBundle->save();
|
224 |
}
|
225 |
//Set cart was updated flag
|
@@ -65,6 +65,7 @@ class Increasingly_Analytics_Adminhtml_DataIntegrationController extends Mage_Ad
|
|
65 |
$configDetails->saveConfig('increasingly_analytics/settings/enable', $isIncreasinglyEnabled, 'default', 0);
|
66 |
$configDetails->saveConfig('increasingly_analytics/settings/api_key', $apiKey, 'default', 0);
|
67 |
$configDetails->saveConfig('increasingly_analytics/settings/api_secret', $apiSecret, 'default', 0);
|
|
|
68 |
$configDetails=Mage::getModel('core/config');
|
69 |
|
70 |
$data['store_name'] = Mage::app()->getStore()->getName();
|
65 |
$configDetails->saveConfig('increasingly_analytics/settings/enable', $isIncreasinglyEnabled, 'default', 0);
|
66 |
$configDetails->saveConfig('increasingly_analytics/settings/api_key', $apiKey, 'default', 0);
|
67 |
$configDetails->saveConfig('increasingly_analytics/settings/api_secret', $apiSecret, 'default', 0);
|
68 |
+
Mage::app()->getCacheInstance()->cleanType('config');
|
69 |
$configDetails=Mage::getModel('core/config');
|
70 |
|
71 |
$data['store_name'] = Mage::app()->getStore()->getName();
|
@@ -18,7 +18,7 @@ CREATE TABLE IF NOT EXISTS {$this->getTable('increasingly_analytics_bundle')} (
|
|
18 |
|
19 |
`discount_price` decimal(12,4) NULL,
|
20 |
|
21 |
-
'
|
22 |
|
23 |
PRIMARY KEY (`id`)
|
24 |
|
18 |
|
19 |
`discount_price` decimal(12,4) NULL,
|
20 |
|
21 |
+
'total_price' decimal(12,4) NOT NULL,
|
22 |
|
23 |
PRIMARY KEY (`id`)
|
24 |
|
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
$installer = $this;
|
4 |
+
|
5 |
+
$installer->startSetup();
|
6 |
+
|
7 |
+
$installer->run("
|
8 |
+
|
9 |
+
CREATE TABLE IF NOT EXISTS {$this->getTable('increasingly_analytics_bundle')} (
|
10 |
+
|
11 |
+
`id` int NOT NULL auto_increment,
|
12 |
+
|
13 |
+
`bundle_id` int NOT NULL default 0,
|
14 |
+
|
15 |
+
`product_ids` varchar(100) NOT NULL,
|
16 |
+
|
17 |
+
`increasingly_visitor_id` varchar(100) NOT NULL,
|
18 |
+
|
19 |
+
`discount_price` decimal(12,4) NULL,
|
20 |
+
|
21 |
+
'total_price' decimal(12,4) NOT NULL,
|
22 |
+
|
23 |
+
PRIMARY KEY (`id`)
|
24 |
+
|
25 |
+
);
|
26 |
+
|
27 |
+
");
|
28 |
+
|
29 |
+
$installer->endSetup();
|
@@ -37,7 +37,7 @@ $currency = Mage::app()->getStore()->getCurrentCurrencyCode();
|
|
37 |
$increasinglyHelper = Mage::helper('increasingly_analytics');
|
38 |
$increasinglyPriceHelper = Mage::helper('increasingly_analytics/priceFormatter');
|
39 |
$cookieValue = Mage::getModel('core/cookie')->get('ivid');
|
40 |
-
if(Mage::getModel('increasingly_analytics/
|
41 |
$userBundleCollection = Mage::getModel('increasingly_analytics/bundle')->getCollection()
|
42 |
->addFieldToFilter('increasingly_visitor_id',$cookieValue);
|
43 |
$userBundelDetails = [];
|
37 |
$increasinglyHelper = Mage::helper('increasingly_analytics');
|
38 |
$increasinglyPriceHelper = Mage::helper('increasingly_analytics/priceFormatter');
|
39 |
$cookieValue = Mage::getModel('core/cookie')->get('ivid');
|
40 |
+
if(Mage::getModel('increasingly_analytics/bundle')){
|
41 |
$userBundleCollection = Mage::getModel('increasingly_analytics/bundle')->getCollection()
|
42 |
->addFieldToFilter('increasingly_visitor_id',$cookieValue);
|
43 |
$userBundelDetails = [];
|
@@ -28,19 +28,8 @@
|
|
28 |
<?php $helper = Mage::helper('increasingly_analytics'); ?>
|
29 |
<?php $events = $this->getTrackingEvents(); ?>
|
30 |
|
31 |
-
<script type="text/javascript">
|
32 |
-
|
33 |
-
var tmpl = mageTemplate('#mage-template');
|
34 |
-
var data = {
|
35 |
-
data: {
|
36 |
-
name: 'John',
|
37 |
-
location: 'New York'
|
38 |
-
}
|
39 |
-
};
|
40 |
-
$('#target').after(
|
41 |
-
tmpl(data)
|
42 |
-
);
|
43 |
-
});
|
44 |
window.increasingly=window.increasingly||[],window.increasingly.queue=[],window.increasingly.methods=["identify","track"],
|
45 |
window.increasingly.filter=function(e){return function(){a=Array.prototype.slice.call(arguments);a.unshift(e);window.increasingly.queue.push(a);}};
|
46 |
|
@@ -56,9 +45,6 @@
|
|
56 |
window.increasingly.loadJs=function(){var t=document;var n=t.getElementsByTagName("script")[0];var r=t.createElement("script");
|
57 |
r.type="text/javascript";r.async=true;r.src="http://www.increasingly.co/js/increasingly.js";n.parentNode.insertBefore(r,n);};
|
58 |
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
increasingly.load();
|
63 |
increasingly.loadJs();
|
64 |
<?php foreach ($events as $trackEvent) : ?>
|
28 |
<?php $helper = Mage::helper('increasingly_analytics'); ?>
|
29 |
<?php $events = $this->getTrackingEvents(); ?>
|
30 |
|
31 |
+
<script type="text/javascript">
|
32 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
window.increasingly=window.increasingly||[],window.increasingly.queue=[],window.increasingly.methods=["identify","track"],
|
34 |
window.increasingly.filter=function(e){return function(){a=Array.prototype.slice.call(arguments);a.unshift(e);window.increasingly.queue.push(a);}};
|
35 |
|
45 |
window.increasingly.loadJs=function(){var t=document;var n=t.getElementsByTagName("script")[0];var r=t.createElement("script");
|
46 |
r.type="text/javascript";r.async=true;r.src="http://www.increasingly.co/js/increasingly.js";n.parentNode.insertBefore(r,n);};
|
47 |
|
|
|
|
|
|
|
48 |
increasingly.load();
|
49 |
increasingly.loadJs();
|
50 |
<?php foreach ($events as $trackEvent) : ?>
|
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Increasingly_Analytics</name>
|
4 |
-
<version>1.0.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="https://opensource.org/licenses/osl-3.0.php">Open Software License (OSL)</license>
|
7 |
<channel>community</channel>
|
@@ -44,11 +44,26 @@ It's free to try & we have a 14-day trial where you can test it for no-risk
|
|
44 |

|
45 |
We have a dashboard which provides you with in depth analytics and insights on what's sells together & allows you to administer and manage your bundles.
|
46 |
</description>
|
47 |
-
<notes>
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
<compatible/>
|
53 |
<dependencies><required><php><min>5.2.0</min><max>5.6.0</max></php></required></dependencies>
|
54 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Increasingly_Analytics</name>
|
4 |
+
<version>1.0.2</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="https://opensource.org/licenses/osl-3.0.php">Open Software License (OSL)</license>
|
7 |
<channel>community</channel>
|
44 |

|
45 |
We have a dashboard which provides you with in depth analytics and insights on what's sells together & allows you to administer and manage your bundles.
|
46 |
</description>
|
47 |
+
<notes>Automatic updating: Increasingly takes care of changing catalogues, new products or products out-of-stock. As your catalogue changes, so do our bundles.
|
48 |
+

|
49 |
+
Affordability: Pricing is a crucial part of making good bundles i.e. someone buying a laptop can be sold a bag, but not vice-versa. Our price algorithms make sure that bundled products fit into a price range that would make it attractive to your users. 
|
50 |
+

|
51 |
+
Personalised bundles: Our powerful algorithms drive personalised bundling experiences for your users based on their behaviour, intent & propensity to purchase.
|
52 |
+

|
53 |
+
Dynamic Discounting: You can set discounts on bundles or allow our system to determine instances for discounting based on the user’s likelihood to buy.
|
54 |
+

|
55 |
+
Stock responsive: Out-of-stock bundles are automatically & instantly eliminated, giving your users the best experience possible.
|
56 |
+

|
57 |
+
Mobile ready: Works on any device, any screen size & can also be integrated into a mobile app.
|
58 |
+

|
59 |
+
On page optimisation: Bundles are constantly tested on page to make sure that only the best performing bundles are shown.
|
60 |
+

|
61 |
+
Category/Brand filtering: Don’t want to run bundles on a category, SKU or a brand? Increasingly has filtering built in to protect any filtering you may require.
|
62 |
+
</notes>
|
63 |
+
<authors><author><name>Increasingly</name><user>Increasingly</user><email>renu@increasingly.co</email></author><author><name>Increasingly</name><user>Increasingly</user><email>shree@increasingly.co</email></author><author><name>Increasingly</name><user>Increasingly</user><email>satish@increasingly.co</email></author></authors>
|
64 |
+
<date>2016-06-24</date>
|
65 |
+
<time>06:22:15</time>
|
66 |
+
<contents><target name="magecommunity"><dir name="Increasingly"><dir name="Analytics"><dir name="Block"><file name="Addtocart.php" hash="3429b60b501c7681a3c79fd46138b787"/><dir name="Adminhtml"><file name="DataIntegration.php" hash="b7c543b33f563ef458d403df94c62a4c"/></dir><file name="Cart.php" hash="56c9f503b7c55d835cbd93c675dcc338"/><file name="Category.php" hash="3b87f305e0957dd1fdace455c1f0fa7c"/><file name="Element.php" hash="8d533705e7a3c1ada7d775a6d9282f43"/><file name="Embed.php" hash="5ba08a6642ed22d8bb1a84ab0501f8dc"/><file name="Pagetype.php" hash="5dc81c7c184031629399c7c5a982036e"/><file name="Product.php" hash="2da759eb9bd2bf13e5a8a92087981206"/><file name="Track.php" hash="aa6a9d870f14c4e3721675658dfb276e"/></dir><dir name="Helper"><file name="Data.php" hash="36c01081e880fed7888f3bd4a5d14f59"/><file name="DateFormatter.php" hash="d8f963bd1f9fe390e038a2065fd5c4c4"/><file name="PriceFormatter.php" hash="9bc46d3afb4612131a29b9a1c2b82fad"/><file name="ProductFormatter.php" hash="e95d0126946362fd7dd5d3e37509ef19"/></dir><dir name="Model"><file name="Base.php" hash="957cc5bb083e9b49b5468c986a1e846a"/><file name="Bundle.php" hash="767a26eaefaed893d163737d64930933"/><file name="DataIntegration.php" hash="ff9dc202ea17e49ceaba09c6190492cd"/><dir name="Meta"><file name="Product.php" hash="6a037e5325193fae3147fc1a9891606c"/></dir><dir name="Mysql4"><dir name="Bundle"><file name="Collection.php" hash="021c49a92767b78e238477a3dc8da783"/></dir><file name="Bundle.php" hash="13baace5753c59b86a032f5b5e379830"/></dir><file name="Observer.php" hash="5f4f991cea092d80420bef64764bc535"/><file name="Product.php" hash="f473c25a470a2509b00a4a15ed8b857f"/></dir><dir name="controllers"><file name="AddbundletocartController.php" hash="a0416aba63013c49159f6abd16a2171b"/><dir name="Adminhtml"><file name="DataIntegrationController.php" hash="0758d4716d337002a8c49f843e06cec2"/></dir><file name="ProductsApiController.php" hash="58c7e54788361cc25bdc1b49a2d86e09"/></dir><dir name="etc"><file name="config.xml" hash="222b073dbe641b013cd241760a380037"/></dir><dir name="sql"><dir name="setup"><file name="mysql-install-1.0.0.php" hash="bddf4e67e7b69c5604b448e3b1fa27a0"/><file name="mysql-install-1.0.2.php" hash="bd4f86d456c38710bb0744a8522196f9"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="increasingly"><file name="dataintegration.phtml" hash="8a730e566c21b2155d6f3e4ca73a1b6d"/></dir></dir><dir name="layout"><file name="increasingly_analytics.xml" hash="d859a26dba5142f02e514f28f507891c"/></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="increasingly"><file name="addtocart.phtml" hash="e3af2445ac014887b3072cf85dd81d4f"/><file name="cart.phtml" hash="1c5ee986109cfb4600d3e15057263d36"/><file name="category.phtml" hash="75e77b9d1cbbd1e0129c0c10737461e6"/><file name="element.phtml" hash="c5f1cbbc02801009247409890172ca4e"/><file name="embed.phtml" hash="52cde76a239e3084ce3a1254b004a742"/><file name="pagetype.phtml" hash="9cbb3b6bd97f865da70c5ca860121a31"/><file name="product.phtml" hash="14d24b0ced5abc85619aa3538b21f2f7"/><file name="track.phtml" hash="4473f97cc5aa3a02bf0a87877b14b5eb"/></dir></dir><dir name="layout"><file name="increasingly_analytics.xml" hash="78766218deed3d60d4ab0fdee7729b91"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Increasingly_Analytics.xml" hash="d285a9ae62b5b0624b727e341fe8e005"/></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="increasingly"><file name="loader.gif" hash="a51c5608d01acf32df728f299767f82b"/></dir></dir></dir></dir></target></contents>
|
67 |
<compatible/>
|
68 |
<dependencies><required><php><min>5.2.0</min><max>5.6.0</max></php></required></dependencies>
|
69 |
</package>
|