Mercurial > hg > fapweb
annotate msitegen.inc.php @ 198:96ab189e5c03
Add some new helper functions and use them.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sat, 16 Nov 2013 06:13:17 +0200 |
parents | 1b30c2107e5b |
children | 8985d2bdb29b |
rev | line source |
---|---|
0 | 1 <? |
2 // | |
160
0980e705dea0
Add some copyright headers.
Matti Hamalainen <ccr@tnsp.org>
parents:
144
diff
changeset
|
3 // FAPWeb Simple Demoparty System |
33 | 4 // Generic and miscellaneous site support code |
160
0980e705dea0
Add some copyright headers.
Matti Hamalainen <ccr@tnsp.org>
parents:
144
diff
changeset
|
5 // (C) Copyright 2012-2013 Tecnic Software productions (TNSP) |
0 | 6 // |
9
fa9b66f596bb
More work on settings storage.
Matti Hamalainen <ccr@tnsp.org>
parents:
8
diff
changeset
|
7 |
fa9b66f596bb
More work on settings storage.
Matti Hamalainen <ccr@tnsp.org>
parents:
8
diff
changeset
|
8 // Globals and definitions |
0 | 9 $errorSet = FALSE; |
10 $errorMsg = ""; | |
11 | |
184
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
12 // Value types |
8
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
13 define("VT_STR", 1); |
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
14 define("VT_INT", 2); |
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
15 define("VT_BOOL", 3); |
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
16 define("VT_TEXT", 4); |
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
17 |
184
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
18 // Validation check types |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
19 define("CHK_TYPE", 1); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
20 define("CHK_ISLT", 2); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
21 define("CHK_ISGT", 3); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
22 define("CHK_ISEQ", 4); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
23 define("CHK_CUSTOM", 5); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
24 |
94
6edd7d623eab
Start adding votekey modes code.
Matti Hamalainen <ccr@tnsp.org>
parents:
87
diff
changeset
|
25 |
173
fef53f6170b5
Move stDebug() to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
172
diff
changeset
|
26 function stDebug($msg) |
fef53f6170b5
Move stDebug() to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
172
diff
changeset
|
27 { |
fef53f6170b5
Move stDebug() to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
172
diff
changeset
|
28 if (stGetSetting("debug")) |
fef53f6170b5
Move stDebug() to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
172
diff
changeset
|
29 error_log($msg); |
fef53f6170b5
Move stDebug() to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
172
diff
changeset
|
30 } |
fef53f6170b5
Move stDebug() to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
172
diff
changeset
|
31 |
fef53f6170b5
Move stDebug() to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
172
diff
changeset
|
32 |
0 | 33 function stError($msg) |
34 { | |
35 global $errorSet, $errorMsg; | |
36 $errorSet = TRUE; | |
37 $errorMsg .= "<li>".$msg."</li>\n"; | |
38 } | |
39 | |
40 | |
41 function stCheckHTTPS() | |
42 { | |
43 return isset($_SERVER["HTTPS"]) && ($_SERVER["HTTPS"] != "" && $_SERVER["HTTPS"] != "off"); | |
44 } | |
45 | |
46 | |
5
76c3b89d7b11
Improve voting, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
0
diff
changeset
|
47 function stSetupCacheControl() |
76c3b89d7b11
Improve voting, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
0
diff
changeset
|
48 { |
8
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
49 header("Cache-Control: must-revalidate, no-store, private"); |
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
50 header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past |
5
76c3b89d7b11
Improve voting, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
0
diff
changeset
|
51 } |
76c3b89d7b11
Improve voting, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
0
diff
changeset
|
52 |
76c3b89d7b11
Improve voting, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
0
diff
changeset
|
53 |
198
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
54 function stGetSQLSettingData($item) |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
55 { |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
56 switch ($item["vtype"]) |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
57 { |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
58 case VT_INT: return intval($item["vint"]); |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
59 case VT_BOOL: return intval($item["vint"]) ? true : false; |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
60 case VT_STR: return $item["vstr"]; |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
61 case VT_TEXT: return $item["vtext"]; |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
62 } |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
63 } |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
64 |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
65 |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
66 function stGetSettingSQL($item, $val) |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
67 { |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
68 global $db; |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
69 switch ($item["vtype"]) |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
70 { |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
71 case VT_INT: return "vint=".intval($val); break; |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
72 case VT_BOOL: return "vint=".($val ? "1" : "0"); break; |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
73 case VT_STR: return "vstr=".$db->quote($val); break; |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
74 case VT_TEXT: return "vtext=".$db->quote($val); break; |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
75 default: return FALSE; |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
76 } |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
77 } |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
78 |
8
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
79 function stReloadSettings() |
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
80 { |
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
81 global $siteSettings; |
198
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
82 |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
83 if (($res = stExecSQL("SELECT * FROM settings")) !== FALSE) |
8
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
84 { |
198
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
85 foreach ($res as $item) |
96ab189e5c03
Add some new helper functions and use them.
Matti Hamalainen <ccr@tnsp.org>
parents:
184
diff
changeset
|
86 $siteSettings[$item["key"]] = stGetSQLSettingData($item); |
8
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
87 } |
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
88 else |
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
89 die("Error fetching site settings."); |
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
90 } |
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
91 |
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
92 |
5
76c3b89d7b11
Improve voting, clean up the code, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
0
diff
changeset
|
93 function stGetSetting($name) |
0 | 94 { |
8
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
95 global $siteSettings; |
0 | 96 if (isset($siteSettings[$name])) |
97 return $siteSettings[$name]; | |
98 else | |
8
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
99 die("No config value for '".$name."'.\n"); |
0 | 100 } |
101 | |
102 | |
103 function stChkSetting($name) | |
104 { | |
105 global $siteSettings; | |
106 return isset($siteSettings[$name]) && $siteSettings[$name]; | |
107 } | |
108 | |
109 | |
110 function dhentities($str) | |
111 { | |
112 return str_replace(array("<",">"), array("<", ">"), htmlentities($str, ENT_NOQUOTES, "UTF-8")); | |
113 } | |
114 | |
115 | |
116 function chentities($str) | |
117 { | |
118 return htmlentities($str, ENT_NOQUOTES, "UTF-8"); | |
119 } | |
120 | |
121 | |
12
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
122 function stGetIDName($name, $id, $prefix = "") |
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
123 { |
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
124 return |
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
125 ($id != "" ? "id=\"".$prefix.$name.$id."\" " : ""). |
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
126 ($name != "" ? "name=\"".$prefix.$name.$id."\" " : ""); |
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
127 } |
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
128 |
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
129 |
0 | 130 function stGetFormCheckBoxInput($name, $id, $prefix, $checked, $label, $extra = "") |
131 { | |
132 return | |
12
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
133 "<input ".$extra." type=\"checkbox\" ".stGetIDName($name, $id, $prefix). |
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
134 ($checked ? "checked=\"checked\" " : "")." />". |
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
135 ($label != "" ? "<label for=\"".$name."\">".$label."</label>" : ""); |
0 | 136 } |
137 | |
138 | |
26
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
139 function stGetFormRadioButtonInput($name, $id, $prefix, $value, $checked, $label, $extra = "") |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
140 { |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
141 return |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
142 "<input ".$extra." type=\"radio\" ".stGetIDName($name, $id, $prefix). |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
143 ($checked ? "checked=\"checked\" " : "")." value=\"".$value."\" />". |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
144 ($label != "" ? "<label for=\"".$name."\">".$label."</label>" : ""); |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
145 } |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
146 |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
147 |
0 | 148 function stGetFormButtonInput($name, $id, $prefix, $label, $onclick = "") |
149 { | |
150 return | |
12
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
151 "<input type=\"button\" ".stGetIDName($name, $id, $prefix). |
26
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
152 "value=\" ".chentities($label)." \" ". |
0 | 153 ($onclick != "" ? "onClick=\"".$onclick."\"" : "")." />"; |
154 } | |
155 | |
156 | |
157 function stGetFormTextArea($rows, $cols, $name, $id, $prefix, $value, $extra = "") | |
158 { | |
159 return | |
12
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
160 "<textarea ".$extra." ".stGetIDName($name, $id, $prefix). |
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
161 "rows=\"".$rows."\" cols=\"".$cols."\">". |
0 | 162 (isset($value) ? chentities($value) : ""). |
163 "</textarea>"; | |
164 } | |
165 | |
166 | |
167 function stGetFormTextInput($size, $len, $name, $id, $prefix, $value, $extra = "") | |
168 { | |
169 return | |
12
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
170 "<input ".$extra." type=\"text\" ".stGetIDName($name, $id, $prefix). |
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
171 "size=\"".$size."\" maxlength=\"".$len."\"". |
0 | 172 (isset($value) ? " value=\"".chentities($value)."\"" : ""). |
173 " />"; | |
174 } | |
175 | |
176 | |
177 function stGetFormPasswordInput($name, $id, $prefix) | |
178 { | |
179 return | |
13 | 180 "<input type=\"password\" ".stGetIDName($name, $id, $prefix)." />"; |
0 | 181 } |
182 | |
183 | |
26
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
184 function stGetFormSubmitInput($name, $label, $onclick = "") |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
185 { |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
186 return |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
187 "<input type=\"submit\" name=\"".$name. |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
188 "\" value=\" ".chentities($label)." \" ". |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
189 ($onclick != "" ? "onClick=\"".$onclick."\"" : "")." />"; |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
190 } |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
191 |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
192 |
0 | 193 function stGetFormHiddenInput($name, $value) |
194 { | |
12
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
195 return |
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
196 "<input type=\"hidden\" name=\"".$name. |
358534308c61
Clean up some of the html item generation code.
Matti Hamalainen <ccr@tnsp.org>
parents:
9
diff
changeset
|
197 "\" value=\"".chentities($value)."\" />"; |
0 | 198 } |
199 | |
200 | |
26
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
201 function stGetFormStart($name, $action = "", $method = "post") |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
202 { |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
203 return |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
204 "<form name=\"".$name."\" action=\"". |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
205 ($action != "" ? $action : $name). |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
206 "\" method=\"".$method."\">\n"; |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
207 } |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
208 |
7be3f8cf1f7a
Lots of cleanups, preparing for adding entry submission support.
Matti Hamalainen <ccr@tnsp.org>
parents:
24
diff
changeset
|
209 |
0 | 210 function stGetTDEditTextItem($edit, $size, $len, $name, $id, $prefix, $value, $extra = "") |
211 { | |
212 return | |
213 "<td class=\"".$name."\">". | |
214 ($edit ? stGetFormTextInput($size, $len, $name, $id, $prefix, $value, $extra) : chentities($value)). | |
215 "</td>"; | |
216 } | |
217 | |
218 | |
219 function stPrintFormTextInput($text1, $text2, $size, $len, $name, $extra="") | |
220 { | |
221 echo " <tr><th>".chentities($text1)."</th><td>". | |
15
ea0f98a0bed8
Fix some issues and bugs caused by recent changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
13
diff
changeset
|
222 stGetFormTextInput($size, $len, $name, "", "", stGetRequestItem($name), $extra). |
0 | 223 "</td><td>".chentities($text2)."</td></tr>\n"; |
224 } | |
225 | |
226 | |
227 function stPrintFormHiddenInput($name, $value) | |
228 { | |
229 echo " ".stGetFormHiddenInput($name, $value)."\n"; | |
230 } | |
231 | |
232 | |
184
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
233 function stErrorStrF($msg, $data) |
0 | 234 { |
184
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
235 stError($msg); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
236 return FALSE; |
0 | 237 } |
238 | |
239 | |
184
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
240 // |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
241 // Check and validate one item from $_REQUEST[], based on |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
242 // list of validation conditions. For example: |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
243 // |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
244 // stChkRequestItem("name", FALSE, |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
245 // array(CHK_ISGT, VT_STR, 0, "Handle / name not given."), |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
246 // array(CHK_ISGT, VT_STR, 3, "Handle / name too short, should be 3 characters or more."), |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
247 // array(CHK_ISLT, VT_STR, SET_LEN_USERNAME, "Handle / name is too long, should be less than ".SET_LEN_USERNAME." characters.")); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
248 // |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
249 function stChkRequestItem($name, &$sdata) |
0 | 250 { |
184
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
251 if (!isset($_REQUEST[$name])) |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
252 return FALSE; |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
253 |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
254 $data = trim($_REQUEST[$name]); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
255 $slen = strlen($data); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
256 |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
257 if ($sdata !== FALSE) |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
258 $sdata = $data; |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
259 |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
260 // Go through list of validation checks |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
261 $argc = func_num_args(); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
262 $argv = func_get_args(); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
263 |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
264 for ($argn = 2; $argn < $argc; $argn++) |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
265 { |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
266 // Act according to check type |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
267 $check = $argv[$argn]; |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
268 switch ($check[0]) |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
269 { |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
270 case CHK_TYPE: |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
271 // Check type of the data |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
272 switch ($check[1]) |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
273 { |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
274 case VT_STR: |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
275 if ($slen == 0) |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
276 return stErrorStrF($check[2], $data); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
277 break; |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
278 |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
279 case VT_INT: |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
280 case VT_BOOL: |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
281 if ($slen == 0 || !is_numeric($data)) |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
282 return stErrorStrF($check[2], $data); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
283 break; |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
284 } |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
285 break; |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
286 |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
287 case CHK_ISLT: |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
288 case CHK_ISGT: |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
289 case CHK_ISEQ: |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
290 // Check length or value of the data |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
291 switch ($check[1]) |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
292 { |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
293 case VT_STR: |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
294 case VT_TEXT: |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
295 // Strings get their length checked |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
296 if (($check[0] == CHK_ISLT && $slen >= $check[2]) || |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
297 ($check[0] == CHK_ISGT && $slen <= $check[2]) || |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
298 ($check[0] == CHK_ISEQ && $slen != $check[2])) |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
299 return stErrorStrF($check[3], $data); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
300 break; |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
301 |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
302 case VT_INT: |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
303 case VT_BOOL: |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
304 // Integer values checked against .. value |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
305 $sval = to_int($data); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
306 if (($check[0] == CHK_ISLT && $sval >= $check[2]) || |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
307 ($check[0] == CHK_ISGT && $sval <= $check[2]) || |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
308 ($check[0] == CHK_ISEQ && $sval != $check[2])) |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
309 return stErrorStrF($check[3], $data); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
310 break; |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
311 } |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
312 break; |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
313 |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
314 case CHK_CUSTOM: |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
315 // Call a custom function (or closure) |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
316 $func = $check[1]; |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
317 if (!is_callable($func) || !$func($data)) |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
318 return stErrorStrF($check[2], $data); |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
319 break; |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
320 } |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
321 } |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
322 |
1b30c2107e5b
Add function for validating input with different definable conditions. Use
Matti Hamalainen <ccr@tnsp.org>
parents:
180
diff
changeset
|
323 return TRUE; |
0 | 324 } |
325 | |
326 | |
327 function stGetRequestItem($name, $default = "") | |
328 { | |
329 return isset($_REQUEST[$name]) ? trim($_REQUEST[$name]) : $default; | |
330 } | |
331 | |
332 | |
333 function stGetDRequestItem($name, $default = "") | |
334 { | |
335 return trim(urldecode(stGetRequestItem($name, $default))); | |
336 } | |
337 | |
338 | |
339 function stLogSQLError($sql) | |
340 { | |
341 global $db; | |
342 error_log("SQL error ".implode("; ", $db->errorInfo())." in statement \"".$sql."\""); | |
343 } | |
344 | |
345 | |
346 function stConnectSQLDB() | |
347 { | |
348 global $db; | |
349 try { | |
8
4c5f651aa107
Migrate certain settings to SQL database, cleanups, etc.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
350 $db = new PDO(stGetSetting("sqlDB")); |
0 | 351 } |
352 catch (PDOException $e) { | |
353 error_log("Could not connect to SQL database: ".$e->getMessage()."."); | |
354 return FALSE; | |
355 } | |
356 return TRUE; | |
357 } | |
358 | |
359 | |
360 function stGetSQLParam($type, $value) | |
361 { | |
362 global $db; | |
363 switch ($type) | |
364 { | |
365 case "d": | |
366 return intval($value); | |
367 | |
368 case "s": | |
369 return $db->quote($value); | |
370 | |
72
63a6caf59e5c
Fix creation of boolean settings, and add '%b' formatter into stPrepareSQL().
Matti Hamalainen <ccr@tnsp.org>
parents:
71
diff
changeset
|
371 case "b": |
63a6caf59e5c
Fix creation of boolean settings, and add '%b' formatter into stPrepareSQL().
Matti Hamalainen <ccr@tnsp.org>
parents:
71
diff
changeset
|
372 return intval($value) ? 1 : 0; |
63a6caf59e5c
Fix creation of boolean settings, and add '%b' formatter into stPrepareSQL().
Matti Hamalainen <ccr@tnsp.org>
parents:
71
diff
changeset
|
373 |
0 | 374 case "D": |
375 return intval(stGetRequestItem($value)); | |
376 | |
377 case "S": | |
378 return $db->quote(stGetDRequestItem($value)); | |
379 | |
380 case "Q": | |
381 return $db->quote(stripslashes(stGetDRequestItem($value))); | |
382 | |
383 case "B": | |
384 return intval(stGetRequestItem($value)) ? 1 : 0; | |
385 } | |
386 } | |
387 | |
388 | |
389 function stPrepareSQL() | |
390 { | |
391 $argc = func_num_args(); | |
392 $argv = func_get_args(); | |
393 if ($argc < 1) | |
394 { | |
395 error_log("Invalid stPrepareSQL() call, no arguments!"); | |
396 return FALSE; | |
397 } | |
87 | 398 |
0 | 399 $fmt = $argv[0]; |
400 $len = strlen($fmt); | |
401 $sql = ""; | |
402 $argn = 1; | |
403 $pos = 0; | |
404 while ($pos < $len) | |
405 { | |
406 if ($fmt[$pos] == "%") | |
407 { | |
408 if ($argn < $argc) | |
409 $sql .= stGetSQLParam($fmt[++$pos], $argv[$argn++]); | |
410 else | |
411 { | |
412 error_log("Invalid SQL statement format string '".$fmt. | |
413 "', not enough parameters specified (".$argn." of ".$argc.")"); | |
414 return FALSE; | |
415 } | |
416 } | |
417 else | |
418 $sql .= $fmt[$pos]; | |
419 $pos++; | |
420 } | |
421 | |
422 return $sql; | |
423 } | |
424 | |
425 | |
426 function stPrepareSQLUpdate($table, $cond, $pairs) | |
427 { | |
428 $sql = array(); | |
429 foreach ($pairs as $name => $attr) | |
430 { | |
431 $sql[] = $name."=".stGetSQLParam($attr, $name); | |
432 } | |
433 return | |
434 "UPDATE ".$table." SET ".implode(",", $sql). | |
435 ($cond != "" ? " ".$cond : ""); | |
436 } | |
437 | |
438 | |
439 function stExecSQL($sql) | |
440 { | |
441 global $db; | |
442 if (($res = $db->query($sql)) !== FALSE) | |
443 return $res; | |
444 else | |
445 { | |
446 stLogSQLError($sql); | |
447 stError("Oh noes! SQL error #23!"); | |
448 return FALSE; | |
449 } | |
450 } | |
451 | |
452 | |
453 function stFetchSQL($sql) | |
454 { | |
455 global $db; | |
456 if (($res = $db->query($sql)) !== FALSE) | |
457 { | |
458 return $res->fetch(); | |
459 } | |
460 else | |
461 { | |
462 stLogSQLError($sql); | |
463 stError("Oh noes! SQL error #31!"); | |
464 return FALSE; | |
465 } | |
466 } | |
467 | |
468 | |
469 function stFetchSQLColumn($sql, $column = 0) | |
470 { | |
471 global $db; | |
472 if (($res = $db->query($sql)) !== FALSE) | |
473 { | |
474 return $res->fetchColumn($column); | |
475 } | |
476 else | |
477 { | |
478 stLogSQLError($sql); | |
479 stError("Oh noes! SQL error #81!"); | |
480 return FALSE; | |
481 } | |
482 } | |
483 | |
484 | |
66
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
485 function stSetStatus($val, $msg) |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
486 { |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
487 global $statusSet; |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
488 if (!$statusSet) |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
489 { |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
490 header("Status: ".$val." ".$msg); |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
491 } |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
492 $statusSet = TRUE; |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
493 } |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
494 |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
495 |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
496 function stExecSQLCond($sql, $okmsg) |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
497 { |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
498 if (($res = stExecSQL($sql)) !== FALSE) |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
499 { |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
500 if ($okmsg != "") |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
501 stSetStatus(200, $okmsg); |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
502 return $res; |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
503 } |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
504 else |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
505 { |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
506 stSetStatus(900, "Error in SQL execution."); |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
507 return FALSE; |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
508 } |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
509 } |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
510 |
230aacc22cb4
Move some functions to site lib.
Matti Hamalainen <ccr@tnsp.org>
parents:
65
diff
changeset
|
511 |
135
eecac02579c4
Move stChop() to site module and rename it to stStrChop().
Matti Hamalainen <ccr@tnsp.org>
parents:
121
diff
changeset
|
512 function stStrChop($str, $len) |
eecac02579c4
Move stChop() to site module and rename it to stStrChop().
Matti Hamalainen <ccr@tnsp.org>
parents:
121
diff
changeset
|
513 { |
eecac02579c4
Move stChop() to site module and rename it to stStrChop().
Matti Hamalainen <ccr@tnsp.org>
parents:
121
diff
changeset
|
514 if (strlen($str) > $len) |
eecac02579c4
Move stChop() to site module and rename it to stStrChop().
Matti Hamalainen <ccr@tnsp.org>
parents:
121
diff
changeset
|
515 $s = substr($str, 0, $len - 3)."..."; |
eecac02579c4
Move stChop() to site module and rename it to stStrChop().
Matti Hamalainen <ccr@tnsp.org>
parents:
121
diff
changeset
|
516 else |
eecac02579c4
Move stChop() to site module and rename it to stStrChop().
Matti Hamalainen <ccr@tnsp.org>
parents:
121
diff
changeset
|
517 $s = $str; |
eecac02579c4
Move stChop() to site module and rename it to stStrChop().
Matti Hamalainen <ccr@tnsp.org>
parents:
121
diff
changeset
|
518 return sprintf("%-".$len."s", $s); |
eecac02579c4
Move stChop() to site module and rename it to stStrChop().
Matti Hamalainen <ccr@tnsp.org>
parents:
121
diff
changeset
|
519 } |
eecac02579c4
Move stChop() to site module and rename it to stStrChop().
Matti Hamalainen <ccr@tnsp.org>
parents:
121
diff
changeset
|
520 |
174
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
521 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
522 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
523 function cmLocaleInit() |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
524 { |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
525 global $pageCharset; |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
526 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
527 if (!isset($pageCharset)) |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
528 $pageCharset = "UTF-8"; |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
529 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
530 mb_internal_encoding($pageCharset); |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
531 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
532 $tmp = "en_US.".strtolower(str_replace("-", "", $pageCharset)); |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
533 setlocale(LC_ALL, $tmp); |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
534 } |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
535 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
536 |
180
a3f0f2a3551a
Split stylesheets into separate files for different platforms and also split
Matti Hamalainen <ccr@tnsp.org>
parents:
178
diff
changeset
|
537 function cmPrintCSSLine($uri, $media = "") |
174
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
538 { |
180
a3f0f2a3551a
Split stylesheets into separate files for different platforms and also split
Matti Hamalainen <ccr@tnsp.org>
parents:
178
diff
changeset
|
539 echo |
a3f0f2a3551a
Split stylesheets into separate files for different platforms and also split
Matti Hamalainen <ccr@tnsp.org>
parents:
178
diff
changeset
|
540 " <link rel=\"stylesheet\" href=\"".$uri. |
a3f0f2a3551a
Split stylesheets into separate files for different platforms and also split
Matti Hamalainen <ccr@tnsp.org>
parents:
178
diff
changeset
|
541 "\" type=\"text/css\" ".($media != "" ? "media=\"".$media."\"": "")." />\n"; |
174
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
542 } |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
543 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
544 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
545 function cmPrintPageHeader($pageTitle, $pageExtra = "", $useContents = TRUE) |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
546 { |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
547 global $pageCSS, $pageCharset, $pageAuthor, $pageCSSData, $pageUrchin; |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
548 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
549 echo |
178 | 550 "<html>\n". |
174
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
551 "<head>\n". |
178 | 552 " <meta charset=\"".$pageCharset."\">\n". |
174
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
553 " <title>".strip_tags($pageTitle)."</title>\n"; |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
554 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
555 if (is_array($pageCSS)) |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
556 { |
180
a3f0f2a3551a
Split stylesheets into separate files for different platforms and also split
Matti Hamalainen <ccr@tnsp.org>
parents:
178
diff
changeset
|
557 foreach ($pageCSS as $uri => $media) |
a3f0f2a3551a
Split stylesheets into separate files for different platforms and also split
Matti Hamalainen <ccr@tnsp.org>
parents:
178
diff
changeset
|
558 cmPrintCSSLine($uri, $media); |
174
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
559 } |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
560 else |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
561 { |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
562 cmPrintCSSLine($pageCSS); |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
563 } |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
564 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
565 echo $pageExtra."\n". |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
566 "</head>\n". |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
567 "<body>\n"; |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
568 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
569 if (isset($pageUrchin)) |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
570 require_once $pageUrchin; |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
571 else |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
572 require_once "urchin.inc.php"; |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
573 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
574 if ($useContents) |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
575 echo "<div id=\"contents\">\n"; |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
576 } |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
577 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
578 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
579 function cmPrintPageFooter($useContents = TRUE) |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
580 { |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
581 if ($useContents) |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
582 echo "</div>\n"; |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
583 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
584 echo "</body>\n</html>\n"; |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
585 } |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
586 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
587 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
588 function cmQM($msg) |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
589 { |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
590 global $pageTranslations, $pageLang; |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
591 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
592 if (isset($pageTranslations[$msg]) && isset($pageTranslations[$msg][$pageLang])) |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
593 $str = $pageTranslations[$msg][$pageLang]; |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
594 else |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
595 $str = $msg; |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
596 |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
597 foreach (func_get_args() as $argn => $argv) |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
598 $str = preg_replace("/\%".$argn."/", $argv, $str); |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
599 return $str; |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
600 } |
63c840590476
Move common code from mcommon.inc.php to msitegen module.
Matti Hamalainen <ccr@tnsp.org>
parents:
173
diff
changeset
|
601 |
0 | 602 ?> |