From c17a9a3eb18852664d1585ee80eaaed6cce1bbb0 Mon Sep 17 00:00:00 2001 From: pini-girit Date: Wed, 19 Dec 2018 11:46:13 +0200 Subject: [PATCH 1/3] CLOUDINARY-9: reset autoUpload state on save... + another fix for CLOUDINARY-7 & CLOUDINARY-40 --- .../Cloudinary/Cloudinary/Model/Observer/Config.php | 2 ++ lib/CloudinaryExtension/CloudinaryImageProvider.php | 8 ++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/app/code/community/Cloudinary/Cloudinary/Model/Observer/Config.php b/app/code/community/Cloudinary/Cloudinary/Model/Observer/Config.php index b507b76..0d28cde 100644 --- a/app/code/community/Cloudinary/Cloudinary/Model/Observer/Config.php +++ b/app/code/community/Cloudinary/Cloudinary/Model/Observer/Config.php @@ -3,6 +3,7 @@ use CloudinaryExtension\CredentialValidator; use CloudinaryExtension\Security\CloudinaryEnvironmentVariable; use CloudinaryExtension\AutoUploadMapping\RequestProcessor; +use CloudinaryExtension\AutoUploadMapping\Configuration; use CloudinaryExtension\AutoUploadMapping\ApiClient; class Cloudinary_Cloudinary_Model_Observer_Config extends Mage_Core_Model_Abstract @@ -38,6 +39,7 @@ public function configSave(Varien_Event_Observer $observer) public function cloudinaryConfigChanged(Varien_Event_Observer $observer) { //Clear config cache before mapping + Mage::getModel('cloudinary_cloudinary/autoUploadMapping_configuration')->setState(Configuration::INACTIVE); Mage::app()->getCacheInstance()->cleanType("config"); Mage::dispatchEvent('adminhtml_cache_refresh_type', array('type' => "config")); diff --git a/lib/CloudinaryExtension/CloudinaryImageProvider.php b/lib/CloudinaryExtension/CloudinaryImageProvider.php index b4dcff3..a9372dd 100644 --- a/lib/CloudinaryExtension/CloudinaryImageProvider.php +++ b/lib/CloudinaryExtension/CloudinaryImageProvider.php @@ -75,10 +75,10 @@ public function retrieveTransformed(Image $image, Transformation $transformation ]); if ($this->configuration->getUseRootPath()) { - if (strpos($imagePath, ".com/{$this->configuration->getCloud()}/image/upload/") !== false) { - $imagePath = str_replace(".com/{$this->configuration->getCloud()}/image/upload/", ".com/{$this->configuration->getCloud()}/", $imagePath); - } elseif (strpos($imagePath, ".com/image/upload/") !== false) { - $imagePath = str_replace(".com/image/upload/", ".com/", $imagePath); + if (strpos($imagePath, "cloudinary.com/{$this->configuration->getCloud()}/image/upload/") !== false) { + $imagePath = str_replace("cloudinary.com/{$this->configuration->getCloud()}/image/upload/", "cloudinary.com/{$this->configuration->getCloud()}/", $imagePath); + } elseif (strpos($imagePath, "cloudinary.com/image/upload/") !== false) { + $imagePath = str_replace("cloudinary.com/image/upload/", "cloudinary.com/", $imagePath); } } if ($this->configuration->getRemoveVersionNumber()) { From f3470eb3edad96248e5588fedc4bbd2e46ebfdb8 Mon Sep 17 00:00:00 2001 From: pini-girit Date: Wed, 19 Dec 2018 15:34:11 +0200 Subject: [PATCH 2/3] CLOUDINARY-9: reset autoUpload state on save... + another fix for CLOUDINARY-7 --- .../Cloudinary/Cloudinary/Model/Observer/Config.php | 3 +-- .../AutoUploadMapping/RequestProcessor.php | 5 +++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/app/code/community/Cloudinary/Cloudinary/Model/Observer/Config.php b/app/code/community/Cloudinary/Cloudinary/Model/Observer/Config.php index 0d28cde..378d64b 100644 --- a/app/code/community/Cloudinary/Cloudinary/Model/Observer/Config.php +++ b/app/code/community/Cloudinary/Cloudinary/Model/Observer/Config.php @@ -39,7 +39,6 @@ public function configSave(Varien_Event_Observer $observer) public function cloudinaryConfigChanged(Varien_Event_Observer $observer) { //Clear config cache before mapping - Mage::getModel('cloudinary_cloudinary/autoUploadMapping_configuration')->setState(Configuration::INACTIVE); Mage::app()->getCacheInstance()->cleanType("config"); Mage::dispatchEvent('adminhtml_cache_refresh_type', array('type' => "config")); @@ -47,7 +46,7 @@ public function cloudinaryConfigChanged(Varien_Event_Observer $observer) return; } - if (!$this->autoUploadRequestProcessor()->handle('media', Mage::getBaseUrl('media'))) { + if (!$this->autoUploadRequestProcessor()->handle('media', Mage::getBaseUrl('media'), true)) { Mage::getSingleton('adminhtml/session')->addError(self::AUTO_UPLOAD_SETUP_FAIL_MESSAGE); Mage::getModel('cloudinary_cloudinary/logger')->error(self::AUTO_UPLOAD_SETUP_FAIL_MESSAGE); } else { diff --git a/lib/CloudinaryExtension/AutoUploadMapping/RequestProcessor.php b/lib/CloudinaryExtension/AutoUploadMapping/RequestProcessor.php index b837d7f..c58a581 100644 --- a/lib/CloudinaryExtension/AutoUploadMapping/RequestProcessor.php +++ b/lib/CloudinaryExtension/AutoUploadMapping/RequestProcessor.php @@ -31,11 +31,12 @@ public function __construct( /** * @param string $folder * @param string $url + * @param bool $force * @return bool */ - public function handle($folder, $url) + public function handle($folder, $url, $force = false) { - if ($this->configuration->isActive() == $this->configuration->getRequestState()) { + if ($this->configuration->isActive() == $this->configuration->getRequestState() && !$force) { return true; } From 03275fdf1e0ba7fc80dc3eed28d5d70bdea9b101 Mon Sep 17 00:00:00 2001 From: pini-girit Date: Wed, 19 Dec 2018 17:42:43 +0200 Subject: [PATCH 3/3] v2.9.2: Changed module version to 2.9.2 (CLOUDINARY-7,CLOUDINARY-9,CLOUDINARY-39,CLOUDINARY-40) --- app/code/community/Cloudinary/Cloudinary/etc/config.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/code/community/Cloudinary/Cloudinary/etc/config.xml b/app/code/community/Cloudinary/Cloudinary/etc/config.xml index 8c5bcb4..6134791 100644 --- a/app/code/community/Cloudinary/Cloudinary/etc/config.xml +++ b/app/code/community/Cloudinary/Cloudinary/etc/config.xml @@ -2,7 +2,7 @@ - 2.9.1 + 2.9.2