Version Notes
- Removed redundant newsletter menu item
- Added reset for synchronised entries when API key is changed
Download this release
Release Info
| Developer | Merten van Gerven |
| Extension | Mage_Laposta_Connect |
| Version | 1.0.1 |
| Comparing to | |
| See all releases | |
Code changes from version 1.0.0 to 1.0.1
app/code/community/Laposta/Connect/Model/Observer.php
CHANGED
|
@@ -8,6 +8,8 @@
|
|
| 8 |
*/
|
| 9 |
class Laposta_Connect_Model_Observer
|
| 10 |
{
|
|
|
|
|
|
|
| 11 |
/**
|
| 12 |
* Handle subscribe event
|
| 13 |
*
|
|
@@ -76,6 +78,19 @@ class Laposta_Connect_Model_Observer
|
|
| 76 |
$subscriber->save();
|
| 77 |
}
|
| 78 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 79 |
/**
|
| 80 |
* Handle subscribe event
|
| 81 |
*
|
|
@@ -85,6 +100,15 @@ class Laposta_Connect_Model_Observer
|
|
| 85 |
*/
|
| 86 |
public function handleSaveConfig(Varien_Event_Observer $observer)
|
| 87 |
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 88 |
$list = $this->handleSaveListConfig();
|
| 89 |
|
| 90 |
if (!$list instanceof Laposta_Connect_Model_List) {
|
|
@@ -228,4 +252,62 @@ class Laposta_Connect_Model_Observer
|
|
| 228 |
|
| 229 |
return $result;
|
| 230 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 231 |
}
|
| 8 |
*/
|
| 9 |
class Laposta_Connect_Model_Observer
|
| 10 |
{
|
| 11 |
+
private $currentApiKey = '';
|
| 12 |
+
|
| 13 |
/**
|
| 14 |
* Handle subscribe event
|
| 15 |
*
|
| 78 |
$subscriber->save();
|
| 79 |
}
|
| 80 |
|
| 81 |
+
/**
|
| 82 |
+
* Handle config initialization event.
|
| 83 |
+
*
|
| 84 |
+
* @param Varien_Event_Observer $observer
|
| 85 |
+
*/
|
| 86 |
+
public function handleInitConfig(Varien_Event_Observer $observer)
|
| 87 |
+
{
|
| 88 |
+
/*
|
| 89 |
+
* Record the current api key to detect changes
|
| 90 |
+
*/
|
| 91 |
+
$this->currentApiKey = Mage::helper('lapostaconnect')->config('api_key');
|
| 92 |
+
}
|
| 93 |
+
|
| 94 |
/**
|
| 95 |
* Handle subscribe event
|
| 96 |
*
|
| 100 |
*/
|
| 101 |
public function handleSaveConfig(Varien_Event_Observer $observer)
|
| 102 |
{
|
| 103 |
+
if (Mage::helper('lapostaconnect')->config('api_key') !== $this->currentApiKey) {
|
| 104 |
+
Mage::helper('lapostaconnect')->log('Laposta API key changed. Resetting all records.');
|
| 105 |
+
|
| 106 |
+
/*
|
| 107 |
+
* clear the laposta token and sync times
|
| 108 |
+
*/
|
| 109 |
+
$this->resetSynchronised();
|
| 110 |
+
}
|
| 111 |
+
|
| 112 |
$list = $this->handleSaveListConfig();
|
| 113 |
|
| 114 |
if (!$list instanceof Laposta_Connect_Model_List) {
|
| 252 |
|
| 253 |
return $result;
|
| 254 |
}
|
| 255 |
+
|
| 256 |
+
/**
|
| 257 |
+
* Reset tokens and sync times of all lists, fields, and subscribers.
|
| 258 |
+
*/
|
| 259 |
+
protected function resetSynchronised()
|
| 260 |
+
{
|
| 261 |
+
/*
|
| 262 |
+
* Lists
|
| 263 |
+
*/
|
| 264 |
+
|
| 265 |
+
/** @var $lists Laposta_Connect_Model_Mysql4_List_Collection */
|
| 266 |
+
$lists = Mage::getModel('lapostaconnect/list')->getCollection();
|
| 267 |
+
|
| 268 |
+
/** @var $list Laposta_Connect_Model_List */
|
| 269 |
+
foreach ($lists as $list) {
|
| 270 |
+
$list->setLapostaId('');
|
| 271 |
+
$list->setWebhookToken('');
|
| 272 |
+
$list->setSyncTime(null);
|
| 273 |
+
}
|
| 274 |
+
|
| 275 |
+
$lists->save();
|
| 276 |
+
|
| 277 |
+
Mage::helper('lapostaconnect')->log('Lists reset OK.');
|
| 278 |
+
|
| 279 |
+
/*
|
| 280 |
+
* Fields
|
| 281 |
+
*/
|
| 282 |
+
|
| 283 |
+
$fields = Mage::getModel('lapostaconnect/field')->getCollection();
|
| 284 |
+
|
| 285 |
+
/** @var $field Laposta_Connect_Model_Field */
|
| 286 |
+
foreach ($fields as $field) {
|
| 287 |
+
$field->setLapostaId('');
|
| 288 |
+
$field->setLapostaTag('');
|
| 289 |
+
$field->setSyncTime(null);
|
| 290 |
+
}
|
| 291 |
+
|
| 292 |
+
$fields->save();
|
| 293 |
+
|
| 294 |
+
Mage::helper('lapostaconnect')->log('Fields reset OK.');
|
| 295 |
+
|
| 296 |
+
/*
|
| 297 |
+
* Subscribers
|
| 298 |
+
*/
|
| 299 |
+
|
| 300 |
+
/** @var $subscribers Laposta_Connect_Model_Mysql4_Subscriber_Collection */
|
| 301 |
+
$subscribers = Mage::getModel('lapostaconnect/subscriber')->getCollection();
|
| 302 |
+
|
| 303 |
+
/** @var $subscriber Laposta_Connect_Model_Subscriber */
|
| 304 |
+
foreach ($subscribers as $subscriber) {
|
| 305 |
+
$subscriber->setLapostaId('');
|
| 306 |
+
$subscriber->setSyncTime(null);
|
| 307 |
+
}
|
| 308 |
+
|
| 309 |
+
$subscribers->save();
|
| 310 |
+
|
| 311 |
+
Mage::helper('lapostaconnect')->log('Subscribers reset OK.');
|
| 312 |
+
}
|
| 313 |
}
|
app/code/community/Laposta/Connect/etc/adminhtml.xml
CHANGED
|
@@ -1,15 +1,5 @@
|
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<config>
|
| 3 |
-
<menu>
|
| 4 |
-
<newsletter>
|
| 5 |
-
<children>
|
| 6 |
-
<lapostaconnect translate="title" module="connect">
|
| 7 |
-
<title>Laposta</title>
|
| 8 |
-
<action>lapostaconnect/adminhtml_laposta</action>
|
| 9 |
-
</lapostaconnect>
|
| 10 |
-
</children>
|
| 11 |
-
</newsletter>
|
| 12 |
-
</menu>
|
| 13 |
<acl>
|
| 14 |
<resources>
|
| 15 |
<all>
|
|
@@ -17,13 +7,6 @@
|
|
| 17 |
</all>
|
| 18 |
<admin>
|
| 19 |
<children>
|
| 20 |
-
<newsletter>
|
| 21 |
-
<children>
|
| 22 |
-
<lapostaconnect translate="title">
|
| 23 |
-
<title>Laposta</title>
|
| 24 |
-
</lapostaconnect>
|
| 25 |
-
</children>
|
| 26 |
-
</newsletter>
|
| 27 |
<system>
|
| 28 |
<children>
|
| 29 |
<config>
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<config>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3 |
<acl>
|
| 4 |
<resources>
|
| 5 |
<all>
|
| 7 |
</all>
|
| 8 |
<admin>
|
| 9 |
<children>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
<system>
|
| 11 |
<children>
|
| 12 |
<config>
|
app/code/community/Laposta/Connect/etc/config.xml
CHANGED
|
@@ -110,6 +110,14 @@
|
|
| 110 |
</admin>
|
| 111 |
<adminhtml>
|
| 112 |
<events>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 113 |
<admin_system_config_changed_section_lapostaconnect>
|
| 114 |
<observers>
|
| 115 |
<laposta_save_config>
|
| 110 |
</admin>
|
| 111 |
<adminhtml>
|
| 112 |
<events>
|
| 113 |
+
<adminhtml_init_system_config>
|
| 114 |
+
<observers>
|
| 115 |
+
<laposta_save_config>
|
| 116 |
+
<class>lapostaconnect/observer</class>
|
| 117 |
+
<method>handleInitConfig</method>
|
| 118 |
+
</laposta_save_config>
|
| 119 |
+
</observers>
|
| 120 |
+
</adminhtml_init_system_config>
|
| 121 |
<admin_system_config_changed_section_lapostaconnect>
|
| 122 |
<observers>
|
| 123 |
<laposta_save_config>
|
package.xml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Mage_Laposta_Connect</name>
|
| 4 |
-
<version>1.0.
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license uri="http://www.opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
|
| 7 |
<channel>community</channel>
|
|
@@ -24,11 +24,12 @@
|
|
| 24 |

|
| 25 |
<h2>Questions</h2>
|
| 26 |
<p>Please see the FAQ section for questions.</p></description>
|
| 27 |
-
<notes
|
|
|
|
| 28 |
<authors><author><name>Merten van Gerven</name><user>mertenvg</user><email>merten@codeblanche.com</email></author></authors>
|
| 29 |
-
<date>2014-
|
| 30 |
-
<time>
|
| 31 |
-
<contents><target name="magecommunity"><dir name="Laposta"><dir name="Connect"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Form"><dir name="Field"><file name="Mapfields.php" hash="2c88b8a08121c09ba5748f631205a282"/></dir></dir></dir></dir></dir></dir><dir name="Helper"><file name="Customer.php" hash="8a54f573c56f8ce9e248506bb9514561"/><file name="Data.php" hash="8f9e28d0f28f9375385432d227ec1d06"/><file name="Fields.php" hash="51bc0aa26167219b038c04b3babb19af"/><file name="Laposta.php" hash="9085c0c80dcd314d402bfc960b8f861e"/><file name="Subscribe.php" hash="f58bc248ee3b4d229b58de8b4efbccf3"/><file name="Sync.php" hash="ad94bd49cf666fb99fa043bef1ba8bcf"/></dir><dir name="Model"><file name="Cron.php" hash="7a6a22b317282c049f5fa10a59622d58"/><file name="Field.php" hash="42e1857bdb7d90b31be189e2921ac8fd"/><file name="List.php" hash="99f590a5e5ea3b1a14869c641f49eaed"/><dir name="Mysql4"><dir name="Field"><file name="Collection.php" hash="f8133202231937b1ec14d8cdc39903fe"/></dir><file name="Field.php" hash="c49743d6acd1d4ce2b69aadf22838839"/><dir name="List"><file name="Collection.php" hash="fcc556452fff91bb3e9f933c68fff630"/></dir><file name="List.php" hash="6fef1b36f5d3a5560f83bafe205be614"/><dir name="Subscriber"><file name="Collection.php" hash="05db928eb656f132e4fa16ac740ce3c5"/></dir><file name="Subscriber.php" hash="9f73d39e97d4a19f8d8ad3c19f83a699"/></dir><file name="Observer.php" hash="
|
| 32 |
<compatible/>
|
| 33 |
<dependencies><required><php><min>5.3.0</min><max>6.0.0</max></php></required></dependencies>
|
| 34 |
</package>
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Mage_Laposta_Connect</name>
|
| 4 |
+
<version>1.0.1</version>
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license uri="http://www.opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
|
| 7 |
<channel>community</channel>
|
| 24 |

|
| 25 |
<h2>Questions</h2>
|
| 26 |
<p>Please see the FAQ section for questions.</p></description>
|
| 27 |
+
<notes>- Removed redundant newsletter menu item
|
| 28 |
+
- Added reset for synchronised entries when API key is changed</notes>
|
| 29 |
<authors><author><name>Merten van Gerven</name><user>mertenvg</user><email>merten@codeblanche.com</email></author></authors>
|
| 30 |
+
<date>2014-04-25</date>
|
| 31 |
+
<time>17:51:55</time>
|
| 32 |
+
<contents><target name="magecommunity"><dir name="Laposta"><dir name="Connect"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Form"><dir name="Field"><file name="Mapfields.php" hash="2c88b8a08121c09ba5748f631205a282"/></dir></dir></dir></dir></dir></dir><dir name="Helper"><file name="Customer.php" hash="8a54f573c56f8ce9e248506bb9514561"/><file name="Data.php" hash="8f9e28d0f28f9375385432d227ec1d06"/><file name="Fields.php" hash="51bc0aa26167219b038c04b3babb19af"/><file name="Laposta.php" hash="9085c0c80dcd314d402bfc960b8f861e"/><file name="Subscribe.php" hash="f58bc248ee3b4d229b58de8b4efbccf3"/><file name="Sync.php" hash="ad94bd49cf666fb99fa043bef1ba8bcf"/></dir><dir name="Model"><file name="Cron.php" hash="7a6a22b317282c049f5fa10a59622d58"/><file name="Field.php" hash="42e1857bdb7d90b31be189e2921ac8fd"/><file name="List.php" hash="99f590a5e5ea3b1a14869c641f49eaed"/><dir name="Mysql4"><dir name="Field"><file name="Collection.php" hash="f8133202231937b1ec14d8cdc39903fe"/></dir><file name="Field.php" hash="c49743d6acd1d4ce2b69aadf22838839"/><dir name="List"><file name="Collection.php" hash="fcc556452fff91bb3e9f933c68fff630"/></dir><file name="List.php" hash="6fef1b36f5d3a5560f83bafe205be614"/><dir name="Subscriber"><file name="Collection.php" hash="05db928eb656f132e4fa16ac740ce3c5"/></dir><file name="Subscriber.php" hash="9f73d39e97d4a19f8d8ad3c19f83a699"/></dir><file name="Observer.php" hash="1f22b2201a11543b725bc76f133b803d"/><file name="Subscriber.php" hash="cba5176e53a7dcab9b9014190f13485d"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="LapostaController.php" hash="cc2a0d62caf63469258042e3b29616e4"/></dir><file name="IndexController.php" hash="7577e30abee9624d59901edb5cecd3e9"/><file name="SubscribeAllController.php" hash="160ac8e5229bb1003d7220116a9b06f7"/><file name="WebhookController.php" hash="dbdb6706b908bffd29e5d69f97c6809f"/></dir><dir name="etc"><file name="adminhtml.xml" hash="71f985837d4b79e3db94c529bfee1e47"/><file name="config.xml" hash="325b71820df2ffd4b265810cb7c680f6"/><file name="system.xml" hash="6ee7d5de56541573f16a2caf94dc0418"/></dir><dir name="sql"><dir name="connect_setup"><file name="mysql4-install-0.1.0.php" hash="96c1911d06392a5e9496829411102479"/></dir></dir></dir></dir></target><target name="magelocal"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="lapostaconnect.xml" hash=""/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Laposta_Connect.xml" hash="ab7675e19ea96d39c5980bee835f0e76"/></dir></target><target name="magelocale"><dir name="en_US"><file name="Laposta_Connect.csv" hash="4f8f28790602cdd01633c0bb00f70585"/></dir></target></contents>
|
| 33 |
<compatible/>
|
| 34 |
<dependencies><required><php><min>5.3.0</min><max>6.0.0</max></php></required></dependencies>
|
| 35 |
</package>
|
