From 1f8408e32b60868feb8426307fb11f6db5ff0b9c Mon Sep 17 00:00:00 2001 From: Jan-Simon Winkelmann Date: Thu, 10 Apr 2014 23:23:12 +0200 Subject: [PATCH 1/3] Use rewrite to override default form key handling rather than include a local version of Mage_Core_Model_Session in the turpentine dist --- .../Turpentine/Model/Core/Session.php | 45 ++++++++++++ .../Nexcessnet/Turpentine/etc/config.xml | 5 ++ app/code/local/Mage/Core/Model/Session.php | 69 ------------------- 3 files changed, 50 insertions(+), 69 deletions(-) create mode 100644 app/code/community/Nexcessnet/Turpentine/Model/Core/Session.php delete mode 100644 app/code/local/Mage/Core/Model/Session.php diff --git a/app/code/community/Nexcessnet/Turpentine/Model/Core/Session.php b/app/code/community/Nexcessnet/Turpentine/Model/Core/Session.php new file mode 100644 index 000000000..cd3993f4d --- /dev/null +++ b/app/code/community/Nexcessnet/Turpentine/Model/Core/Session.php @@ -0,0 +1,45 @@ +init('core', $name); + } + + /** + * Retrieve Session Form Key + * + * @return string A 16 bit unique key for forms + */ + public function getFormKey() + { + if (Mage::registry('replace_form_key') && + !Mage::app()->getRequest()->getParam('form_key', false)) { + // flag request for ESI processing + Mage::register('turpentine_esi_flag', true, true); + return '{{form_key_esi_placeholder}}'; + } else { + return parent::getFormKey(); + } + } +} diff --git a/app/code/community/Nexcessnet/Turpentine/etc/config.xml b/app/code/community/Nexcessnet/Turpentine/etc/config.xml index c689b447e..753264b7b 100644 --- a/app/code/community/Nexcessnet/Turpentine/etc/config.xml +++ b/app/code/community/Nexcessnet/Turpentine/etc/config.xml @@ -126,6 +126,11 @@ Nexcessnet_Turpentine_Model + + + Nexcessnet_Turpentine_Model_Core_Session + + diff --git a/app/code/local/Mage/Core/Model/Session.php b/app/code/local/Mage/Core/Model/Session.php deleted file mode 100644 index 4c701738f..000000000 --- a/app/code/local/Mage/Core/Model/Session.php +++ /dev/null @@ -1,69 +0,0 @@ -init('core', $name); - } - - /** - * Retrieve Session Form Key - * - * @return string A 16 bit unique key for forms - */ - public function getFormKey() - { - if (Mage::registry('replace_form_key') && - !Mage::app()->getRequest()->getParam('form_key', false)) { - // flag request for ESI processing - Mage::register('turpentine_esi_flag', true, true); - return '{{form_key_esi_placeholder}}'; - } else { - return $this->real_getFormKey(); - } - } - - public function real_getFormKey() - { - if (!$this->getData('_form_key')) { - $this->setData('_form_key', Mage::helper('core')->getRandomString(16)); - } - return $this->getData('_form_key'); - } -} From c99015248a6c17504cf2e268ea5b8ce51a0cd270 Mon Sep 17 00:00:00 2001 From: Miguel Balparda Date: Tue, 23 Jun 2015 13:41:36 +0000 Subject: [PATCH 2/3] refs 499 added real_getFormKey() to Session.php --- .../Nexcessnet/Turpentine/Model/Core/Session.php | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/code/community/Nexcessnet/Turpentine/Model/Core/Session.php b/app/code/community/Nexcessnet/Turpentine/Model/Core/Session.php index cd3993f4d..7b2afa444 100644 --- a/app/code/community/Nexcessnet/Turpentine/Model/Core/Session.php +++ b/app/code/community/Nexcessnet/Turpentine/Model/Core/Session.php @@ -42,4 +42,12 @@ public function getFormKey() return parent::getFormKey(); } } + + public function real_getFormKey() + { + if (!$this->getData('_form_key')) { + $this->setData('_form_key', Mage::helper('core')->getRandomString(16)); + } + return $this->getData('_form_key'); + } } From c1e0cc67769b4576ae2243ce3fb0c3145da6cc96 Mon Sep 17 00:00:00 2001 From: Miguel Balparda Date: Tue, 23 Jun 2015 14:33:20 +0000 Subject: [PATCH 3/3] refs new version 0.6.2 (added #499) --- CHANGELOG.md | 4 ++++ app/code/community/Nexcessnet/Turpentine/etc/config.xml | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 75a605225..d473b567f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -386,3 +386,7 @@ Magento CE 1.8+ or EE 1.13+, see [these instructions](https://github.com/nexcess * [#796] Ignore additional GET Parameters in Varnish Cache via Configuration (@thampe) * [#626] Fix for dummy blocks not working (@jeroenvermeulen) * [#719) Replace connect20/nexcessnet_turpentine package in composer.json (@ihor-sviziev) + +### RELEASE-0.6.3 + * [#499] Use rewrite instead of local Session model for form key handling (@eth8505) + diff --git a/app/code/community/Nexcessnet/Turpentine/etc/config.xml b/app/code/community/Nexcessnet/Turpentine/etc/config.xml index ffdfdfcc9..f67896000 100644 --- a/app/code/community/Nexcessnet/Turpentine/etc/config.xml +++ b/app/code/community/Nexcessnet/Turpentine/etc/config.xml @@ -20,7 +20,7 @@ - 0.6.1 + 0.6.3