Mercurial > SimpleWebPresenter
annotate Options.inc @ 39:bd82b719a0de
Make CacheTimeCheck a singleton.
Robustify if_modified_since check.
Quiet warnings.
Set debug levels.
Fix basepath references.
| author | Tom Fredrik "BFG" Klaussen <bfg@blenning.no> |
|---|---|
| date | Fri, 05 Oct 2012 00:21:27 +0200 |
| parents | aec57ed6f5f6 |
| children | 66382989353f |
| rev | line source |
|---|---|
|
26
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
1 <?php |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
2 class Options |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
3 { |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
4 private $defaultLang; |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
5 private $lang; |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
6 private $name; |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
7 private $acceptedLanguages = array(); |
|
29
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
8 private $inputDefaults = array(); |
|
32
7b19be62ea94
Remove yet another global, replace by CacheTimeCheck class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
29
diff
changeset
|
9 private $cache; |
|
35
aec57ed6f5f6
Remove globals from activeNav function.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
33
diff
changeset
|
10 private $urlParams = array(); |
|
39
bd82b719a0de
Make CacheTimeCheck a singleton.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
11 private $basePath; |
|
26
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
12 |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
13 function getDefaultLang() |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
14 { |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
15 return $this->defaultLang; |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
16 } |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
17 |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
18 function getLang() |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
19 { |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
20 return $this->lang; |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
21 } |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
22 |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
23 function setLang($lang) |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
24 { |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
25 $this->lang = $lang; |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
26 } |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
27 |
|
39
bd82b719a0de
Make CacheTimeCheck a singleton.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
28 function getBasePath() |
|
bd82b719a0de
Make CacheTimeCheck a singleton.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
29 { |
|
bd82b719a0de
Make CacheTimeCheck a singleton.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
30 return $this->basePath; |
|
bd82b719a0de
Make CacheTimeCheck a singleton.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
31 } |
|
bd82b719a0de
Make CacheTimeCheck a singleton.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
32 |
|
bd82b719a0de
Make CacheTimeCheck a singleton.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
33 function setBasePath($basePath) |
|
bd82b719a0de
Make CacheTimeCheck a singleton.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
34 { |
|
bd82b719a0de
Make CacheTimeCheck a singleton.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
35 $this->basePath = $basePath; |
|
bd82b719a0de
Make CacheTimeCheck a singleton.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
36 } |
|
bd82b719a0de
Make CacheTimeCheck a singleton.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
37 |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
32
diff
changeset
|
38 function setUrlParams($urlParams) |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
32
diff
changeset
|
39 { |
|
35
aec57ed6f5f6
Remove globals from activeNav function.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
33
diff
changeset
|
40 foreach($urlParams as $key) { |
|
39
bd82b719a0de
Make CacheTimeCheck a singleton.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
35
diff
changeset
|
41 $value = array_key_exists($key, $_GET) ? $_GET[$key] : ''; |
|
35
aec57ed6f5f6
Remove globals from activeNav function.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
33
diff
changeset
|
42 $this->urlParams[$key] = $value; |
|
aec57ed6f5f6
Remove globals from activeNav function.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
33
diff
changeset
|
43 } |
|
33
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
32
diff
changeset
|
44 } |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
32
diff
changeset
|
45 |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
32
diff
changeset
|
46 function getUrlParams() |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
32
diff
changeset
|
47 { |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
32
diff
changeset
|
48 return $this->urlParams; |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
32
diff
changeset
|
49 } |
|
511b6514823f
Remove more globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
32
diff
changeset
|
50 |
|
26
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
51 function setName($name) |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
52 { |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
53 $this->name = $name; |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
54 } |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
55 |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
56 function getName() |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
57 { |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
58 return $this->name; |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
59 } |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
60 |
|
32
7b19be62ea94
Remove yet another global, replace by CacheTimeCheck class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
29
diff
changeset
|
61 function setCache($cache) |
|
7b19be62ea94
Remove yet another global, replace by CacheTimeCheck class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
29
diff
changeset
|
62 { |
|
7b19be62ea94
Remove yet another global, replace by CacheTimeCheck class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
29
diff
changeset
|
63 $this->cache = $cache; |
|
7b19be62ea94
Remove yet another global, replace by CacheTimeCheck class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
29
diff
changeset
|
64 } |
|
7b19be62ea94
Remove yet another global, replace by CacheTimeCheck class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
29
diff
changeset
|
65 |
|
7b19be62ea94
Remove yet another global, replace by CacheTimeCheck class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
29
diff
changeset
|
66 function getCache() |
|
7b19be62ea94
Remove yet another global, replace by CacheTimeCheck class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
29
diff
changeset
|
67 { |
|
7b19be62ea94
Remove yet another global, replace by CacheTimeCheck class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
29
diff
changeset
|
68 return $this->cache; |
|
7b19be62ea94
Remove yet another global, replace by CacheTimeCheck class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
29
diff
changeset
|
69 } |
|
7b19be62ea94
Remove yet another global, replace by CacheTimeCheck class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
29
diff
changeset
|
70 |
|
29
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
71 function getAcceptedLanguages() |
|
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
72 { |
|
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
73 return $this->acceptedLanguages; |
|
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
74 } |
|
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
75 |
|
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
76 function getInputDefault($key) |
|
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
77 { |
|
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
78 return $this->inputDefaults[$key]; |
|
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
79 } |
|
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
80 |
|
26
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
81 function __construct($baseDocument) |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
82 { |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
83 $params = $baseDocument->getElementsByTagName("param"); |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
84 foreach ($params as $param) { |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
85 if ($param->getAttribute("type") == "option") { |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
86 $id = $param->getAttribute("id"); |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
87 if ($id == "lang") { |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
88 $this->defaultLang = $param->getAttribute("default"); |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
89 $accepts = $param->getElementsByTagName("accept_value"); |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
90 foreach($accepts as $accept) { |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
91 foreach($accept->childNodes as $child) { |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
92 array_push($this->acceptedLanguages, $child->nodeValue); |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
93 } |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
94 } |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
95 } |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
96 else { |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
97 die("Invalid option : $id"); |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
98 } |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
99 $parent = $param->parentNode; |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
100 $parent->removeChild($param); |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
101 } |
|
29
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
102 elseif ($param->getAttribute("type") == "input") { |
|
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
103 $id = $param->getAttribute("id"); |
|
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
104 $default = $param->getAttribute("default"); |
|
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
105 $this->inputDefaults[$id] = $default; |
|
394b5df43d1a
Fix some formatting.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
26
diff
changeset
|
106 } |
|
26
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
107 } |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
108 } |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
109 } |
|
d8c7b328899e
Removed globals, and introduced Options object for passing values
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff
changeset
|
110 ?> |
