Version Notes
Release v2.3.4
Download this release
Release Info
Developer | MailPlus |
Extension | Techtwo_Mailplus |
Version | 2.3.4 |
Comparing to | |
See all releases |
Code changes from version 2.3.3 to 2.3.4
- app/code/community/Techtwo/Mailplus/Model/Cron/Often.php +26 -25
- app/code/community/Techtwo/Mailplus/Model/User.php +45 -44
- app/code/community/Techtwo/Mailplus/Observer/Customer.php +16 -7
- app/code/community/Techtwo/Mailplus/etc/config.xml +1 -1
- app/code/community/Techtwo/Mailplus/sql/mailplus_setup/mysql4-install-2.3.2.php +0 -130
- app/code/community/Techtwo/Mailplus/sql/mailplus_setup/mysql4-install-2.3.3.php +0 -130
- app/code/community/Techtwo/Mailplus/sql/mailplus_setup/{mysql4-install-2.3.1.php → mysql4-install-2.3.4.php} +0 -0
- package.xml +6 -11
app/code/community/Techtwo/Mailplus/Model/Cron/Often.php
CHANGED
@@ -61,18 +61,18 @@ class Techtwo_Mailplus_Model_Cron_Often
|
|
61 |
$rest = Mage::helper('mailplus/rest');
|
62 |
|
63 |
$pageSize = 100;
|
64 |
-
$items = Mage::getModel('mailplus/restqueue')
|
65 |
-
->getCollection()
|
66 |
-
->setOrder('next_run_at', 'ASC')
|
67 |
->addFieldToFilter('next_run_at', array('lteq' => Mage::getModel('core/date')->gmtDate()))
|
68 |
-
->setPageSize($pageSize);
|
69 |
|
70 |
$size = $items->getSize();
|
71 |
|
72 |
$numPages = ceil($size / $pageSize);
|
73 |
|
74 |
if ($size > 0 ) {
|
75 |
-
for ($page = 1; $page <= $numPages; $page++) {
|
76 |
$items->setCurPage($page);
|
77 |
|
78 |
foreach ($items as $item) {
|
@@ -245,16 +245,16 @@ class Techtwo_Mailplus_Model_Cron_Often
|
|
245 |
$size = $collection->getSize();
|
246 |
|
247 |
if ($size > 0) {
|
248 |
-
$collection->setCurPage(1);
|
249 |
-
foreach($collection as $item) {
|
250 |
try {
|
251 |
$this->syncSyncItem($item);
|
252 |
}
|
253 |
-
catch( Exception $ex) {
|
254 |
-
Mage::logException($ex);
|
255 |
}
|
256 |
$item->delete();
|
257 |
-
$itemsSynced++;
|
258 |
}
|
259 |
$collection->clear();
|
260 |
} else {
|
@@ -271,7 +271,8 @@ class Techtwo_Mailplus_Model_Cron_Often
|
|
271 |
public function syncSyncItem($item) {
|
272 |
/** @var $product Techtwo_Mailplus_Helper_Data */
|
273 |
$mailplusHelper = Mage::helper('mailplus');
|
274 |
-
$rest
|
|
|
275 |
|
276 |
switch ($item->getSynctype()) {
|
277 |
case Techtwo_Mailplus_Model_Syncqueue::TYPE_CUSTOMER:
|
@@ -294,28 +295,28 @@ class Techtwo_Mailplus_Model_Cron_Often
|
|
294 |
$userModel->save(); // also triggers the rest call to save the customer to MailPlus
|
295 |
}
|
296 |
break;
|
297 |
-
case Techtwo_Mailplus_Model_Syncqueue::TYPE_ORDER:
|
298 |
-
$order = Mage::getModel('sales/order')->load($item->getSyncid());
|
299 |
if ($order && $order->getId()) {
|
300 |
$rest->saveOrder($order, FALSE);
|
301 |
}
|
302 |
break;
|
303 |
case Techtwo_Mailplus_Model_Syncqueue::TYPE_PRODUCT:
|
304 |
-
$product = Mage::getModel('catalog/product')->load($item->getSyncid());
|
305 |
if ($product && $product->getId()) {
|
306 |
$rest->saveProduct($product);
|
307 |
}
|
308 |
break;
|
309 |
-
case Techtwo_Mailplus_Model_Syncqueue::TYPE_SUBSCRIBER:
|
310 |
-
/* @var $subscriberCollection Mage_Newsletter_Model_Mysql4_Subscriber_Collection */
|
311 |
$subscriber = Mage::getModel('newsletter/subscriber')->load($item->getSyncid());
|
312 |
-
/* @var $mailplus_user Techtwo_Mailplus_Model_User */
|
313 |
$mailplus_user = Mage::getModel('mailplus/user');
|
314 |
|
315 |
-
if ($subscriber->getCustomerId()) {
|
316 |
/* @var $customer Mage_Customer_Model_Customer */
|
317 |
-
$customer = Mage::getModel('customer/customer')->load($subscriber->getCustomerId());
|
318 |
-
if ( $customer && $customer->getId() ) {
|
319 |
$mailplus_user->loadByCustomer($customer);
|
320 |
if (!$mailplus_user || !$mailplus_user->getUserId()) {
|
321 |
/* Set the values from the customer. This will also set the newsletter permission
|
@@ -327,8 +328,8 @@ class Techtwo_Mailplus_Model_Cron_Often
|
|
327 |
}
|
328 |
}
|
329 |
|
330 |
-
// Only set the values when no existing mailplus_user was found.
|
331 |
-
if (!$mailplus_user || !$mailplus_user->getUserId()) {
|
332 |
$mailplus_user = $mailplus_user->findByEmail($subscriber->getEmail());
|
333 |
}
|
334 |
|
@@ -336,11 +337,11 @@ class Techtwo_Mailplus_Model_Cron_Often
|
|
336 |
if (!$mailplus_user || !$mailplus_user->getUserId()) {
|
337 |
$mailplus_user = Mage::getModel('mailplus/user');
|
338 |
$mailplus_user->setEmail( $subscriber->getEmail() );
|
339 |
-
$mailplus_user->setFirstname( '' );
|
340 |
-
$mailplus_user->setLastname( '' );
|
341 |
$mailplus_user->setCustomerId(NULL);
|
342 |
$mailplus_user->setStoreId( $subscriber->getStoreId() );
|
343 |
-
$mailplus_user->setIsTest(FALSE);
|
344 |
$mailplus_user->setCreatets(time());
|
345 |
|
346 |
if ($subscriber->getStatus() == Mage_Newsletter_Model_Subscriber::STATUS_SUBSCRIBED) {
|
61 |
$rest = Mage::helper('mailplus/rest');
|
62 |
|
63 |
$pageSize = 100;
|
64 |
+
$items = Mage::getModel('mailplus/restqueue')
|
65 |
+
->getCollection()
|
66 |
+
->setOrder('next_run_at', 'ASC')
|
67 |
->addFieldToFilter('next_run_at', array('lteq' => Mage::getModel('core/date')->gmtDate()))
|
68 |
+
->setPageSize($pageSize);
|
69 |
|
70 |
$size = $items->getSize();
|
71 |
|
72 |
$numPages = ceil($size / $pageSize);
|
73 |
|
74 |
if ($size > 0 ) {
|
75 |
+
for ($page = 1; $page <= $numPages; $page++) {
|
76 |
$items->setCurPage($page);
|
77 |
|
78 |
foreach ($items as $item) {
|
245 |
$size = $collection->getSize();
|
246 |
|
247 |
if ($size > 0) {
|
248 |
+
$collection->setCurPage(1);
|
249 |
+
foreach($collection as $item) {
|
250 |
try {
|
251 |
$this->syncSyncItem($item);
|
252 |
}
|
253 |
+
catch( Exception $ex) {
|
254 |
+
Mage::logException($ex);
|
255 |
}
|
256 |
$item->delete();
|
257 |
+
$itemsSynced++;
|
258 |
}
|
259 |
$collection->clear();
|
260 |
} else {
|
271 |
public function syncSyncItem($item) {
|
272 |
/** @var $product Techtwo_Mailplus_Helper_Data */
|
273 |
$mailplusHelper = Mage::helper('mailplus');
|
274 |
+
/** @var $rest Techtwo_Mailplus_Helper_Rest */
|
275 |
+
$rest = Mage::helper('mailplus/rest');
|
276 |
|
277 |
switch ($item->getSynctype()) {
|
278 |
case Techtwo_Mailplus_Model_Syncqueue::TYPE_CUSTOMER:
|
295 |
$userModel->save(); // also triggers the rest call to save the customer to MailPlus
|
296 |
}
|
297 |
break;
|
298 |
+
case Techtwo_Mailplus_Model_Syncqueue::TYPE_ORDER:
|
299 |
+
$order = Mage::getModel('sales/order')->load($item->getSyncid());
|
300 |
if ($order && $order->getId()) {
|
301 |
$rest->saveOrder($order, FALSE);
|
302 |
}
|
303 |
break;
|
304 |
case Techtwo_Mailplus_Model_Syncqueue::TYPE_PRODUCT:
|
305 |
+
$product = Mage::getModel('catalog/product')->load($item->getSyncid());
|
306 |
if ($product && $product->getId()) {
|
307 |
$rest->saveProduct($product);
|
308 |
}
|
309 |
break;
|
310 |
+
case Techtwo_Mailplus_Model_Syncqueue::TYPE_SUBSCRIBER:
|
311 |
+
/* @var $subscriberCollection Mage_Newsletter_Model_Mysql4_Subscriber_Collection */
|
312 |
$subscriber = Mage::getModel('newsletter/subscriber')->load($item->getSyncid());
|
313 |
+
/* @var $mailplus_user Techtwo_Mailplus_Model_User */
|
314 |
$mailplus_user = Mage::getModel('mailplus/user');
|
315 |
|
316 |
+
if ($subscriber->getCustomerId()) {
|
317 |
/* @var $customer Mage_Customer_Model_Customer */
|
318 |
+
$customer = Mage::getModel('customer/customer')->load($subscriber->getCustomerId());
|
319 |
+
if ( $customer && $customer->getId() ) {
|
320 |
$mailplus_user->loadByCustomer($customer);
|
321 |
if (!$mailplus_user || !$mailplus_user->getUserId()) {
|
322 |
/* Set the values from the customer. This will also set the newsletter permission
|
328 |
}
|
329 |
}
|
330 |
|
331 |
+
// Only set the values when no existing mailplus_user was found.
|
332 |
+
if (!$mailplus_user || !$mailplus_user->getUserId()) {
|
333 |
$mailplus_user = $mailplus_user->findByEmail($subscriber->getEmail());
|
334 |
}
|
335 |
|
337 |
if (!$mailplus_user || !$mailplus_user->getUserId()) {
|
338 |
$mailplus_user = Mage::getModel('mailplus/user');
|
339 |
$mailplus_user->setEmail( $subscriber->getEmail() );
|
340 |
+
$mailplus_user->setFirstname( '' );
|
341 |
+
$mailplus_user->setLastname( '' );
|
342 |
$mailplus_user->setCustomerId(NULL);
|
343 |
$mailplus_user->setStoreId( $subscriber->getStoreId() );
|
344 |
+
$mailplus_user->setIsTest(FALSE);
|
345 |
$mailplus_user->setCreatets(time());
|
346 |
|
347 |
if ($subscriber->getStatus() == Mage_Newsletter_Model_Subscriber::STATUS_SUBSCRIBED) {
|
app/code/community/Techtwo/Mailplus/Model/User.php
CHANGED
@@ -233,15 +233,15 @@ class Techtwo_Mailplus_Model_User extends Mage_Core_Model_Abstract
|
|
233 |
}
|
234 |
|
235 |
private function userDataToMailplusData($mapping, $contact_properties) {
|
236 |
-
// Set this users' data
|
237 |
-
$contact_properties = $this->addDataToAray('email', $this->getEmail(), $mapping, $contact_properties);
|
238 |
-
$contact_properties = $this->addDataToAray('firstname', $this->getFirstname(), $mapping, $contact_properties);
|
239 |
$contact_properties = $this->addDataToAray('lastname', $this->getLastname(), $mapping, $contact_properties);
|
240 |
|
241 |
// Add store description dummy attribute
|
242 |
-
$storedescription = new Mage_Customer_Model_Attribute();
|
243 |
-
$storedescription->setAttributeCode('storedescription');
|
244 |
-
$storedescription->setFrontendLabel(Mage::helper('mailplus')->__('Storeview description'));
|
245 |
$storedescription->setIsVisible(true);
|
246 |
|
247 |
$value = Mage::helper('mailplus')->attributeToMailplusValue($this, $storedescription, null);
|
@@ -258,63 +258,63 @@ class Techtwo_Mailplus_Model_User extends Mage_Core_Model_Abstract
|
|
258 |
*/
|
259 |
public function toMailplusData()
|
260 |
{
|
261 |
-
/* @var $config Techtwo_Mailplus_Helper_Config */
|
262 |
$config = Mage::helper('mailplus/config');
|
263 |
-
/* @var $config Techtwo_Mailplus_Helper_Data */
|
264 |
$data = Mage::helper('mailplus');
|
265 |
$is_test = '1' == $this->getData('is_test');
|
266 |
|
267 |
-
// Make sure to load all the data first
|
268 |
-
if (! $this->hasData('email') )
|
269 |
$this->load($this->getId());
|
270 |
-
|
271 |
$contact_properties = array();
|
272 |
-
$aux = array(
|
273 |
'testGroup' => (bool) $is_test,
|
274 |
-
'externalId' => $this->getId()
|
275 |
);
|
276 |
|
277 |
$mapping = $config->getMapping($this->getWebsiteId());
|
278 |
-
|
279 |
$contact_properties = $this->userDataToMailplusData($mapping, $contact_properties);
|
280 |
|
281 |
// Set the data from the linked customer.
|
282 |
$customer = $this->getCustomer();
|
283 |
if ($customer) {
|
284 |
-
$address = $customer->getPrimaryBillingAddress();
|
285 |
-
|
286 |
-
if ( $address ) {
|
287 |
-
foreach ( $address->getAttributes() as $attr ) {
|
288 |
-
$contact_properties = $data->addAttributeToProperties($contact_properties, $attr, $address, $mapping);
|
289 |
-
};
|
290 |
-
}
|
291 |
|
292 |
$attributes = $customer->getAttributes();
|
293 |
|
294 |
/* Dummy attribute for the first purchase date */
|
295 |
-
$firstpurchasedate = new Mage_Customer_Model_Attribute();
|
296 |
-
$firstpurchasedate->setAttributeCode('firstpurchasedate');
|
297 |
-
$firstpurchasedate->setFrontendLabel(Mage::helper('mailplus')->__('First purchase date'));
|
298 |
-
$firstpurchasedate->setIsVisible(true);
|
299 |
-
$attributes[] = $firstpurchasedate;
|
300 |
-
|
301 |
-
/* Dummy attribute for the last purchase date */
|
302 |
-
$lastpurchasedate = new Mage_Customer_Model_Attribute();
|
303 |
-
$lastpurchasedate->setAttributeCode('lastpurchasedate');
|
304 |
-
$lastpurchasedate->setFrontendLabel(Mage::helper('mailplus')->__('Last purchase date'));
|
305 |
-
$lastpurchasedate->setIsVisible(true);
|
306 |
$attributes[] = $lastpurchasedate;
|
307 |
-
|
308 |
-
foreach ($attributes as $attr ) {
|
309 |
-
$contact_properties = $data->addAttributeToProperties($contact_properties, $attr, $customer, $mapping);
|
310 |
};
|
311 |
-
}
|
312 |
-
|
313 |
-
if ( $this->hasPermissionChanges() ) {
|
314 |
-
$contact_properties['permissions'] = $this->toMailplusDataPermission();
|
315 |
-
}
|
316 |
-
|
317 |
-
$aux['properties'] = $contact_properties;
|
318 |
return $aux;
|
319 |
}
|
320 |
|
@@ -343,7 +343,8 @@ class Techtwo_Mailplus_Model_User extends Mage_Core_Model_Abstract
|
|
343 |
$this->getPermissions();
|
344 |
|
345 |
if (is_null($this->_permissions)) {
|
346 |
-
|
|
|
347 |
}
|
348 |
|
349 |
if ( FALSE !== $this->_permissions )
|
@@ -359,7 +360,7 @@ class Techtwo_Mailplus_Model_User extends Mage_Core_Model_Abstract
|
|
359 |
}
|
360 |
else
|
361 |
{
|
362 |
-
|
363 |
}
|
364 |
|
365 |
}
|
233 |
}
|
234 |
|
235 |
private function userDataToMailplusData($mapping, $contact_properties) {
|
236 |
+
// Set this users' data
|
237 |
+
$contact_properties = $this->addDataToAray('email', $this->getEmail(), $mapping, $contact_properties);
|
238 |
+
$contact_properties = $this->addDataToAray('firstname', $this->getFirstname(), $mapping, $contact_properties);
|
239 |
$contact_properties = $this->addDataToAray('lastname', $this->getLastname(), $mapping, $contact_properties);
|
240 |
|
241 |
// Add store description dummy attribute
|
242 |
+
$storedescription = new Mage_Customer_Model_Attribute();
|
243 |
+
$storedescription->setAttributeCode('storedescription');
|
244 |
+
$storedescription->setFrontendLabel(Mage::helper('mailplus')->__('Storeview description'));
|
245 |
$storedescription->setIsVisible(true);
|
246 |
|
247 |
$value = Mage::helper('mailplus')->attributeToMailplusValue($this, $storedescription, null);
|
258 |
*/
|
259 |
public function toMailplusData()
|
260 |
{
|
261 |
+
/* @var $config Techtwo_Mailplus_Helper_Config */
|
262 |
$config = Mage::helper('mailplus/config');
|
263 |
+
/* @var $config Techtwo_Mailplus_Helper_Data */
|
264 |
$data = Mage::helper('mailplus');
|
265 |
$is_test = '1' == $this->getData('is_test');
|
266 |
|
267 |
+
// Make sure to load all the data first
|
268 |
+
if (! $this->hasData('email') )
|
269 |
$this->load($this->getId());
|
270 |
+
|
271 |
$contact_properties = array();
|
272 |
+
$aux = array(
|
273 |
'testGroup' => (bool) $is_test,
|
274 |
+
'externalId' => $this->getId()
|
275 |
);
|
276 |
|
277 |
$mapping = $config->getMapping($this->getWebsiteId());
|
278 |
+
|
279 |
$contact_properties = $this->userDataToMailplusData($mapping, $contact_properties);
|
280 |
|
281 |
// Set the data from the linked customer.
|
282 |
$customer = $this->getCustomer();
|
283 |
if ($customer) {
|
284 |
+
$address = $customer->getPrimaryBillingAddress();
|
285 |
+
|
286 |
+
if ( $address ) {
|
287 |
+
foreach ( $address->getAttributes() as $attr ) {
|
288 |
+
$contact_properties = $data->addAttributeToProperties($contact_properties, $attr, $address, $mapping);
|
289 |
+
};
|
290 |
+
}
|
291 |
|
292 |
$attributes = $customer->getAttributes();
|
293 |
|
294 |
/* Dummy attribute for the first purchase date */
|
295 |
+
$firstpurchasedate = new Mage_Customer_Model_Attribute();
|
296 |
+
$firstpurchasedate->setAttributeCode('firstpurchasedate');
|
297 |
+
$firstpurchasedate->setFrontendLabel(Mage::helper('mailplus')->__('First purchase date'));
|
298 |
+
$firstpurchasedate->setIsVisible(true);
|
299 |
+
$attributes[] = $firstpurchasedate;
|
300 |
+
|
301 |
+
/* Dummy attribute for the last purchase date */
|
302 |
+
$lastpurchasedate = new Mage_Customer_Model_Attribute();
|
303 |
+
$lastpurchasedate->setAttributeCode('lastpurchasedate');
|
304 |
+
$lastpurchasedate->setFrontendLabel(Mage::helper('mailplus')->__('Last purchase date'));
|
305 |
+
$lastpurchasedate->setIsVisible(true);
|
306 |
$attributes[] = $lastpurchasedate;
|
307 |
+
|
308 |
+
foreach ($attributes as $attr ) {
|
309 |
+
$contact_properties = $data->addAttributeToProperties($contact_properties, $attr, $customer, $mapping);
|
310 |
};
|
311 |
+
}
|
312 |
+
|
313 |
+
if ( $this->hasPermissionChanges() ) {
|
314 |
+
$contact_properties['permissions'] = $this->toMailplusDataPermission();
|
315 |
+
}
|
316 |
+
|
317 |
+
$aux['properties'] = $contact_properties;
|
318 |
return $aux;
|
319 |
}
|
320 |
|
343 |
$this->getPermissions();
|
344 |
|
345 |
if (is_null($this->_permissions)) {
|
346 |
+
Mage::log("Error while getting current permissions, so not setting new permissions");
|
347 |
+
return;
|
348 |
}
|
349 |
|
350 |
if ( FALSE !== $this->_permissions )
|
360 |
}
|
361 |
else
|
362 |
{
|
363 |
+
Mage::log("Invalid permission $permission, no such permission for contact found");
|
364 |
}
|
365 |
|
366 |
}
|
app/code/community/Techtwo/Mailplus/Observer/Customer.php
CHANGED
@@ -182,7 +182,7 @@ class Techtwo_Mailplus_Observer_Customer
|
|
182 |
}
|
183 |
catch (Exception $e)
|
184 |
{
|
185 |
-
|
186 |
}
|
187 |
|
188 |
return $this;
|
@@ -320,7 +320,6 @@ class Techtwo_Mailplus_Observer_Customer
|
|
320 |
catch (Exception $e)
|
321 |
{
|
322 |
Mage::logException($e);
|
323 |
-
throw $e;
|
324 |
}
|
325 |
|
326 |
return $this;
|
@@ -335,7 +334,12 @@ class Techtwo_Mailplus_Observer_Customer
|
|
335 |
$user = Mage::getModel('mailplus/user');
|
336 |
$user = $user->loadByCustomer($customer);
|
337 |
if ($user && $user->getId()) {
|
338 |
-
|
|
|
|
|
|
|
|
|
|
|
339 |
}
|
340 |
return $this;
|
341 |
}
|
@@ -346,7 +350,12 @@ class Techtwo_Mailplus_Observer_Customer
|
|
346 |
$subscriber = $observer->getEvent()->getData('subscriber');
|
347 |
$userModel = Mage::getModel('mailplus/user')->load( $subscriber->getData('subscriber_email'), 'email' );
|
348 |
if ( $userModel && $userModel->getId() )
|
349 |
-
|
|
|
|
|
|
|
|
|
|
|
350 |
return $this;
|
351 |
}
|
352 |
|
@@ -371,15 +380,15 @@ class Techtwo_Mailplus_Observer_Customer
|
|
371 |
$request = $front->getRequest();
|
372 |
$mailplus_click = $request->getParam('mpid');
|
373 |
} else {
|
374 |
-
/** @var $controller Mage_Core_Controller_Front_Action */
|
375 |
-
$controller = $observer->getControllerAction();
|
376 |
if ($controller) {
|
377 |
$mailplus_click = $controller->getRequest()->getQuery('mpid');
|
378 |
}
|
379 |
}
|
380 |
|
381 |
if ($mailplus_click) {
|
382 |
-
/* @var $session Mage_Core_Model_Session */
|
383 |
$session = Mage::getSingleton('core/session');
|
384 |
$data = array( Techtwo_Mailplus_Helper_Rest::CONVERSION_SHOPPINGCART => array('mpid'=>$mailplus_click, 'is_converted'=>FALSE) );
|
385 |
if ( $session->hasData(self::SESSION_CONVERSION_KEY) ) {
|
182 |
}
|
183 |
catch (Exception $e)
|
184 |
{
|
185 |
+
Mage::logException($e);
|
186 |
}
|
187 |
|
188 |
return $this;
|
320 |
catch (Exception $e)
|
321 |
{
|
322 |
Mage::logException($e);
|
|
|
323 |
}
|
324 |
|
325 |
return $this;
|
334 |
$user = Mage::getModel('mailplus/user');
|
335 |
$user = $user->loadByCustomer($customer);
|
336 |
if ($user && $user->getId()) {
|
337 |
+
try {
|
338 |
+
$this->deleteMailplusUser($user->getStoreId(), $user->getId());
|
339 |
+
}
|
340 |
+
catch (Exception $e) {
|
341 |
+
Mage::logException($e);
|
342 |
+
}
|
343 |
}
|
344 |
return $this;
|
345 |
}
|
350 |
$subscriber = $observer->getEvent()->getData('subscriber');
|
351 |
$userModel = Mage::getModel('mailplus/user')->load( $subscriber->getData('subscriber_email'), 'email' );
|
352 |
if ( $userModel && $userModel->getId() )
|
353 |
+
try {
|
354 |
+
$this->deleteMailplusUser($userModel->getStoreId(), $userModel->getId());
|
355 |
+
}
|
356 |
+
catch (Exception $e) {
|
357 |
+
Mage::logException($e);
|
358 |
+
}
|
359 |
return $this;
|
360 |
}
|
361 |
|
380 |
$request = $front->getRequest();
|
381 |
$mailplus_click = $request->getParam('mpid');
|
382 |
} else {
|
383 |
+
/** @var $controller Mage_Core_Controller_Front_Action */
|
384 |
+
$controller = $observer->getControllerAction();
|
385 |
if ($controller) {
|
386 |
$mailplus_click = $controller->getRequest()->getQuery('mpid');
|
387 |
}
|
388 |
}
|
389 |
|
390 |
if ($mailplus_click) {
|
391 |
+
/* @var $session Mage_Core_Model_Session */
|
392 |
$session = Mage::getSingleton('core/session');
|
393 |
$data = array( Techtwo_Mailplus_Helper_Rest::CONVERSION_SHOPPINGCART => array('mpid'=>$mailplus_click, 'is_converted'=>FALSE) );
|
394 |
if ( $session->hasData(self::SESSION_CONVERSION_KEY) ) {
|
app/code/community/Techtwo/Mailplus/etc/config.xml
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Techtwo_Mailplus>
|
5 |
-
<version>2.3.
|
6 |
<subv>.0</subv>
|
7 |
</Techtwo_Mailplus>
|
8 |
</modules>
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Techtwo_Mailplus>
|
5 |
+
<version>2.3.4</version>
|
6 |
<subv>.0</subv>
|
7 |
</Techtwo_Mailplus>
|
8 |
</modules>
|
app/code/community/Techtwo/Mailplus/sql/mailplus_setup/mysql4-install-2.3.2.php
DELETED
@@ -1,130 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/*
|
3 |
-
* Copyright 2014 MailPlus
|
4 |
-
*
|
5 |
-
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
6 |
-
* use this file except in compliance with the License. You may obtain a copy
|
7 |
-
* of the License at
|
8 |
-
*
|
9 |
-
* http://www.apache.org/licenses/LICENSE-2.0
|
10 |
-
*
|
11 |
-
* Unless required by applicable law or agreed to in writing, software
|
12 |
-
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
13 |
-
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
14 |
-
* License for the specific language governing permissions and limitations
|
15 |
-
* under the License.
|
16 |
-
*/
|
17 |
-
// Since Magento 1.4+ is supported, plain SQL queries instead of DDL are used
|
18 |
-
|
19 |
-
/* @var $this Mage_Core_Model_Resource_Setup */
|
20 |
-
$this->startSetup();
|
21 |
-
|
22 |
-
$this->run("
|
23 |
-
CREATE TABLE IF NOT EXISTS `{$this->getTable('mailplus/bounce')}` (
|
24 |
-
`id` int(11) NOT NULL AUTO_INCREMENT,
|
25 |
-
`mailplus_id` varchar(255) NOT NULL,
|
26 |
-
`firstname` varchar(255) NOT NULL,
|
27 |
-
`insertion` varchar(255) NOT NULL,
|
28 |
-
`lastname` varchar(255) NOT NULL,
|
29 |
-
`email` varchar(255) NOT NULL,
|
30 |
-
`total_received` int(10) unsigned NOT NULL,
|
31 |
-
`is_test` tinyint(1) NOT NULL,
|
32 |
-
`is_customer_alerted` int(11) NOT NULL DEFAULT '0',
|
33 |
-
`last_bounce_date` datetime NOT NULL,
|
34 |
-
PRIMARY KEY (`id`),
|
35 |
-
UNIQUE KEY `mailplus_id` (`mailplus_id`)
|
36 |
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;
|
37 |
-
");
|
38 |
-
|
39 |
-
$this->run("
|
40 |
-
CREATE TABLE IF NOT EXISTS `{$this->getTable('mailplus/product')}` (
|
41 |
-
`entity_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
42 |
-
`catalog_product_entity_id` int(10) unsigned NOT NULL,
|
43 |
-
`store_id` smallint(5) unsigned NOT NULL,
|
44 |
-
`price` decimal(12,4) NOT NULL COMMENT 'The synchronized price',
|
45 |
-
`checksum` bigint(20) NOT NULL,
|
46 |
-
`created_at` datetime NOT NULL,
|
47 |
-
`updated_at` datetime NOT NULL,
|
48 |
-
PRIMARY KEY (`entity_id`),
|
49 |
-
UNIQUE KEY `catalog_product_entity_id_2` (`catalog_product_entity_id`,`store_id`),
|
50 |
-
KEY `store_id` (`store_id`),
|
51 |
-
KEY `catalog_product_entity_id` (`catalog_product_entity_id`)
|
52 |
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
53 |
-
");
|
54 |
-
|
55 |
-
$this->run("
|
56 |
-
CREATE TABLE IF NOT EXISTS `{$this->getTable('mailplus/restqueue')}` (
|
57 |
-
`restqueue_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
58 |
-
`method` varchar(255) NOT NULL,
|
59 |
-
`url` varchar(255) NOT NULL,
|
60 |
-
`payload` text NULL,
|
61 |
-
`tries` int(10) unsigned NOT NULL DEFAULT '0',
|
62 |
-
`last_error` text NULL,
|
63 |
-
`last_response` text NULL,
|
64 |
-
`created_at` datetime NOT NULL,
|
65 |
-
`last_run_at` datetime NOT NULL,
|
66 |
-
`next_run_at` datetime NOT NULL,
|
67 |
-
`site` int(10) unsigned NOT NULL,
|
68 |
-
PRIMARY KEY (`restqueue_id`)
|
69 |
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8
|
70 |
-
");
|
71 |
-
|
72 |
-
$this->run("
|
73 |
-
CREATE TABLE `{$this->getTable('mailplus/syncqueue')}` (
|
74 |
-
`syncqueue_id` int(11) NOT NULL AUTO_INCREMENT,
|
75 |
-
`synctype` varchar(10) NOT NULL,
|
76 |
-
`websiteid` int(11) NOT NULL,
|
77 |
-
`syncid` int(11) NOT NULL,
|
78 |
-
`created_at` datetime NOT NULL,
|
79 |
-
PRIMARY KEY (`syncqueue_id`),
|
80 |
-
KEY `synctype` (`synctype`,`created_at`),
|
81 |
-
KEY `websiteid` (`websiteid`)
|
82 |
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8
|
83 |
-
");
|
84 |
-
|
85 |
-
|
86 |
-
$this->run("
|
87 |
-
CREATE TABLE IF NOT EXISTS `{$this->getTable('mailplus/user')}` (
|
88 |
-
`user_id` int(11) unsigned NOT NULL AUTO_INCREMENT,
|
89 |
-
`customer_id` int(11) unsigned DEFAULT NULL,
|
90 |
-
`mailplus_id` char(50) DEFAULT NULL,
|
91 |
-
`store_id` smallint(5) unsigned NOT NULL,
|
92 |
-
`enabled` tinyint(1) NOT NULL DEFAULT '0',
|
93 |
-
`is_test` tinyint(1) NOT NULL DEFAULT '0',
|
94 |
-
`firstname` varchar(255) NOT NULL DEFAULT '',
|
95 |
-
`lastname` varchar(255) NOT NULL DEFAULT '',
|
96 |
-
`email` varchar(255) DEFAULT NULL,
|
97 |
-
`createts` int(11) unsigned NOT NULL DEFAULT '0',
|
98 |
-
PRIMARY KEY (`user_id`),
|
99 |
-
UNIQUE KEY `mailplus_id` (`mailplus_id`),
|
100 |
-
KEY `store_id` (`store_id`),
|
101 |
-
KEY `store_customer` (`customer_id`)
|
102 |
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8
|
103 |
-
");
|
104 |
-
|
105 |
-
$this->run("
|
106 |
-
CREATE TABLE `{$this->getTable('mailplus/abandoned_campaign')}` (
|
107 |
-
`quote_id` INT( 10 ) UNSIGNED NOT NULL ,
|
108 |
-
`created_at` DATETIME NOT NULL ,
|
109 |
-
PRIMARY KEY ( `quote_id` )
|
110 |
-
) ENGINE = InnoDB;
|
111 |
-
");
|
112 |
-
|
113 |
-
$this->run("
|
114 |
-
CREATE TABLE `{$this->getTable('mailplus/info')}` (
|
115 |
-
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
|
116 |
-
`name` varchar(255) NOT NULL DEFAULT '' ,
|
117 |
-
`value` varchar(255) NOT NULL DEFAULT '' ,
|
118 |
-
PRIMARY KEY ( `id` ),
|
119 |
-
KEY `name` (`name`)
|
120 |
-
) ENGINE = InnoDB;
|
121 |
-
");
|
122 |
-
|
123 |
-
$this->run("
|
124 |
-
ALTER TABLE `{$this->getTable('mailplus/user')}`
|
125 |
-
ADD CONSTRAINT `mailplus_user_ibfk_2` FOREIGN KEY (`customer_id`) REFERENCES `{$this->getTable('customer/entity')}` (`entity_id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
126 |
-
ADD CONSTRAINT `mailplus_user_ibfk_3` FOREIGN KEY (`store_id`) REFERENCES `{$this->getTable('core/store')}` (`store_id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
127 |
-
");
|
128 |
-
|
129 |
-
|
130 |
-
$this->endSetup();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/code/community/Techtwo/Mailplus/sql/mailplus_setup/mysql4-install-2.3.3.php
DELETED
@@ -1,130 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/*
|
3 |
-
* Copyright 2014 MailPlus
|
4 |
-
*
|
5 |
-
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
6 |
-
* use this file except in compliance with the License. You may obtain a copy
|
7 |
-
* of the License at
|
8 |
-
*
|
9 |
-
* http://www.apache.org/licenses/LICENSE-2.0
|
10 |
-
*
|
11 |
-
* Unless required by applicable law or agreed to in writing, software
|
12 |
-
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
13 |
-
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
14 |
-
* License for the specific language governing permissions and limitations
|
15 |
-
* under the License.
|
16 |
-
*/
|
17 |
-
// Since Magento 1.4+ is supported, plain SQL queries instead of DDL are used
|
18 |
-
|
19 |
-
/* @var $this Mage_Core_Model_Resource_Setup */
|
20 |
-
$this->startSetup();
|
21 |
-
|
22 |
-
$this->run("
|
23 |
-
CREATE TABLE IF NOT EXISTS `{$this->getTable('mailplus/bounce')}` (
|
24 |
-
`id` int(11) NOT NULL AUTO_INCREMENT,
|
25 |
-
`mailplus_id` varchar(255) NOT NULL,
|
26 |
-
`firstname` varchar(255) NOT NULL,
|
27 |
-
`insertion` varchar(255) NOT NULL,
|
28 |
-
`lastname` varchar(255) NOT NULL,
|
29 |
-
`email` varchar(255) NOT NULL,
|
30 |
-
`total_received` int(10) unsigned NOT NULL,
|
31 |
-
`is_test` tinyint(1) NOT NULL,
|
32 |
-
`is_customer_alerted` int(11) NOT NULL DEFAULT '0',
|
33 |
-
`last_bounce_date` datetime NOT NULL,
|
34 |
-
PRIMARY KEY (`id`),
|
35 |
-
UNIQUE KEY `mailplus_id` (`mailplus_id`)
|
36 |
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;
|
37 |
-
");
|
38 |
-
|
39 |
-
$this->run("
|
40 |
-
CREATE TABLE IF NOT EXISTS `{$this->getTable('mailplus/product')}` (
|
41 |
-
`entity_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
42 |
-
`catalog_product_entity_id` int(10) unsigned NOT NULL,
|
43 |
-
`store_id` smallint(5) unsigned NOT NULL,
|
44 |
-
`price` decimal(12,4) NOT NULL COMMENT 'The synchronized price',
|
45 |
-
`checksum` bigint(20) NOT NULL,
|
46 |
-
`created_at` datetime NOT NULL,
|
47 |
-
`updated_at` datetime NOT NULL,
|
48 |
-
PRIMARY KEY (`entity_id`),
|
49 |
-
UNIQUE KEY `catalog_product_entity_id_2` (`catalog_product_entity_id`,`store_id`),
|
50 |
-
KEY `store_id` (`store_id`),
|
51 |
-
KEY `catalog_product_entity_id` (`catalog_product_entity_id`)
|
52 |
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
53 |
-
");
|
54 |
-
|
55 |
-
$this->run("
|
56 |
-
CREATE TABLE IF NOT EXISTS `{$this->getTable('mailplus/restqueue')}` (
|
57 |
-
`restqueue_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
58 |
-
`method` varchar(255) NOT NULL,
|
59 |
-
`url` varchar(255) NOT NULL,
|
60 |
-
`payload` text NULL,
|
61 |
-
`tries` int(10) unsigned NOT NULL DEFAULT '0',
|
62 |
-
`last_error` text NULL,
|
63 |
-
`last_response` text NULL,
|
64 |
-
`created_at` datetime NOT NULL,
|
65 |
-
`last_run_at` datetime NOT NULL,
|
66 |
-
`next_run_at` datetime NOT NULL,
|
67 |
-
`site` int(10) unsigned NOT NULL,
|
68 |
-
PRIMARY KEY (`restqueue_id`)
|
69 |
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8
|
70 |
-
");
|
71 |
-
|
72 |
-
$this->run("
|
73 |
-
CREATE TABLE `{$this->getTable('mailplus/syncqueue')}` (
|
74 |
-
`syncqueue_id` int(11) NOT NULL AUTO_INCREMENT,
|
75 |
-
`synctype` varchar(10) NOT NULL,
|
76 |
-
`websiteid` int(11) NOT NULL,
|
77 |
-
`syncid` int(11) NOT NULL,
|
78 |
-
`created_at` datetime NOT NULL,
|
79 |
-
PRIMARY KEY (`syncqueue_id`),
|
80 |
-
KEY `synctype` (`synctype`,`created_at`),
|
81 |
-
KEY `websiteid` (`websiteid`)
|
82 |
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8
|
83 |
-
");
|
84 |
-
|
85 |
-
|
86 |
-
$this->run("
|
87 |
-
CREATE TABLE IF NOT EXISTS `{$this->getTable('mailplus/user')}` (
|
88 |
-
`user_id` int(11) unsigned NOT NULL AUTO_INCREMENT,
|
89 |
-
`customer_id` int(11) unsigned DEFAULT NULL,
|
90 |
-
`mailplus_id` char(50) DEFAULT NULL,
|
91 |
-
`store_id` smallint(5) unsigned NOT NULL,
|
92 |
-
`enabled` tinyint(1) NOT NULL DEFAULT '0',
|
93 |
-
`is_test` tinyint(1) NOT NULL DEFAULT '0',
|
94 |
-
`firstname` varchar(255) NOT NULL DEFAULT '',
|
95 |
-
`lastname` varchar(255) NOT NULL DEFAULT '',
|
96 |
-
`email` varchar(255) DEFAULT NULL,
|
97 |
-
`createts` int(11) unsigned NOT NULL DEFAULT '0',
|
98 |
-
PRIMARY KEY (`user_id`),
|
99 |
-
UNIQUE KEY `mailplus_id` (`mailplus_id`),
|
100 |
-
KEY `store_id` (`store_id`),
|
101 |
-
KEY `store_customer` (`customer_id`)
|
102 |
-
) ENGINE=InnoDB DEFAULT CHARSET=utf8
|
103 |
-
");
|
104 |
-
|
105 |
-
$this->run("
|
106 |
-
CREATE TABLE `{$this->getTable('mailplus/abandoned_campaign')}` (
|
107 |
-
`quote_id` INT( 10 ) UNSIGNED NOT NULL ,
|
108 |
-
`created_at` DATETIME NOT NULL ,
|
109 |
-
PRIMARY KEY ( `quote_id` )
|
110 |
-
) ENGINE = InnoDB;
|
111 |
-
");
|
112 |
-
|
113 |
-
$this->run("
|
114 |
-
CREATE TABLE `{$this->getTable('mailplus/info')}` (
|
115 |
-
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
|
116 |
-
`name` varchar(255) NOT NULL DEFAULT '' ,
|
117 |
-
`value` varchar(255) NOT NULL DEFAULT '' ,
|
118 |
-
PRIMARY KEY ( `id` ),
|
119 |
-
KEY `name` (`name`)
|
120 |
-
) ENGINE = InnoDB;
|
121 |
-
");
|
122 |
-
|
123 |
-
$this->run("
|
124 |
-
ALTER TABLE `{$this->getTable('mailplus/user')}`
|
125 |
-
ADD CONSTRAINT `mailplus_user_ibfk_2` FOREIGN KEY (`customer_id`) REFERENCES `{$this->getTable('customer/entity')}` (`entity_id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
126 |
-
ADD CONSTRAINT `mailplus_user_ibfk_3` FOREIGN KEY (`store_id`) REFERENCES `{$this->getTable('core/store')}` (`store_id`) ON DELETE CASCADE ON UPDATE CASCADE;
|
127 |
-
");
|
128 |
-
|
129 |
-
|
130 |
-
$this->endSetup();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/code/community/Techtwo/Mailplus/sql/mailplus_setup/{mysql4-install-2.3.1.php → mysql4-install-2.3.4.php}
RENAMED
File without changes
|
package.xml
CHANGED
@@ -1,23 +1,18 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Techtwo_Mailplus</name>
|
4 |
-
<version>2.3.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>MailPlus Connector for Magento</summary>
|
10 |
<description>Synchronizes contact, product and order information between Magento and MailPlus eCom and triggers campaigns.</description>
|
11 |
-
<notes>Release v2.3.
|
12 |
-

|
13 |
-
- Contacts no longer synced when "Only products" is selected for syncing data
|
14 |
-
- Update the last order date for a contact immediately when a new order is synced
|
15 |
-
- Do not set the permissions for a contact when a new sync is forced from the MailPlus state page
|
16 |
-
</notes>
|
17 |
<authors><author><name>MailPlus</name><user>PaulBos</user><email>paul@mailplus.nl</email></author></authors>
|
18 |
-
<date>
|
19 |
-
<time>
|
20 |
-
<contents><target name="magecommunity"><dir name="Techtwo"><dir name="Mailplus"><dir name="Block"><dir name="Adminhtml"><dir name="Bounces"><file name="Grid.php" hash="f8a718505b7ddc76b7c41cabd725385a"/></dir><file name="Bounces.php" hash="9e948d87a42affafe387ae22b76b0329"/><dir name="Mapping"><dir name="Edit"><file name="Form.php" hash="d1c2810efc8e47c57524e3e80e2b41c1"/></dir></dir><file name="Mapping.php" hash="5263da49b84234e9f25063c1fe6109be"/><dir name="Restqueue"><file name="Grid.php" hash="4aa89c69ed281f91d8c13528d79f6702"/></dir><file name="Restqueue.php" hash="9eb67a7691b733fdff5a28cb8c148aa3"/><dir name="Syncstatus"><file name="Grid.php" hash="e12d16fcfbd0b5415af2005c1769abdd"/></dir><file name="Syncstatus.php" hash="f1286b0f99f427678280d0faf7aa0459"/><dir name="Users"><dir name="Edit"><file name="Form.php" hash="dd8a34b1ef517fa6cfd86df923883874"/><dir name="Tab"><file name="Form.php" hash="6902ea8145aaf3de04aa0ae3a5a749b6"/></dir><file name="Tabs.php" hash="649f4504ef6b1b677e0af718b4fb1bf2"/></dir><file name="Edit.php" hash="d49c6d3e6d841101177063353c38c520"/><file name="Grid.php" hash="e5606c984441b99a89b66473ea9b1635"/></dir><file name="Users.php" hash="c28da0f1b0a7d7924bd0779e2c8c4072"/></dir></dir><dir name="Client"><dir name="Contact"><file name="Permission.php" hash="c7cb785041a3685eed8b5dec3573f773"/><file name="Property.php" hash="637bdb0ef575e0f2cb1ee6c2e48e0566"/></dir><file name="Error.php" hash="d6104ae10196b5e7941dfc866236b015"/><file name="Exception.php" hash="7c8fd063c8f6e4e42db2ba2003db5538"/><file name="Rest.php" hash="9ac7ebb23b1dd6f3521df89677d722d9"/></dir><dir name="Helper"><file name="Config.php" hash="a3eeb7f13fe573f4661743ee974b2209"/><file name="Cron.php" hash="7790b6e1d0b740228e273cabb2892324"/><file name="Data.php" hash="80690fe1484d3f5fc242d0c8774aea74"/><file name="Feed.php" hash="ae866adfed51d488fed615fd828257fe"/><file name="Rest.php" hash="f60ccd87dcdf38a76f45e4a2702d86a2"/></dir><dir name="Model"><dir name="Abandoned"><file name="Campaign.php" hash="745bc978a8cf2ea88c0e31d59823de8b"/></dir><file name="Bounce.php" hash="a2ab980e67ca1783180265b54ee0ea74"/><dir name="Cron"><file name="Hourly.php" hash="3c384fc49c22241d867af3fbbb87d6ce"/><file name="Often.php" hash="
|
21 |
<compatible/>
|
22 |
-
<dependencies><required><php><min>5.1.0</min><max>7.0.
|
23 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Techtwo_Mailplus</name>
|
4 |
+
<version>2.3.4</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>MailPlus Connector for Magento</summary>
|
10 |
<description>Synchronizes contact, product and order information between Magento and MailPlus eCom and triggers campaigns.</description>
|
11 |
+
<notes>Release v2.3.4</notes>
|
|
|
|
|
|
|
|
|
|
|
12 |
<authors><author><name>MailPlus</name><user>PaulBos</user><email>paul@mailplus.nl</email></author></authors>
|
13 |
+
<date>2017-01-12</date>
|
14 |
+
<time>09:45:27</time>
|
15 |
+
<contents><target name="magecommunity"><dir name="Techtwo"><dir name="Mailplus"><dir name="Block"><dir name="Adminhtml"><dir name="Bounces"><file name="Grid.php" hash="f8a718505b7ddc76b7c41cabd725385a"/></dir><file name="Bounces.php" hash="9e948d87a42affafe387ae22b76b0329"/><dir name="Mapping"><dir name="Edit"><file name="Form.php" hash="d1c2810efc8e47c57524e3e80e2b41c1"/></dir></dir><file name="Mapping.php" hash="5263da49b84234e9f25063c1fe6109be"/><dir name="Restqueue"><file name="Grid.php" hash="4aa89c69ed281f91d8c13528d79f6702"/></dir><file name="Restqueue.php" hash="9eb67a7691b733fdff5a28cb8c148aa3"/><dir name="Syncstatus"><file name="Grid.php" hash="e12d16fcfbd0b5415af2005c1769abdd"/></dir><file name="Syncstatus.php" hash="f1286b0f99f427678280d0faf7aa0459"/><dir name="Users"><dir name="Edit"><file name="Form.php" hash="dd8a34b1ef517fa6cfd86df923883874"/><dir name="Tab"><file name="Form.php" hash="6902ea8145aaf3de04aa0ae3a5a749b6"/></dir><file name="Tabs.php" hash="649f4504ef6b1b677e0af718b4fb1bf2"/></dir><file name="Edit.php" hash="d49c6d3e6d841101177063353c38c520"/><file name="Grid.php" hash="e5606c984441b99a89b66473ea9b1635"/></dir><file name="Users.php" hash="c28da0f1b0a7d7924bd0779e2c8c4072"/></dir></dir><dir name="Client"><dir name="Contact"><file name="Permission.php" hash="c7cb785041a3685eed8b5dec3573f773"/><file name="Property.php" hash="637bdb0ef575e0f2cb1ee6c2e48e0566"/></dir><file name="Error.php" hash="d6104ae10196b5e7941dfc866236b015"/><file name="Exception.php" hash="7c8fd063c8f6e4e42db2ba2003db5538"/><file name="Rest.php" hash="9ac7ebb23b1dd6f3521df89677d722d9"/></dir><dir name="Helper"><file name="Config.php" hash="a3eeb7f13fe573f4661743ee974b2209"/><file name="Cron.php" hash="7790b6e1d0b740228e273cabb2892324"/><file name="Data.php" hash="80690fe1484d3f5fc242d0c8774aea74"/><file name="Feed.php" hash="ae866adfed51d488fed615fd828257fe"/><file name="Rest.php" hash="f60ccd87dcdf38a76f45e4a2702d86a2"/></dir><dir name="Model"><dir name="Abandoned"><file name="Campaign.php" hash="745bc978a8cf2ea88c0e31d59823de8b"/></dir><file name="Bounce.php" hash="a2ab980e67ca1783180265b54ee0ea74"/><dir name="Cron"><file name="Hourly.php" hash="3c384fc49c22241d867af3fbbb87d6ce"/><file name="Often.php" hash="8f6a92085aeb9dba75c1454be22fcab1"/></dir><file name="Info.php" hash="4aade98df5fc5fba93831c4c367ce14b"/><file name="Mailing.php" hash="ad152a095677a8559b5ca3a4f35408fc"/><dir name="Mysql4"><dir name="Abandoned"><dir name="Campaign"><file name="Collection.php" hash="4fe912177ce6c734f2f5bda923a8149a"/></dir><file name="Campaign.php" hash="7cceca83ac44242374318041bf29216b"/></dir><dir name="Bounce"><file name="Collection.php" hash="4660a53fff332a3d6cc9707a82f6e936"/></dir><file name="Bounce.php" hash="471b5432251ad6d311d4b42c233493aa"/><dir name="Info"><file name="Collection.php" hash="1c1c60197096c4c197ab9532f877d564"/></dir><file name="Info.php" hash="9179c5665d912ae7bb88ee96b7742346"/><dir name="Product"><file name="Collection.php" hash="a68a8da87fea9c4295511e2116d72e81"/></dir><file name="Product.php" hash="f63464aa767938d52e15e068c683e7ce"/><dir name="Restqueue"><file name="Collection.php" hash="b6c8a6c80915ca8fb48d5ece6fdec059"/></dir><file name="Restqueue.php" hash="80da968d9d75e780cbcc3c32a53e39d2"/><dir name="Syncqueue"><file name="Collection.php" hash="1f7ebe9212d2f38c02751644f82f3df7"/></dir><file name="Syncqueue.php" hash="4661379f990d0e2c026c2fc1c3c6e2d7"/><dir name="User"><file name="Collection.php" hash="67d7babb94883c223f850b56f1486bf7"/></dir><file name="User.php" hash="5cd0ab76b7f25bbcb23ecad412b75648"/></dir><dir name="Newsletter"><file name="Subscriber.php" hash="98275f4d9a38491a5eab1bb217b067cc"/></dir><file name="Product.php" hash="8d3cb4f534c157bb12f71ee78cc8afe5"/><file name="Restqueue.php" hash="0a33c0caea964ed076ee003c08677974"/><file name="Syncqueue.php" hash="4a3864eb463f290bc0a329b7692293ea"/><dir name="System"><file name="Campaign.php" hash="69b0b838a7644e1d59ba3bc601ec172a"/><dir name="Config"><dir name="Source"><file name="Campaign.php" hash="e8f5324473a3aa56e111204cba6a08bf"/><file name="Keepframe.php" hash="f538cca9d9e8bf3d6d852c02b023096f"/><dir name="Product"><file name="Specs.php" hash="ddde4111fb3c4e015e4ad54f4ddb3150"/></dir><file name="Synchronize.php" hash="74ffa47771b8d58cd3610ee37bcdcc22"/><dir name="Yesno"><dir name="Default"><file name="No.php" hash="15fdcf3048bf48b65e07096dae603238"/><file name="Yes.php" hash="44449a8b1ca6967c171bdd9b5119f6dd"/></dir></dir></dir></dir></dir><file name="User.php" hash="4b93e9ea5f0f3e493095d33e5f06bee0"/></dir><dir name="Observer"><file name="Config.php" hash="040600ac7accc712e1243fe4f4c097c8"/><file name="Customer.php" hash="d9083d1011c46053ca819a855cfa148e"/><file name="Product.php" hash="cfc5b5f7bc7c9293c8963d4155ca6437"/></dir><dir name="controllers"><file name="CustomerController.php" hash="c968354013c4d746609ede5224b18949"/><file name="ImageController.php" hash="3c8343c14e6d38caf4db6d095ede6922"/><dir name="Mailplus"><dir name="Adminhtml"><file name="BouncesController.php" hash="b4e6208581ba0a5bdad0aeaa66964082"/><file name="HelpController.php" hash="1f517f2d87ce11288413ef37541ddc85"/><file name="MappingController.php" hash="8d64a37daff55d243759e308ff9020cf"/><file name="RestqueueController.php" hash="29492769f1f43d023ded6b24861dba3c"/><file name="StatusController.php" hash="ccdc96ac4b095370df9fcbac6aaa39ce"/></dir><file name="Entry.php" hash="9c5703bcdf2b27b4403f35946e9308e3"/><dir name="Renderer"><file name="Entry.php" hash="21549a8d17704314b99918ddd9e66904"/></dir></dir><file name="UseController.php" hash="c45954c725de56304a0a0ab3fb923698"/></dir><dir name="etc"><file name="adminhtml.xml" hash="a7f97604736131c3ddff4c3a07b4486f"/><file name="config.xml" hash="9cd6b7a126d73dd11b4cf9e1ca73124b"/><file name="system.xml" hash="706808af2c74c1666563c1aefb841fca"/></dir><dir name="sql"><dir name="mailplus_setup"><file name="mysql4-install-2.3.4.php" hash="f17cd9e7bcdc86d7666dd6e0b44d9d8e"/><file name="mysql4-upgrade-0.1.1-0.2.1.php" hash="d0f17ed7531e43ed541be989c30b9d57"/><file name="mysql4-upgrade-0.2.1-0.3.1.php" hash="d0f17ed7531e43ed541be989c30b9d57"/><file name="mysql4-upgrade-0.3.1-0.3.2.php" hash="567018f30306b80e8f912f346b0b5d3d"/><file name="mysql4-upgrade-0.3.2-0.3.3.php" hash="e8cc865c196516155304418ff871d6fe"/><file name="mysql4-upgrade-0.3.3-1.0.0.php" hash="9d47cbd0f0a6052973e29f1b1dc55775"/><file name="mysql4-upgrade-1.0.0-2.0.0.php" hash="e677470234bd75a9f11aa01cb71777c2"/><file name="mysql4-upgrade-2.0.0-2.1.0.php" hash="b865191bd73dd5633d04636435f9a793"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="mailplus.xml" hash="402a7475f68be0c65374503000e4c772"/></dir><dir name="template"><dir name="mailplus"><file name="bounces.phtml" hash="c98b3f2e7e44b52c7d54d68b02d0bd05"/><file name="cronstatus.phtml" hash="5a5e75a1d8d0ac3701211f1e3e8d2d66"/><file name="edit.phtml" hash="872f074814af467ae4ed5b9b2f853557"/><file name="help.phtml" hash="8e83222357b6b64dea99633a5cfcf2a0"/><file name="notifications.phtml" hash="bd09beb8755cef19f63a7a5e485fdc1b"/><file name="status.phtml" hash="85548864d577fcb72bceafb5a2f7ae7e"/><dir name="users"><file name="grid.phtml" hash="59be26393c7ba9f3d2fec90c4fe172f6"/><file name="import.phtml" hash="95e7f2ae0a5ae8159be57bdf22b1b7cb"/></dir><file name="website_switcher.phtml" hash="b17e3fab749ff638e181a19f8c6fa087"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="mailplus.xml" hash="d484d7a3878a276c47697f62f33597c6"/></dir></dir></dir></dir></target><target name="magelocale"><dir name="nl_NL"><file name="Techtwo_Mailplus.csv" hash="bca36114fdd0a48e0e1f3049825ba1ec"/></dir></target><target name="mageetc"><dir name="modules"><file name="Techtwo_Mailplus.xml" hash="f8ff6735462326d611b89d04968957d0"/></dir></target><target name="magelib"><dir name="MailPlus"><dir name="Oauth"><file name="Client.php" hash="3f09bcf9bdcef2698b172af3e63b2c24"/><dir name="Token"><file name="Access.php" hash="5ea167ab32e05cbc95a6e1a4dc30fe06"/></dir></dir></dir></target></contents>
|
16 |
<compatible/>
|
17 |
+
<dependencies><required><php><min>5.1.0</min><max>7.0.13</max></php></required></dependencies>
|
18 |
</package>
|