Mercurial > SimpleWebPresenter
diff flag.php @ 38:42533600214b
Rename cache_check.inc to CacheTimeCheck.inc.
Proper caching in flag.php.
| author | Tom Fredrik "BFG" Klaussen <bfg@blenning.no> |
|---|---|
| date | Thu, 04 Oct 2012 22:07:19 +0200 |
| parents | da86ec2814e2 |
| children | bd82b719a0de |
line wrap: on
line diff
--- a/flag.php Thu Oct 04 21:30:57 2012 +0200 +++ b/flag.php Thu Oct 04 22:07:19 2012 +0200 @@ -1,62 +1,40 @@ <?php define(DEBUG,0); -include 'cache_check.inc'; -include 'accept-language.inc'; - -function loadFile($sFilename, $sCharset = 'UTF-8') -{ - if (floatval(phpversion()) >= 4.3) { - if (!file_exists($sFilename)) return -3; - $sData = file_get_contents($sFilename); - } else { - if (!file_exists($sFilename)) return -3; - $rHandle = fopen($sFilename, 'r'); - if (!$rHandle) return -2; +include_once 'CacheTimeCheck.inc'; - $sData = ''; - while(!feof($rHandle)) - $sData .= fread($rHandle, filesize($sFilename)); - fclose($rHandle); - } - if ($sEncoding = mb_detect_encoding($sData, 'auto', true) != $sCharset) { - if ($sEncoding != 1) { - $sData = mb_convert_encoding($sData, $sCharset, $sEncoding); - } - } - return $sData; -} - +$cache = new CacheTimeCheck(filemtime(__FILE__)); +$cache->includeOnce('accept-language.inc'); +$cache->includeOnce('common-functions.inc'); $active = $_GET['active']; $lang = $_GET['lang']; -if(!$name) { - $name="home"; -} if(!$lang) { - $lang="no"; - $langs=acceptedLanguages(); + $lang = "no"; + $langs = acceptedLanguages(); foreach ($langs as $l => $val) { if (file_exists($l)) { - $lang=$l; + $lang = $l; break; } } } -$name="../img/flag-${lang}"; +$name = "../img/flag-${lang}"; if ($active) - $name.="-active"; -$name.=".png"; + $name .= "-active"; +$name .= ".png"; -$flag=loadFile("${name}"); +$cache->cache_time($name); +$cache->CheckHttpModified(); -if (floatval($flag)<0) { - header('HTTP/1.0 404 Not Found'); - print '<div id="page"><h1>Resource not found</h1></div>'; +$flag = loadFile($name); + +if (floatval($flag) < 0) { + errorPage('Resource not found', 404); } else { header("Content-Type: image/png"); print $flag; -} +} \ No newline at end of file
