public static function dispatch() { $uri = visitor::uri(); $target = router::parse_pps_uri($uri); if (config::get_module('view.default_skeleton', false) !== false) { if (config::get_module('view.cache_pps_in_server', false)) { $use_cache = false; if (defined('kern\\data_dir')) { $version_key = config::get_kern('version_key', router::default_version_key); $cache_dir = data_dir . '/cache/' . $serve_mode . '/' . $target->get_param($version_key, '0'); $cache_file = $cache_dir . '/' . sha1($uri) . '.cache'; if (is_readable($cache_file)) { $use_cache = true; } } if ($use_cache) { $content = file_get_contents($cache_file); } else { $content = pps_rendor::render_for($target); if (!is_dir($cache_dir)) { @mkdir($cache_dir, 0777, true); } @file_put_contents($cache_file, $content); } } else { $content = pps_rendor::render_for($target); } } else { $content = ''; } visitor::set_content($content); }
protected static function send($content, $content_type = 'text/html; charset=utf-8') { visitor::set_content_type($content_type); visitor::set_content($content); throw new dispatch_return(); }