Mercurial > SimpleWebPresenter
annotate flag.php @ 17:75ab765300d1
Fix error which caused mtime for html files not to be updated.
| author | Tom Fredrik "BFG" Klaussen <bfg@blenning.no> |
|---|---|
| date | Wed, 19 Sep 2012 14:40:00 +0200 |
| parents | 6d420f2a1d91 |
| children | 1ac66bef193a |
| rev | line source |
|---|---|
|
2
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
1 <?php |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
2 include 'cache_check.inc'; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
3 include 'accept-language.inc'; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
4 |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
5 function loadFile($sFilename, $sCharset = 'UTF-8') |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
6 { |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
7 if (floatval(phpversion()) >= 4.3) { |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
8 if (!file_exists($sFilename)) return -3; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
9 $sData = file_get_contents($sFilename); |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
10 } else { |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
11 if (!file_exists($sFilename)) return -3; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
12 $rHandle = fopen($sFilename, 'r'); |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
13 if (!$rHandle) return -2; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
14 |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
15 $sData = ''; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
16 while(!feof($rHandle)) |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
17 $sData .= fread($rHandle, filesize($sFilename)); |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
18 fclose($rHandle); |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
19 } |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
20 if ($sEncoding = mb_detect_encoding($sData, 'auto', true) != $sCharset) { |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
21 if ($sEncoding != 1) { |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
22 $sData = mb_convert_encoding($sData, $sCharset, $sEncoding); |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
23 } |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
24 } |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
25 return $sData; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
26 } |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
27 |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
28 |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
29 $active = $_GET['active']; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
30 $lang = $_GET['lang']; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
31 |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
32 if(!$name) { |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
33 $name="home"; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
34 } |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
35 if(!$lang) { |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
36 $lang="no"; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
37 $langs=acceptedLanguages(); |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
38 foreach ($langs as $l => $val) { |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
39 if (file_exists($l)) { |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
40 $lang=$l; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
41 break; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
42 } |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
43 } |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
44 } |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
45 |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
46 $name="../img/flag-${lang}"; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
47 if ($active) |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
48 $name.="-active"; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
49 $name.=".png"; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
50 |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
51 $flag=loadFile("${name}"); |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
52 |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
53 if (floatval($flag)<0) { |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
54 header('HTTP/1.0 404 Not Found'); |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
55 print '<div id="page"><h1>Resource not found</h1></div>'; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
56 } |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
57 else { |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
58 header("Content-Type: image/png"); |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
59 print $flag; |
|
6d420f2a1d91
Add flag generator.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
60 } |
