Skip to content

Commit 6ffc751

Browse files
Merge pull request #1062 from nexcess/devel
Devel
2 parents 35d44f5 + b6ca483 commit 6ffc751

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+1841
-1582
lines changed

CHANGELOG.md

+13-1
Original file line numberDiff line numberDiff line change
@@ -419,4 +419,16 @@ Magento CE 1.8+ or EE 1.13+, see [these instructions](https://github.com/nexcess
419419
* [#945] Send unmodified url to the backend server (@thampe)
420420
* [#885] Add maintenance mode that will allow debug_ips through to visit the site, all other users get the landing page (@craigcarnell)
421421
* [#955] Include theme specific handles to ESI data (@LyndonHook)
422-
* [#972] Fixed bug with wrong return value of ->getSkinUrl() (@ceckoslab)
422+
* [#972] Fixed bug with wrong return value of ->getSkinUrl() (@ceckoslab)
423+
424+
### RELEASE-0.6.7
425+
* [#951] Added 'disableEsiInjection' ESI policy option.
426+
* [#1005] Invalidating cms pages with url enging with slash. (@sivaschenko)
427+
* [#1020] Add the form key to wishlist submit to prevent 403 errors. (@paulpartington)
428+
* [#1036] Prime Checkout and Light Checkout Compatibility. (@sprankhub)
429+
* [#1050] Use Simple Hash" option for static files. (@jeroenvermeulen)
430+
* [#1031] Improved helper function getModelName(). (@jeroenvermeulen)
431+
* [#1066] Fix for crawler lock problem with CM_RedisSession. (@jeroenvermeulen)
432+
433+
### RELEASE-0.6.8
434+
* [#1065] Added ESI policy for cookie notice block. (@aricwatson)

README.md

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# [Nexcess.net](https://www.nexcess.net/) Turpentine Extension for Magento
22
[![Build Status](https://travis-ci.org/nexcess/magento-turpentine.png?branch=master,devel)](https://travis-ci.org/nexcess/magento-turpentine)
3+
[![Scrutinizer](https://scrutinizer-ci.com/g/nexcess/magento-turpentine/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/nexcess/magento-turpentine/)
34

45
Turpentine is a full page cache extension for [Magento](https://www.magentocommerce.com/)
56
that works with [Varnish](https://www.varnish-cache.org/), a very fast caching reverse-proxy. By

app/code/community/Nexcessnet/Turpentine/Block/Adminhtml/Cache/Grid.php

+4-4
Original file line numberDiff line numberDiff line change
@@ -19,20 +19,20 @@ protected function _prepareCollection()
1919
$fullPageEnabled = false;
2020
foreach ($collection as $key=>$item)
2121
{
22-
if($item->getStatus()==1 && ($item->getId()=='turpentine_pages' || $item->getId()=='turpentine_esi_blocks'))
22+
if ($item->getStatus() == 1 && ($item->getId() == 'turpentine_pages' || $item->getId() == 'turpentine_esi_blocks'))
2323
{
2424
$turpentineEnabled = true;
2525
}
26-
if($item->getStatus()==1 && $item->getId()=='full_page')
26+
if ($item->getStatus() == 1 && $item->getId() == 'full_page')
2727
{
2828
$fullPageEnabled = true;
2929
}
3030
}
31-
if($turpentineEnabled)
31+
if ($turpentineEnabled)
3232
{
3333
$collection->removeItemByKey('full_page');
3434
}
35-
if($fullPageEnabled)
35+
if ($fullPageEnabled)
3636
{
3737
$collection->removeItemByKey('turpentine_pages');
3838
$collection->removeItemByKey('turpentine_esi_blocks');

app/code/community/Nexcessnet/Turpentine/Block/Core/Messages.php

+65-65
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,13 @@ class Nexcessnet_Turpentine_Block_Core_Messages extends Mage_Core_Block_Messages
2525
* can't use null because that is the default so no way to tell between
2626
* the default and not actually calling it
2727
*/
28-
const NO_SINGLE_RENDER_TYPE = -1;
28+
const NO_SINGLE_RENDER_TYPE = -1;
2929

3030
/**
3131
* Hold the message type to call getHtml with
3232
* @var mixed
3333
*/
34-
protected $_singleRenderType = null;
34+
protected $_singleRenderType = null;
3535

3636
/**
3737
* Sentinel to check if the toHtml method was skipped (getGroupedHtml was
@@ -41,7 +41,7 @@ class Nexcessnet_Turpentine_Block_Core_Messages extends Mage_Core_Block_Messages
4141
*
4242
* @var boolean
4343
*/
44-
protected $_directCall = false;
44+
protected $_directCall = false;
4545

4646
/**
4747
* List of session types to load messages from for the "messages" block.
@@ -65,10 +65,10 @@ class Nexcessnet_Turpentine_Block_Core_Messages extends Mage_Core_Block_Messages
6565
*
6666
* @var array
6767
*/
68-
protected $_usedStorageTypes = array( 'core/session' );
68+
protected $_usedStorageTypes = array('core/session');
6969

7070
public function _prepareLayout() {
71-
if( $this->_fixMessages() ) {
71+
if ($this->_fixMessages()) {
7272
/* do nothing */
7373
return $this;
7474
} else {
@@ -82,11 +82,11 @@ public function _prepareLayout() {
8282
* @param Mage_Core_Model_Message_Collection $messages
8383
* @return Mage_Core_Block_Messages
8484
*/
85-
public function setMessages( Mage_Core_Model_Message_Collection $messages ) {
86-
if( $this->_fixMessages() ) {
87-
$this->_saveMessages( $messages->getItems() );
85+
public function setMessages(Mage_Core_Model_Message_Collection $messages) {
86+
if ($this->_fixMessages()) {
87+
$this->_saveMessages($messages->getItems());
8888
} else {
89-
parent::setMessages( $messages );
89+
parent::setMessages($messages);
9090
}
9191
return $this;
9292
}
@@ -97,11 +97,11 @@ public function setMessages( Mage_Core_Model_Message_Collection $messages ) {
9797
* @param Mage_Core_Model_Message_Collection $messages
9898
* @return Mage_Core_Block_Messages
9999
*/
100-
public function addMessages( Mage_Core_Model_Message_Collection $messages ) {
101-
if( $this->_fixMessages() ) {
102-
$this->_saveMessages( $messages->getItems() );
100+
public function addMessages(Mage_Core_Model_Message_Collection $messages) {
101+
if ($this->_fixMessages()) {
102+
$this->_saveMessages($messages->getItems());
103103
} else {
104-
parent::addMessages( $messages );
104+
parent::addMessages($messages);
105105
}
106106
return $this;
107107
}
@@ -112,11 +112,11 @@ public function addMessages( Mage_Core_Model_Message_Collection $messages ) {
112112
* @param Mage_Core_Model_Message_Abstract $message
113113
* @return Mage_Core_Block_Messages
114114
*/
115-
public function addMessage( Mage_Core_Model_Message_Abstract $message ) {
116-
if( $this->_fixMessages() ) {
117-
$this->_saveMessages( array( $message ) );
115+
public function addMessage(Mage_Core_Model_Message_Abstract $message) {
116+
if ($this->_fixMessages()) {
117+
$this->_saveMessages(array($message));
118118
} else {
119-
parent::addMessage( $message );
119+
parent::addMessage($message);
120120
}
121121
return $this;
122122
}
@@ -125,12 +125,11 @@ public function addMessage( Mage_Core_Model_Message_Abstract $message ) {
125125
* Override this in case some dumb layout decides to use it instead of the
126126
* standard toHtml stuff
127127
*
128-
* @param mixed $type=self::NO_SINGLE_RENDER_TYPE
129128
* @return string
130129
*/
131-
public function getHtml( $type=self::NO_SINGLE_RENDER_TYPE ) {
130+
public function getHtml($type = self::NO_SINGLE_RENDER_TYPE) {
132131
$this->_singleRenderType = $type;
133-
return $this->_handleDirectCall( 'getHtml' )->toHtml();
132+
return $this->_handleDirectCall('getHtml')->toHtml();
134133
}
135134

136135
/**
@@ -140,7 +139,7 @@ public function getHtml( $type=self::NO_SINGLE_RENDER_TYPE ) {
140139
* @return string
141140
*/
142141
public function getGroupedHtml() {
143-
return $this->_handleDirectCall( 'getGroupedHtml' )->toHtml();
142+
return $this->_handleDirectCall('getGroupedHtml')->toHtml();
144143
}
145144

146145
/**
@@ -150,37 +149,38 @@ public function getGroupedHtml() {
150149
*
151150
* @param string $type
152151
*/
153-
public function addStorageType( $type ) {
152+
public function addStorageType($type) {
154153
$this->_usedStorageTypes[] = $type;
155154
}
156155

157156
/**
158157
* Load layout options
159158
*
160-
* @return null
159+
* @param string $methodCalled
160+
* @return Nexcessnet_Turpentine_Block_Core_Messages
161161
*/
162-
protected function _handleDirectCall( $methodCalled ) {
162+
protected function _handleDirectCall($methodCalled) {
163163
// this doesn't actually do anything because _real_toHtml() won't be
164164
// called in this request context (unless the flash message isn't
165165
// actually supposed to be ajax/esi'd in)
166166
$this->_directCall = $methodCalled;
167-
if( $this->_fixMessages() ) {
167+
if ($this->_fixMessages()) {
168168
$layout = $this->getLayout();
169-
$layoutUpdate = $layout->getUpdate()->load( 'default' );
170-
if( Mage::app()->useCache( 'layout' ) ) {
169+
$layoutUpdate = $layout->getUpdate()->load('default');
170+
if (Mage::app()->useCache('layout')) {
171171
// this is skipped in the layout update load() if the "layout"
172172
// cache is enabled, which seems to cause the esi layout stuff
173173
// to not load, so we manually do it here
174-
foreach( $layoutUpdate->getHandles() as $handle ) {
175-
$layoutUpdate->merge( $handle );
174+
foreach ($layoutUpdate->getHandles() as $handle) {
175+
$layoutUpdate->merge($handle);
176176
}
177177
}
178178
$layout->generateXml();
179-
$layoutShim = Mage::getSingleton( 'turpentine/shim_mage_core_layout' );
180-
foreach( $layout->getNode()->xpath(
181-
sprintf( '//reference[@name=\'%s\']/action',
182-
$this->getNameInLayout() ) ) as $node ) {
183-
$layoutShim->shim_generateAction( $node );
179+
$layoutShim = Mage::getSingleton('turpentine/shim_mage_core_layout');
180+
foreach ($layout->getNode()->xpath(
181+
sprintf('//reference[@name=\'%s\']/action',
182+
$this->getNameInLayout()) ) as $node) {
183+
$layoutShim->shim_generateAction($node);
184184
}
185185
}
186186
return $this;
@@ -192,13 +192,13 @@ protected function _handleDirectCall( $methodCalled ) {
192192
* @return string
193193
*/
194194
protected function _toHtml() {
195-
if( $this->_fixMessages() ) {
196-
if( $this->_shouldUseInjection() ) {
195+
if ($this->_fixMessages()) {
196+
if ($this->_shouldUseInjection()) {
197197
$html = $this->renderView();
198198
} else {
199199
$this->_loadMessages();
200200
$this->_loadSavedMessages();
201-
if ( count($this->getMessages()) ) {
201+
if (count($this->getMessages())) {
202202
$html = $this->_real_toHtml();
203203
} else {
204204
// Prevent returning an empty <ul></ul>
@@ -219,7 +219,7 @@ protected function _toHtml() {
219219
*/
220220
protected function _hasInjectOptions() {
221221
return $this->getEsiOptions() &&
222-
Mage::helper( 'turpentine/esi' )->shouldResponseUseEsi();
222+
Mage::helper('turpentine/esi')->shouldResponseUseEsi();
223223
}
224224

225225
/**
@@ -241,18 +241,18 @@ protected function _shouldUseInjection() {
241241
* @return boolean
242242
*/
243243
protected function _hasTemplateSet() {
244-
return (bool)$this->getTemplate();
244+
return (bool) $this->getTemplate();
245245
}
246246

247247
/**
248248
* Preserve messages for later display
249249
*
250250
* @return null
251251
*/
252-
protected function _saveMessages( $messages ) {
253-
if( $this->_fixMessages() && !$this->_isEsiRequest() ) {
254-
Mage::getSingleton( 'turpentine/session' )
255-
->saveMessages( $this->getNameInLayout(), $messages );
252+
protected function _saveMessages($messages) {
253+
if ($this->_fixMessages() && ! $this->_isEsiRequest()) {
254+
Mage::getSingleton('turpentine/session')
255+
->saveMessages($this->getNameInLayout(), $messages);
256256
}
257257
}
258258

@@ -262,14 +262,14 @@ protected function _saveMessages( $messages ) {
262262
* @return null
263263
*/
264264
protected function _loadMessages() {
265-
if( $this->getNameInLayout() == 'messages' ) {
266-
foreach( $this->_messageStorageTypes as $type ) {
267-
$storage = sprintf( '%s/session', $type );
268-
$this->addStorageType( $storage );
269-
$this->_loadMessagesFromStorage( $storage );
265+
if ($this->getNameInLayout() == 'messages') {
266+
foreach ($this->_messageStorageTypes as $type) {
267+
$storage = sprintf('%s/session', $type);
268+
$this->addStorageType($storage);
269+
$this->_loadMessagesFromStorage($storage);
270270
}
271271
} else {
272-
$this->_loadMessagesFromStorage( 'core/session' );
272+
$this->_loadMessagesFromStorage('core/session');
273273
}
274274
}
275275

@@ -279,9 +279,9 @@ protected function _loadMessages() {
279279
* @return null
280280
*/
281281
protected function _loadSavedMessages() {
282-
$session = Mage::getSingleton( 'turpentine/session' );
283-
foreach( $session->loadMessages( $this->getNameInLayout() ) as $msg ) {
284-
parent::addMessage( $msg );
282+
$session = Mage::getSingleton('turpentine/session');
283+
foreach ($session->loadMessages($this->getNameInLayout()) as $msg) {
284+
parent::addMessage($msg);
285285
}
286286
$this->_clearMessages();
287287
}
@@ -292,10 +292,10 @@ protected function _loadSavedMessages() {
292292
* @param string $type
293293
* @return null
294294
*/
295-
protected function _loadMessagesFromStorage( $type ) {
296-
foreach( Mage::getSingleton( $type )
297-
->getMessages( true )->getItems() as $msg ) {
298-
parent::addMessage( $msg );
295+
protected function _loadMessagesFromStorage($type) {
296+
foreach (Mage::getSingleton($type)
297+
->getMessages(true)->getItems() as $msg) {
298+
parent::addMessage($msg);
299299
}
300300
}
301301

@@ -305,8 +305,8 @@ protected function _loadMessagesFromStorage( $type ) {
305305
* @return null
306306
*/
307307
protected function _clearMessages() {
308-
Mage::getSingleton( 'turpentine/session' )
309-
->clearMessages( $this->getNameInLayout() );
308+
Mage::getSingleton('turpentine/session')
309+
->clearMessages($this->getNameInLayout());
310310
}
311311

312312
/**
@@ -315,8 +315,8 @@ protected function _clearMessages() {
315315
* @return string
316316
*/
317317
protected function _real_toHtml() {
318-
if( !$this->_directCall ) {
319-
switch( $this->getNameInLayout() ) {
318+
if ( ! $this->_directCall) {
319+
switch ($this->getNameInLayout()) {
320320
case 'global_messages':
321321
$this->_directCall = 'getHtml';
322322
break;
@@ -326,9 +326,9 @@ protected function _real_toHtml() {
326326
break;
327327
}
328328
}
329-
switch( $this->_directCall ) {
329+
switch ($this->_directCall) {
330330
case 'getHtml':
331-
$html = parent::getHtml( $this->_singleRenderType );
331+
$html = parent::getHtml($this->_singleRenderType);
332332
$this->_singleRenderType = self::NO_SINGLE_RENDER_TYPE;
333333
break;
334334
case 'getGroupedHtml':
@@ -346,7 +346,7 @@ protected function _real_toHtml() {
346346
* @return bool
347347
*/
348348
protected function _fixMessages() {
349-
return Mage::helper( 'turpentine/esi' )->shouldFixFlashMessages();
349+
return Mage::helper('turpentine/esi')->shouldFixFlashMessages();
350350
}
351351

352352
/**
@@ -358,7 +358,7 @@ protected function _fixMessages() {
358358
* @return boolean
359359
*/
360360
protected function _isEsiRequest() {
361-
return is_a( Mage::app()->getRequest(),
362-
'Nexcessnet_Turpentine_Model_Dummy_Request' );
361+
return is_a(Mage::app()->getRequest(),
362+
'Nexcessnet_Turpentine_Model_Dummy_Request');
363363
}
364364
}

0 commit comments

Comments
 (0)