Blame | Letzte Änderung | Log anzeigen | RSS feed
<?php/*** Inline Runtime Methods render, setSourceByUid, setupSubTemplate** @package Smarty* @subpackage PluginsInternal* @author Uwe Tews**/class Smarty_Internal_Runtime_CacheModify{/*** check client side cache** @param \Smarty_Template_Cached $cached* @param \Smarty_Internal_Template $_template* @param string $content** @throws \Exception* @throws \SmartyException*/public function cacheModifiedCheck(Smarty_Template_Cached $cached, Smarty_Internal_Template $_template, $content){$_isCached = $_template->isCached() && !$_template->compiled->has_nocache_code;$_last_modified_date =@substr($_SERVER[ 'HTTP_IF_MODIFIED_SINCE' ], 0, strpos($_SERVER[ 'HTTP_IF_MODIFIED_SINCE' ], 'GMT') + 3);if ($_isCached && $cached->timestamp <= strtotime($_last_modified_date)) {switch (PHP_SAPI) {case 'cgi': // php-cgi < 5.3case 'cgi-fcgi': // php-cgi >= 5.3case 'fpm-fcgi': // php-fpm >= 5.3.3header('Status: 304 Not Modified');break;case 'cli':if (/* ^phpunit */!empty($_SERVER[ 'SMARTY_PHPUNIT_DISABLE_HEADERS' ]) /* phpunit$ */) {$_SERVER[ 'SMARTY_PHPUNIT_HEADERS' ][] = '304 Not Modified';}break;default:if (/* ^phpunit */!empty($_SERVER[ 'SMARTY_PHPUNIT_DISABLE_HEADERS' ]) /* phpunit$ */) {$_SERVER[ 'SMARTY_PHPUNIT_HEADERS' ][] = '304 Not Modified';} else {header($_SERVER[ 'SERVER_PROTOCOL' ] . ' 304 Not Modified');}break;}} else {switch (PHP_SAPI) {case 'cli':if (/* ^phpunit */!empty($_SERVER[ 'SMARTY_PHPUNIT_DISABLE_HEADERS' ]) /* phpunit$ */) {$_SERVER[ 'SMARTY_PHPUNIT_HEADERS' ][] ='Last-Modified: ' . gmdate('D, d M Y H:i:s', $cached->timestamp) . ' GMT';}break;default:header('Last-Modified: ' . gmdate('D, d M Y H:i:s', $cached->timestamp) . ' GMT');break;}echo $content;}}}