From 117cb525877e089bf03b113ff2234ba90d79b37a Mon Sep 17 00:00:00 2001 From: Steve Desmet Date: Thu, 12 Apr 2018 17:59:46 +0000 Subject: [PATCH] Add "cacheable" param to distinguish between FPC vs non-FPC routes --- .../PageCacheHitRate/Model/Observer.php | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/app/code/community/Mpchadwick/PageCacheHitRate/Model/Observer.php b/app/code/community/Mpchadwick/PageCacheHitRate/Model/Observer.php index e07c76e..334e0bd 100644 --- a/app/code/community/Mpchadwick/PageCacheHitRate/Model/Observer.php +++ b/app/code/community/Mpchadwick/PageCacheHitRate/Model/Observer.php @@ -25,6 +25,7 @@ public function handleControllerFrontSendResponseBefore(Varien_Event_Observer $o $params = $paramProvider->baseParams(true) + array( 'type' => $type, 'route' => $this->trackerRoute(), + 'cacheable' => $this->isRequestCacheable() ); $factory = Mage::getModel('mpchadwick_pagecachehitrate/trackerFactory'); @@ -40,6 +41,20 @@ public function handleControllerFrontSendResponseBefore(Varien_Event_Observer $o } } + /** + * Determine this request is cacheable in FPC + * + * @return bool + */ + protected function isRequestCacheable() + { + $request = Mage::app()->getRequest(); + $processor = Mage::getSingleton('enterprise_pagecache/processor'); + $subprocessor = $processor->getMetadata('cache_subprocessor'); + + return $subprocessor !== null && $processor->canProcessRequest($request); + } + /** * Get the type of response. *