*/ class Mage_PageCache_Adminhtml_PageCacheController extends Mage_Adminhtml_Controller_Action { /** * Retrieve session model * * @return Mage_Adminhtml_Model_Session */ protected function _getSession() { return Mage::getSingleton('adminhtml/session'); } /** * Clean external cache action * * @return void */ public function cleanAction() { try { if (Mage::helper('pagecache')->isEnabled()) { Mage::helper('pagecache')->getCacheControlInstance()->clean(); $this->_getSession()->addSuccess( Mage::helper('pagecache')->__('The external full page cache has been cleaned.') ); } } catch (Mage_Core_Exception $e) { $this->_getSession()->addError($e->getMessage()); } catch (Exception $e) { $this->_getSession()->addException( $e, Mage::helper('pagecache')->__('An error occurred while clearing the external full page cache.') ); } $this->_redirect('*/cache/index'); } /** * Check current user permission on resource and privilege * * @return bool */ protected function _isAllowed() { return Mage::getSingleton('admin/session')->isAllowed('page_cache'); } }