Conlabz_CrConnect - Version 3.2.0

Version Notes

Feature: Adding orders to the synchronization

Download this release

Release Info

Developer Conlabz GmbH
Extension Conlabz_CrConnect
Version 3.2.0
Comparing to
See all releases


Code changes from version 3.1.9 to 3.2.0

app/code/community/Conlabz/CrConnect/Block/Customer/Newsletter.php CHANGED
@@ -39,4 +39,9 @@ class Conlabz_CrConnect_Block_Customer_Newsletter extends Mage_Customer_Block_Ne
39
  Mage::getSingleton('customer/session')->getCustomerGroupId()
40
  );
41
  }
 
 
 
 
 
42
  }
39
  Mage::getSingleton('customer/session')->getCustomerGroupId()
40
  );
41
  }
42
+
43
+ public function getAction()
44
+ {
45
+ return $this->getUrl('*/*/save', array('_secure' => Mage::app()->getStore()->isCurrentlySecure()));
46
+ }
47
  }
app/code/community/Conlabz/CrConnect/Helper/Data.php CHANGED
@@ -314,11 +314,12 @@ class Conlabz_CrConnect_Helper_Data extends Mage_Core_Helper_Abstract
314
  $group = $group->getData();
315
  }
316
 
 
 
 
 
317
 
318
  if ($shippingAddress) {
319
- $crReceiver = array(
320
- 'email' => $newEmail,
321
- 'source' => 'MAGENTO');
322
  $crReceiver["attributes"] = array(
323
  0 => array("key" => "firstname", "value" => @$shippingAddress["firstname"]),
324
  1 => array("key" => "lastname", "value" => @$shippingAddress["lastname"]),
@@ -330,11 +331,8 @@ class Conlabz_CrConnect_Helper_Data extends Mage_Core_Helper_Abstract
330
  7 => array("key" => "title", "value" => @$shippingAddress["suffix"]),
331
  8 => array("key" => "company", "value" => @$shippingAddress["company"]));
332
  } else {
333
- $crReceiver = array(
334
- 'email' => $newEmail,
335
- 'source' => "MAGENTO"
336
- );
337
- $crReceiver["attributes"] = array(0 => array("key" => 'firstname', "value" => @$customer->getFirstname()),
338
  1 => array("key" => 'lastname', "value" => @$customer->getLastname()),
339
  2 => array("key" => 'salutation', "value" => @$customer->getPrefix()),
340
  3 => array("key" => 'title', "value" => @$customer->getSuffix()));
@@ -349,6 +347,38 @@ class Conlabz_CrConnect_Helper_Data extends Mage_Core_Helper_Abstract
349
  array_push($crReceiver["attributes"], array("key" => 'gender', "value" => @$customer->getGender()));
350
  array_push($crReceiver["attributes"], array("key" => 'store', "value" => @Mage::getModel('customer/customer')->load($customer->getId())->getData("created_in")));
351
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
352
  if ($custom_fields) {
353
  foreach ($custom_fields as $key => $val) {
354
  array_push($crReceiver["attributes"], array("key" => $key, "value" => $val));
314
  $group = $group->getData();
315
  }
316
 
317
+ $crReceiver = array(
318
+ 'email' => $newEmail,
319
+ 'source' => 'MAGENTO'
320
+ );
321
 
322
  if ($shippingAddress) {
 
 
 
323
  $crReceiver["attributes"] = array(
324
  0 => array("key" => "firstname", "value" => @$shippingAddress["firstname"]),
325
  1 => array("key" => "lastname", "value" => @$shippingAddress["lastname"]),
331
  7 => array("key" => "title", "value" => @$shippingAddress["suffix"]),
332
  8 => array("key" => "company", "value" => @$shippingAddress["company"]));
333
  } else {
334
+ $crReceiver["attributes"] = array(
335
+ 0 => array("key" => 'firstname', "value" => @$customer->getFirstname()),
 
 
 
336
  1 => array("key" => 'lastname', "value" => @$customer->getLastname()),
337
  2 => array("key" => 'salutation', "value" => @$customer->getPrefix()),
338
  3 => array("key" => 'title', "value" => @$customer->getSuffix()));
347
  array_push($crReceiver["attributes"], array("key" => 'gender', "value" => @$customer->getGender()));
348
  array_push($crReceiver["attributes"], array("key" => 'store', "value" => @Mage::getModel('customer/customer')->load($customer->getId())->getData("created_in")));
349
 
350
+ if ($this->isTrackingEnabled()) {
351
+ $crReceiver['orders'] = array();
352
+
353
+ $orders = Mage::getModel('sales/order')->getCollection()->addFieldToSelect(array('entity_id', 'increment_id'))->addFieldToFilter('customer_email', $newEmail);
354
+ foreach ($orders as $order)
355
+ {
356
+ $items = $order->getAllVisibleItems();
357
+ foreach ($items as $item)
358
+ {
359
+ $crOrder = array();
360
+ $crOrder["order_id"] = $order->getIncrementId();
361
+ $crOrder["product"] = $item->getName();
362
+ $crOrder["product_id"] = $item->getProductId();
363
+ $crOrder["price"] = round($item->getPrice(), 2);
364
+ $crOrder["quantity"] = (integer)$item->getQtyOrdered();
365
+ $crOrder["purchase_date"] = time();
366
+ $crOrder["currency"] = $order->getData('order_currency_code');
367
+ $crOrder["source"] = "MAGENTO Order";
368
+
369
+ $cookie = Mage::getSingleton('core/cookie');
370
+ if ($cookie->get('crmailing')) {
371
+ $crOrder['mailings_id'] = $cookie->get('crmailing');
372
+ }
373
+ $crReceiver['orders'][] = $crOrder;
374
+ }
375
+ }
376
+
377
+ if (empty($crReceiver['orders'])) {
378
+ unset($crReceiver['orders']);
379
+ }
380
+ }
381
+
382
  if ($custom_fields) {
383
  foreach ($custom_fields as $key => $val) {
384
  array_push($crReceiver["attributes"], array("key" => $key, "value" => $val));
app/code/community/Conlabz/CrConnect/Model/Api.php CHANGED
@@ -221,6 +221,7 @@ class Conlabz_CrConnect_Model_Api extends Mage_Core_Model_Abstract
221
  public function clientGetDetails()
222
  {
223
  $result = $this->_client->clientGetDetails($this->_apiKey);
 
224
  if ($result->status == self::SUCCESS_STATUS) {
225
  return $this->returnResult($result->data);
226
  } else {
@@ -319,15 +320,17 @@ class Conlabz_CrConnect_Model_Api extends Mage_Core_Model_Abstract
319
  public function receiverAddOrder($email, $orderInfo)
320
  {
321
  $listId = $this->_helper->getDefaultListId();
322
- $result = $this->_client->receiverAddOrder($this->_apiKey, $listId, $email, $orderInfo);
323
- Mage::helper("crconnect")->log("CALL receiverAddOrder: ".$email);
324
- Mage::helper("crconnect")->log($orderInfo);
325
- Mage::helper("crconnect")->log($result);
326
- if ($result->status == self::SUCCESS_STATUS) {
327
- return true;
328
- } else {
329
- return false;
330
- }
 
 
331
  }
332
 
333
  /**
@@ -464,45 +467,46 @@ class Conlabz_CrConnect_Model_Api extends Mage_Core_Model_Abstract
464
  $this->_helper->log("RUN SYNCHRONIZATION");
465
 
466
  $subscribers = $this->_helper->getActiveMageSubscribers();
 
467
  $syncedUsers = 0;
468
  $batch = array();
469
  $i = 0;
470
 
471
- foreach ($subscribers as $subscriber) {
472
- $userGroup = 0;
473
- // If we should separate customers to different groups, then get customer Groups iD if exists
474
- if ($this->_helper->isSeparationEnabled()) {
475
- if ($subscriber["subscriber_email"]) {
476
- // get customer by subscriber E-mail
477
- $systemCustomer = Mage::getModel("customer/customer")->setWebsiteId($subscriber['website_id'])->loadByEmail($subscriber["subscriber_email"]);
478
- if ($systemCustomer->getId()) {
479
- $userGroup = $systemCustomer->getGroupId();
 
 
480
  }
481
  }
482
- }
483
 
484
- if (isset($subscriber['customer_id']) && $subscriber['customer_id']) {
485
- $tmp = $this->_helper->prepareUserdata(Mage::getModel("customer/customer")->load($subscriber['customer_id']));
486
- } else {
487
- $tmp["email"] = $subscriber["subscriber_email"];
488
- $tmp["source"] = "MAGENTO";
489
- // Prepare customer attributes
490
- $firstname = isset($subscriber['customer_firstname']) ? $subscriber['customer_firstname'] : null;
491
- $lastname = isset($subscriber['customer_lastname']) ? $subscriber['customer_lastname'] : null;
492
- $tmp["attributes"] = array(
493
- array("key" => "firstname", "value" => $firstname),
494
- array("key" => "lastname", "value" => $lastname),
495
- array("key" => "newsletter", "value" => 1)
496
- );
497
- }
498
 
499
- // Separate users by Batch, 25 users in one
500
- if ($tmp["email"]) {
501
- $batch[$subscriber["store_id"]][$userGroup][floor($i++ / 25)][] = $tmp; //max 25 per batch
 
502
  }
503
- }
504
 
505
- try {
506
  // send subscribers batch to CleverReach
507
  if ($batch) {
508
  foreach ($batch as $storeId => $groupBatch) {
@@ -583,12 +587,12 @@ class Conlabz_CrConnect_Model_Api extends Mage_Core_Model_Abstract
583
  );
584
 
585
  $groupDetails = $this->_client->groupGetDetails($this->_apiKey, $listId);
586
-
587
  if ($groupDetails->status !== self::SUCCESS_STATUS) {
588
  $this->_helper->log("CleverReach Connection Error: " . $groupDetails->message);
589
  return $groupDetails;
590
  }
591
-
592
  foreach ($groupDetails->data->attributes as $a) {
593
  if (in_array($a->key, $fields)) {
594
  unset($fields[$a->key]);
221
  public function clientGetDetails()
222
  {
223
  $result = $this->_client->clientGetDetails($this->_apiKey);
224
+ $this->_helper->log($result->message);
225
  if ($result->status == self::SUCCESS_STATUS) {
226
  return $this->returnResult($result->data);
227
  } else {
320
  public function receiverAddOrder($email, $orderInfo)
321
  {
322
  $listId = $this->_helper->getDefaultListId();
323
+
324
+ $result = $this->_client->receiverUpdate($this->_apiKey, $listId, array(
325
+ "email" => $email,
326
+ "orders" => $orderInfo
327
+ ));
328
+
329
+ $this->_helper->log("CALL receiverAddOrder: ".$email);
330
+ $this->_helper->log($orderInfo);
331
+ $this->_helper->log($result);
332
+
333
+ return ($result->status === self::SUCCESS_STATUS);
334
  }
335
 
336
  /**
467
  $this->_helper->log("RUN SYNCHRONIZATION");
468
 
469
  $subscribers = $this->_helper->getActiveMageSubscribers();
470
+
471
  $syncedUsers = 0;
472
  $batch = array();
473
  $i = 0;
474
 
475
+ try {
476
+ foreach ($subscribers as $subscriber) {
477
+ $userGroup = 0;
478
+ // If we should separate customers to different groups, then get customer Groups iD if exists
479
+ if ($this->_helper->isSeparationEnabled()) {
480
+ if ($subscriber["subscriber_email"]) {
481
+ // get customer by subscriber E-mail
482
+ $systemCustomer = Mage::getModel("customer/customer")->setWebsiteId($subscriber['website_id'])->loadByEmail($subscriber["subscriber_email"]);
483
+ if ($systemCustomer->getId()) {
484
+ $userGroup = $systemCustomer->getGroupId();
485
+ }
486
  }
487
  }
 
488
 
489
+ if (isset($subscriber['customer_id']) && $subscriber['customer_id']) {
490
+ $tmp = $this->_helper->prepareUserdata(Mage::getModel("customer/customer")->load($subscriber['customer_id']));
491
+ } else {
492
+ $tmp["email"] = $subscriber["subscriber_email"];
493
+ $tmp["source"] = "MAGENTO";
494
+ // Prepare customer attributes
495
+ $firstname = isset($subscriber['customer_firstname']) ? $subscriber['customer_firstname'] : null;
496
+ $lastname = isset($subscriber['customer_lastname']) ? $subscriber['customer_lastname'] : null;
497
+ $tmp["attributes"] = array(
498
+ array("key" => "firstname", "value" => $firstname),
499
+ array("key" => "lastname", "value" => $lastname),
500
+ array("key" => "newsletter", "value" => 1)
501
+ );
502
+ }
503
 
504
+ // Separate users by Batch, 25 users in one
505
+ if ($tmp["email"]) {
506
+ $batch[$subscriber["store_id"]][$userGroup][floor($i++ / 25)][] = $tmp; //max 25 per batch
507
+ }
508
  }
 
509
 
 
510
  // send subscribers batch to CleverReach
511
  if ($batch) {
512
  foreach ($batch as $storeId => $groupBatch) {
587
  );
588
 
589
  $groupDetails = $this->_client->groupGetDetails($this->_apiKey, $listId);
590
+
591
  if ($groupDetails->status !== self::SUCCESS_STATUS) {
592
  $this->_helper->log("CleverReach Connection Error: " . $groupDetails->message);
593
  return $groupDetails;
594
  }
595
+
596
  foreach ($groupDetails->data->attributes as $a) {
597
  if (in_array($a->key, $fields)) {
598
  unset($fields[$a->key]);
app/code/community/Conlabz/CrConnect/Model/Observer.php CHANGED
@@ -94,6 +94,7 @@ class Conlabz_CrConnect_Model_Observer
94
  if (Mage::helper("crconnect")->isTrackingEnabled()) {
95
  $items = $order->getAllItems();
96
  if ($items) {
 
97
  foreach ($items as $item) {
98
  $tmpItem = array();
99
  $tmpItem["order_id"] = $lastOrderId;
@@ -109,8 +110,9 @@ class Conlabz_CrConnect_Model_Observer
109
  if ($cookie->get('crmailing')) {
110
  $tmpItem['mailings_id'] = $cookie->get('crmailing');
111
  }
112
- Mage::getModel("crconnect/api")->receiverAddOrder($email, $tmpItem);
113
  }
 
114
  }
115
  }
116
  }
94
  if (Mage::helper("crconnect")->isTrackingEnabled()) {
95
  $items = $order->getAllItems();
96
  if ($items) {
97
+ $tmpItems = array();
98
  foreach ($items as $item) {
99
  $tmpItem = array();
100
  $tmpItem["order_id"] = $lastOrderId;
110
  if ($cookie->get('crmailing')) {
111
  $tmpItem['mailings_id'] = $cookie->get('crmailing');
112
  }
113
+ $tmpItems[] = $tmpItem;
114
  }
115
+ Mage::getModel("crconnect/api")->receiverAddOrder($email, $tmpItems);
116
  }
117
  }
118
  }
app/code/community/Conlabz/CrConnect/etc/config.xml CHANGED
@@ -2,7 +2,7 @@
2
  <config>
3
  <modules>
4
  <Conlabz_CrConnect>
5
- <version>3.1.9</version>
6
  </Conlabz_CrConnect>
7
  </modules>
8
  <global>
2
  <config>
3
  <modules>
4
  <Conlabz_CrConnect>
5
+ <version>3.2.0</version>
6
  </Conlabz_CrConnect>
7
  </modules>
8
  <global>
package.xml CHANGED
@@ -1,18 +1,18 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Conlabz_CrConnect</name>
4
- <version>3.1.9</version>
5
  <stability>stable</stability>
6
  <license>GNU General Public License</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Synchronizes your Magento subscribers, customers and sales with CleverReach Email Marketing Software.</summary>
10
  <description>With CleverReach (http://www.cleverreach.de) you can create professional emails online, dispatch them reliably, track their success and manage receivers. &#xFEFF;&#xFEFF;&#xFEFF;CleverReach&#xFEFF;&#xFEFF;&#xFEFF; is equipped with a particularly user-friendly interface, which you can use intuitively and without special knowledge.</description>
11
- <notes>Bugfix: Ajax reload of CR groups and forms failed</notes>
12
  <authors><author><name>conlabz GmbH</name><user>conlabz</user><email>info@conlabz.de</email></author></authors>
13
- <date>2016-04-22</date>
14
- <time>07:54:06</time>
15
- <contents><target name="magecommunity"><dir name="Conlabz"><dir name="CrConnect"><dir name="Block"><dir name="Adminhtml"><dir name="Customer"><dir name="Edit"><dir name="Tab"><file name="Newsletter.php" hash="ff47d3028a8e766077ee78affd52eea6"/></dir></dir></dir><dir name="Newsletter"><file name="Subscriber.php" hash="e1b516bc593a41bcc6d00b259776c8b8"/></dir></dir><dir name="Config"><file name="GroupsApis.php" hash="9f1fae68c4224144a42d400b14d4d7d6"/><file name="Key.php" hash="e8467e4fe47aa6965ac7284978a08dbd"/><file name="Url.php" hash="becf4140ce0997e95548b758d8b7ed68"/></dir><dir name="Customer"><file name="Newsletter.php" hash="1acc2f35d1c67e8e15640c3117a00dfd"/></dir><file name="Groupsapis.php" hash="f20a158b439469cdd498b16cc459ab4a"/></dir><dir name="Helper"><file name="Data.php" hash="9e9584f6771982ee8eba5a59155d02dd"/></dir><dir name="Model"><file name="Api.php" hash="061fec482fcef35acecb4e956c2e3586"/><dir name="Checkout"><file name="Observer.php" hash="8fd916c7332ce6ebfa9197666c2987a9"/></dir><dir name="Customer"><file name="Observer.php" hash="878370bd5958b3813f0b90f395b27ecf"/></dir><dir name="Newsletter"><file name="Subscriber.php" hash="96e4b452bf916d5afa209cb80192eba0"/></dir><file name="Observer.php" hash="92c2338e8e4223deefaa494f46955013"/><file name="Search.php" hash="5419d8b49f901e2d28eff3d57ae9de4f"/><file name="Subscriber.php" hash="3e3698a40f540a038ad4dc56e1975070"/><dir name="System"><dir name="Config"><dir name="Source"><file name="EmptyForms.php" hash="910b9588b11edf73be1fc0103e49b997"/><file name="EmptyList.php" hash="6fe676d12ff5fa9231c3b0869b1ec750"/></dir></dir></dir><dir name="Website"><file name="Observer.php" hash="6c068fc61ae6ed512cbdce2a28f48cb7"/></dir></dir><dir name="Test"><dir name="Config"><file name="ActivationXml.php" hash="0270720ffc36ea493b9c976377bdfdcd"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="CrconfigController.php" hash="fdb46a1200e564d69426aba8a518e487"/><file name="CrconnectController.php" hash="fa3cb1d4f515cabd0e378715258db203"/></dir><file name="HookController.php" hash="2c81dd3ebd9310ca86afc732b2e2d1c6"/><file name="ManageController.php" hash="12ff08a154cb21dc0fe4fed3cd718d1c"/><file name="SearchController.php" hash="0141ec8a414c86619ff63c6a856af470"/><file name="SubscriberController.php" hash="3bbf81a698e630d4a04f638a53ecd3e9"/><file name="UnsubscribeController.php" hash="eaba3ee3bef995d4bb6f7e17b1709585"/></dir><dir name="etc"><file name="adminhtml.xml" hash="05f8a5b43c8abe877f05e09eec5d8c65"/><file name="config.xml" hash="9546e57fe9113f84ddc86e9fceae5031"/><file name="jstranslator.xml" hash="040e5e790dcae18ddf223d54e38e45b0"/><file name="system.xml" hash="634952e319523e7640152ddaeedeaef9"/></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Conlabz_CrConnect.xml" hash="dd6482e7f0daedb3387e80bdff66f321"/></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="crconnect.xml" hash="dd115195559fe2058fbd6fbdceabdddc"/></dir><dir name="template"><dir name="crconnect"><dir name="customer"><dir name="account"><dir name="dashboard"><file name="info.phtml" hash="a533451e27b90284d3414e391b460231"/></dir></dir><dir name="form"><file name="newsletter.phtml" hash="4a1309d0d6d2587c8534dd4a1ccdf235"/></dir></dir></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="crconnect.xml" hash="fac2e1194c8c007a54abfe3e82fd6834"/></dir><dir name="template"><dir name="crconnect"><file name="config.phtml" hash="9f2232c8311fa439434d8023181a7ab5"/><dir name="newsletter"><dir name="subscriber"><file name="list.phtml" hash="2d7dd105e2c543d19746ada03fa54ff8"/></dir></dir><dir name="system"><dir name="config"><dir name="form"><dir name="field"><file name="array_groups.phtml" hash="ac84db9b1e8b342337a478ecba62e0b1"/><file name="cr_array_groups.phtml" hash="c924ef81c5699817327580eb7b8a2e86"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="de_DE"><file name="Conlabz_CleverReach.csv" hash="4cb844c7288d9995d21d39eb4015fa44"/></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="images"><dir name="cleverreach"><file name="cleverreach-logo.png" hash="bff60f831ca9e1dc9bcbdb2e3f5a5805"/></dir></dir><dir name="js"><file name="crconnect.js" hash="481f77d2331b82c7c6043e72043f5c26"/></dir></dir></dir></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
18
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Conlabz_CrConnect</name>
4
+ <version>3.2.0</version>
5
  <stability>stable</stability>
6
  <license>GNU General Public License</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Synchronizes your Magento subscribers, customers and sales with CleverReach Email Marketing Software.</summary>
10
  <description>With CleverReach (http://www.cleverreach.de) you can create professional emails online, dispatch them reliably, track their success and manage receivers. &#xFEFF;&#xFEFF;&#xFEFF;CleverReach&#xFEFF;&#xFEFF;&#xFEFF; is equipped with a particularly user-friendly interface, which you can use intuitively and without special knowledge.</description>
11
+ <notes>Feature: Adding orders to the synchronization</notes>
12
  <authors><author><name>conlabz GmbH</name><user>conlabz</user><email>info@conlabz.de</email></author></authors>
13
+ <date>2016-09-21</date>
14
+ <time>12:55:21</time>
15
+ <contents><target name="magecommunity"><dir name="Conlabz"><dir name="CrConnect"><dir name="Block"><dir name="Adminhtml"><dir name="Customer"><dir name="Edit"><dir name="Tab"><file name="Newsletter.php" hash="ff47d3028a8e766077ee78affd52eea6"/></dir></dir></dir><dir name="Newsletter"><file name="Subscriber.php" hash="e1b516bc593a41bcc6d00b259776c8b8"/></dir></dir><dir name="Config"><file name="GroupsApis.php" hash="9f1fae68c4224144a42d400b14d4d7d6"/><file name="Key.php" hash="e8467e4fe47aa6965ac7284978a08dbd"/><file name="Url.php" hash="becf4140ce0997e95548b758d8b7ed68"/></dir><dir name="Customer"><file name="Newsletter.php" hash="9c013645664761cf4e56e79a66e79cbf"/></dir><file name="Groupsapis.php" hash="f20a158b439469cdd498b16cc459ab4a"/></dir><dir name="Helper"><file name="Data.php" hash="a7bbe5176dc9fa164270ceb6396cd4cb"/></dir><dir name="Model"><file name="Api.php" hash="b65ab7e7cd2ecaf3d1048c8e0d57c74d"/><dir name="Checkout"><file name="Observer.php" hash="8fd916c7332ce6ebfa9197666c2987a9"/></dir><dir name="Customer"><file name="Observer.php" hash="878370bd5958b3813f0b90f395b27ecf"/></dir><dir name="Newsletter"><file name="Subscriber.php" hash="96e4b452bf916d5afa209cb80192eba0"/></dir><file name="Observer.php" hash="7da2f897697c76d4b662252bb6f0b071"/><file name="Search.php" hash="5419d8b49f901e2d28eff3d57ae9de4f"/><file name="Subscriber.php" hash="3e3698a40f540a038ad4dc56e1975070"/><dir name="System"><dir name="Config"><dir name="Source"><file name="EmptyForms.php" hash="910b9588b11edf73be1fc0103e49b997"/><file name="EmptyList.php" hash="6fe676d12ff5fa9231c3b0869b1ec750"/></dir></dir></dir><dir name="Website"><file name="Observer.php" hash="6c068fc61ae6ed512cbdce2a28f48cb7"/></dir></dir><dir name="Test"><dir name="Config"><file name="ActivationXml.php" hash="0270720ffc36ea493b9c976377bdfdcd"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="CrconfigController.php" hash="fdb46a1200e564d69426aba8a518e487"/><file name="CrconnectController.php" hash="fa3cb1d4f515cabd0e378715258db203"/></dir><file name="HookController.php" hash="2c81dd3ebd9310ca86afc732b2e2d1c6"/><file name="ManageController.php" hash="12ff08a154cb21dc0fe4fed3cd718d1c"/><file name="SearchController.php" hash="0141ec8a414c86619ff63c6a856af470"/><file name="SubscriberController.php" hash="3bbf81a698e630d4a04f638a53ecd3e9"/><file name="UnsubscribeController.php" hash="eaba3ee3bef995d4bb6f7e17b1709585"/></dir><dir name="etc"><file name="adminhtml.xml" hash="05f8a5b43c8abe877f05e09eec5d8c65"/><file name="config.xml" hash="f9f635392b3b3e2e2d6c9b79c06f836a"/><file name="jstranslator.xml" hash="040e5e790dcae18ddf223d54e38e45b0"/><file name="system.xml" hash="634952e319523e7640152ddaeedeaef9"/></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Conlabz_CrConnect.xml" hash="dd6482e7f0daedb3387e80bdff66f321"/></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="crconnect.xml" hash="dd115195559fe2058fbd6fbdceabdddc"/></dir><dir name="template"><dir name="crconnect"><dir name="customer"><dir name="account"><dir name="dashboard"><file name="info.phtml" hash="a533451e27b90284d3414e391b460231"/></dir></dir><dir name="form"><file name="newsletter.phtml" hash="4a1309d0d6d2587c8534dd4a1ccdf235"/></dir></dir></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="crconnect.xml" hash="fac2e1194c8c007a54abfe3e82fd6834"/></dir><dir name="template"><dir name="crconnect"><file name="config.phtml" hash="9f2232c8311fa439434d8023181a7ab5"/><dir name="newsletter"><dir name="subscriber"><file name="list.phtml" hash="2d7dd105e2c543d19746ada03fa54ff8"/></dir></dir><dir name="system"><dir name="config"><dir name="form"><dir name="field"><file name="array_groups.phtml" hash="ac84db9b1e8b342337a478ecba62e0b1"/><file name="cr_array_groups.phtml" hash="c924ef81c5699817327580eb7b8a2e86"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="de_DE"><file name="Conlabz_CleverReach.csv" hash="4cb844c7288d9995d21d39eb4015fa44"/></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="images"><dir name="cleverreach"><file name="cleverreach-logo.png" hash="bff60f831ca9e1dc9bcbdb2e3f5a5805"/></dir></dir><dir name="js"><file name="crconnect.js" hash="481f77d2331b82c7c6043e72043f5c26"/></dir></dir></dir></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
18
  </package>