Version Description
Download this release
Release Info
Developer | constantcontact |
Plugin | Creative Mail – Easier WordPress & WooCommerce Email Marketing |
Version | 1.4.9 |
Comparing to | |
See all releases |
Code changes from version 1.4.8 to 1.4.9
- CHANGELOG.md +6 -1
- README.md +3 -2
- creative-mail-plugin.php +3 -3
- readme.txt +2 -1
- src/CreativeMail.php +6 -4
- src/Managers/CheckoutManager.php +10 -5
- src/Modules/Contacts/Handlers/BaseContactFormPluginHandler.php +1 -0
- src/Modules/Contacts/Handlers/ContactFormSevenPluginHandler.php +25 -3
- src/Modules/Contacts/Handlers/WooCommercePluginHandler.php +6 -0
- src/Modules/Contacts/Models/ContactModel.php +13 -1
- vendor/autoload.php +1 -1
- vendor/composer/autoload_real.php +4 -4
- vendor/composer/autoload_static.php +5 -5
CHANGELOG.md
CHANGED
@@ -1,6 +1,11 @@
|
|
1 |
Changelog
|
2 |
=========
|
3 |
|
|
|
|
|
|
|
|
|
|
|
4 |
#### 1.4.8 - December 1 2021
|
5 |
- Redirect to main Creativ Email templates page when user has abandoned cart template deactivated.
|
6 |
- Fix sync error with contact form 7
|
@@ -136,4 +141,4 @@ Changelog
|
|
136 |
- Fixes an issue where the "Let's get started" button needed to be clicked twice in some cases.
|
137 |
|
138 |
#### 1.0.0 - July 16 2020
|
139 |
-
- Initial version of the plugin
|
1 |
Changelog
|
2 |
=========
|
3 |
|
4 |
+
#### 1.4.9 - January 3 2022
|
5 |
+
- Add Flag Customer Orders
|
6 |
+
- Fix phone numbers should now be synced successfully and contacts will only be subscribed if the 'acceptance' checkbox is checked
|
7 |
+
- Fix error after Order Completed Trigger
|
8 |
+
|
9 |
#### 1.4.8 - December 1 2021
|
10 |
- Redirect to main Creativ Email templates page when user has abandoned cart template deactivated.
|
11 |
- Fix sync error with contact form 7
|
141 |
- Fixes an issue where the "Let's get started" button needed to be clicked twice in some cases.
|
142 |
|
143 |
#### 1.0.0 - July 16 2020
|
144 |
+
- Initial version of the plugin
|
README.md
CHANGED
@@ -3,7 +3,7 @@ Contributors: Constant Contact
|
|
3 |
Tags: email, marketing, newsletter, subscribe, contact form, constant contact, crm, automations, ecommerce, promotion, offers, retargeting
|
4 |
Requires at least: 4.6
|
5 |
Tested up to: 5.8
|
6 |
-
Stable tag: 1.4.
|
7 |
License: GPLv2 or later
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
Requires PHP: 5.6
|
@@ -90,6 +90,7 @@ Creative Mail by Constant Contact [Privacy Notice](https://www.endurance.com/pri
|
|
90 |
6. Enhance your brand with LogoBuilder
|
91 |
|
92 |
== Changelog ==
|
|
|
93 |
* 1.4.8 - Redirect to main Creativ Email templates page when user has abandoned cart template deactivated. Fix sync error with contact form 7. Added automation trigger for customer buying products.
|
94 |
* 1.4.7 - Fix currency type being shown in "Abandoned Cart" emails for WooCommerce.
|
95 |
* 1.4.6 - Add phone number handling for Jetpack Forms. Bug fixes.
|
@@ -113,4 +114,4 @@ Creative Mail by Constant Contact [Privacy Notice](https://www.endurance.com/pri
|
|
113 |
* 1.2.3 - Fixes an issue where the banner would show up again after being dismissed.
|
114 |
* 1.2.2 - Introduction of multi step automations and fixes a couple of small issues in the CreativeMail widgets
|
115 |
* 1.2.1 - Fixes an issue where some users would experience an issue where our UI was blocked by pop-up blockers.
|
116 |
-
* 1.2.0 - Context aware notifications, add support for Ninja forms, add support for Caldera forms
|
3 |
Tags: email, marketing, newsletter, subscribe, contact form, constant contact, crm, automations, ecommerce, promotion, offers, retargeting
|
4 |
Requires at least: 4.6
|
5 |
Tested up to: 5.8
|
6 |
+
Stable tag: 1.4.9
|
7 |
License: GPLv2 or later
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
Requires PHP: 5.6
|
90 |
6. Enhance your brand with LogoBuilder
|
91 |
|
92 |
== Changelog ==
|
93 |
+
* 1.4.9 - Fixes regarding WooCoomerce and Contact Sync Updates.
|
94 |
* 1.4.8 - Redirect to main Creativ Email templates page when user has abandoned cart template deactivated. Fix sync error with contact form 7. Added automation trigger for customer buying products.
|
95 |
* 1.4.7 - Fix currency type being shown in "Abandoned Cart" emails for WooCommerce.
|
96 |
* 1.4.6 - Add phone number handling for Jetpack Forms. Bug fixes.
|
114 |
* 1.2.3 - Fixes an issue where the banner would show up again after being dismissed.
|
115 |
* 1.2.2 - Introduction of multi step automations and fixes a couple of small issues in the CreativeMail widgets
|
116 |
* 1.2.1 - Fixes an issue where some users would experience an issue where our UI was blocked by pop-up blockers.
|
117 |
+
* 1.2.0 - Context aware notifications, add support for Ninja forms, add support for Caldera forms
|
creative-mail-plugin.php
CHANGED
@@ -9,7 +9,7 @@
|
|
9 |
* Plugin URI: https://wordpress.org/plugins/creative-mail-by-constant-contact/
|
10 |
* Description: Free email marketing designed specifically for WordPress, Jetpack and WooCommerce. Send newsletters, promotions, updates and transactional e-commerce emails. Simple and easy, powered by Constant Contact’s rock solid reliability.
|
11 |
* Author: Constant Contact
|
12 |
-
* Version: 1.4.
|
13 |
* Author URI: https://www.constantcontact.com
|
14 |
* WC requires at least: 3.0.0
|
15 |
* WC tested up to: 5.1.0
|
@@ -27,7 +27,7 @@ function _load_ce4wp_plugin()
|
|
27 |
define('CE4WP_PLUGIN_DIR', __DIR__ . '/');
|
28 |
define('CE4WP_PLUGIN_URL', plugin_dir_url(__FILE__) . '/');
|
29 |
define('CE4WP_PLUGIN_FILE', __FILE__);
|
30 |
-
define('CE4WP_PLUGIN_VERSION', '1.4.
|
31 |
define('CE4WP_INSTANCE_UUID_KEY', 'ce4wp_instance_uuid');
|
32 |
define('CE4WP_INSTANCE_HANDSHAKE_TOKEN', 'ce4wp_handshake_token');
|
33 |
define('CE4WP_INSTANCE_HANDSHAKE_EXPIRATION', 'ce4wp_handshake_expiration');
|
@@ -44,7 +44,7 @@ function _load_ce4wp_plugin()
|
|
44 |
define('CE4WP_APP_GATEWAY_URL', 'https://app-gateway.creativemail.com/');
|
45 |
define('CE4WP_APP_URL', 'https://app.creativemail.com/');
|
46 |
define('CE4WP_ENVIRONMENT', 'PRODUCTION');
|
47 |
-
define('CE4WP_BUILD_NUMBER', '
|
48 |
define('CE4WP_RAYGUN_PHP_KEY', 'Z85xL3mkgnW13Ri9DajGUg');
|
49 |
define('CE4WP_BATCH_SIZE', 500);
|
50 |
define('CE4WP_WC_API_KEY_ID', 'ce4wp_woocommerce_api_key_id');
|
9 |
* Plugin URI: https://wordpress.org/plugins/creative-mail-by-constant-contact/
|
10 |
* Description: Free email marketing designed specifically for WordPress, Jetpack and WooCommerce. Send newsletters, promotions, updates and transactional e-commerce emails. Simple and easy, powered by Constant Contact’s rock solid reliability.
|
11 |
* Author: Constant Contact
|
12 |
+
* Version: 1.4.9
|
13 |
* Author URI: https://www.constantcontact.com
|
14 |
* WC requires at least: 3.0.0
|
15 |
* WC tested up to: 5.1.0
|
27 |
define('CE4WP_PLUGIN_DIR', __DIR__ . '/');
|
28 |
define('CE4WP_PLUGIN_URL', plugin_dir_url(__FILE__) . '/');
|
29 |
define('CE4WP_PLUGIN_FILE', __FILE__);
|
30 |
+
define('CE4WP_PLUGIN_VERSION', '1.4.9');
|
31 |
define('CE4WP_INSTANCE_UUID_KEY', 'ce4wp_instance_uuid');
|
32 |
define('CE4WP_INSTANCE_HANDSHAKE_TOKEN', 'ce4wp_handshake_token');
|
33 |
define('CE4WP_INSTANCE_HANDSHAKE_EXPIRATION', 'ce4wp_handshake_expiration');
|
44 |
define('CE4WP_APP_GATEWAY_URL', 'https://app-gateway.creativemail.com/');
|
45 |
define('CE4WP_APP_URL', 'https://app.creativemail.com/');
|
46 |
define('CE4WP_ENVIRONMENT', 'PRODUCTION');
|
47 |
+
define('CE4WP_BUILD_NUMBER', '1538');
|
48 |
define('CE4WP_RAYGUN_PHP_KEY', 'Z85xL3mkgnW13Ri9DajGUg');
|
49 |
define('CE4WP_BATCH_SIZE', 500);
|
50 |
define('CE4WP_WC_API_KEY_ID', 'ce4wp_woocommerce_api_key_id');
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: Constant Contact
|
|
3 |
Tags: email, marketing, newsletter, subscribe, contact form, constant contact, crm, automations, ecommerce, promotion, offers, retargeting
|
4 |
Requires at least: 4.6
|
5 |
Tested up to: 5.8
|
6 |
-
Stable tag: 1.4.
|
7 |
License: GPLv2 or later
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
Requires PHP: 5.6
|
@@ -104,6 +104,7 @@ Creative Mail by Constant Contact [Privacy Notice](https://www.endurance.com/pri
|
|
104 |
6. Enhance your brand with LogoBuilder
|
105 |
|
106 |
== Changelog ==
|
|
|
107 |
* 1.4.8 - Redirect to main Creativ Email templates page when user has abandoned cart template deactivated. Fix sync error with contact form 7. Added automation trigger for customer buying products.
|
108 |
* 1.4.7 - Fix currency type being shown in "Abandoned Cart" emails for WooCommerce.
|
109 |
* 1.4.6 - Add phone number handling for Jetpack Forms. Bug fixes.
|
3 |
Tags: email, marketing, newsletter, subscribe, contact form, constant contact, crm, automations, ecommerce, promotion, offers, retargeting
|
4 |
Requires at least: 4.6
|
5 |
Tested up to: 5.8
|
6 |
+
Stable tag: 1.4.9
|
7 |
License: GPLv2 or later
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
Requires PHP: 5.6
|
104 |
6. Enhance your brand with LogoBuilder
|
105 |
|
106 |
== Changelog ==
|
107 |
+
* 1.4.9 - Fixes regarding WooCoomerce and Contact Sync Updates.
|
108 |
* 1.4.8 - Redirect to main Creativ Email templates page when user has abandoned cart template deactivated. Fix sync error with contact form 7. Added automation trigger for customer buying products.
|
109 |
* 1.4.7 - Fix currency type being shown in "Abandoned Cart" emails for WooCommerce.
|
110 |
* 1.4.6 - Add phone number handling for Jetpack Forms. Bug fixes.
|
src/CreativeMail.php
CHANGED
@@ -3,6 +3,7 @@
|
|
3 |
|
4 |
namespace CreativeMail;
|
5 |
|
|
|
6 |
use CreativeMail\Managers\AdminManager;
|
7 |
use CreativeMail\Managers\ApiManager;
|
8 |
use CreativeMail\Managers\CheckoutManager;
|
@@ -67,9 +68,11 @@ class CreativeMail
|
|
67 |
if ($enabled) {
|
68 |
$this->checkout_manager->add_hooks();
|
69 |
}
|
70 |
-
|
71 |
-
if (
|
72 |
-
|
|
|
|
|
73 |
}
|
74 |
}
|
75 |
|
@@ -120,7 +123,6 @@ class CreativeMail
|
|
120 |
|
121 |
public static function get_instance()
|
122 |
{
|
123 |
-
|
124 |
if (self::$instance === null) {
|
125 |
self::$instance = new CreativeMail();
|
126 |
}
|
3 |
|
4 |
namespace CreativeMail;
|
5 |
|
6 |
+
use CreativeMail\Helpers\OptionsHelper;
|
7 |
use CreativeMail\Managers\AdminManager;
|
8 |
use CreativeMail\Managers\ApiManager;
|
9 |
use CreativeMail\Managers\CheckoutManager;
|
68 |
if ($enabled) {
|
69 |
$this->checkout_manager->add_hooks();
|
70 |
}
|
71 |
+
|
72 |
+
if (!empty(OptionsHelper::get_instance_id())) {
|
73 |
+
if (in_array('woocommerce/woocommerce.php', apply_filters('active_plugins', get_option('active_plugins')))) {
|
74 |
+
$this->checkout_manager->add_order_completed_wc_hooks();
|
75 |
+
}
|
76 |
}
|
77 |
}
|
78 |
|
123 |
|
124 |
public static function get_instance()
|
125 |
{
|
|
|
126 |
if (self::$instance === null) {
|
127 |
self::$instance = new CreativeMail();
|
128 |
}
|
src/Managers/CheckoutManager.php
CHANGED
@@ -823,6 +823,11 @@ class CheckoutManager
|
|
823 |
// Line Items / Products array for the expected endpoint
|
824 |
foreach ($order->get_items() as $itemsKey => $item) {
|
825 |
$product = $item->get_product();
|
|
|
|
|
|
|
|
|
|
|
826 |
$item_meta = $item->get_formatted_meta_data();
|
827 |
|
828 |
foreach ($item_meta as $key => $values) {
|
@@ -875,11 +880,11 @@ class CheckoutManager
|
|
875 |
$requestItem->order->line_items[] = array(
|
876 |
'product_id' => $item->get_product_id(),
|
877 |
'item_meta' => $item->get_formatted_meta_data(),
|
878 |
-
'subtotal' => wc_format_decimal($order->get_line_subtotal($item, false, false), $
|
879 |
-
'subtotal_tax' => wc_format_decimal($item->get_subtotal_tax(), $
|
880 |
-
'total' => wc_format_decimal($order->get_line_total($item, false, false), $
|
881 |
-
'total_tax' => wc_format_decimal($item->get_total_tax(), $
|
882 |
-
'price' => wc_format_decimal($order->get_item_total($item, false, false), $
|
883 |
'quantity' => $item->get_quantity(),
|
884 |
'tax_class' => $item->get_tax_class(),
|
885 |
'name' => $item->get_name(),
|
823 |
// Line Items / Products array for the expected endpoint
|
824 |
foreach ($order->get_items() as $itemsKey => $item) {
|
825 |
$product = $item->get_product();
|
826 |
+
|
827 |
+
if (empty($product)) {
|
828 |
+
continue;
|
829 |
+
}
|
830 |
+
|
831 |
$item_meta = $item->get_formatted_meta_data();
|
832 |
|
833 |
foreach ($item_meta as $key => $values) {
|
880 |
$requestItem->order->line_items[] = array(
|
881 |
'product_id' => $item->get_product_id(),
|
882 |
'item_meta' => $item->get_formatted_meta_data(),
|
883 |
+
'subtotal' => wc_format_decimal($order->get_line_subtotal($item, false, false), $decimal_point),
|
884 |
+
'subtotal_tax' => wc_format_decimal($item->get_subtotal_tax(), $decimal_point),
|
885 |
+
'total' => wc_format_decimal($order->get_line_total($item, false, false), $decimal_point),
|
886 |
+
'total_tax' => wc_format_decimal($item->get_total_tax(), $decimal_point),
|
887 |
+
'price' => wc_format_decimal($order->get_item_total($item, false, false), $decimal_point),
|
888 |
'quantity' => $item->get_quantity(),
|
889 |
'tax_class' => $item->get_tax_class(),
|
890 |
'name' => $item->get_name(),
|
src/Modules/Contacts/Handlers/BaseContactFormPluginHandler.php
CHANGED
@@ -19,6 +19,7 @@ abstract class BaseContactFormPluginHandler
|
|
19 |
protected $emailFields = array('your-email', 'email', 'e-mail', 'emailaddress', 'email_address', 'email address', 'email-address', 'e-mail address', 'UserEmailAddress');
|
20 |
protected $firstnameFields = array('firstname', 'first_name', 'name', 'your-name', 'first name', 'first-name', 'first', 'UserFirstName');
|
21 |
protected $lastnameFields = array('lastname', 'last_name', 'last name', 'last-name', 'last', 'UserLastName');
|
|
|
22 |
|
23 |
public function upsertContact($model)
|
24 |
{
|
19 |
protected $emailFields = array('your-email', 'email', 'e-mail', 'emailaddress', 'email_address', 'email address', 'email-address', 'e-mail address', 'UserEmailAddress');
|
20 |
protected $firstnameFields = array('firstname', 'first_name', 'name', 'your-name', 'first name', 'first-name', 'first', 'UserFirstName');
|
21 |
protected $lastnameFields = array('lastname', 'last_name', 'last name', 'last-name', 'last', 'UserLastName');
|
22 |
+
protected $consentFields = array('acceptance', 'consent');
|
23 |
|
24 |
public function upsertContact($model)
|
25 |
{
|
src/Modules/Contacts/Handlers/ContactFormSevenPluginHandler.php
CHANGED
@@ -51,22 +51,31 @@ class ContactFormSevenPluginHandler extends BaseContactFormPluginHandler
|
|
51 |
if (!empty($firstName)) {
|
52 |
$contactModel->setFirstName($firstName);
|
53 |
}
|
|
|
54 |
$lastName = $this->findValue($contactForm, $this->lastnameFields);
|
55 |
if (!empty($lastName)) {
|
56 |
$contactModel->setLastName($lastName);
|
57 |
}
|
|
|
58 |
$phone = $this->findValue($contactForm, $this->phoneFields);
|
|
|
|
|
|
|
59 |
if (!empty($phone)) {
|
60 |
$contactModel->setPhone($phone);
|
61 |
}
|
|
|
62 |
$birthday = $this->findValue($contactForm, $this->birthdayFields);
|
63 |
if (!empty($birthday)) {
|
64 |
$contactModel->setBirthday($birthday);
|
65 |
}
|
66 |
|
67 |
-
$
|
68 |
-
$
|
69 |
-
|
|
|
|
|
|
|
70 |
$contactModel->setEventType(CE4WP_CF7_EVENTTYPE);
|
71 |
|
72 |
return $contactModel;
|
@@ -167,4 +176,17 @@ class ContactFormSevenPluginHandler extends BaseContactFormPluginHandler
|
|
167 |
{
|
168 |
parent::__construct();
|
169 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
170 |
}
|
51 |
if (!empty($firstName)) {
|
52 |
$contactModel->setFirstName($firstName);
|
53 |
}
|
54 |
+
|
55 |
$lastName = $this->findValue($contactForm, $this->lastnameFields);
|
56 |
if (!empty($lastName)) {
|
57 |
$contactModel->setLastName($lastName);
|
58 |
}
|
59 |
+
|
60 |
$phone = $this->findValue($contactForm, $this->phoneFields);
|
61 |
+
if (empty($phone)) {
|
62 |
+
$phone = $this->GetValueBySubstring($contactForm->get_posted_data(), $this->phoneFields);
|
63 |
+
}
|
64 |
if (!empty($phone)) {
|
65 |
$contactModel->setPhone($phone);
|
66 |
}
|
67 |
+
|
68 |
$birthday = $this->findValue($contactForm, $this->birthdayFields);
|
69 |
if (!empty($birthday)) {
|
70 |
$contactModel->setBirthday($birthday);
|
71 |
}
|
72 |
|
73 |
+
$consent = $this->GetValueBySubstring($contactForm->get_posted_data(), $this->consentFields);
|
74 |
+
if ($consent === "1") {
|
75 |
+
$contactModel->setOptIn(true);
|
76 |
+
$contactModel->setOptOut(false);
|
77 |
+
$contactModel->setOptActionBy(OptActionBy::Visitor);
|
78 |
+
}
|
79 |
$contactModel->setEventType(CE4WP_CF7_EVENTTYPE);
|
80 |
|
81 |
return $contactModel;
|
176 |
{
|
177 |
parent::__construct();
|
178 |
}
|
179 |
+
|
180 |
+
private function GetValueBySubstring($form_values, $possible_values)
|
181 |
+
{
|
182 |
+
foreach ($form_values as $form_key => $form_value) {
|
183 |
+
foreach ($possible_values as $possible_value) {
|
184 |
+
// If the name of the form_key contains the possible_value then we return its value
|
185 |
+
if (mb_strpos(strtolower($form_key), $possible_value) !== false)
|
186 |
+
{
|
187 |
+
return $form_value;
|
188 |
+
}
|
189 |
+
}
|
190 |
+
}
|
191 |
+
}
|
192 |
}
|
src/Modules/Contacts/Handlers/WooCommercePluginHandler.php
CHANGED
@@ -25,6 +25,8 @@ class WooCommercePluginHandler extends BaseContactFormPluginHandler
|
|
25 |
{
|
26 |
$contactModel = new ContactModel();
|
27 |
$products_detail = get_post_meta($orderId);
|
|
|
|
|
28 |
|
29 |
if (isset($products_detail)) {
|
30 |
if (!empty($products_detail["_billing_email"]) && isset($products_detail["_billing_email"][0]) && !empty($products_detail["_billing_email"][0])) {
|
@@ -57,6 +59,10 @@ class WooCommercePluginHandler extends BaseContactFormPluginHandler
|
|
57 |
$contactModel->setPhone($products_detail["_billing_phone"][0]);
|
58 |
}
|
59 |
|
|
|
|
|
|
|
|
|
60 |
$this->setConsentValues($contactModel, $products_detail);
|
61 |
}
|
62 |
return $contactModel;
|
25 |
{
|
26 |
$contactModel = new ContactModel();
|
27 |
$products_detail = get_post_meta($orderId);
|
28 |
+
$order = wc_get_order($orderId);
|
29 |
+
$number_of_orders = count(wc_get_orders(array('email' => $order->get_billing_email())));
|
30 |
|
31 |
if (isset($products_detail)) {
|
32 |
if (!empty($products_detail["_billing_email"]) && isset($products_detail["_billing_email"][0]) && !empty($products_detail["_billing_email"][0])) {
|
59 |
$contactModel->setPhone($products_detail["_billing_phone"][0]);
|
60 |
}
|
61 |
|
62 |
+
if (!empty($number_of_orders)) {
|
63 |
+
$contactModel->setNumberOfOrders($number_of_orders);
|
64 |
+
}
|
65 |
+
|
66 |
$this->setConsentValues($contactModel, $products_detail);
|
67 |
}
|
68 |
return $contactModel;
|
src/Modules/Contacts/Models/ContactModel.php
CHANGED
@@ -17,6 +17,7 @@ class ContactModel
|
|
17 |
public $optActionBy;
|
18 |
public $contactAddresses;
|
19 |
public $eventType;
|
|
|
20 |
private $birthday;
|
21 |
private $listId;
|
22 |
|
@@ -119,6 +120,16 @@ class ContactModel
|
|
119 |
return $this->optActionBy;
|
120 |
}
|
121 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
122 |
public function setContactAddress(ContactAddressModel $contactAddresses)
|
123 |
{
|
124 |
$this->contactAddresses = $contactAddresses;
|
@@ -178,7 +189,8 @@ class ContactModel
|
|
178 |
"opt_out" => $this->getOptOut(),
|
179 |
"opt_action_by" => $this->getOptActionBy(),
|
180 |
"event_type" => $this->getEventType(),
|
181 |
-
"list_id" => $this->getListId()
|
|
|
182 |
);
|
183 |
|
184 |
$address = $this->getContactAddress();
|
17 |
public $optActionBy;
|
18 |
public $contactAddresses;
|
19 |
public $eventType;
|
20 |
+
public $numberOfOrders;
|
21 |
private $birthday;
|
22 |
private $listId;
|
23 |
|
120 |
return $this->optActionBy;
|
121 |
}
|
122 |
|
123 |
+
public function setNumberOfOrders($numberOfOrders)
|
124 |
+
{
|
125 |
+
$this->numberOfOrders = $numberOfOrders;
|
126 |
+
}
|
127 |
+
|
128 |
+
public function getNumberOfOrders()
|
129 |
+
{
|
130 |
+
return $this->numberOfOrders;
|
131 |
+
}
|
132 |
+
|
133 |
public function setContactAddress(ContactAddressModel $contactAddresses)
|
134 |
{
|
135 |
$this->contactAddresses = $contactAddresses;
|
189 |
"opt_out" => $this->getOptOut(),
|
190 |
"opt_action_by" => $this->getOptActionBy(),
|
191 |
"event_type" => $this->getEventType(),
|
192 |
+
"list_id" => $this->getListId(),
|
193 |
+
"number_of_orders" => $this->getNumberOfOrders(),
|
194 |
);
|
195 |
|
196 |
$address = $this->getContactAddress();
|
vendor/autoload.php
CHANGED
@@ -4,4 +4,4 @@
|
|
4 |
|
5 |
require_once __DIR__ . '/composer/autoload_real.php';
|
6 |
|
7 |
-
return
|
4 |
|
5 |
require_once __DIR__ . '/composer/autoload_real.php';
|
6 |
|
7 |
+
return ComposerAutoloaderInit58eec2d19561196f84a677438bdfe34e::getLoader();
|
vendor/composer/autoload_real.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
-
class
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
@@ -22,15 +22,15 @@ class ComposerAutoloaderInit92fb9ea1afd3d369dba1b0da18c58aa9
|
|
22 |
return self::$loader;
|
23 |
}
|
24 |
|
25 |
-
spl_autoload_register(array('
|
26 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
27 |
-
spl_autoload_unregister(array('
|
28 |
|
29 |
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
30 |
if ($useStaticLoader) {
|
31 |
require_once __DIR__ . '/autoload_static.php';
|
32 |
|
33 |
-
call_user_func(\Composer\Autoload\
|
34 |
} else {
|
35 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
36 |
foreach ($map as $namespace => $path) {
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
+
class ComposerAutoloaderInit58eec2d19561196f84a677438bdfe34e
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
22 |
return self::$loader;
|
23 |
}
|
24 |
|
25 |
+
spl_autoload_register(array('ComposerAutoloaderInit58eec2d19561196f84a677438bdfe34e', 'loadClassLoader'), true, true);
|
26 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
27 |
+
spl_autoload_unregister(array('ComposerAutoloaderInit58eec2d19561196f84a677438bdfe34e', 'loadClassLoader'));
|
28 |
|
29 |
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
30 |
if ($useStaticLoader) {
|
31 |
require_once __DIR__ . '/autoload_static.php';
|
32 |
|
33 |
+
call_user_func(\Composer\Autoload\ComposerStaticInit58eec2d19561196f84a677438bdfe34e::getInitializer($loader));
|
34 |
} else {
|
35 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
36 |
foreach ($map as $namespace => $path) {
|
vendor/composer/autoload_static.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
|
5 |
namespace Composer\Autoload;
|
6 |
|
7 |
-
class
|
8 |
{
|
9 |
public static $prefixLengthsPsr4 = array (
|
10 |
'F' =>
|
@@ -167,10 +167,10 @@ class ComposerStaticInit92fb9ea1afd3d369dba1b0da18c58aa9
|
|
167 |
public static function getInitializer(ClassLoader $loader)
|
168 |
{
|
169 |
return \Closure::bind(function () use ($loader) {
|
170 |
-
$loader->prefixLengthsPsr4 =
|
171 |
-
$loader->prefixDirsPsr4 =
|
172 |
-
$loader->prefixesPsr0 =
|
173 |
-
$loader->classMap =
|
174 |
|
175 |
}, null, ClassLoader::class);
|
176 |
}
|
4 |
|
5 |
namespace Composer\Autoload;
|
6 |
|
7 |
+
class ComposerStaticInit58eec2d19561196f84a677438bdfe34e
|
8 |
{
|
9 |
public static $prefixLengthsPsr4 = array (
|
10 |
'F' =>
|
167 |
public static function getInitializer(ClassLoader $loader)
|
168 |
{
|
169 |
return \Closure::bind(function () use ($loader) {
|
170 |
+
$loader->prefixLengthsPsr4 = ComposerStaticInit58eec2d19561196f84a677438bdfe34e::$prefixLengthsPsr4;
|
171 |
+
$loader->prefixDirsPsr4 = ComposerStaticInit58eec2d19561196f84a677438bdfe34e::$prefixDirsPsr4;
|
172 |
+
$loader->prefixesPsr0 = ComposerStaticInit58eec2d19561196f84a677438bdfe34e::$prefixesPsr0;
|
173 |
+
$loader->classMap = ComposerStaticInit58eec2d19561196f84a677438bdfe34e::$classMap;
|
174 |
|
175 |
}, null, ClassLoader::class);
|
176 |
}
|