public function dispatchCached() { $cache_settings = Ak::getSettings('caching', false); if ($cache_settings['enabled']) { $null = null; $pageCache = new AkCacheHandler(); $pageCache->init($null, $cache_settings); if (isset($_GET['allow_get'])) { $options['include_get_parameters'] = explode(',', $_GET['allow_get']); } if (isset($_GET['use_if_modified_since'])) { $options['use_if_modified_since'] = true; } if (($cachedPage = $pageCache->getCachedPage()) !== false) { return $cachedPage->render(); } } return false; }
public function _init($url, $constants = array(), $controllerVars = array()) { $this->_reset(); $this->_response = null; $this->_cacheHeaders = array(); $this->_setConstants($constants); $parts = parse_url($url); $_REQUEST['ak'] = isset($parts['path']) ? $parts['path'] : '/'; $_SERVER['AK_HOST'] = isset($parts['host']) ? $parts['host'] : 'localhost'; $cache_settings = Ak::getSettings('caching', false); if ($cache_settings['enabled']) { $null = null; $pageCache = new AkCacheHandler(); $pageCache->init($null, $cache_settings); if ($cachedPage = $pageCache->getCachedPage()) { static $_cachedHeaders = array(); ob_start(); global $sendHeaders, $returnHeaders, $exit; $sendHeaders = false; $returnHeaders = true; $exit = false; $headers = (include $cachedPage); //$headers = $cachedPage->render(false,false,true); $this->_response = ob_get_clean(); if (is_array($headers)) { $this->_cacheHeaders = $headers; } return true; } } $this->Dispatcher = new AkTestDispatcher($controllerVars); }
static function &getInstance(AkActionController &$Controller) { if (!($CacheHandler = Ak::getStaticVar('AkCacheHandlerSingleton'))) { $settings = Ak::getSettings('caching', false); if (!empty($settings['enabled'])) { $CacheHandler = new AkCacheHandler(); $CacheHandler->init($Controller); Ak::setStaticVar('AkCacheHandlerSingleton', $CacheHandler); } } return $CacheHandler; }
@ini_set('display_errors', 1); require(dirname(__FILE__).DIRECTORY_SEPARATOR.'..'.DIRECTORY_SEPARATOR. 'app'.DIRECTORY_SEPARATOR.'controllers'.DIRECTORY_SEPARATOR.'framework_setup_controller.php'); exit; }else{ include_once(dirname(__FILE__).DIRECTORY_SEPARATOR.'..'.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATOR.'config.php'); } } /** * Check cache here, render cache with headers */ $cache_settings = @include AK_CONFIG_DIR.DS.'cache'.DS.AK_ENVIRONMENT.DS.'caching.php'; if ($cache_settings!==false && $cache_settings['enabled']) { require(AK_LIB_DIR . DS . 'AkActionController'.DS.'AkCacheHandler.php'); $null = null; $pageCache = new AkCacheHandler(); $pageCache->init($null,$cache_settings); if (($cachedPage = $pageCache->getCachedPage())!==false) { global $sendHeaders, $returnHeaders, $exit; $sendHeaders = true; $returnHeaders = false; $exit = true; include $cachedPage; } } require_once(AK_LIB_DIR . DS . 'AkDispatcher.php'); $Dispatcher =& new AkDispatcher(); $Dispatcher->dispatch(); ?>