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. *