Version Notes
More reliable way to track orders and product metadata.
Download this release
Release Info
Developer | Roeland van Oostenbrugge |
Extension | Converdo_Analytics |
Version | 2.1.6.14 |
Comparing to | |
See all releases |
Code changes from version 2.1.5.57 to 2.1.6.14
- app/code/community/Converdo/Common/API/ConverdoClient.php +24 -6
- app/code/community/Converdo/Common/API/Requests.php +2 -2
- app/code/community/Converdo/Common/API/Sections/ConverdoOrderAPI.php +2 -2
- app/code/community/Converdo/Common/Config/Configuration.php +5 -5
- app/code/community/Converdo/Common/Config/Contracts/PlatformConfigurationContract.php +7 -0
- app/code/community/Converdo/Common/Container/Container.php +10 -2
- app/code/community/Converdo/Common/Controllers/PingController.php +2 -2
- app/code/community/Converdo/Common/Cookie/Factories/CookieFactory.php +3 -1
- app/code/community/Converdo/Common/Cookie/Managers/CookieManager.php +9 -1
- app/code/community/Converdo/Common/Cookie/Models/Contracts/CookieInterface.php +15 -0
- app/code/community/Converdo/Common/Cookie/Models/Cookie.php +31 -2
- app/code/community/Converdo/Common/Response/JsonResponse.php +7 -1
- app/code/community/Converdo/Common/autoload.php +4 -19
- app/code/community/Converdo/Common/bootstrap.php +14 -3
- app/code/community/Converdo/Common/config.php +1 -1
- app/code/community/Converdo/Common/dependencies.php +6 -4
- app/code/community/Converdo/Common/functions.php +2 -2
- app/code/community/Converdo/{Common → Magento}/API/Factories/OrderFactory.php +1 -1
- app/code/community/Converdo/Magento/Block/Tracker.php +6 -1
- app/code/community/Converdo/Magento/Config/Configuration.php +8 -0
- app/code/community/Converdo/Magento/Container/Bindings.php +3 -0
- app/code/community/Converdo/{Common → Magento}/Log/Logger.php +3 -1
- app/code/community/Converdo/Magento/Model/Observer.php +7 -7
- app/code/community/Converdo/{Common → Magento}/Support/ListensToOrders.php +1 -1
- app/code/community/Converdo/Magento/autoload.php +17 -0
- app/code/community/Converdo/Magento/etc/adminhtml.xml +1 -1
- app/code/community/Converdo/Magento/etc/system.xml +4 -4
- app/locale/en_US/Converdo_Analytics.csv +2 -2
- app/locale/nl_NL/Converdo_Analytics.csv +3 -3
- package.xml +4 -4
app/code/community/Converdo/Common/API/ConverdoClient.php
CHANGED
@@ -51,7 +51,7 @@ class ConverdoClient
|
|
51 |
* @param array $parameters
|
52 |
* @return $this
|
53 |
*/
|
54 |
-
public function setParameters($parameters)
|
55 |
{
|
56 |
$this->parameters = $parameters + $this->defaultParameters();
|
57 |
|
@@ -67,9 +67,7 @@ class ConverdoClient
|
|
67 |
{
|
68 |
$cookie = CookieManager::find();
|
69 |
|
70 |
-
return [
|
71 |
-
'visitor' => $cookie->getVisitor(),
|
72 |
-
];
|
73 |
}
|
74 |
|
75 |
/**
|
@@ -135,18 +133,31 @@ class ConverdoClient
|
|
135 |
* Posts the data to the API.
|
136 |
*
|
137 |
* @throws Exception
|
138 |
-
* @return
|
139 |
*/
|
140 |
public function post()
|
141 |
{
|
142 |
return $this->request('POST');
|
143 |
}
|
144 |
|
|
|
|
|
|
|
|
|
|
|
|
|
145 |
public function get()
|
146 |
{
|
147 |
return $this->request('GET');
|
148 |
}
|
149 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
150 |
public function request($method = 'GET')
|
151 |
{
|
152 |
$ch = curl_init($this->buildUrl($method));
|
@@ -160,6 +171,13 @@ class ConverdoClient
|
|
160 |
if ($method === 'POST') {
|
161 |
curl_setopt($ch, CURLOPT_POSTFIELDS, $this->getParameters());
|
162 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
163 |
|
164 |
$response = curl_exec($ch);
|
165 |
|
@@ -169,6 +187,6 @@ class ConverdoClient
|
|
169 |
|
170 |
curl_close($ch);
|
171 |
|
172 |
-
return trim($response);
|
173 |
}
|
174 |
}
|
51 |
* @param array $parameters
|
52 |
* @return $this
|
53 |
*/
|
54 |
+
public function setParameters(array $parameters = [])
|
55 |
{
|
56 |
$this->parameters = $parameters + $this->defaultParameters();
|
57 |
|
67 |
{
|
68 |
$cookie = CookieManager::find();
|
69 |
|
70 |
+
return $cookie ? ['visitor' => $cookie->getVisitor()] : [];
|
|
|
|
|
71 |
}
|
72 |
|
73 |
/**
|
133 |
* Posts the data to the API.
|
134 |
*
|
135 |
* @throws Exception
|
136 |
+
* @return string
|
137 |
*/
|
138 |
public function post()
|
139 |
{
|
140 |
return $this->request('POST');
|
141 |
}
|
142 |
|
143 |
+
/**
|
144 |
+
* Gets the data from the API.
|
145 |
+
*
|
146 |
+
* @throws Exception
|
147 |
+
* @return string
|
148 |
+
*/
|
149 |
public function get()
|
150 |
{
|
151 |
return $this->request('GET');
|
152 |
}
|
153 |
|
154 |
+
/**
|
155 |
+
* Makes the request to the server.
|
156 |
+
*
|
157 |
+
* @param string $method
|
158 |
+
* @return string
|
159 |
+
* @throws Exception
|
160 |
+
*/
|
161 |
public function request($method = 'GET')
|
162 |
{
|
163 |
$ch = curl_init($this->buildUrl($method));
|
171 |
if ($method === 'POST') {
|
172 |
curl_setopt($ch, CURLOPT_POSTFIELDS, $this->getParameters());
|
173 |
}
|
174 |
+
|
175 |
+
file_put_contents('curl_test-' . microtime() . '.txt', var_export([
|
176 |
+
|
177 |
+
'url' => $this->buildUrl($method),
|
178 |
+
'parameters' => $this->getParameters(),
|
179 |
+
|
180 |
+
], true));
|
181 |
|
182 |
$response = curl_exec($ch);
|
183 |
|
187 |
|
188 |
curl_close($ch);
|
189 |
|
190 |
+
return trim((string) $response);
|
191 |
}
|
192 |
}
|
app/code/community/Converdo/Common/API/Requests.php
CHANGED
@@ -8,7 +8,7 @@ use Converdo\Common\Cookie\Managers\CookieManager;
|
|
8 |
class Requests
|
9 |
{
|
10 |
/**
|
11 |
-
* Sends the order to Converdo
|
12 |
*
|
13 |
* @param OrderInterface $order
|
14 |
* @return bool
|
@@ -25,7 +25,7 @@ class Requests
|
|
25 |
}
|
26 |
|
27 |
/**
|
28 |
-
* Sends an updated status to Converdo
|
29 |
*
|
30 |
* @param OrderInterface $order
|
31 |
* @return bool
|
8 |
class Requests
|
9 |
{
|
10 |
/**
|
11 |
+
* Sends the order to Converdo.
|
12 |
*
|
13 |
* @param OrderInterface $order
|
14 |
* @return bool
|
25 |
}
|
26 |
|
27 |
/**
|
28 |
+
* Sends an updated status to Converdo.
|
29 |
*
|
30 |
* @param OrderInterface $order
|
31 |
* @return bool
|
app/code/community/Converdo/Common/API/Sections/ConverdoOrderAPI.php
CHANGED
@@ -8,7 +8,7 @@ use Converdo\Common\API\Models\Contracts\OrderInterface;
|
|
8 |
class ConverdoOrderAPI
|
9 |
{
|
10 |
/**
|
11 |
-
* Sends a new order to Converdo
|
12 |
*
|
13 |
* @param OrderInterface $order
|
14 |
* @return bool
|
@@ -38,7 +38,7 @@ class ConverdoOrderAPI
|
|
38 |
}
|
39 |
|
40 |
/**
|
41 |
-
* Sends the modified order status of an existing order to Converdo
|
42 |
*
|
43 |
* @param OrderInterface $order
|
44 |
* @return bool
|
8 |
class ConverdoOrderAPI
|
9 |
{
|
10 |
/**
|
11 |
+
* Sends a new order to Converdo.
|
12 |
*
|
13 |
* @param OrderInterface $order
|
14 |
* @return bool
|
38 |
}
|
39 |
|
40 |
/**
|
41 |
+
* Sends the modified order status of an existing order to Converdo.
|
42 |
*
|
43 |
* @param OrderInterface $order
|
44 |
* @return bool
|
app/code/community/Converdo/Common/Config/Configuration.php
CHANGED
@@ -9,14 +9,14 @@ use Converdo\Common\Security\Crypt;
|
|
9 |
class Configuration
|
10 |
{
|
11 |
/**
|
12 |
-
* The Converdo
|
13 |
*
|
14 |
* @var string
|
15 |
*/
|
16 |
-
const VERSION = '2.1.
|
17 |
|
18 |
/**
|
19 |
-
* The Converdo
|
20 |
*
|
21 |
* @var string
|
22 |
*/
|
@@ -146,8 +146,8 @@ class Configuration
|
|
146 |
*/
|
147 |
protected function resolveEnvironment()
|
148 |
{
|
149 |
-
if (file_exists($this->basePath . '/
|
150 |
-
$this->environment = include($this->basePath . '/
|
151 |
} else {
|
152 |
$this->environment = include($this->path . '/Common/config.php');
|
153 |
}
|
9 |
class Configuration
|
10 |
{
|
11 |
/**
|
12 |
+
* The Converdo plugin version.
|
13 |
*
|
14 |
* @var string
|
15 |
*/
|
16 |
+
const VERSION = '2.1.6.14';
|
17 |
|
18 |
/**
|
19 |
+
* The Converdo URL.
|
20 |
*
|
21 |
* @var string
|
22 |
*/
|
146 |
*/
|
147 |
protected function resolveEnvironment()
|
148 |
{
|
149 |
+
if (file_exists($this->basePath . '/converdo-environment.php')) {
|
150 |
+
$this->environment = include($this->basePath . '/converdo-environment.php');
|
151 |
} else {
|
152 |
$this->environment = include($this->path . '/Common/config.php');
|
153 |
}
|
app/code/community/Converdo/Common/Config/Contracts/PlatformConfigurationContract.php
CHANGED
@@ -147,4 +147,11 @@ interface PlatformConfigurationContract
|
|
147 |
* @return array
|
148 |
*/
|
149 |
public function bindings();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
150 |
}
|
147 |
* @return array
|
148 |
*/
|
149 |
public function bindings();
|
150 |
+
|
151 |
+
/**
|
152 |
+
* Returns the directory name the files are located in.
|
153 |
+
*
|
154 |
+
* @return string
|
155 |
+
*/
|
156 |
+
public function directory();
|
157 |
}
|
app/code/community/Converdo/Common/Container/Container.php
CHANGED
@@ -32,10 +32,18 @@ class Container
|
|
32 |
*/
|
33 |
public static function make($string)
|
34 |
{
|
35 |
-
|
36 |
-
|
|
|
37 |
}
|
38 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
return self::$instances[$string];
|
40 |
}
|
41 |
|
32 |
*/
|
33 |
public static function make($string)
|
34 |
{
|
35 |
+
// Return already instantiated instance.
|
36 |
+
if (isset(self::$instances[$string])) {
|
37 |
+
return self::$instances[$string];
|
38 |
}
|
39 |
|
40 |
+
// Return new instance from an interface.
|
41 |
+
if (isset(self::$bindings[$string])) {
|
42 |
+
self::$instances[$string] = new self::$bindings[$string];
|
43 |
+
} else {
|
44 |
+
self::$instances[$string] = new $string;
|
45 |
+
}
|
46 |
+
|
47 |
return self::$instances[$string];
|
48 |
}
|
49 |
|
app/code/community/Converdo/Common/Controllers/PingController.php
CHANGED
@@ -19,9 +19,9 @@ class PingController extends JsonResponse
|
|
19 |
{
|
20 |
$output['plugin'] = $this->version();
|
21 |
|
22 |
-
$
|
23 |
|
24 |
-
if ($this->input()->
|
25 |
$output['validation'] = $this->validation();
|
26 |
|
27 |
if ($this->input()->has('log')) {
|
19 |
{
|
20 |
$output['plugin'] = $this->version();
|
21 |
|
22 |
+
$encryption = cvd_config()->platform()->encryption();
|
23 |
|
24 |
+
if ($this->input()->get('key') === $encryption) {
|
25 |
$output['validation'] = $this->validation();
|
26 |
|
27 |
if ($this->input()->has('log')) {
|
app/code/community/Converdo/Common/Cookie/Factories/CookieFactory.php
CHANGED
@@ -19,6 +19,8 @@ class CookieFactory
|
|
19 |
->setCreatedAt($values[2])
|
20 |
->setVisitCount($values[3])
|
21 |
->setUpdatedAt($values[4])
|
22 |
-
->setLastVisitedAt($values[5])
|
|
|
|
|
23 |
}
|
24 |
}
|
19 |
->setCreatedAt($values[2])
|
20 |
->setVisitCount($values[3])
|
21 |
->setUpdatedAt($values[4])
|
22 |
+
->setLastVisitedAt($values[5])
|
23 |
+
->setLastEcommerceOrderCreatedAt($values[6])
|
24 |
+
;
|
25 |
}
|
26 |
}
|
app/code/community/Converdo/Common/Cookie/Managers/CookieManager.php
CHANGED
@@ -18,7 +18,7 @@ class CookieManager
|
|
18 |
protected static $cookie = null;
|
19 |
|
20 |
/**
|
21 |
-
* Finds the Converdo
|
22 |
*
|
23 |
* @return CookieInterface|null;
|
24 |
*/
|
@@ -35,6 +35,8 @@ class CookieManager
|
|
35 |
|
36 |
$values = explode('.', $cookie);
|
37 |
|
|
|
|
|
38 |
self::$name = str_replace('.pk.id', '_pk_id', str_replace('_', '.', $key));
|
39 |
self::$cookie = CookieFactory::build($values);
|
40 |
|
@@ -49,6 +51,12 @@ class CookieManager
|
|
49 |
*/
|
50 |
public static function logEcommerce()
|
51 |
{
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
self::$cookie->setLastVisitedAt(time());
|
53 |
self::$cookie->setUpdatedAt(time());
|
54 |
|
18 |
protected static $cookie = null;
|
19 |
|
20 |
/**
|
21 |
+
* Finds the Converdo cookie.
|
22 |
*
|
23 |
* @return CookieInterface|null;
|
24 |
*/
|
35 |
|
36 |
$values = explode('.', $cookie);
|
37 |
|
38 |
+
$values = array_pad($values, 7, '.');
|
39 |
+
|
40 |
self::$name = str_replace('.pk.id', '_pk_id', str_replace('_', '.', $key));
|
41 |
self::$cookie = CookieFactory::build($values);
|
42 |
|
51 |
*/
|
52 |
public static function logEcommerce()
|
53 |
{
|
54 |
+
$cookie = self::find();
|
55 |
+
|
56 |
+
if (! $cookie) {
|
57 |
+
return;
|
58 |
+
}
|
59 |
+
|
60 |
self::$cookie->setLastVisitedAt(time());
|
61 |
self::$cookie->setUpdatedAt(time());
|
62 |
|
app/code/community/Converdo/Common/Cookie/Models/Contracts/CookieInterface.php
CHANGED
@@ -64,6 +64,21 @@ interface CookieInterface
|
|
64 |
*/
|
65 |
public function getLastVisitedAt();
|
66 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
67 |
/**
|
68 |
* Sets the created at timestamp.
|
69 |
*
|
64 |
*/
|
65 |
public function getLastVisitedAt();
|
66 |
|
67 |
+
/**
|
68 |
+
* Sets the last ecommerce created timestamp.
|
69 |
+
*
|
70 |
+
* @param int $lastCreatedAt
|
71 |
+
* @return $this
|
72 |
+
*/
|
73 |
+
public function setLastEcommerceOrderCreatedAt($lastCreatedAt);
|
74 |
+
|
75 |
+
/**
|
76 |
+
* Gets the last ecommerce created timestamp.
|
77 |
+
*
|
78 |
+
* @return int
|
79 |
+
*/
|
80 |
+
public function getLastEcommerceOrderCreatedAt();
|
81 |
+
|
82 |
/**
|
83 |
* Sets the created at timestamp.
|
84 |
*
|
app/code/community/Converdo/Common/Cookie/Models/Cookie.php
CHANGED
@@ -26,6 +26,11 @@ class Cookie implements CookieInterface
|
|
26 |
*/
|
27 |
protected $lastVisitedAt;
|
28 |
|
|
|
|
|
|
|
|
|
|
|
29 |
/**
|
30 |
* @var int
|
31 |
*/
|
@@ -100,6 +105,24 @@ class Cookie implements CookieInterface
|
|
100 |
return $this;
|
101 |
}
|
102 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
103 |
/**
|
104 |
* @inheritDoc
|
105 |
*/
|
@@ -149,13 +172,19 @@ class Cookie implements CookieInterface
|
|
149 |
*/
|
150 |
public function __toString()
|
151 |
{
|
152 |
-
|
153 |
$this->getVisitor(),
|
154 |
$this->getUuid(),
|
155 |
$this->getCreatedAt(),
|
156 |
$this->getVisitCount(),
|
157 |
$this->getUpdatedAt(),
|
158 |
$this->getLastVisitedAt()
|
159 |
-
]
|
|
|
|
|
|
|
|
|
|
|
|
|
160 |
}
|
161 |
}
|
26 |
*/
|
27 |
protected $lastVisitedAt;
|
28 |
|
29 |
+
/**
|
30 |
+
* @var int
|
31 |
+
*/
|
32 |
+
protected $lastEcommerceOrderCreatedAt;
|
33 |
+
|
34 |
/**
|
35 |
* @var int
|
36 |
*/
|
105 |
return $this;
|
106 |
}
|
107 |
|
108 |
+
/**
|
109 |
+
* @inheritDoc
|
110 |
+
*/
|
111 |
+
public function setLastEcommerceOrderCreatedAt($lastCreatedAt)
|
112 |
+
{
|
113 |
+
$this->lastEcommerceOrderCreatedAt = $lastCreatedAt;
|
114 |
+
|
115 |
+
return $this;
|
116 |
+
}
|
117 |
+
|
118 |
+
/**
|
119 |
+
* @inheritDoc
|
120 |
+
*/
|
121 |
+
public function getLastEcommerceOrderCreatedAt()
|
122 |
+
{
|
123 |
+
return (int) $this->lastEcommerceOrderCreatedAt;
|
124 |
+
}
|
125 |
+
|
126 |
/**
|
127 |
* @inheritDoc
|
128 |
*/
|
172 |
*/
|
173 |
public function __toString()
|
174 |
{
|
175 |
+
$values = [
|
176 |
$this->getVisitor(),
|
177 |
$this->getUuid(),
|
178 |
$this->getCreatedAt(),
|
179 |
$this->getVisitCount(),
|
180 |
$this->getUpdatedAt(),
|
181 |
$this->getLastVisitedAt()
|
182 |
+
];
|
183 |
+
|
184 |
+
$values = implode('.', $values);
|
185 |
+
|
186 |
+
$values = trim($values, '.');
|
187 |
+
|
188 |
+
return $values;
|
189 |
}
|
190 |
}
|
app/code/community/Converdo/Common/Response/JsonResponse.php
CHANGED
@@ -23,7 +23,13 @@ class JsonResponse extends Response
|
|
23 |
return $this->output($data);
|
24 |
}
|
25 |
|
26 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
27 |
{
|
28 |
echo json_encode($data);
|
29 |
}
|
23 |
return $this->output($data);
|
24 |
}
|
25 |
|
26 |
+
/**
|
27 |
+
* Prints the data to the view.
|
28 |
+
*
|
29 |
+
* @param array $data
|
30 |
+
* @return string
|
31 |
+
*/
|
32 |
+
public function output(array $data)
|
33 |
{
|
34 |
echo json_encode($data);
|
35 |
}
|
app/code/community/Converdo/Common/autoload.php
CHANGED
@@ -1,14 +1,13 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
|
|
|
4 |
'/Common/Support/HasParameters',
|
5 |
'/Common/Support/Arrayable',
|
6 |
-
'/Common/Support/ListensToOrders',
|
7 |
'/Common/Input/Input',
|
8 |
'/Common/Input/InputManager',
|
9 |
'/Common/Support/UsesInput',
|
10 |
'/Common/Log/LoggerInterface',
|
11 |
-
'/Common/Log/Logger',
|
12 |
'/Common/Log/LoggerAwareInterface',
|
13 |
'/Common/Log/LogReader',
|
14 |
'/Common/Security/Crypt',
|
@@ -57,19 +56,5 @@ $classmap = [
|
|
57 |
'/Common/API/Sections/SetupAPI',
|
58 |
'/Common/API/ConverdoAPI',
|
59 |
'/Common/API/Requests',
|
60 |
-
|
61 |
-
|
62 |
-
'/Magento/Config/Configuration',
|
63 |
-
'/Magento/Container/Bindings',
|
64 |
-
'/Magento/Factories/EcommerceCartFactory',
|
65 |
-
'/Magento/Factories/EcommerceCategoryFactory',
|
66 |
-
'/Magento/Factories/EcommerceItemFactory',
|
67 |
-
'/Magento/Factories/EcommerceSearchFactory',
|
68 |
-
'/Magento/Support/PriceHelper',
|
69 |
-
];
|
70 |
-
|
71 |
-
foreach ($classmap as $class) {
|
72 |
-
if (realpath(dirname(__DIR__) . $class . '.php')) {
|
73 |
-
require_once dirname(__DIR__) . $class . '.php';
|
74 |
-
}
|
75 |
-
}
|
1 |
<?php
|
2 |
|
3 |
+
return [
|
4 |
+
|
5 |
'/Common/Support/HasParameters',
|
6 |
'/Common/Support/Arrayable',
|
|
|
7 |
'/Common/Input/Input',
|
8 |
'/Common/Input/InputManager',
|
9 |
'/Common/Support/UsesInput',
|
10 |
'/Common/Log/LoggerInterface',
|
|
|
11 |
'/Common/Log/LoggerAwareInterface',
|
12 |
'/Common/Log/LogReader',
|
13 |
'/Common/Security/Crypt',
|
56 |
'/Common/API/Sections/SetupAPI',
|
57 |
'/Common/API/ConverdoAPI',
|
58 |
'/Common/API/Requests',
|
59 |
+
|
60 |
+
];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/code/community/Converdo/Common/bootstrap.php
CHANGED
@@ -1,15 +1,26 @@
|
|
1 |
<?php
|
2 |
|
|
|
|
|
|
|
|
|
3 |
$autoload = require_once __DIR__ . '/autoload.php';
|
|
|
4 |
|
5 |
-
$
|
|
|
|
|
|
|
|
|
6 |
|
|
|
7 |
$dependencies = require_once __DIR__ . '/dependencies.php';
|
8 |
|
9 |
-
$
|
|
|
10 |
|
11 |
-
if (! $autoload || ! $dependencies) {
|
12 |
cvd_config()->platform()->terminate();
|
13 |
}
|
14 |
|
|
|
15 |
\Converdo\Common\Input\InputManager::read();
|
1 |
<?php
|
2 |
|
3 |
+
// Include the Converdo functions.
|
4 |
+
$functions = require_once __DIR__ . '/functions.php';
|
5 |
+
|
6 |
+
// Autoload all Converdo files and files of the current platform.
|
7 |
$autoload = require_once __DIR__ . '/autoload.php';
|
8 |
+
$autoload_platform = require_once __DIR__ . '/../Magento/autoload.php';
|
9 |
|
10 |
+
foreach (array_merge($autoload, (array) $autoload_platform) as $class) {
|
11 |
+
if (realpath(dirname(__DIR__) . $class . '.php')) {
|
12 |
+
require_once dirname(__DIR__) . $class . '.php';
|
13 |
+
}
|
14 |
+
}
|
15 |
|
16 |
+
// Terminate plugin if some required dependencies are missing.
|
17 |
$dependencies = require_once __DIR__ . '/dependencies.php';
|
18 |
|
19 |
+
if (count($dependencies) !== 0) {
|
20 |
+
cvd_logger()->critical("The required dependencies are missing: " . implode(', ', $dependencies));
|
21 |
|
|
|
22 |
cvd_config()->platform()->terminate();
|
23 |
}
|
24 |
|
25 |
+
// Initialize the InputManager.
|
26 |
\Converdo\Common\Input\InputManager::read();
|
app/code/community/Converdo/Common/config.php
CHANGED
@@ -5,6 +5,6 @@ return [
|
|
5 |
'name' => 'production',
|
6 |
'protocol' => 'https',
|
7 |
'tracker_url' => '//tracker.converdo.com/',
|
8 |
-
'log_file' => '
|
9 |
|
10 |
];
|
5 |
'name' => 'production',
|
6 |
'protocol' => 'https',
|
7 |
'tracker_url' => '//tracker.converdo.com/',
|
8 |
+
'log_file' => 'converdo.log',
|
9 |
|
10 |
];
|
app/code/community/Converdo/Common/dependencies.php
CHANGED
@@ -5,8 +5,10 @@ $dependencies = [
|
|
5 |
'curl',
|
6 |
];
|
7 |
|
8 |
-
foreach ($dependencies as $dependency) {
|
9 |
-
if (
|
10 |
-
|
11 |
}
|
12 |
-
}
|
|
|
|
5 |
'curl',
|
6 |
];
|
7 |
|
8 |
+
foreach ($dependencies as $key => $dependency) {
|
9 |
+
if (extension_loaded($dependency)) {
|
10 |
+
unset($dependencies[$key]);
|
11 |
}
|
12 |
+
}
|
13 |
+
|
14 |
+
return (array) $dependencies;
|
app/code/community/Converdo/Common/functions.php
CHANGED
@@ -22,11 +22,11 @@ if (! function_exists('cvd_logger'))
|
|
22 |
/**
|
23 |
* Returns the Logger instance.
|
24 |
*
|
25 |
-
* @return \Converdo\Common\Log\
|
26 |
*/
|
27 |
function cvd_logger()
|
28 |
{
|
29 |
-
return cvd_app(\Converdo\Common\Log\
|
30 |
}
|
31 |
}
|
32 |
|
22 |
/**
|
23 |
* Returns the Logger instance.
|
24 |
*
|
25 |
+
* @return \Converdo\Common\Log\LoggerInterface
|
26 |
*/
|
27 |
function cvd_logger()
|
28 |
{
|
29 |
+
return cvd_app(\Converdo\Common\Log\LoggerInterface::class);
|
30 |
}
|
31 |
}
|
32 |
|
app/code/community/Converdo/{Common → Magento}/API/Factories/OrderFactory.php
RENAMED
@@ -1,6 +1,6 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
namespace Converdo\
|
4 |
|
5 |
use Converdo\Common\API\Models\Contracts\OrderInterface;
|
6 |
use Converdo\Common\API\Models\Order;
|
1 |
<?php
|
2 |
|
3 |
+
namespace Converdo\Magento\API\Factories;
|
4 |
|
5 |
use Converdo\Common\API\Models\Contracts\OrderInterface;
|
6 |
use Converdo\Common\API\Models\Order;
|
app/code/community/Converdo/Magento/Block/Tracker.php
CHANGED
@@ -69,6 +69,11 @@ class Converdo_Magento_Block_Tracker extends Mage_Core_Block_Template
|
|
69 |
return;
|
70 |
}
|
71 |
|
72 |
-
|
|
|
|
|
|
|
|
|
|
|
73 |
}
|
74 |
}
|
69 |
return;
|
70 |
}
|
71 |
|
72 |
+
if (! function_exists('dump')) {
|
73 |
+
echo '<pre>', print_r(array_values(QueryManager::parsed()));
|
74 |
+
} else {
|
75 |
+
dump(array_values(QueryManager::parsed()));
|
76 |
+
}
|
77 |
+
|
78 |
}
|
79 |
}
|
app/code/community/Converdo/Magento/Config/Configuration.php
CHANGED
@@ -188,4 +188,12 @@ class Configuration implements PlatformConfigurationContract
|
|
188 |
{
|
189 |
return cvd_app(Bindings::class)->toArray('map');
|
190 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
191 |
}
|
188 |
{
|
189 |
return cvd_app(Bindings::class)->toArray('map');
|
190 |
}
|
191 |
+
|
192 |
+
/**
|
193 |
+
* @inheritDoc
|
194 |
+
*/
|
195 |
+
public function directory()
|
196 |
+
{
|
197 |
+
return 'Magento';
|
198 |
+
}
|
199 |
}
|
app/code/community/Converdo/Magento/Container/Bindings.php
CHANGED
@@ -3,9 +3,11 @@
|
|
3 |
namespace Converdo\Magento\Container;
|
4 |
|
5 |
use Converdo\Common\Config\Contracts\PlatformConfigurationContract;
|
|
|
6 |
use Converdo\Common\Page\Support\Contracts\RouteResolverInterface;
|
7 |
use Converdo\Common\Support\Arrayable;
|
8 |
use Converdo\Magento\Config\Configuration;
|
|
|
9 |
use Converdo\Magento\Page\RouteResolver;
|
10 |
|
11 |
class Bindings
|
@@ -20,5 +22,6 @@ class Bindings
|
|
20 |
protected $map = [
|
21 |
RouteResolverInterface::class => RouteResolver::class,
|
22 |
PlatformConfigurationContract::class => Configuration::class,
|
|
|
23 |
];
|
24 |
}
|
3 |
namespace Converdo\Magento\Container;
|
4 |
|
5 |
use Converdo\Common\Config\Contracts\PlatformConfigurationContract;
|
6 |
+
use Converdo\Common\Log\LoggerInterface;
|
7 |
use Converdo\Common\Page\Support\Contracts\RouteResolverInterface;
|
8 |
use Converdo\Common\Support\Arrayable;
|
9 |
use Converdo\Magento\Config\Configuration;
|
10 |
+
use Converdo\Magento\Log\Logger;
|
11 |
use Converdo\Magento\Page\RouteResolver;
|
12 |
|
13 |
class Bindings
|
22 |
protected $map = [
|
23 |
RouteResolverInterface::class => RouteResolver::class,
|
24 |
PlatformConfigurationContract::class => Configuration::class,
|
25 |
+
LoggerInterface::class => Logger::class,
|
26 |
];
|
27 |
}
|
app/code/community/Converdo/{Common → Magento}/Log/Logger.php
RENAMED
@@ -1,7 +1,9 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
namespace Converdo\
|
4 |
|
|
|
|
|
5 |
use Mage;
|
6 |
use Zend_Log;
|
7 |
|
1 |
<?php
|
2 |
|
3 |
+
namespace Converdo\Magento\Log;
|
4 |
|
5 |
+
use Converdo\Common\Log\LoggerInterface;
|
6 |
+
use Converdo\Common\Log\LogReader;
|
7 |
use Mage;
|
8 |
use Zend_Log;
|
9 |
|
app/code/community/Converdo/Magento/Model/Observer.php
CHANGED
@@ -2,16 +2,16 @@
|
|
2 |
|
3 |
require_once dirname(dirname(__DIR__)) . '/Common/bootstrap.php';
|
4 |
|
5 |
-
use Converdo\
|
6 |
use Converdo\Common\API\Requests;
|
7 |
-
use Converdo\
|
8 |
|
9 |
class Converdo_Magento_Model_Observer
|
10 |
{
|
11 |
use ListensToOrders;
|
12 |
|
13 |
/**
|
14 |
-
* Listens to placed orders. Sends the order to the Converdo
|
15 |
*
|
16 |
* @param Varien_Event_Observer $observer
|
17 |
* @throws Exception
|
@@ -27,14 +27,14 @@ class Converdo_Magento_Model_Observer
|
|
27 |
$model = OrderFactory::build($this->order())
|
28 |
);
|
29 |
|
30 |
-
cvd_logger()->info("Order [#{$model->getOrderId()}] was pushed to Converdo
|
31 |
} catch (Exception $e) {
|
32 |
cvd_logger()->error($e->getMessage());
|
33 |
}
|
34 |
}
|
35 |
|
36 |
/**
|
37 |
-
* Listens to changed orders. Sends the new order status to the Converdo
|
38 |
*
|
39 |
* @param Varien_Event_Observer $observer
|
40 |
* @throws Exception
|
@@ -50,9 +50,9 @@ class Converdo_Magento_Model_Observer
|
|
50 |
$model = OrderFactory::build($this->order())
|
51 |
);
|
52 |
|
53 |
-
cvd_logger()->info("Order [#{$model->getOrderId()}] status [{$model->getStatus()}] was pushed to Converdo
|
54 |
} catch (Exception $e) {
|
55 |
cvd_logger()->error($e->getMessage());
|
56 |
-
}
|
57 |
}
|
58 |
}
|
2 |
|
3 |
require_once dirname(dirname(__DIR__)) . '/Common/bootstrap.php';
|
4 |
|
5 |
+
use Converdo\Magento\API\Factories\OrderFactory;
|
6 |
use Converdo\Common\API\Requests;
|
7 |
+
use Converdo\Magento\Support\ListensToOrders;
|
8 |
|
9 |
class Converdo_Magento_Model_Observer
|
10 |
{
|
11 |
use ListensToOrders;
|
12 |
|
13 |
/**
|
14 |
+
* Listens to placed orders. Sends the order to the Converdo API.
|
15 |
*
|
16 |
* @param Varien_Event_Observer $observer
|
17 |
* @throws Exception
|
27 |
$model = OrderFactory::build($this->order())
|
28 |
);
|
29 |
|
30 |
+
cvd_logger()->info("Order [#{$model->getOrderId()}] was pushed to Converdo.");
|
31 |
} catch (Exception $e) {
|
32 |
cvd_logger()->error($e->getMessage());
|
33 |
}
|
34 |
}
|
35 |
|
36 |
/**
|
37 |
+
* Listens to changed orders. Sends the new order status to the Converdo API.
|
38 |
*
|
39 |
* @param Varien_Event_Observer $observer
|
40 |
* @throws Exception
|
50 |
$model = OrderFactory::build($this->order())
|
51 |
);
|
52 |
|
53 |
+
cvd_logger()->info("Order [#{$model->getOrderId()}] status [{$model->getStatus()}] was pushed to Converdo.");
|
54 |
} catch (Exception $e) {
|
55 |
cvd_logger()->error($e->getMessage());
|
56 |
+
}
|
57 |
}
|
58 |
}
|
app/code/community/Converdo/{Common → Magento}/Support/ListensToOrders.php
RENAMED
@@ -1,6 +1,6 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
namespace Converdo\
|
4 |
|
5 |
use Mage_Sales_Model_Order;
|
6 |
use Varien_Event_Observer;
|
1 |
<?php
|
2 |
|
3 |
+
namespace Converdo\Magento\Support;
|
4 |
|
5 |
use Mage_Sales_Model_Order;
|
6 |
use Varien_Event_Observer;
|
app/code/community/Converdo/Magento/autoload.php
ADDED
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
return [
|
4 |
+
|
5 |
+
'/Magento/Support/ListensToOrders',
|
6 |
+
'/Magento/Support/PriceHelper',
|
7 |
+
'/Magento/API/Factories/OrderFactory',
|
8 |
+
'/Magento/Page/RouteResolver',
|
9 |
+
'/Magento/Config/Configuration',
|
10 |
+
'/Magento/Container/Bindings',
|
11 |
+
'/Magento/Factories/EcommerceCartFactory',
|
12 |
+
'/Magento/Factories/EcommerceCategoryFactory',
|
13 |
+
'/Magento/Factories/EcommerceItemFactory',
|
14 |
+
'/Magento/Factories/EcommerceSearchFactory',
|
15 |
+
'/Magento/Log/Logger',
|
16 |
+
|
17 |
+
];
|
app/code/community/Converdo/Magento/etc/adminhtml.xml
CHANGED
@@ -10,7 +10,7 @@
|
|
10 |
<config>
|
11 |
<children>
|
12 |
<converdo translate="title" module="analytics">
|
13 |
-
<title>Converdo
|
14 |
</converdo>
|
15 |
</children>
|
16 |
</config>
|
10 |
<config>
|
11 |
<children>
|
12 |
<converdo translate="title" module="analytics">
|
13 |
+
<title>Converdo Conversion Optimizer</title>
|
14 |
</converdo>
|
15 |
</children>
|
16 |
</config>
|
app/code/community/Converdo/Magento/etc/system.xml
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
<config>
|
4 |
<sections>
|
5 |
<converdo translate="label" module="analytics">
|
6 |
-
<label>Converdo
|
7 |
<tab>sales</tab>
|
8 |
<class>converdo-analytics-tab</class>
|
9 |
<frontend_type>text</frontend_type>
|
@@ -13,7 +13,7 @@
|
|
13 |
<show_in_store>1</show_in_store>
|
14 |
<groups>
|
15 |
<analytics translate="label">
|
16 |
-
<label>Converdo
|
17 |
<frontend_type>text</frontend_type>
|
18 |
<sort_order>0</sort_order>
|
19 |
<show_in_default>1</show_in_default>
|
@@ -43,8 +43,8 @@
|
|
43 |
</site>
|
44 |
|
45 |
<token translate="label">
|
46 |
-
<label>
|
47 |
-
<comment>Find the
|
48 |
<frontend_type>text</frontend_type>
|
49 |
<sort_order>40</sort_order>
|
50 |
<show_in_default>1</show_in_default>
|
3 |
<config>
|
4 |
<sections>
|
5 |
<converdo translate="label" module="analytics">
|
6 |
+
<label>Converdo</label>
|
7 |
<tab>sales</tab>
|
8 |
<class>converdo-analytics-tab</class>
|
9 |
<frontend_type>text</frontend_type>
|
13 |
<show_in_store>1</show_in_store>
|
14 |
<groups>
|
15 |
<analytics translate="label">
|
16 |
+
<label>Converdo Conversion Optimizer</label>
|
17 |
<frontend_type>text</frontend_type>
|
18 |
<sort_order>0</sort_order>
|
19 |
<show_in_default>1</show_in_default>
|
43 |
</site>
|
44 |
|
45 |
<token translate="label">
|
46 |
+
<label>User Token</label>
|
47 |
+
<comment>Find the user token in the dashboard</comment>
|
48 |
<frontend_type>text</frontend_type>
|
49 |
<sort_order>40</sort_order>
|
50 |
<show_in_default>1</show_in_default>
|
app/locale/en_US/Converdo_Analytics.csv
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
"Site Id","Website Token"
|
2 |
"Install Path","Installation path"
|
3 |
-
"Enable","
|
4 |
"Website Token","Website Token"
|
5 |
-
"
|
6 |
"Encryption Token","Encryption Token"
|
7 |
"Find the website token in the dashboard","Find the website token in the dashboard"
|
8 |
"Find the account token in the dashboard","Find the account token in the dashboard"
|
1 |
"Site Id","Website Token"
|
2 |
"Install Path","Installation path"
|
3 |
+
"Enable","Status"
|
4 |
"Website Token","Website Token"
|
5 |
+
"User Token","User Token"
|
6 |
"Encryption Token","Encryption Token"
|
7 |
"Find the website token in the dashboard","Find the website token in the dashboard"
|
8 |
"Find the account token in the dashboard","Find the account token in the dashboard"
|
app/locale/nl_NL/Converdo_Analytics.csv
CHANGED
@@ -1,11 +1,11 @@
|
|
1 |
"Site Id","Websitesleutel"
|
2 |
"Install Path","Installatie-pad"
|
3 |
-
"Enable","
|
4 |
"Website Token","Websitesleutel"
|
5 |
-
"
|
6 |
"Encryption Token","Encryptiesleutel"
|
7 |
"Find the website token in the dashboard","De websitesleutel is te vinden in het dashboard"
|
8 |
-
"Find the
|
9 |
"Find the encryption token in the dashboard","De encryptiesleutel is te vinden in het dashboard"
|
10 |
"Only when enabled visitor data is tracked","Er wordt enkel data gemeten wanneer ingeschakeld"
|
11 |
"Yes","Ingeschakeld"
|
1 |
"Site Id","Websitesleutel"
|
2 |
"Install Path","Installatie-pad"
|
3 |
+
"Enable","Status"
|
4 |
"Website Token","Websitesleutel"
|
5 |
+
"User Token","Gebruikerssleutel"
|
6 |
"Encryption Token","Encryptiesleutel"
|
7 |
"Find the website token in the dashboard","De websitesleutel is te vinden in het dashboard"
|
8 |
+
"Find the user token in the dashboard","De gebruikerssleutel is te vinden in het dashboard"
|
9 |
"Find the encryption token in the dashboard","De encryptiesleutel is te vinden in het dashboard"
|
10 |
"Only when enabled visitor data is tracked","Er wordt enkel data gemeten wanneer ingeschakeld"
|
11 |
"Yes","Ingeschakeld"
|
package.xml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Converdo_Analytics</name>
|
4 |
-
<version>2.1.
|
5 |
<stability>stable</stability>
|
6 |
<license>MITL</license>
|
7 |
<channel>community</channel>
|
@@ -10,9 +10,9 @@
|
|
10 |
<description>Better E-commerce Analytics. Clear, actionable insight in the behavior of your visitors. Improve your campaigns and conversion rate easily. This plugin, installed in a minute, is all you need to have a complete and powerfull Analytics Suite. View your KPI's and sales funnels, segmented on dozens of dimensions like page type, device, landing page, campaign, etc. This plugin collects your users behaviour so you can view the insights on your dashboard on converdo.com. You can use Converdo Analytics side by side with Google Analytics without a problem. It works asynchronous so it will never impact your user experience. This extension is made especially for Magento ecommerce stores, which provides you powerfull insights out of the box.</description>
|
11 |
<notes>More reliable way to track orders and product metadata.</notes>
|
12 |
<authors><author><name>Roeland van Oostenbrugge</name><user>converdo</user><email>roeland@converdo.nl</email></author></authors>
|
13 |
-
<date>2017-
|
14 |
-
<time>
|
15 |
-
<contents><target name="magecommunity"><dir name="Converdo"><dir name="Common"><dir name="API"><file name="ConverdoAPI.php" hash="73dfefe52b6f0066863e93239bb607c6"/><file name="ConverdoClient.php" hash="
|
16 |
<compatible/>
|
17 |
<dependencies><required><php><min>5.5.37</min><max>7.0.5</max></php></required></dependencies>
|
18 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Converdo_Analytics</name>
|
4 |
+
<version>2.1.6.14</version>
|
5 |
<stability>stable</stability>
|
6 |
<license>MITL</license>
|
7 |
<channel>community</channel>
|
10 |
<description>Better E-commerce Analytics. Clear, actionable insight in the behavior of your visitors. Improve your campaigns and conversion rate easily. This plugin, installed in a minute, is all you need to have a complete and powerfull Analytics Suite. View your KPI's and sales funnels, segmented on dozens of dimensions like page type, device, landing page, campaign, etc. This plugin collects your users behaviour so you can view the insights on your dashboard on converdo.com. You can use Converdo Analytics side by side with Google Analytics without a problem. It works asynchronous so it will never impact your user experience. This extension is made especially for Magento ecommerce stores, which provides you powerfull insights out of the box.</description>
|
11 |
<notes>More reliable way to track orders and product metadata.</notes>
|
12 |
<authors><author><name>Roeland van Oostenbrugge</name><user>converdo</user><email>roeland@converdo.nl</email></author></authors>
|
13 |
+
<date>2017-05-09</date>
|
14 |
+
<time>13:39:30</time>
|
15 |
+
<contents><target name="magecommunity"><dir name="Converdo"><dir name="Common"><dir name="API"><file name="ConverdoAPI.php" hash="73dfefe52b6f0066863e93239bb607c6"/><file name="ConverdoClient.php" hash="9b23fef5c5d64a3d94e3c6de038b5e09"/><dir name="Models"><dir name="Contracts"><file name="OrderInterface.php" hash="426e172166014f03cfe4d44bf4041711"/></dir><file name="Order.php" hash="fc528438a5f74c8e3689189a4c305627"/></dir><file name="Requests.php" hash="f96c3a84de46b6cc8484d07e3b9a2314"/><dir name="Sections"><file name="ConverdoOrderAPI.php" hash="af4dd49f7c08176410aafc72da88b204"/><file name="SetupAPI.php" hash="9a1059594426d668bd74394e16b8af52"/></dir><dir name="resources"><file name="api_cert_chain.pem" hash="38cd779c9429ab6e2e5ae3437b763238"/></dir></dir><dir name="Config"><file name="Configuration.php" hash="53ddbaa91f4c46d16de1b47b2f24e8b3"/><dir name="Contracts"><file name="PlatformConfigurationContract.php" hash="46e9e2f44531575789553fa6ef08becd"/></dir></dir><dir name="Container"><file name="Container.php" hash="a2205f6d86205da4de23e794c41dac72"/></dir><dir name="Controllers"><file name="PingController.php" hash="8c94c9349b5048f0634f3bf74a6a72e6"/></dir><dir name="Cookie"><dir name="Factories"><file name="CookieFactory.php" hash="78252b7a31606240b43aa55374dd9e05"/></dir><dir name="Managers"><file name="CookieManager.php" hash="594d3b5397162d87fc4801a7476f4382"/></dir><dir name="Models"><dir name="Contracts"><file name="CookieInterface.php" hash="92b3fa2f6990f88f301c999c996f50e3"/></dir><file name="Cookie.php" hash="1fcb532f1b6b2930baf003497e2f66c6"/></dir></dir><dir name="Input"><file name="Input.php" hash="dff17aa36ebff1249828ef849a7f6b3d"/><file name="InputManager.php" hash="ba9c61bb2a5d9e762c405f68b3773e45"/></dir><dir name="Log"><file name="LogReader.php" hash="8d1e48c646aebbacc9d22d37e3c42a71"/><file name="LoggerAwareInterface.php" hash="75abd91a001bcf77df81ba4b487dadf4"/><file name="LoggerInterface.php" hash="9fd1a50cac6d243e5886df81aabf9794"/></dir><dir name="Page"><dir name="Factories"><file name="PageFactory.php" hash="aa982ee69889e676f67abd564279fde2"/></dir><dir name="Models"><dir name="Contracts"><file name="PageInterface.php" hash="ba745e11e0372dda50981143cb1d1570"/></dir><file name="Page.php" hash="7b75835e5737b69cf46ea77644cfa851"/></dir><dir name="Support"><dir name="Contracts"><file name="RouteResolverInterface.php" hash="400bfe4611b9e732d9fdd4fef86575fe"/></dir><file name="PageTypes.php" hash="c00d29114e972a7dc24a666a110f1dbf"/></dir></dir><dir name="Query"><dir name="Managers"><file name="QueryManager.php" hash="61e60f8398362956cb0ec8c762b02395"/><file name="QueryMetadata.php" hash="200fa9e4617ad1a2af5e1917f98608b7"/></dir><dir name="Models"><dir name="Contracts"><file name="EcommerceCartInterface.php" hash="7b18db590c782d99f7b9514c5d375348"/><file name="EcommerceCategoryInterface.php" hash="159b1bb3a4248c67e46dd6201064ed2c"/><file name="EcommerceItemInterface.php" hash="9be3da4668044b3fb0609bb496371da6"/><file name="EcommerceSearchInterface.php" hash="6aad67169123749733737e2b0104ffba"/></dir><file name="EcommerceCart.php" hash="d569b0d2ecb4421b9e06c4de03b1a31a"/><file name="EcommerceCategory.php" hash="d704a2ef710fb7b7bf07d582db2e0611"/><file name="EcommerceItem.php" hash="90efad4308237bfbdb11e67f562d0e8d"/><file name="EcommerceSearch.php" hash="0165c34cab7c3d0a73694d50a26dd77a"/></dir><dir name="Queries"><file name="AbstractQuery.php" hash="5dcee2afe12464bfc44da51e4239a446"/><file name="AddEcommerceItem.php" hash="fddbf90dd55152fc6a7c7b0b505c028a"/><file name="CategoryView.php" hash="8ffba1f33d6422906f7ed892622fb7d0"/><dir name="Contracts"><file name="QueryInterface.php" hash="fb92b5d11d99cfbff66af5596032fc13"/></dir><file name="CustomVariable.php" hash="aeb6b689fe9329b3575568baad8654bc"/><file name="EcommerceView.php" hash="c050012bc7e21c8756556cd98a61ae47"/><file name="EnableHeartBeatTimer.php" hash="764297b7bdeafe467b30a9fd818e9387"/><file name="EnableLinkTracking.php" hash="ad80f078bac6d11bebd410fd6d5940aa"/><file name="SiteId.php" hash="512d6b403ca87040a91634a025ba61b3"/><file name="TrackEcommerceCart.php" hash="feaee2f5a7179ccf850a620b281c32da"/><file name="TrackPageView.php" hash="c493c1740f6c1ecc607da3491dbbcfb0"/><file name="TrackSiteSearch.php" hash="ca3316f8aec5439041ff2d88953362ae"/><file name="TrackerUrl.php" hash="d9149278970edebdc256596f8cfb841e"/></dir></dir><dir name="Response"><file name="JsonResponse.php" hash="1226250c2546b8255f93bacb8315b49c"/><file name="Response.php" hash="a4fb3927099ee5e69ea869b464039fd6"/></dir><dir name="Security"><file name="Crypt.php" hash="d0f67307ef26d6691c72c702b7fcf3f2"/></dir><dir name="Support"><file name="Arrayable.php" hash="cd34de85cce8e6b7ca3f5585dfa631e9"/><file name="HasParameters.php" hash="0821ecb3fd95c56e34880e86d1afb246"/><file name="UsesInput.php" hash="e4c019693f821df634361955a24d056d"/></dir><file name="autoload.php" hash="27e9e301ecfbf3ae1a078a797c73f92a"/><file name="bootstrap.php" hash="6a9ac72f0a211dbee9669a462d934eb3"/><file name="config.php" hash="974bfee176efa8828340c0cc983c6d10"/><file name="dependencies.php" hash="45eca8d2171d49f03f4a8721d8167a38"/><file name="functions.php" hash="864a2f9356955a2c44f47b3098f8a738"/></dir><dir name="Magento"><dir name="API"><dir name="Factories"><file name="OrderFactory.php" hash="9ba23305cf4f4554c67bab265e0be83d"/></dir></dir><dir name="Block"><file name="Tracker.php" hash="c2d5df5e73ee1609bb41ddc0425fc975"/></dir><dir name="Config"><file name="Configuration.php" hash="8a6b55117cbe798bebdbd27380b9a6c1"/></dir><dir name="Container"><file name="Bindings.php" hash="9011f4fe08ccbc98b4b881422a53760c"/></dir><dir name="Factories"><file name="EcommerceCartFactory.php" hash="43ce610668ad865ddaaa5dfce6420e93"/><file name="EcommerceCategoryFactory.php" hash="7d21cba8d68be5bccb4f6387badb8674"/><file name="EcommerceItemFactory.php" hash="7c09e3ac74f1ccab2ab368a69fefcf39"/><file name="EcommerceSearchFactory.php" hash="ea08378e24f27567abb3ae85f500e658"/></dir><dir name="Helper"><file name="Data.php" hash="5b2572fbbd9d6acfe1907830ab883a19"/></dir><dir name="Log"><file name="Logger.php" hash="f08e96e7d5fffcfacc4e0b052058dd73"/></dir><dir name="Model"><file name="Observer.php" hash="51cc0a8f619715dca0b51caab37256d8"/></dir><dir name="Page"><file name="RouteResolver.php" hash="fe9952398586e39679c85092ea03f013"/></dir><dir name="Support"><file name="ListensToOrders.php" hash="1f1025a5f93f43de05bf27bfd6048b97"/><file name="PriceHelper.php" hash="375c5f44c2c9b90618919412e235e961"/></dir><file name="autoload.php" hash="1dbde2e0916e842888085e261ee558c5"/><dir name="controllers"><file name="PingController.php" hash="7649748a504168df69239daed1a96418"/></dir><dir name="etc"><file name="adminhtml.xml" hash="824d06724e840246b69adfd13e04254b"/><file name="config.xml" hash="43db0c00b39c0d284dd40923d4196bae"/><file name="system.xml" hash="16fc7457f9305475b216c81c6cf1a0af"/></dir></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="analytics.xml" hash="d3f9d35df1981968a55a331c2b92d473"/></dir><dir name="template"><dir name="analytics"><file name="analytics.phtml" hash="30a9a5e06b7f8e8c8dc5d73249f1e172"/></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Converdo_Analytics.xml" hash="c1e39f4e5886e1a22dc078ddebca8ee3"/></dir></target><target name="magelocale"><dir name="en_US"><file name="Converdo_Analytics.csv" hash="e5548c443f1564ce28992e6566cc454d"/></dir><dir name="nl_NL"><file name="Converdo_Analytics.csv" hash="71b67c6946b28b410b919c7a727d1cb2"/></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="converdoanalytics"><dir name="css"><file name="system_config_edit.css" hash="fd6f5337fd9a9b69b85079e17aa0e40b"/></dir><dir name="images"><file name="favicon.png" hash="674c9388eba1ea89e200fe6b1a62fc24"/></dir></dir></dir></dir></dir></target><target name="mage"><dir name="app"><dir name="design"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="converdoanalytics.xml" hash="b949a1ad4594eeb82ae7138c60afc19e"/></dir></dir></dir></dir></dir></dir></target></contents>
|
16 |
<compatible/>
|
17 |
<dependencies><required><php><min>5.5.37</min><max>7.0.5</max></php></required></dependencies>
|
18 |
</package>
|