Mercurial > hg > batmud > maputils
annotate www/loc.php @ 1918:3075415f052e
Get rid of PHP_SELF usage.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Tue, 07 Nov 2017 19:09:11 +0200 |
parents | ed98d2fe4bca |
children | 3c03ca974e6a |
rev | line source |
---|---|
1646
2cbce82aa3c3
Use full <?php ?> tag, misc cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1638
diff
changeset
|
1 <?php |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
2 require "config.inc.php"; |
1272 | 3 require "world.inc.php"; |
337
ca191c3a0ce1
Updates and lots of new ugly glue.
Matti Hamalainen <ccr@tnsp.org>
parents:
321
diff
changeset
|
4 require "common.inc.php"; |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
5 |
1677
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
6 |
1112 | 7 // Wizard info box special formatting tags |
1609 | 8 $specTags = [ |
1112 | 9 "b" => "<b>", |
10 "\/b" => "</b>", | |
11 "i" => "<i>", | |
12 "\/i" => "</i>", | |
13 "p" => "<br /><br />", | |
14 "br" => "<br />", | |
1609 | 15 ]; |
1112 | 16 |
17 | |
976 | 18 function printTitleLink($afilter, $filter, $coders, $desc, $qname, $qclass) |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
19 { |
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
20 $s = ""; |
1567 | 21 if ($afilter) |
22 $s = "f=".$filter; | |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
23 |
1567 | 24 if (!$coders) |
25 { | |
801 | 26 if ($s !== "") $s .= "&"; |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
27 $s .= "s"; |
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
28 } |
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
29 |
1567 | 30 if ($qname !== "") |
31 { | |
801 | 32 if ($s !== "") $s .= "&"; |
33 $s .= "n=".$qname; | |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
34 } |
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
35 |
1567 | 36 echo |
37 " <a class=\"control continent ".$qclass. | |
1918
3075415f052e
Get rid of PHP_SELF usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
1900
diff
changeset
|
38 "\" href=\"?".$s."\">".$desc."</a>\n"; |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
39 } |
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
40 |
337
ca191c3a0ce1
Updates and lots of new ugly glue.
Matti Hamalainen <ccr@tnsp.org>
parents:
321
diff
changeset
|
41 |
1392 | 42 function qcheck($arr, $key, &$result) |
43 { | |
44 if (isset($key) && isset($arr[$key])) | |
45 { | |
46 $result = $arr[$key]; | |
47 return TRUE; | |
48 } | |
49 else | |
50 { | |
51 unset($result); | |
52 return FALSE; | |
53 } | |
54 } | |
55 | |
56 | |
57 | |
58 // | |
59 // Initialization | |
60 // | |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
61 if (isset($_GET["c"])) |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
62 { |
621 | 63 $filter = "C"; |
64 $applyFilter = TRUE; | |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
65 } |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
66 else |
1900 | 67 if (($filter = mpGetRequestItem("f", "", TRUE)) != "") |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
68 { |
1428
1aad929253ce
Allow to filter by '!' flag.
Matti Hamalainen <ccr@tnsp.org>
parents:
1401
diff
changeset
|
69 if (!preg_match("/^[\^A-Za-z!]+\$/", $filter)) |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
70 { |
1900 | 71 mpError("Invalid filter rule '".chentities($filter)."'"); |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
72 $filter = "C"; |
621 | 73 $applyFilter = FALSE; |
74 } | |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
75 else |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
76 $applyFilter = TRUE; |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
77 } |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
78 else |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
79 { |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
80 $filter = "CF"; |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
81 $applyFilter = FALSE; |
621 | 82 } |
83 | |
1638 | 84 |
337
ca191c3a0ce1
Updates and lots of new ugly glue.
Matti Hamalainen <ccr@tnsp.org>
parents:
321
diff
changeset
|
85 $showCoders = !isset($_GET["s"]); |
ca191c3a0ce1
Updates and lots of new ugly glue.
Matti Hamalainen <ccr@tnsp.org>
parents:
321
diff
changeset
|
86 |
1900 | 87 if (($tmpName = mpGetRequestItem("a", FALSE, TRUE)) !== false) |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
88 { |
1620
6d620441af7f
Rename various functions, and other cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1609
diff
changeset
|
89 if (preg_match("#^([a-z]{1,15})#i", $tmpName, $matches)) |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
90 { |
1620
6d620441af7f
Rename various functions, and other cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1609
diff
changeset
|
91 $coderName = $matches[1]; |
1084 | 92 $coderName = strtoupper(substr($coderName, 0, 1)).strtolower(substr($coderName, 1)); |
1150
02fe48a608d7
Use APC for caching of location and wizard data.
Matti Hamalainen <ccr@tnsp.org>
parents:
1148
diff
changeset
|
93 |
02fe48a608d7
Use APC for caching of location and wizard data.
Matti Hamalainen <ccr@tnsp.org>
parents:
1148
diff
changeset
|
94 $wizTable = apc_fetch("wizTable"); |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
95 if (empty($wizTable)) |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
96 { |
1620
6d620441af7f
Rename various functions, and other cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1609
diff
changeset
|
97 $wizTable = mpReadWizInfoFiles(); |
1150
02fe48a608d7
Use APC for caching of location and wizard data.
Matti Hamalainen <ccr@tnsp.org>
parents:
1148
diff
changeset
|
98 apc_store("wizTable", $wizTable, 3600); |
02fe48a608d7
Use APC for caching of location and wizard data.
Matti Hamalainen <ccr@tnsp.org>
parents:
1148
diff
changeset
|
99 } |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
100 } |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
101 else |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
102 { |
1084 | 103 $coderName = "???"; |
1900 | 104 mpError("Invalid wizard name."); |
1150
02fe48a608d7
Use APC for caching of location and wizard data.
Matti Hamalainen <ccr@tnsp.org>
parents:
1148
diff
changeset
|
105 } |
337
ca191c3a0ce1
Updates and lots of new ugly glue.
Matti Hamalainen <ccr@tnsp.org>
parents:
321
diff
changeset
|
106 } |
ca191c3a0ce1
Updates and lots of new ugly glue.
Matti Hamalainen <ccr@tnsp.org>
parents:
321
diff
changeset
|
107 |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
108 if (isset($_GET["n"])) |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
109 { |
1609 | 110 $locTable = []; |
1392 | 111 $setName = strtolower(trim(basename($_GET["n"]))); |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
112 if (file_exists($setName.".loc")) |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
113 { |
1150
02fe48a608d7
Use APC for caching of location and wizard data.
Matti Hamalainen <ccr@tnsp.org>
parents:
1148
diff
changeset
|
114 $locTable = apc_fetch("loc_".$setName); |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
115 if (empty($locTable)) |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
116 { |
1609 | 117 $locTable = []; |
1620
6d620441af7f
Rename various functions, and other cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1609
diff
changeset
|
118 mpParseLocFile($setName, $locTable, $applyFilter, $filter); |
1150
02fe48a608d7
Use APC for caching of location and wizard data.
Matti Hamalainen <ccr@tnsp.org>
parents:
1148
diff
changeset
|
119 apc_store("loc_".$setName, $locTable, 3600); |
02fe48a608d7
Use APC for caching of location and wizard data.
Matti Hamalainen <ccr@tnsp.org>
parents:
1148
diff
changeset
|
120 } |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
121 } |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
122 else |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
123 { |
1900 | 124 mpError("No such continent ID!"); |
337
ca191c3a0ce1
Updates and lots of new ugly glue.
Matti Hamalainen <ccr@tnsp.org>
parents:
321
diff
changeset
|
125 unset($setName); |
ca191c3a0ce1
Updates and lots of new ugly glue.
Matti Hamalainen <ccr@tnsp.org>
parents:
321
diff
changeset
|
126 } |
1392 | 127 } |
128 else | |
129 { | |
1150
02fe48a608d7
Use APC for caching of location and wizard data.
Matti Hamalainen <ccr@tnsp.org>
parents:
1148
diff
changeset
|
130 $locTable = apc_fetch("loc_locTable"); |
1392 | 131 if (empty($locTable)) |
132 { | |
1620
6d620441af7f
Rename various functions, and other cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1609
diff
changeset
|
133 $locTable = mpReadLocationFiles($applyFilter, $filter); |
1150
02fe48a608d7
Use APC for caching of location and wizard data.
Matti Hamalainen <ccr@tnsp.org>
parents:
1148
diff
changeset
|
134 apc_store("loc_locTable", $locTable, 3600); |
02fe48a608d7
Use APC for caching of location and wizard data.
Matti Hamalainen <ccr@tnsp.org>
parents:
1148
diff
changeset
|
135 } |
337
ca191c3a0ce1
Updates and lots of new ugly glue.
Matti Hamalainen <ccr@tnsp.org>
parents:
321
diff
changeset
|
136 } |
ca191c3a0ce1
Updates and lots of new ugly glue.
Matti Hamalainen <ccr@tnsp.org>
parents:
321
diff
changeset
|
137 |
1392 | 138 |
1638 | 139 // Make alphabetically sorted table of locations |
140 $alphaTable = []; | |
141 foreach ($locTable as $id => $data) | |
142 if (isset($data["name"])) | |
143 { | |
144 $idx = $data["name"][0]; | |
145 if (isset($_GET["nocoders"])) | |
146 { | |
147 if (count($data["coders"]) == 0 && !preg_match("/[SPG]/", $data["flags"])) | |
148 $alphaTable[$idx][] = $data; | |
149 } | |
150 else | |
151 if (isset($coderName)) | |
152 { | |
153 foreach ($data["coders"] as $coder) | |
154 { | |
155 if ($coderName == $coder["name"]) | |
156 $alphaTable[$idx][] = $data; | |
157 } | |
158 } | |
159 else | |
160 $alphaTable[$idx][] = $data; | |
161 } | |
162 | |
163 ksort($alphaTable, SORT_STRING); | |
164 | |
165 | |
166 // | |
167 // Start of the page | |
168 // | |
169 if ($applyFilter) | |
170 { | |
171 if (array_key_exists($filter, $locationTypes)) | |
172 | |
173 $mtitle = $locationTypes[$filter][2]; | |
174 else | |
175 $mtitle = "Filter '".$filter."'"; | |
176 } | |
177 else | |
178 $mtitle = "Locations"; | |
179 | |
180 $mtitle .= " of "; | |
181 | |
182 if (isset($setName) && isset($continentList[$setName])) | |
183 { | |
184 $mtitle .= $continentList[$setName][0]. | |
185 ($continentList[$setName][3] ? " in " : " continent in "); | |
186 } | |
187 | |
1620
6d620441af7f
Rename various functions, and other cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1609
diff
changeset
|
188 mpPrintPageHeader($pageTitle." - Locations", |
1694 | 189 " <script type=\"text/javascript\" src=\"tooltip.js\"></script>\n". |
190 " <meta name=\"robots\" content=\"nofollow\" />\n"); | |
1140
3bb8253db932
New website layout and some minor improvements.
Matti Hamalainen <ccr@tnsp.org>
parents:
1115
diff
changeset
|
191 |
3bb8253db932
New website layout and some minor improvements.
Matti Hamalainen <ccr@tnsp.org>
parents:
1115
diff
changeset
|
192 echo |
1638 | 193 "<h1>".$mtitle."BatMUD".(isset($coderName) ? " by ".chentities($coderName) : "")."</h1>\n". |
1918
3075415f052e
Get rid of PHP_SELF usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
1900
diff
changeset
|
194 "<form action=\"?\" method=\"get\">\n". |
1567 | 195 "<div class=\"controls\">\n"; |
1140
3bb8253db932
New website layout and some minor improvements.
Matti Hamalainen <ccr@tnsp.org>
parents:
1115
diff
changeset
|
196 |
622 | 197 if (isset($setName)) |
1694 | 198 echo " <input type=\"hidden\" name=\"n\" value=\"".chentities($setName)."\" />\n"; |
1392 | 199 |
1694 | 200 echo " <select class=\"control dropdown\" name=\"f\" onChange=\"this.form.submit();\">\n"; |
1392 | 201 foreach ($locationTypes as $id => $type) |
202 { | |
203 echo | |
1694 | 204 " <option value=\"".$id."\"". |
1392 | 205 (($applyFilter && $filter == $id) ? " selected=\"selected\"" : ""). |
206 ">".$type[3]."</option>\n"; | |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
207 } |
1392 | 208 echo |
1694 | 209 " </select>\n". |
210 " <noscript><input type=\"submit\" value=\" Update \" class=\"control submit\" /></noscript>\n"; | |
1392 | 211 |
212 | |
1331
2f142b33e4ed
Make location filter selector bar freeform div instead of table.
Matti Hamalainen <ccr@tnsp.org>
parents:
1329
diff
changeset
|
213 printTitleLink($applyFilter, $filter, $showCoders, "All continents", "", "all"); |
1392 | 214 foreach ($continentList as $continent => $data) |
215 { | |
1060
b78333d62d5b
Combine speciaList into continentList and clean up the code a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
1059
diff
changeset
|
216 if ($data[4]) |
b78333d62d5b
Combine speciaList into continentList and clean up the code a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
1059
diff
changeset
|
217 printTitleLink($applyFilter, $filter, $showCoders, $data[0], $continent, $continent); |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
218 } |
1115 | 219 printTitleLink($applyFilter, $filter, $showCoders, "Special", "special", "special"); |
1392 | 220 |
221 echo | |
1567 | 222 "</div>\n". |
223 "</form>\n"; | |
321 | 224 |
1329 | 225 |
1392 | 226 // |
227 // Wizard/coder/creator information box | |
228 // | |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
229 if (isset($coderName)) |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
230 { |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
231 if (isset($wizTable[$coderName]) && count($wizTable[$coderName]) > 1) |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
232 { |
1329 | 233 // Profile picture |
1494
9f9e1e1846f5
Fix obsoleted use of reference arguments.
Matti Hamalainen <ccr@tnsp.org>
parents:
1428
diff
changeset
|
234 if (qcheck($wizTable[$coderName], "imageURL", $s)) |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
235 { |
1329 | 236 // XXX: backwards compatibility check |
237 if (substr($s, 0, 6) == "bat://") | |
1401 | 238 $s = $wizImageURL."unknown.png"; |
239 else | |
240 if (substr($s, 0, 7) != "http://") | |
241 $s = $wizImageURL.$s; | |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
242 } |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
243 else |
1401 | 244 $s = $wizImageURL."unknown.png"; |
1112 | 245 |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
246 echo |
1677
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
247 "<div class=\"wizInfoBox\">\n". |
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
248 " <div class=\"wizImage\"><img src=\"".$s."\" alt=\"".$coderName."\" /></div>\n". |
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
249 " <div class=\"wizInfo\">\n". |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
250 " <h2>".$coderName."</h2>\n"; |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
251 |
1329 | 252 // Description block |
1494
9f9e1e1846f5
Fix obsoleted use of reference arguments.
Matti Hamalainen <ccr@tnsp.org>
parents:
1428
diff
changeset
|
253 if (qcheck($wizTable[$coderName], "desc", $str)) |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
254 { |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
255 // Handle special tags |
1918
3075415f052e
Get rid of PHP_SELF usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
1900
diff
changeset
|
256 $str = preg_replace("/\~([A-Z][a-z]+)\~/i", "<a href=\"?a=\${1}\">\${1}</a>", $str); |
1112 | 257 |
1329 | 258 foreach ($specTags as $tag => $rep) |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
259 $str = preg_replace("/\[".$tag."\]/i", $rep, $str); |
1112 | 260 |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
261 echo " <p>".$str."</p>\n"; |
1329 | 262 } |
321 | 263 |
1329 | 264 // Links, etc. |
1620
6d620441af7f
Rename various functions, and other cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1609
diff
changeset
|
265 echo " [<a href=\"".mpFingerURL($coderName)."\">Finger</a>]\n"; |
337
ca191c3a0ce1
Updates and lots of new ugly glue.
Matti Hamalainen <ccr@tnsp.org>
parents:
321
diff
changeset
|
266 |
1494
9f9e1e1846f5
Fix obsoleted use of reference arguments.
Matti Hamalainen <ccr@tnsp.org>
parents:
1428
diff
changeset
|
267 if (qcheck($wizTable[$coderName], "homeURL", $s)) |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
268 { |
1329 | 269 if ($s == "bat") |
270 $s = "http://wiz.bat.org/~".strtolower($coderName)."/"; | |
271 | |
272 echo " [<a href=\"".$s."\">Homepage</a>]<br />\n"; | |
273 } | |
1638 | 274 |
275 echo | |
1677
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
276 " </div>\n". |
1638 | 277 "</div>\n"; |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
278 } |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
279 else |
1900 | 280 mpError("No information entry for this wizard."); |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
281 } |
488 | 282 |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
283 |
1392 | 284 // |
285 // Print out errors | |
286 // | |
287 if ($errorSet) | |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
288 { |
1392 | 289 echo |
290 "<div style=\"color: red;\">\n". | |
291 " <ul>\n"; | |
292 | |
293 foreach ($errorMsgs as $msg) | |
294 echo " <li>".$msg."</li>\n"; | |
295 | |
296 echo | |
297 " </ul>\n". | |
298 "</div>\n"; | |
299 } | |
300 | |
301 | |
302 // | |
303 // Print list of locations | |
304 // | |
1638 | 305 if (count($alphaTable) > 0) |
1392 | 306 { |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
307 |
1609 | 308 $locationTips = []; |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
309 $totalLoc = 0; |
1656 | 310 $maxColumns = 6; |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
311 foreach ($alphaTable as $alpha => $alphaLocs) |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
312 { |
908 | 313 if (count($alphaLocs) <= 0) continue; |
1148
52550f58cee5
Move alphabetic table printing code to a function in common routines.
Matti Hamalainen <ccr@tnsp.org>
parents:
1140
diff
changeset
|
314 $letter = strtoupper($alpha); |
817
eaba088b5424
Show alternative location names on location page.
Matti Hamalainen <ccr@tnsp.org>
parents:
816
diff
changeset
|
315 |
908 | 316 asort($alphaLocs); |
1148
52550f58cee5
Move alphabetic table printing code to a function in common routines.
Matti Hamalainen <ccr@tnsp.org>
parents:
1140
diff
changeset
|
317 |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
318 echo |
1630 | 319 "<h3 class=\"alpha\"><a id=\"ch".$letter."\"></a>".$letter."</h3>\n". |
320 mpSpecialDate("loc", 2). | |
1677
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
321 "<div class=\"locTable\">\n"; |
817
eaba088b5424
Show alternative location names on location page.
Matti Hamalainen <ccr@tnsp.org>
parents:
816
diff
changeset
|
322 |
eaba088b5424
Show alternative location names on location page.
Matti Hamalainen <ccr@tnsp.org>
parents:
816
diff
changeset
|
323 $n = 0; |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
324 foreach ($alphaLocs as $ik => $iv) |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
325 { |
908 | 326 $totalLoc++; |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
327 |
908 | 328 // Print location entry |
1677
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
329 echo |
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
330 " <div class=\"locCell ".$iv["continent"]."\">". |
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
331 "<div class=\"locHeader\">". |
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
332 "<span class=\"locTitle\">".mpGetMapLink($iv, $continentList[$iv["continent"]][4])."</span>"; |
908 | 333 |
334 // If either freeform desc or URL field are set, we add those | |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
335 if (isset($iv["url"]) || isset($iv["freeform"])) |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
336 { |
908 | 337 // Free form description |
926 | 338 $desc = isset($iv["freeform"]) ? chentities($iv["freeform"]) : ""; |
908 | 339 |
340 // Add URL information, chopped, if any | |
1392 | 341 if (isset($iv["url"])) |
342 { | |
908 | 343 $urlEnt = $iv["url"]; |
926 | 344 $urlBegin = "<a href=\"".chentities($urlEnt)."\" target=\"_blank\">"; |
908 | 345 $urlEnd = "</a>"; |
346 if (strlen($iv["url"]) > 40) | |
347 $urlEnt = substr($urlEnt, 0, 40)."..."; | |
1677
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
348 $desc .= "<div class=\"locURL\">".chentities($urlEnt)."</div>"; |
1392 | 349 } |
350 else | |
351 { | |
908 | 352 $urlBegin = $urlEnd = ""; |
509 | 353 } |
602
e46ee0632810
Add link via URL field too.
Matti Hamalainen <ccr@tnsp.org>
parents:
601
diff
changeset
|
354 |
1392 | 355 echo |
1702 | 356 " ".$urlBegin. |
357 // "<img src=\"img/question.png\" onmouseover=\"stt(".$totalLoc. | |
358 // ");\" onmouseout=\"htt();\" alt=\"(?)\" />". | |
359 "<span onmouseover=\"stt(".$totalLoc. | |
360 ");\" onmouseout=\"htt();\">🍔</span>". | |
361 $urlEnd; | |
519 | 362 |
1609 | 363 $locationTips[$totalLoc] = [ |
908 | 364 "title" => $iv["name"], |
365 "desc" => $desc | |
1609 | 366 ]; |
1677
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
367 } |
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
368 |
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
369 echo "</div>"; // locHeader |
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
370 |
908 | 371 // Alternative names |
1392 | 372 if (($nnames = count($iv["names"])) > 1) |
373 { | |
1609 | 374 $fs = []; |
1392 | 375 for ($nname = 1; $nname < $nnames; $nname++) |
376 { | |
377 $norig = $iv["names"][$nname]["flags"] & NAME_ORIG; | |
378 $fs[] = | |
379 ($norig ? "<b>" : ""). | |
380 chentities($iv["names"][$nname]["name"]). | |
381 ($norig ? "</b>" : ""); | |
975
af0fc3a965dc
Fix all the web-interface PHP crap to work with the new LOC file format. Urgh. This shit could really use some refactoring cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents:
926
diff
changeset
|
382 } |
1677
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
383 echo "<div class=\"locAltNames\">".implode(" | ", $fs)."</div>"; |
908 | 384 } |
817
eaba088b5424
Show alternative location names on location page.
Matti Hamalainen <ccr@tnsp.org>
parents:
816
diff
changeset
|
385 |
908 | 386 // Coder / society names |
1392 | 387 if (count($iv["coders"]) > 0 && $showCoders) |
388 { | |
908 | 389 $isSG = preg_match("/[SG]/", $iv["flags"]); |
1392 | 390 if ((!isset($coderName) && !$isSG) || isset($coderName)) |
391 { | |
1609 | 392 $fs = []; |
1392 | 393 foreach ($iv["coders"] as $name) |
394 { | |
1140
3bb8253db932
New website layout and some minor improvements.
Matti Hamalainen <ccr@tnsp.org>
parents:
1115
diff
changeset
|
395 // Tags/flags of this coder in relation to the area |
1392 | 396 switch ($name["flags"]) |
397 { | |
1140
3bb8253db932
New website layout and some minor improvements.
Matti Hamalainen <ccr@tnsp.org>
parents:
1115
diff
changeset
|
398 case NAME_ORIG: $qs = "title=\"Original creator\" class=\"wizorig\""; break; |
3bb8253db932
New website layout and some minor improvements.
Matti Hamalainen <ccr@tnsp.org>
parents:
1115
diff
changeset
|
399 case NAME_RECODER: $qs = "title=\"Converter, recoder\" class=\"wizrecoder\""; break; |
3bb8253db932
New website layout and some minor improvements.
Matti Hamalainen <ccr@tnsp.org>
parents:
1115
diff
changeset
|
400 case NAME_MAINTAINER: $qs = "title=\"Maintainer\" class=\"wizmaintainer\""; break; |
3bb8253db932
New website layout and some minor improvements.
Matti Hamalainen <ccr@tnsp.org>
parents:
1115
diff
changeset
|
401 case NAME_EXPANDER: $qs = "title=\"Implemented new content, expansion(s)\" class=\"wizexpander\""; break; |
975
af0fc3a965dc
Fix all the web-interface PHP crap to work with the new LOC file format. Urgh. This shit could really use some refactoring cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents:
926
diff
changeset
|
402 default: $qs = ""; |
af0fc3a965dc
Fix all the web-interface PHP crap to work with the new LOC file format. Urgh. This shit could really use some refactoring cleanup.
Matti Hamalainen <ccr@tnsp.org>
parents:
926
diff
changeset
|
403 } |
679 | 404 if ($filter != "C" || !$applyFilter) |
1918
3075415f052e
Get rid of PHP_SELF usage.
Matti Hamalainen <ccr@tnsp.org>
parents:
1900
diff
changeset
|
405 $fs[] = "<a ".$qs." href=\"?a=".$name["name"]."\">".$name["name"]."</a>"; |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
406 else |
1392 | 407 $fs[] = $name["name"]; |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
408 } |
1677
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
409 echo "<div class=\"locCoders\">".implode(", ", $fs)."</div>"; |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
410 } |
908 | 411 } |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
412 |
1677
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
413 echo "</div>\n"; |
908 | 414 } |
1677
9d51b4138e7d
CSS updates and related code changes.
Matti Hamalainen <ccr@tnsp.org>
parents:
1656
diff
changeset
|
415 echo "</div>\n"; |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
416 } |
519 | 417 |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
418 echo |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
419 "<p><b>".$totalLoc."</b> locations.</p>\n". |
1391 | 420 "</div>\n"; // end of contents div |
1140
3bb8253db932
New website layout and some minor improvements.
Matti Hamalainen <ccr@tnsp.org>
parents:
1115
diff
changeset
|
421 |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
422 // Print out location tooltip HTML code |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
423 foreach ($locationTips as $tipID => $tip) |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
424 { |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
425 echo |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
426 "<div class=\"tooltip\" id=\"tt".$tipID. |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
427 "\"><div class=\"holder\"><b>".chentities($tip["title"]). |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
428 "</b><br />".$tip["desc"]."</div></div>\n"; |
519 | 429 } |
1140
3bb8253db932
New website layout and some minor improvements.
Matti Hamalainen <ccr@tnsp.org>
parents:
1115
diff
changeset
|
430 |
1391 | 431 // Print out the alpha link index div |
1620
6d620441af7f
Rename various functions, and other cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1609
diff
changeset
|
432 mpPrintExtraBoxAlphaList("ch", $alphaTable); |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
433 } |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
434 else |
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
435 { |
1391 | 436 echo |
437 "<p><b>No locations known!</b></p>\n". | |
438 "</div>\n"; // end of contents div | |
439 | |
1900 | 440 mpError("No locations known!"); |
300
edac314ac9bb
Added in the ugly PHP-glue used in http://tnsp.org/maps/
Matti Hamalainen <ccr@tnsp.org>
parents:
diff
changeset
|
441 } |
1387
2b6b38e94bb2
Various minor code cleanups.
Matti Hamalainen <ccr@tnsp.org>
parents:
1331
diff
changeset
|
442 |
1891
68b784c7eae2
Get rid of mgeneric.inc.php here.
Matti Hamalainen <ccr@tnsp.org>
parents:
1702
diff
changeset
|
443 mpPrintPageFooter(FALSE); |
1151
e0794ddb605e
Add output caching to main page and location page.
Matti Hamalainen <ccr@tnsp.org>
parents:
1150
diff
changeset
|
444 ?> |