Mailigen_Synchronizer - Version 1.2.8

Version Notes

- Added State/Province field for customer synchronization

Download this release

Release Info

Developer Thomas Nelson
Extension Mailigen_Synchronizer
Version 1.2.8
Comparing to
See all releases


Code changes from version 1.2.7 to 1.2.8

app/code/community/Mailigen/Synchronizer/Helper/Customer.php CHANGED
@@ -34,6 +34,11 @@ class Mailigen_Synchronizer_Helper_Customer extends Mage_Core_Helper_Abstract
34
  */
35
  protected $_countries = null;
36
 
 
 
 
 
 
37
  /**
38
  * @var array
39
  */
@@ -155,7 +160,7 @@ class Mailigen_Synchronizer_Helper_Customer extends Mage_Core_Helper_Abstract
155
  */
156
  public function getCountries()
157
  {
158
- if (is_null($this->_countries)) {
159
  $countries = Mage::getResourceModel('directory/country_collection')->loadData()->toOptionArray(false);
160
  foreach ($countries as $country) {
161
  $this->_countries[$country['value']] = $country['label'];
@@ -163,6 +168,19 @@ class Mailigen_Synchronizer_Helper_Customer extends Mage_Core_Helper_Abstract
163
  }
164
  return $this->_countries;
165
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
166
 
167
  /**
168
  * @param $country
@@ -174,13 +192,23 @@ class Mailigen_Synchronizer_Helper_Customer extends Mage_Core_Helper_Abstract
174
  return isset($countries[$country]) ? $countries[$country] : '';
175
  }
176
 
 
 
 
 
 
 
 
 
 
 
177
  /**
178
  * @param $isSubscribed
179
  * @return string
180
  */
181
  public function getFormattedIsSubscribed($isSubscribed)
182
  {
183
- if (is_null($isSubscribed)) {
184
  return $this->customerIsSubscribed[0];
185
  } elseif (isset($this->customerIsSubscribed[$isSubscribed])) {
186
  return $this->customerIsSubscribed[$isSubscribed];
34
  */
35
  protected $_countries = null;
36
 
37
+ /**
38
+ * @var null
39
+ */
40
+ protected $_regions = null;
41
+
42
  /**
43
  * @var array
44
  */
160
  */
161
  public function getCountries()
162
  {
163
+ if ($this->_countries === null) {
164
  $countries = Mage::getResourceModel('directory/country_collection')->loadData()->toOptionArray(false);
165
  foreach ($countries as $country) {
166
  $this->_countries[$country['value']] = $country['label'];
168
  }
169
  return $this->_countries;
170
  }
171
+ /**
172
+ * @return array
173
+ */
174
+ public function getRegions()
175
+ {
176
+ if ($this->_regions === null) {
177
+ $regionCollection = Mage::getModel('directory/region')->getCollection()->getData();
178
+ foreach ($regionCollection as $region) {
179
+ $this->_regions[$region['region_id']] = $region['name'];
180
+ }
181
+ }
182
+ return $this->_regions;
183
+ }
184
 
185
  /**
186
  * @param $country
192
  return isset($countries[$country]) ? $countries[$country] : '';
193
  }
194
 
195
+ /**
196
+ * @param $regionId
197
+ * @return string
198
+ */
199
+ public function getFormattedRegion($regionId)
200
+ {
201
+ $regions = $this->getRegions();
202
+ return isset($regions[$regionId]) ? $regions[$regionId] : '';
203
+ }
204
+
205
  /**
206
  * @param $isSubscribed
207
  * @return string
208
  */
209
  public function getFormattedIsSubscribed($isSubscribed)
210
  {
211
+ if ($isSubscribed === null) {
212
  return $this->customerIsSubscribed[0];
213
  } elseif (isset($this->customerIsSubscribed[$isSubscribed])) {
214
  return $this->customerIsSubscribed[$isSubscribed];
app/code/community/Mailigen/Synchronizer/Model/Customer.php CHANGED
@@ -135,6 +135,7 @@ class Mailigen_Synchronizer_Model_Customer extends Mage_Core_Model_Abstract
135
  */
136
  $customers->joinAttribute('billing_telephone', 'customer_address/telephone', 'default_billing', null, 'left')
137
  ->joinAttribute('billing_city', 'customer_address/city', 'default_billing', null, 'left')
 
138
  ->joinAttribute('billing_country_id', 'customer_address/country_id', 'default_billing', null, 'left');
139
 
140
  /**
135
  */
136
  $customers->joinAttribute('billing_telephone', 'customer_address/telephone', 'default_billing', null, 'left')
137
  ->joinAttribute('billing_city', 'customer_address/city', 'default_billing', null, 'left')
138
+ ->joinAttribute('billing_region_id', 'customer_address/region_id', 'default_billing', null, 'left')
139
  ->joinAttribute('billing_country_id', 'customer_address/country_id', 'default_billing', null, 'left');
140
 
141
  /**
app/code/community/Mailigen/Synchronizer/Model/Customer/Merge/Field.php CHANGED
@@ -85,6 +85,11 @@ class Mailigen_Synchronizer_Model_Customer_Merge_Field extends Mage_Core_Model_A
85
  'field_type' => 'text',
86
  'req' => false
87
  ),
 
 
 
 
 
88
  'DATEOFBIRTH' => array(
89
  'title' => 'Date of birth',
90
  'field_type' => 'date',
85
  'field_type' => 'text',
86
  'req' => false
87
  ),
88
+ 'REGION' => array(
89
+ 'title' => 'State/Province',
90
+ 'field_type' => 'text',
91
+ 'req' => false
92
+ ),
93
  'DATEOFBIRTH' => array(
94
  'title' => 'Date of birth',
95
  'field_type' => 'date',
app/code/community/Mailigen/Synchronizer/Model/Mailigen.php CHANGED
@@ -396,6 +396,7 @@ class Mailigen_Synchronizer_Model_Mailigen extends Mage_Core_Model_Abstract
396
  'REGISTRATIONDATE' => $helper->getFormattedDate($customer->getCreatedAtTimestamp()),
397
  'COUNTRY' => $helper->getFormattedCountry($customer->getBillingCountryId()),
398
  'CITY' => $customer->getBillingCity(),
 
399
  'DATEOFBIRTH' => $helper->getFormattedDate($customer->getDob()),
400
  'GENDER' => $helper->getFormattedGender($customer->getGender()),
401
  'LASTLOGIN' => $helper->getFormattedDate($customer->getLastLoginAt()),
396
  'REGISTRATIONDATE' => $helper->getFormattedDate($customer->getCreatedAtTimestamp()),
397
  'COUNTRY' => $helper->getFormattedCountry($customer->getBillingCountryId()),
398
  'CITY' => $customer->getBillingCity(),
399
+ 'REGION' => $helper->getFormattedRegion($customer->getBillingRegionId()),
400
  'DATEOFBIRTH' => $helper->getFormattedDate($customer->getDob()),
401
  'GENDER' => $helper->getFormattedGender($customer->getGender()),
402
  'LASTLOGIN' => $helper->getFormattedDate($customer->getLastLoginAt()),
app/code/community/Mailigen/Synchronizer/etc/config.xml CHANGED
@@ -2,7 +2,7 @@
2
  <config>
3
  <modules>
4
  <Mailigen_Synchronizer>
5
- <version>1.2.7</version>
6
  </Mailigen_Synchronizer>
7
  </modules>
8
  <global>
2
  <config>
3
  <modules>
4
  <Mailigen_Synchronizer>
5
+ <version>1.2.8</version>
6
  </Mailigen_Synchronizer>
7
  </modules>
8
  <global>
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Mailigen_Synchronizer</name>
4
- <version>1.2.7</version>
5
  <stability>stable</stability>
6
  <license>GNU General Public License (GPL)</license>
7
  <channel>community</channel>
@@ -19,11 +19,11 @@
19
  For more detailed information, instructions and usage of this extension, please visit Mailigen Integrations page or contact our support team.&#xD;
20
  &#xD;
21
  Mailigen provides email and integrated marketing services covering full email automation. See a full integration list in Mailigen Integrations page.</description>
22
- <notes>- Fixed migration script, if columns in DB table already exist</notes>
23
  <authors><author><name>Thomas Nelson</name><user>mailigen</user><email>info@mailigen.com</email></author></authors>
24
- <date>2016-03-10</date>
25
- <time>08:29:22</time>
26
- <contents><target name="magecommunity"><dir name="Mailigen"><dir name="Synchronizer"><dir name="Block"><dir name="Adminhtml"><dir name="Newsletter"><file name="Secretkey.php" hash="d7bd712b8851c592f5f2261046e051db"/><file name="Webhooks.php" hash="d6abad73f516741131b4be64dc487cb7"/></dir><dir name="Sync"><file name="Information.php" hash="8a56f97404bad86c899294bffe6832af"/></dir></dir><dir name="Newsletter"><dir name="Subscriber"><file name="Grid.php" hash="1a975840b9f1704644cb8228468ad743"/></dir></dir></dir><dir name="Helper"><file name="Customer.php" hash="bab800ba2dfd87241f23710115eea670"/><file name="Data.php" hash="69c905b568ea180ae89900f9dba84eb8"/><file name="Log.php" hash="7cff7048604c0f75be38cbd42e9dc8e3"/></dir><dir name="Model"><dir name="Customer"><dir name="Merge"><file name="Field.php" hash="68314df0847063e4053ffb505087b7ea"/></dir></dir><file name="Customer.php" hash="ec42dca799c44eea31006186cb66bb17"/><file name="List.php" hash="87d1a6520a69eb73d1d14b056511e7c1"/><file name="Mailigen.php" hash="4ecf27af57d9ef83c2233c9e7118a8b1"/><dir name="Newsletter"><dir name="Merge"><file name="Field.php" hash="55e42de3620d9e171f7933038c56800c"/></dir><file name="Subscriber.php" hash="0be821ef351f8c9ed9811c1b0054b3a2"/></dir><file name="Newsletter.php" hash="864672a8ce7686376a35eab5979f3c0b"/><file name="Observer.php" hash="c6f0c0f779a3e8ce21d24a232e0776b4"/><dir name="Resource"><dir name="Customer"><file name="Collection.php" hash="6007eee7490f2a70f13142ea7b1c58ad"/></dir><file name="Customer.php" hash="bb95830ef5e95b4a361a858d081ff4f8"/><dir name="Iterator"><file name="Batched.php" hash="0ee09a467db4ea633b2742d278217fa6"/></dir><dir name="Subscriber"><file name="Collection.php" hash="89339714c27c422957097e2f6f88023a"/></dir></dir><file name="Schedule.php" hash="6486dc9375bae5555c0e0a9c7a156be5"/><dir name="System"><dir name="Config"><dir name="Backend"><dir name="Customer"><file name="List.php" hash="5370ca37cb8d4f0a268e3ef2e9f4c673"/></dir><dir name="Newsletter"><file name="List.php" hash="eed1702b0b39ca66069a6514537892c9"/></dir></dir></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="MailigenController.php" hash="64f131ec5cfa94268681c17806e3c6ca"/></dir><file name="WebhookController.php" hash="214283e3f1db6e93cead345f3394b264"/></dir><dir name="data"><dir name="mailigen_synchronizer_setup"><file name="data-install-1.1.0.php" hash="30f1fdb649862fcbbd943aeb7ce65c7f"/></dir></dir><dir name="etc"><file name="config.xml" hash="332606bffda0fcde34512008cccf7961"/><file name="system.xml" hash="78f7385b1230243fda3d41eadca1db9a"/></dir><dir name="sql"><dir name="mailigen_synchronizer_setup"><file name="install-1.1.0.php" hash="57ee87c647fca4c728f9ee988be84231"/><file name="mysql4-upgrade-1.1.4-1.2.0.php" hash="3a0b0fe8b19066f2f3788fa8a37af493"/><file name="mysql4-upgrade-1.2.1-1.2.2.php" hash="51293851b4ad49102baee6be2e3f4ed4"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Mailigen_Synchronizer.xml" hash="4c1560ac5f7042f57bfcf13a0e49bc00"/></dir></target><target name="magelib"><dir name="mailigen"><file name="MGAPI.class.php" hash="53a59df05f337b920ef5ba4d52ecdfde"/></dir></target><target name="mageskin"><dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="mailigen_synchronizer"><file name="Mailigen_webhooks_setup_instruction.jpg" hash="27dcb35d607a919b2f3e95e2fdb96757"/></dir></dir></dir></dir></dir></target></contents>
27
  <compatible/>
28
  <dependencies><required><php><min>5.4.0</min><max>6.0.0</max></php></required></dependencies>
29
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Mailigen_Synchronizer</name>
4
+ <version>1.2.8</version>
5
  <stability>stable</stability>
6
  <license>GNU General Public License (GPL)</license>
7
  <channel>community</channel>
19
  For more detailed information, instructions and usage of this extension, please visit Mailigen Integrations page or contact our support team.&#xD;
20
  &#xD;
21
  Mailigen provides email and integrated marketing services covering full email automation. See a full integration list in Mailigen Integrations page.</description>
22
+ <notes>- Added State/Province field for customer synchronization</notes>
23
  <authors><author><name>Thomas Nelson</name><user>mailigen</user><email>info@mailigen.com</email></author></authors>
24
+ <date>2016-06-16</date>
25
+ <time>14:31:42</time>
26
+ <contents><target name="magecommunity"><dir name="Mailigen"><dir name="Synchronizer"><dir name="Block"><dir name="Adminhtml"><dir name="Newsletter"><file name="Secretkey.php" hash="d7bd712b8851c592f5f2261046e051db"/><file name="Webhooks.php" hash="d6abad73f516741131b4be64dc487cb7"/></dir><dir name="Sync"><file name="Information.php" hash="8a56f97404bad86c899294bffe6832af"/></dir></dir><dir name="Newsletter"><dir name="Subscriber"><file name="Grid.php" hash="1a975840b9f1704644cb8228468ad743"/></dir></dir></dir><dir name="Helper"><file name="Customer.php" hash="c95a56264606edaf9f5ed8d94c99e390"/><file name="Data.php" hash="69c905b568ea180ae89900f9dba84eb8"/><file name="Log.php" hash="7cff7048604c0f75be38cbd42e9dc8e3"/></dir><dir name="Model"><dir name="Customer"><dir name="Merge"><file name="Field.php" hash="0830c74ec17abbd77810f66fcb659950"/></dir></dir><file name="Customer.php" hash="8ea0b357eae527b557a3a4ef4a5a1269"/><file name="List.php" hash="87d1a6520a69eb73d1d14b056511e7c1"/><file name="Mailigen.php" hash="ee0963540349369cc27bdc478d577c8c"/><dir name="Newsletter"><dir name="Merge"><file name="Field.php" hash="55e42de3620d9e171f7933038c56800c"/></dir><file name="Subscriber.php" hash="0be821ef351f8c9ed9811c1b0054b3a2"/></dir><file name="Newsletter.php" hash="864672a8ce7686376a35eab5979f3c0b"/><file name="Observer.php" hash="c6f0c0f779a3e8ce21d24a232e0776b4"/><dir name="Resource"><dir name="Customer"><file name="Collection.php" hash="6007eee7490f2a70f13142ea7b1c58ad"/></dir><file name="Customer.php" hash="bb95830ef5e95b4a361a858d081ff4f8"/><dir name="Iterator"><file name="Batched.php" hash="0ee09a467db4ea633b2742d278217fa6"/></dir><dir name="Subscriber"><file name="Collection.php" hash="89339714c27c422957097e2f6f88023a"/></dir></dir><file name="Schedule.php" hash="6486dc9375bae5555c0e0a9c7a156be5"/><dir name="System"><dir name="Config"><dir name="Backend"><dir name="Customer"><file name="List.php" hash="5370ca37cb8d4f0a268e3ef2e9f4c673"/></dir><dir name="Newsletter"><file name="List.php" hash="eed1702b0b39ca66069a6514537892c9"/></dir></dir></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="MailigenController.php" hash="64f131ec5cfa94268681c17806e3c6ca"/></dir><file name="WebhookController.php" hash="214283e3f1db6e93cead345f3394b264"/></dir><dir name="data"><dir name="mailigen_synchronizer_setup"><file name="data-install-1.1.0.php" hash="30f1fdb649862fcbbd943aeb7ce65c7f"/></dir></dir><dir name="etc"><file name="config.xml" hash="f3f19be9dafd90b9c043fa379b49c67e"/><file name="system.xml" hash="78f7385b1230243fda3d41eadca1db9a"/></dir><dir name="sql"><dir name="mailigen_synchronizer_setup"><file name="install-1.1.0.php" hash="57ee87c647fca4c728f9ee988be84231"/><file name="mysql4-upgrade-1.1.4-1.2.0.php" hash="3a0b0fe8b19066f2f3788fa8a37af493"/><file name="mysql4-upgrade-1.2.1-1.2.2.php" hash="51293851b4ad49102baee6be2e3f4ed4"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Mailigen_Synchronizer.xml" hash="4c1560ac5f7042f57bfcf13a0e49bc00"/></dir></target><target name="magelib"><dir name="mailigen"><file name="MGAPI.class.php" hash="53a59df05f337b920ef5ba4d52ecdfde"/></dir></target><target name="mageskin"><dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="mailigen_synchronizer"><file name="Mailigen_webhooks_setup_instruction.jpg" hash="27dcb35d607a919b2f3e95e2fdb96757"/></dir></dir></dir></dir></dir></target></contents>
27
  <compatible/>
28
  <dependencies><required><php><min>5.4.0</min><max>6.0.0</max></php></required></dependencies>
29
  </package>