@@ -38,12 +38,12 @@ discard block |
||
38 | 38 | $version = $smcFunc['db_get_version'](); |
39 | 39 | // if we got a Beta Version |
40 | 40 | if (stripos($version, 'beta') !== false) |
41 | - $version = substr($version, 0, stripos($version, 'beta')).'.0'; |
|
41 | + $version = substr($version, 0, stripos($version, 'beta')) . '.0'; |
|
42 | 42 | // or RC |
43 | 43 | if (stripos($version, 'rc') !== false) |
44 | - $version = substr($version, 0, stripos($version, 'rc')).'.0'; |
|
44 | + $version = substr($version, 0, stripos($version, 'rc')) . '.0'; |
|
45 | 45 | |
46 | - if (version_compare($version,'9.5.0','>=')) |
|
46 | + if (version_compare($version, '9.5.0', '>=')) |
|
47 | 47 | $smcFunc['db_support_ignore'] = true; |
48 | 48 | } |
49 | 49 | |
@@ -55,7 +55,7 @@ discard block |
||
55 | 55 | */ |
56 | 56 | function smf_db_search_support($search_type) |
57 | 57 | { |
58 | - $supported_types = array('custom','fulltext'); |
|
58 | + $supported_types = array('custom', 'fulltext'); |
|
59 | 59 | |
60 | 60 | return in_array($search_type, $supported_types); |
61 | 61 | } |
@@ -109,9 +109,9 @@ discard block |
||
109 | 109 | if (preg_match('~^\s*INSERT\sIGNORE~i', $db_string) != 0) |
110 | 110 | { |
111 | 111 | $db_string = preg_replace('~^\s*INSERT\sIGNORE~i', 'INSERT', $db_string); |
112 | - if ($smcFunc['db_support_ignore']){ |
|
112 | + if ($smcFunc['db_support_ignore']) { |
|
113 | 113 | //pg style "INSERT INTO.... ON CONFLICT DO NOTHING" |
114 | - $db_string = $db_string.' ON CONFLICT DO NOTHING'; |
|
114 | + $db_string = $db_string . ' ON CONFLICT DO NOTHING'; |
|
115 | 115 | } |
116 | 116 | else |
117 | 117 | { |
@@ -168,7 +168,7 @@ discard block |
||
168 | 168 | $language_ftx = $modSettings['search_language']; |
169 | 169 | else |
170 | 170 | { |
171 | - $request = $smcFunc['db_query']('',' |
|
171 | + $request = $smcFunc['db_query']('', ' |
|
172 | 172 | SELECT cfgname FROM pg_ts_config WHERE oid = current_setting({string:default_language})::regconfig', |
173 | 173 | array( |
174 | 174 | 'default_language' => 'default_text_search_config' |
@@ -13,8 +13,9 @@ discard block |
||
13 | 13 | * @version 2.1 Beta 4 |
14 | 14 | */ |
15 | 15 | |
16 | -if (!defined('SMF')) |
|
16 | +if (!defined('SMF')) { |
|
17 | 17 | die('No direct access...'); |
18 | +} |
|
18 | 19 | |
19 | 20 | /** |
20 | 21 | * Add the file functions to the $smcFunc array. |
@@ -23,29 +24,33 @@ discard block |
||
23 | 24 | { |
24 | 25 | global $smcFunc; |
25 | 26 | |
26 | - if (!isset($smcFunc['db_search_query']) || $smcFunc['db_search_query'] != 'smf_db_search_query') |
|
27 | - $smcFunc += array( |
|
27 | + if (!isset($smcFunc['db_search_query']) || $smcFunc['db_search_query'] != 'smf_db_search_query') { |
|
28 | + $smcFunc += array( |
|
28 | 29 | 'db_search_query' => 'smf_db_search_query', |
29 | 30 | 'db_search_support' => 'smf_db_search_support', |
30 | 31 | 'db_create_word_search' => 'smf_db_create_word_search', |
31 | 32 | 'db_support_ignore' => false, |
32 | 33 | 'db_search_language' => 'smf_db_search_language', |
33 | 34 | ); |
35 | + } |
|
34 | 36 | |
35 | 37 | db_extend(); |
36 | 38 | |
37 | 39 | //pg 9.5 got ignore support |
38 | 40 | $version = $smcFunc['db_get_version'](); |
39 | 41 | // if we got a Beta Version |
40 | - if (stripos($version, 'beta') !== false) |
|
41 | - $version = substr($version, 0, stripos($version, 'beta')).'.0'; |
|
42 | + if (stripos($version, 'beta') !== false) { |
|
43 | + $version = substr($version, 0, stripos($version, 'beta')).'.0'; |
|
44 | + } |
|
42 | 45 | // or RC |
43 | - if (stripos($version, 'rc') !== false) |
|
44 | - $version = substr($version, 0, stripos($version, 'rc')).'.0'; |
|
46 | + if (stripos($version, 'rc') !== false) { |
|
47 | + $version = substr($version, 0, stripos($version, 'rc')).'.0'; |
|
48 | + } |
|
45 | 49 | |
46 | - if (version_compare($version,'9.5.0','>=')) |
|
47 | - $smcFunc['db_support_ignore'] = true; |
|
48 | -} |
|
50 | + if (version_compare($version,'9.5.0','>=')) { |
|
51 | + $smcFunc['db_support_ignore'] = true; |
|
52 | + } |
|
53 | + } |
|
49 | 54 | |
50 | 55 | /** |
51 | 56 | * This function will tell you whether this database type supports this search type. |
@@ -104,16 +109,16 @@ discard block |
||
104 | 109 | ), |
105 | 110 | ); |
106 | 111 | |
107 | - if (isset($replacements[$identifier])) |
|
108 | - $db_string = preg_replace(array_keys($replacements[$identifier]), array_values($replacements[$identifier]), $db_string); |
|
112 | + if (isset($replacements[$identifier])) { |
|
113 | + $db_string = preg_replace(array_keys($replacements[$identifier]), array_values($replacements[$identifier]), $db_string); |
|
114 | + } |
|
109 | 115 | if (preg_match('~^\s*INSERT\sIGNORE~i', $db_string) != 0) |
110 | 116 | { |
111 | 117 | $db_string = preg_replace('~^\s*INSERT\sIGNORE~i', 'INSERT', $db_string); |
112 | 118 | if ($smcFunc['db_support_ignore']){ |
113 | 119 | //pg style "INSERT INTO.... ON CONFLICT DO NOTHING" |
114 | 120 | $db_string = $db_string.' ON CONFLICT DO NOTHING'; |
115 | - } |
|
116 | - else |
|
121 | + } else |
|
117 | 122 | { |
118 | 123 | // Don't error on multi-insert. |
119 | 124 | $db_values['db_error_skip'] = true; |
@@ -121,8 +126,9 @@ discard block |
||
121 | 126 | } |
122 | 127 | |
123 | 128 | //fix double quotes |
124 | - if ($identifier == 'insert_into_log_messages_fulltext') |
|
125 | - $db_values = str_replace('"', "'", $db_values); |
|
129 | + if ($identifier == 'insert_into_log_messages_fulltext') { |
|
130 | + $db_values = str_replace('"', "'", $db_values); |
|
131 | + } |
|
126 | 132 | |
127 | 133 | $return = $smcFunc['db_query']('', $db_string, |
128 | 134 | $db_values, $connection |
@@ -164,9 +170,9 @@ discard block |
||
164 | 170 | |
165 | 171 | $language_ftx = 'english'; |
166 | 172 | |
167 | - if (!empty($modSettings['search_language'])) |
|
168 | - $language_ftx = $modSettings['search_language']; |
|
169 | - else |
|
173 | + if (!empty($modSettings['search_language'])) { |
|
174 | + $language_ftx = $modSettings['search_language']; |
|
175 | + } else |
|
170 | 176 | { |
171 | 177 | $request = $smcFunc['db_query']('',' |
172 | 178 | SELECT cfgname FROM pg_ts_config WHERE oid = current_setting({string:default_language})::regconfig', |
@@ -676,7 +676,7 @@ discard block |
||
676 | 676 | * - caches the formatting data from the setting for optimization. |
677 | 677 | * |
678 | 678 | * @param float $number A number |
679 | - * @param bool|int $override_decimal_count If set, will use the specified number of decimal places. Otherwise it's automatically determined |
|
679 | + * @param integer $override_decimal_count If set, will use the specified number of decimal places. Otherwise it's automatically determined |
|
680 | 680 | * @return string A formatted number |
681 | 681 | */ |
682 | 682 | function comma_format($number, $override_decimal_count = false) |
@@ -5530,7 +5530,7 @@ discard block |
||
5530 | 5530 | * It assumes the data is already a string. |
5531 | 5531 | * @param string $data The data to print |
5532 | 5532 | * @param string $type The content type. Defaults to Json. |
5533 | - * @return void |
|
5533 | + * @return false|null |
|
5534 | 5534 | */ |
5535 | 5535 | function smf_serverResponse($data = '', $type = 'Content-Type: application/json') |
5536 | 5536 | { |
@@ -13,8 +13,9 @@ discard block |
||
13 | 13 | * @version 2.1 Beta 4 |
14 | 14 | */ |
15 | 15 | |
16 | -if (!defined('SMF')) |
|
16 | +if (!defined('SMF')) { |
|
17 | 17 | die('No direct access...'); |
18 | +} |
|
18 | 19 | |
19 | 20 | /** |
20 | 21 | * Update some basic statistics. |
@@ -122,10 +123,11 @@ discard block |
||
122 | 123 | $smcFunc['db_free_result']($result); |
123 | 124 | |
124 | 125 | // Add this to the number of unapproved members |
125 | - if (!empty($changes['unapprovedMembers'])) |
|
126 | - $changes['unapprovedMembers'] += $coppa_approvals; |
|
127 | - else |
|
128 | - $changes['unapprovedMembers'] = $coppa_approvals; |
|
126 | + if (!empty($changes['unapprovedMembers'])) { |
|
127 | + $changes['unapprovedMembers'] += $coppa_approvals; |
|
128 | + } else { |
|
129 | + $changes['unapprovedMembers'] = $coppa_approvals; |
|
130 | + } |
|
129 | 131 | } |
130 | 132 | } |
131 | 133 | } |
@@ -133,9 +135,9 @@ discard block |
||
133 | 135 | break; |
134 | 136 | |
135 | 137 | case 'message': |
136 | - if ($parameter1 === true && $parameter2 !== null) |
|
137 | - updateSettings(array('totalMessages' => true, 'maxMsgID' => $parameter2), true); |
|
138 | - else |
|
138 | + if ($parameter1 === true && $parameter2 !== null) { |
|
139 | + updateSettings(array('totalMessages' => true, 'maxMsgID' => $parameter2), true); |
|
140 | + } else |
|
139 | 141 | { |
140 | 142 | // SUM and MAX on a smaller table is better for InnoDB tables. |
141 | 143 | $result = $smcFunc['db_query']('', ' |
@@ -175,23 +177,25 @@ discard block |
||
175 | 177 | $parameter2 = text2words($parameter2); |
176 | 178 | |
177 | 179 | $inserts = array(); |
178 | - foreach ($parameter2 as $word) |
|
179 | - $inserts[] = array($word, $parameter1); |
|
180 | + foreach ($parameter2 as $word) { |
|
181 | + $inserts[] = array($word, $parameter1); |
|
182 | + } |
|
180 | 183 | |
181 | - if (!empty($inserts)) |
|
182 | - $smcFunc['db_insert']('ignore', |
|
184 | + if (!empty($inserts)) { |
|
185 | + $smcFunc['db_insert']('ignore', |
|
183 | 186 | '{db_prefix}log_search_subjects', |
184 | 187 | array('word' => 'string', 'id_topic' => 'int'), |
185 | 188 | $inserts, |
186 | 189 | array('word', 'id_topic') |
187 | 190 | ); |
191 | + } |
|
188 | 192 | } |
189 | 193 | break; |
190 | 194 | |
191 | 195 | case 'topic': |
192 | - if ($parameter1 === true) |
|
193 | - updateSettings(array('totalTopics' => true), true); |
|
194 | - else |
|
196 | + if ($parameter1 === true) { |
|
197 | + updateSettings(array('totalTopics' => true), true); |
|
198 | + } else |
|
195 | 199 | { |
196 | 200 | // Get the number of topics - a SUM is better for InnoDB tables. |
197 | 201 | // We also ignore the recycle bin here because there will probably be a bunch of one-post topics there. |
@@ -212,8 +216,9 @@ discard block |
||
212 | 216 | |
213 | 217 | case 'postgroups': |
214 | 218 | // Parameter two is the updated columns: we should check to see if we base groups off any of these. |
215 | - if ($parameter2 !== null && !in_array('posts', $parameter2)) |
|
216 | - return; |
|
219 | + if ($parameter2 !== null && !in_array('posts', $parameter2)) { |
|
220 | + return; |
|
221 | + } |
|
217 | 222 | |
218 | 223 | $postgroups = cache_get_data('updateStats:postgroups', 360); |
219 | 224 | if ($postgroups == null || $parameter1 == null) |
@@ -228,8 +233,9 @@ discard block |
||
228 | 233 | ) |
229 | 234 | ); |
230 | 235 | $postgroups = array(); |
231 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
232 | - $postgroups[$row['id_group']] = $row['min_posts']; |
|
236 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
237 | + $postgroups[$row['id_group']] = $row['min_posts']; |
|
238 | + } |
|
233 | 239 | $smcFunc['db_free_result']($request); |
234 | 240 | |
235 | 241 | // Sort them this way because if it's done with MySQL it causes a filesort :(. |
@@ -239,8 +245,9 @@ discard block |
||
239 | 245 | } |
240 | 246 | |
241 | 247 | // Oh great, they've screwed their post groups. |
242 | - if (empty($postgroups)) |
|
243 | - return; |
|
248 | + if (empty($postgroups)) { |
|
249 | + return; |
|
250 | + } |
|
244 | 251 | |
245 | 252 | // Set all membergroups from most posts to least posts. |
246 | 253 | $conditions = ''; |
@@ -298,10 +305,9 @@ discard block |
||
298 | 305 | { |
299 | 306 | $condition = 'id_member IN ({array_int:members})'; |
300 | 307 | $parameters['members'] = $members; |
301 | - } |
|
302 | - elseif ($members === null) |
|
303 | - $condition = '1=1'; |
|
304 | - else |
|
308 | + } elseif ($members === null) { |
|
309 | + $condition = '1=1'; |
|
310 | + } else |
|
305 | 311 | { |
306 | 312 | $condition = 'id_member = {int:member}'; |
307 | 313 | $parameters['member'] = $members; |
@@ -341,9 +347,9 @@ discard block |
||
341 | 347 | if (count($vars_to_integrate) != 0) |
342 | 348 | { |
343 | 349 | // Fetch a list of member_names if necessary |
344 | - if ((!is_array($members) && $members === $user_info['id']) || (is_array($members) && count($members) == 1 && in_array($user_info['id'], $members))) |
|
345 | - $member_names = array($user_info['username']); |
|
346 | - else |
|
350 | + if ((!is_array($members) && $members === $user_info['id']) || (is_array($members) && count($members) == 1 && in_array($user_info['id'], $members))) { |
|
351 | + $member_names = array($user_info['username']); |
|
352 | + } else |
|
347 | 353 | { |
348 | 354 | $member_names = array(); |
349 | 355 | $request = $smcFunc['db_query']('', ' |
@@ -352,14 +358,16 @@ discard block |
||
352 | 358 | WHERE ' . $condition, |
353 | 359 | $parameters |
354 | 360 | ); |
355 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
356 | - $member_names[] = $row['member_name']; |
|
361 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
362 | + $member_names[] = $row['member_name']; |
|
363 | + } |
|
357 | 364 | $smcFunc['db_free_result']($request); |
358 | 365 | } |
359 | 366 | |
360 | - if (!empty($member_names)) |
|
361 | - foreach ($vars_to_integrate as $var) |
|
367 | + if (!empty($member_names)) { |
|
368 | + foreach ($vars_to_integrate as $var) |
|
362 | 369 | call_integration_hook('integrate_change_member_data', array($member_names, $var, &$data[$var], &$knownInts, &$knownFloats)); |
370 | + } |
|
363 | 371 | } |
364 | 372 | } |
365 | 373 | |
@@ -367,16 +375,17 @@ discard block |
||
367 | 375 | foreach ($data as $var => $val) |
368 | 376 | { |
369 | 377 | $type = 'string'; |
370 | - if (in_array($var, $knownInts)) |
|
371 | - $type = 'int'; |
|
372 | - elseif (in_array($var, $knownFloats)) |
|
373 | - $type = 'float'; |
|
374 | - elseif ($var == 'birthdate') |
|
375 | - $type = 'date'; |
|
376 | - elseif ($var == 'member_ip') |
|
377 | - $type = 'inet'; |
|
378 | - elseif ($var == 'member_ip2') |
|
379 | - $type = 'inet'; |
|
378 | + if (in_array($var, $knownInts)) { |
|
379 | + $type = 'int'; |
|
380 | + } elseif (in_array($var, $knownFloats)) { |
|
381 | + $type = 'float'; |
|
382 | + } elseif ($var == 'birthdate') { |
|
383 | + $type = 'date'; |
|
384 | + } elseif ($var == 'member_ip') { |
|
385 | + $type = 'inet'; |
|
386 | + } elseif ($var == 'member_ip2') { |
|
387 | + $type = 'inet'; |
|
388 | + } |
|
380 | 389 | |
381 | 390 | // Doing an increment? |
382 | 391 | if ($var == 'alerts' && ($val === '+' || $val === '-')) |
@@ -385,18 +394,17 @@ discard block |
||
385 | 394 | if (is_array($members)) |
386 | 395 | { |
387 | 396 | $val = 'CASE '; |
388 | - foreach ($members as $k => $v) |
|
389 | - $val .= 'WHEN id_member = ' . $v . ' THEN '. count(fetch_alerts($v, false, 0, array(), false)) . ' '; |
|
397 | + foreach ($members as $k => $v) { |
|
398 | + $val .= 'WHEN id_member = ' . $v . ' THEN '. count(fetch_alerts($v, false, 0, array(), false)) . ' '; |
|
399 | + } |
|
390 | 400 | $val = $val . ' END'; |
391 | 401 | $type = 'raw'; |
392 | - } |
|
393 | - else |
|
402 | + } else |
|
394 | 403 | { |
395 | 404 | $blub = fetch_alerts($members, false, 0, array(), false); |
396 | 405 | $val = count($blub); |
397 | 406 | } |
398 | - } |
|
399 | - else if ($type == 'int' && ($val === '+' || $val === '-')) |
|
407 | + } else if ($type == 'int' && ($val === '+' || $val === '-')) |
|
400 | 408 | { |
401 | 409 | $val = $var . ' ' . $val . ' 1'; |
402 | 410 | $type = 'raw'; |
@@ -407,8 +415,9 @@ discard block |
||
407 | 415 | { |
408 | 416 | if (preg_match('~^' . $var . ' (\+ |- |\+ -)([\d]+)~', $val, $match)) |
409 | 417 | { |
410 | - if ($match[1] != '+ ') |
|
411 | - $val = 'CASE WHEN ' . $var . ' <= ' . abs($match[2]) . ' THEN 0 ELSE ' . $val . ' END'; |
|
418 | + if ($match[1] != '+ ') { |
|
419 | + $val = 'CASE WHEN ' . $var . ' <= ' . abs($match[2]) . ' THEN 0 ELSE ' . $val . ' END'; |
|
420 | + } |
|
412 | 421 | $type = 'raw'; |
413 | 422 | } |
414 | 423 | } |
@@ -429,8 +438,9 @@ discard block |
||
429 | 438 | // Clear any caching? |
430 | 439 | if (!empty($modSettings['cache_enable']) && $modSettings['cache_enable'] >= 2 && !empty($members)) |
431 | 440 | { |
432 | - if (!is_array($members)) |
|
433 | - $members = array($members); |
|
441 | + if (!is_array($members)) { |
|
442 | + $members = array($members); |
|
443 | + } |
|
434 | 444 | |
435 | 445 | foreach ($members as $member) |
436 | 446 | { |
@@ -463,29 +473,32 @@ discard block |
||
463 | 473 | { |
464 | 474 | global $modSettings, $smcFunc; |
465 | 475 | |
466 | - if (empty($changeArray) || !is_array($changeArray)) |
|
467 | - return; |
|
476 | + if (empty($changeArray) || !is_array($changeArray)) { |
|
477 | + return; |
|
478 | + } |
|
468 | 479 | |
469 | 480 | $toRemove = array(); |
470 | 481 | |
471 | 482 | // Go check if there is any setting to be removed. |
472 | - foreach ($changeArray as $k => $v) |
|
473 | - if ($v === null) |
|
483 | + foreach ($changeArray as $k => $v) { |
|
484 | + if ($v === null) |
|
474 | 485 | { |
475 | 486 | // Found some, remove them from the original array and add them to ours. |
476 | 487 | unset($changeArray[$k]); |
488 | + } |
|
477 | 489 | $toRemove[] = $k; |
478 | 490 | } |
479 | 491 | |
480 | 492 | // Proceed with the deletion. |
481 | - if (!empty($toRemove)) |
|
482 | - $smcFunc['db_query']('', ' |
|
493 | + if (!empty($toRemove)) { |
|
494 | + $smcFunc['db_query']('', ' |
|
483 | 495 | DELETE FROM {db_prefix}settings |
484 | 496 | WHERE variable IN ({array_string:remove})', |
485 | 497 | array( |
486 | 498 | 'remove' => $toRemove, |
487 | 499 | ) |
488 | 500 | ); |
501 | + } |
|
489 | 502 | |
490 | 503 | // In some cases, this may be better and faster, but for large sets we don't want so many UPDATEs. |
491 | 504 | if ($update) |
@@ -514,19 +527,22 @@ discard block |
||
514 | 527 | foreach ($changeArray as $variable => $value) |
515 | 528 | { |
516 | 529 | // Don't bother if it's already like that ;). |
517 | - if (isset($modSettings[$variable]) && $modSettings[$variable] == $value) |
|
518 | - continue; |
|
530 | + if (isset($modSettings[$variable]) && $modSettings[$variable] == $value) { |
|
531 | + continue; |
|
532 | + } |
|
519 | 533 | // If the variable isn't set, but would only be set to nothing'ness, then don't bother setting it. |
520 | - elseif (!isset($modSettings[$variable]) && empty($value)) |
|
521 | - continue; |
|
534 | + elseif (!isset($modSettings[$variable]) && empty($value)) { |
|
535 | + continue; |
|
536 | + } |
|
522 | 537 | |
523 | 538 | $replaceArray[] = array($variable, $value); |
524 | 539 | |
525 | 540 | $modSettings[$variable] = $value; |
526 | 541 | } |
527 | 542 | |
528 | - if (empty($replaceArray)) |
|
529 | - return; |
|
543 | + if (empty($replaceArray)) { |
|
544 | + return; |
|
545 | + } |
|
530 | 546 | |
531 | 547 | $smcFunc['db_insert']('replace', |
532 | 548 | '{db_prefix}settings', |
@@ -572,14 +588,17 @@ discard block |
||
572 | 588 | $start_invalid = $start < 0; |
573 | 589 | |
574 | 590 | // Make sure $start is a proper variable - not less than 0. |
575 | - if ($start_invalid) |
|
576 | - $start = 0; |
|
591 | + if ($start_invalid) { |
|
592 | + $start = 0; |
|
593 | + } |
|
577 | 594 | // Not greater than the upper bound. |
578 | - elseif ($start >= $max_value) |
|
579 | - $start = max(0, (int) $max_value - (((int) $max_value % (int) $num_per_page) == 0 ? $num_per_page : ((int) $max_value % (int) $num_per_page))); |
|
595 | + elseif ($start >= $max_value) { |
|
596 | + $start = max(0, (int) $max_value - (((int) $max_value % (int) $num_per_page) == 0 ? $num_per_page : ((int) $max_value % (int) $num_per_page))); |
|
597 | + } |
|
580 | 598 | // And it has to be a multiple of $num_per_page! |
581 | - else |
|
582 | - $start = max(0, (int) $start - ((int) $start % (int) $num_per_page)); |
|
599 | + else { |
|
600 | + $start = max(0, (int) $start - ((int) $start % (int) $num_per_page)); |
|
601 | + } |
|
583 | 602 | |
584 | 603 | $context['current_page'] = $start / $num_per_page; |
585 | 604 | |
@@ -609,77 +628,87 @@ discard block |
||
609 | 628 | |
610 | 629 | // Show all the pages. |
611 | 630 | $display_page = 1; |
612 | - for ($counter = 0; $counter < $max_value; $counter += $num_per_page) |
|
613 | - $pageindex .= $start == $counter && !$start_invalid ? sprintf($settings['page_index']['current_page'], $display_page++) : sprintf($base_link, $counter, $display_page++); |
|
631 | + for ($counter = 0; $counter < $max_value; $counter += $num_per_page) { |
|
632 | + $pageindex .= $start == $counter && !$start_invalid ? sprintf($settings['page_index']['current_page'], $display_page++) : sprintf($base_link, $counter, $display_page++); |
|
633 | + } |
|
614 | 634 | |
615 | 635 | // Show the right arrow. |
616 | 636 | $display_page = ($start + $num_per_page) > $max_value ? $max_value : ($start + $num_per_page); |
617 | - if ($start != $counter - $max_value && !$start_invalid) |
|
618 | - $pageindex .= $display_page > $counter - $num_per_page ? ' ' : sprintf($base_link, $display_page, $settings['page_index']['next_page']); |
|
619 | - } |
|
620 | - else |
|
637 | + if ($start != $counter - $max_value && !$start_invalid) { |
|
638 | + $pageindex .= $display_page > $counter - $num_per_page ? ' ' : sprintf($base_link, $display_page, $settings['page_index']['next_page']); |
|
639 | + } |
|
640 | + } else |
|
621 | 641 | { |
622 | 642 | // If they didn't enter an odd value, pretend they did. |
623 | 643 | $PageContiguous = (int) ($modSettings['compactTopicPagesContiguous'] - ($modSettings['compactTopicPagesContiguous'] % 2)) / 2; |
624 | 644 | |
625 | 645 | // Show the "prev page" link. (>prev page< 1 ... 6 7 [8] 9 10 ... 15 next page) |
626 | - if (!empty($start) && $show_prevnext) |
|
627 | - $pageindex .= sprintf($base_link, $start - $num_per_page, $settings['page_index']['previous_page']); |
|
628 | - else |
|
629 | - $pageindex .= ''; |
|
646 | + if (!empty($start) && $show_prevnext) { |
|
647 | + $pageindex .= sprintf($base_link, $start - $num_per_page, $settings['page_index']['previous_page']); |
|
648 | + } else { |
|
649 | + $pageindex .= ''; |
|
650 | + } |
|
630 | 651 | |
631 | 652 | // Show the first page. (prev page >1< ... 6 7 [8] 9 10 ... 15) |
632 | - if ($start > $num_per_page * $PageContiguous) |
|
633 | - $pageindex .= sprintf($base_link, 0, '1'); |
|
653 | + if ($start > $num_per_page * $PageContiguous) { |
|
654 | + $pageindex .= sprintf($base_link, 0, '1'); |
|
655 | + } |
|
634 | 656 | |
635 | 657 | // Show the ... after the first page. (prev page 1 >...< 6 7 [8] 9 10 ... 15 next page) |
636 | - if ($start > $num_per_page * ($PageContiguous + 1)) |
|
637 | - $pageindex .= strtr($settings['page_index']['expand_pages'], array( |
|
658 | + if ($start > $num_per_page * ($PageContiguous + 1)) { |
|
659 | + $pageindex .= strtr($settings['page_index']['expand_pages'], array( |
|
638 | 660 | '{LINK}' => JavaScriptEscape($smcFunc['htmlspecialchars']($base_link)), |
639 | 661 | '{FIRST_PAGE}' => $num_per_page, |
640 | 662 | '{LAST_PAGE}' => $start - $num_per_page * $PageContiguous, |
641 | 663 | '{PER_PAGE}' => $num_per_page, |
642 | 664 | )); |
665 | + } |
|
643 | 666 | |
644 | 667 | // Show the pages before the current one. (prev page 1 ... >6 7< [8] 9 10 ... 15 next page) |
645 | - for ($nCont = $PageContiguous; $nCont >= 1; $nCont--) |
|
646 | - if ($start >= $num_per_page * $nCont) |
|
668 | + for ($nCont = $PageContiguous; $nCont >= 1; $nCont--) { |
|
669 | + if ($start >= $num_per_page * $nCont) |
|
647 | 670 | { |
648 | 671 | $tmpStart = $start - $num_per_page * $nCont; |
672 | + } |
|
649 | 673 | $pageindex .= sprintf($base_link, $tmpStart, $tmpStart / $num_per_page + 1); |
650 | 674 | } |
651 | 675 | |
652 | 676 | // Show the current page. (prev page 1 ... 6 7 >[8]< 9 10 ... 15 next page) |
653 | - if (!$start_invalid) |
|
654 | - $pageindex .= sprintf($settings['page_index']['current_page'], $start / $num_per_page + 1); |
|
655 | - else |
|
656 | - $pageindex .= sprintf($base_link, $start, $start / $num_per_page + 1); |
|
677 | + if (!$start_invalid) { |
|
678 | + $pageindex .= sprintf($settings['page_index']['current_page'], $start / $num_per_page + 1); |
|
679 | + } else { |
|
680 | + $pageindex .= sprintf($base_link, $start, $start / $num_per_page + 1); |
|
681 | + } |
|
657 | 682 | |
658 | 683 | // Show the pages after the current one... (prev page 1 ... 6 7 [8] >9 10< ... 15 next page) |
659 | 684 | $tmpMaxPages = (int) (($max_value - 1) / $num_per_page) * $num_per_page; |
660 | - for ($nCont = 1; $nCont <= $PageContiguous; $nCont++) |
|
661 | - if ($start + $num_per_page * $nCont <= $tmpMaxPages) |
|
685 | + for ($nCont = 1; $nCont <= $PageContiguous; $nCont++) { |
|
686 | + if ($start + $num_per_page * $nCont <= $tmpMaxPages) |
|
662 | 687 | { |
663 | 688 | $tmpStart = $start + $num_per_page * $nCont; |
689 | + } |
|
664 | 690 | $pageindex .= sprintf($base_link, $tmpStart, $tmpStart / $num_per_page + 1); |
665 | 691 | } |
666 | 692 | |
667 | 693 | // Show the '...' part near the end. (prev page 1 ... 6 7 [8] 9 10 >...< 15 next page) |
668 | - if ($start + $num_per_page * ($PageContiguous + 1) < $tmpMaxPages) |
|
669 | - $pageindex .= strtr($settings['page_index']['expand_pages'], array( |
|
694 | + if ($start + $num_per_page * ($PageContiguous + 1) < $tmpMaxPages) { |
|
695 | + $pageindex .= strtr($settings['page_index']['expand_pages'], array( |
|
670 | 696 | '{LINK}' => JavaScriptEscape($smcFunc['htmlspecialchars']($base_link)), |
671 | 697 | '{FIRST_PAGE}' => $start + $num_per_page * ($PageContiguous + 1), |
672 | 698 | '{LAST_PAGE}' => $tmpMaxPages, |
673 | 699 | '{PER_PAGE}' => $num_per_page, |
674 | 700 | )); |
701 | + } |
|
675 | 702 | |
676 | 703 | // Show the last number in the list. (prev page 1 ... 6 7 [8] 9 10 ... >15< next page) |
677 | - if ($start + $num_per_page * $PageContiguous < $tmpMaxPages) |
|
678 | - $pageindex .= sprintf($base_link, $tmpMaxPages, $tmpMaxPages / $num_per_page + 1); |
|
704 | + if ($start + $num_per_page * $PageContiguous < $tmpMaxPages) { |
|
705 | + $pageindex .= sprintf($base_link, $tmpMaxPages, $tmpMaxPages / $num_per_page + 1); |
|
706 | + } |
|
679 | 707 | |
680 | 708 | // Show the "next page" link. (prev page 1 ... 6 7 [8] 9 10 ... 15 >next page<) |
681 | - if ($start != $tmpMaxPages && $show_prevnext) |
|
682 | - $pageindex .= sprintf($base_link, $start + $num_per_page, $settings['page_index']['next_page']); |
|
709 | + if ($start != $tmpMaxPages && $show_prevnext) { |
|
710 | + $pageindex .= sprintf($base_link, $start + $num_per_page, $settings['page_index']['next_page']); |
|
711 | + } |
|
683 | 712 | } |
684 | 713 | $pageindex .= $settings['page_index']['extra_after']; |
685 | 714 | |
@@ -705,8 +734,9 @@ discard block |
||
705 | 734 | if ($decimal_separator === null) |
706 | 735 | { |
707 | 736 | // Not set for whatever reason? |
708 | - if (empty($txt['number_format']) || preg_match('~^1([^\d]*)?234([^\d]*)(0*?)$~', $txt['number_format'], $matches) != 1) |
|
709 | - return $number; |
|
737 | + if (empty($txt['number_format']) || preg_match('~^1([^\d]*)?234([^\d]*)(0*?)$~', $txt['number_format'], $matches) != 1) { |
|
738 | + return $number; |
|
739 | + } |
|
710 | 740 | |
711 | 741 | // Cache these each load... |
712 | 742 | $thousands_separator = $matches[1]; |
@@ -740,17 +770,20 @@ discard block |
||
740 | 770 | static $unsupportedFormats, $finalizedFormats; |
741 | 771 | |
742 | 772 | // Offset the time. |
743 | - if (!$offset_type) |
|
744 | - $time = $log_time + ($user_info['time_offset'] + $modSettings['time_offset']) * 3600; |
|
773 | + if (!$offset_type) { |
|
774 | + $time = $log_time + ($user_info['time_offset'] + $modSettings['time_offset']) * 3600; |
|
775 | + } |
|
745 | 776 | // Just the forum offset? |
746 | - elseif ($offset_type == 'forum') |
|
747 | - $time = $log_time + $modSettings['time_offset'] * 3600; |
|
748 | - else |
|
749 | - $time = $log_time; |
|
777 | + elseif ($offset_type == 'forum') { |
|
778 | + $time = $log_time + $modSettings['time_offset'] * 3600; |
|
779 | + } else { |
|
780 | + $time = $log_time; |
|
781 | + } |
|
750 | 782 | |
751 | 783 | // We can't have a negative date (on Windows, at least.) |
752 | - if ($log_time < 0) |
|
753 | - $log_time = 0; |
|
784 | + if ($log_time < 0) { |
|
785 | + $log_time = 0; |
|
786 | + } |
|
754 | 787 | |
755 | 788 | // Today and Yesterday? |
756 | 789 | if ($modSettings['todayMod'] >= 1 && $show_today === true) |
@@ -767,24 +800,27 @@ discard block |
||
767 | 800 | { |
768 | 801 | $h = strpos($user_info['time_format'], '%l') === false ? '%I' : '%l'; |
769 | 802 | $today_fmt = $h . ':%M' . $s . ' %p'; |
803 | + } else { |
|
804 | + $today_fmt = '%H:%M' . $s; |
|
770 | 805 | } |
771 | - else |
|
772 | - $today_fmt = '%H:%M' . $s; |
|
773 | 806 | |
774 | 807 | // Same day of the year, same year.... Today! |
775 | - if ($then['yday'] == $now['yday'] && $then['year'] == $now['year']) |
|
776 | - return $txt['today'] . timeformat($log_time, $today_fmt, $offset_type); |
|
808 | + if ($then['yday'] == $now['yday'] && $then['year'] == $now['year']) { |
|
809 | + return $txt['today'] . timeformat($log_time, $today_fmt, $offset_type); |
|
810 | + } |
|
777 | 811 | |
778 | 812 | // Day-of-year is one less and same year, or it's the first of the year and that's the last of the year... |
779 | - if ($modSettings['todayMod'] == '2' && (($then['yday'] == $now['yday'] - 1 && $then['year'] == $now['year']) || ($now['yday'] == 0 && $then['year'] == $now['year'] - 1) && $then['mon'] == 12 && $then['mday'] == 31)) |
|
780 | - return $txt['yesterday'] . timeformat($log_time, $today_fmt, $offset_type); |
|
813 | + if ($modSettings['todayMod'] == '2' && (($then['yday'] == $now['yday'] - 1 && $then['year'] == $now['year']) || ($now['yday'] == 0 && $then['year'] == $now['year'] - 1) && $then['mon'] == 12 && $then['mday'] == 31)) { |
|
814 | + return $txt['yesterday'] . timeformat($log_time, $today_fmt, $offset_type); |
|
815 | + } |
|
781 | 816 | } |
782 | 817 | |
783 | 818 | $str = !is_bool($show_today) ? $show_today : $user_info['time_format']; |
784 | 819 | |
785 | 820 | // Use the cached formats if available |
786 | - if (is_null($finalizedFormats)) |
|
787 | - $finalizedFormats = (array) cache_get_data('timeformatstrings', 86400); |
|
821 | + if (is_null($finalizedFormats)) { |
|
822 | + $finalizedFormats = (array) cache_get_data('timeformatstrings', 86400); |
|
823 | + } |
|
788 | 824 | |
789 | 825 | // Make a supported version for this format if we don't already have one |
790 | 826 | if (empty($finalizedFormats[$str])) |
@@ -813,8 +849,9 @@ discard block |
||
813 | 849 | ); |
814 | 850 | |
815 | 851 | // No need to do this part again if we already did it once |
816 | - if (is_null($unsupportedFormats)) |
|
817 | - $unsupportedFormats = (array) cache_get_data('unsupportedtimeformats', 86400); |
|
852 | + if (is_null($unsupportedFormats)) { |
|
853 | + $unsupportedFormats = (array) cache_get_data('unsupportedtimeformats', 86400); |
|
854 | + } |
|
818 | 855 | if (empty($unsupportedFormats)) |
819 | 856 | { |
820 | 857 | foreach($strftimeFormatSubstitutions as $format => $substitution) |
@@ -823,20 +860,23 @@ discard block |
||
823 | 860 | |
824 | 861 | // Windows will return false for unsupported formats |
825 | 862 | // Other operating systems return the format string as a literal |
826 | - if ($value === false || $value === $format) |
|
827 | - $unsupportedFormats[] = $format; |
|
863 | + if ($value === false || $value === $format) { |
|
864 | + $unsupportedFormats[] = $format; |
|
865 | + } |
|
828 | 866 | } |
829 | 867 | cache_put_data('unsupportedtimeformats', $unsupportedFormats, 86400); |
830 | 868 | } |
831 | 869 | |
832 | 870 | // Windows needs extra help if $timeformat contains something completely invalid, e.g. '%Q' |
833 | - if (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN') |
|
834 | - $timeformat = preg_replace('~%(?!' . implode('|', array_keys($strftimeFormatSubstitutions)) . ')~', '%', $timeformat); |
|
871 | + if (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN') { |
|
872 | + $timeformat = preg_replace('~%(?!' . implode('|', array_keys($strftimeFormatSubstitutions)) . ')~', '%', $timeformat); |
|
873 | + } |
|
835 | 874 | |
836 | 875 | // Substitute unsupported formats with supported ones |
837 | - if (!empty($unsupportedFormats)) |
|
838 | - while (preg_match('~%(' . implode('|', $unsupportedFormats) . ')~', $timeformat, $matches)) |
|
876 | + if (!empty($unsupportedFormats)) { |
|
877 | + while (preg_match('~%(' . implode('|', $unsupportedFormats) . ')~', $timeformat, $matches)) |
|
839 | 878 | $timeformat = str_replace($matches[0], $strftimeFormatSubstitutions[$matches[1]], $timeformat); |
879 | + } |
|
840 | 880 | |
841 | 881 | // Remember this so we don't need to do it again |
842 | 882 | $finalizedFormats[$str] = $timeformat; |
@@ -845,33 +885,39 @@ discard block |
||
845 | 885 | |
846 | 886 | $str = $finalizedFormats[$str]; |
847 | 887 | |
848 | - if (!isset($locale_cache)) |
|
849 | - $locale_cache = setlocale(LC_TIME, $txt['lang_locale']); |
|
888 | + if (!isset($locale_cache)) { |
|
889 | + $locale_cache = setlocale(LC_TIME, $txt['lang_locale']); |
|
890 | + } |
|
850 | 891 | |
851 | 892 | if ($locale_cache !== false) |
852 | 893 | { |
853 | 894 | // Check if another process changed the locale |
854 | - if ($process_safe === true && setlocale(LC_TIME, '0') != $locale_cache) |
|
855 | - setlocale(LC_TIME, $txt['lang_locale']); |
|
895 | + if ($process_safe === true && setlocale(LC_TIME, '0') != $locale_cache) { |
|
896 | + setlocale(LC_TIME, $txt['lang_locale']); |
|
897 | + } |
|
856 | 898 | |
857 | - if (!isset($non_twelve_hour)) |
|
858 | - $non_twelve_hour = trim(strftime('%p')) === ''; |
|
859 | - if ($non_twelve_hour && strpos($str, '%p') !== false) |
|
860 | - $str = str_replace('%p', (strftime('%H', $time) < 12 ? $txt['time_am'] : $txt['time_pm']), $str); |
|
899 | + if (!isset($non_twelve_hour)) { |
|
900 | + $non_twelve_hour = trim(strftime('%p')) === ''; |
|
901 | + } |
|
902 | + if ($non_twelve_hour && strpos($str, '%p') !== false) { |
|
903 | + $str = str_replace('%p', (strftime('%H', $time) < 12 ? $txt['time_am'] : $txt['time_pm']), $str); |
|
904 | + } |
|
861 | 905 | |
862 | - foreach (array('%a', '%A', '%b', '%B') as $token) |
|
863 | - if (strpos($str, $token) !== false) |
|
906 | + foreach (array('%a', '%A', '%b', '%B') as $token) { |
|
907 | + if (strpos($str, $token) !== false) |
|
864 | 908 | $str = str_replace($token, strftime($token, $time), $str); |
865 | - } |
|
866 | - else |
|
909 | + } |
|
910 | + } else |
|
867 | 911 | { |
868 | 912 | // Do-it-yourself time localization. Fun. |
869 | - foreach (array('%a' => 'days_short', '%A' => 'days', '%b' => 'months_short', '%B' => 'months') as $token => $text_label) |
|
870 | - if (strpos($str, $token) !== false) |
|
913 | + foreach (array('%a' => 'days_short', '%A' => 'days', '%b' => 'months_short', '%B' => 'months') as $token => $text_label) { |
|
914 | + if (strpos($str, $token) !== false) |
|
871 | 915 | $str = str_replace($token, $txt[$text_label][(int) strftime($token === '%a' || $token === '%A' ? '%w' : '%m', $time)], $str); |
916 | + } |
|
872 | 917 | |
873 | - if (strpos($str, '%p') !== false) |
|
874 | - $str = str_replace('%p', (strftime('%H', $time) < 12 ? $txt['time_am'] : $txt['time_pm']), $str); |
|
918 | + if (strpos($str, '%p') !== false) { |
|
919 | + $str = str_replace('%p', (strftime('%H', $time) < 12 ? $txt['time_am'] : $txt['time_pm']), $str); |
|
920 | + } |
|
875 | 921 | } |
876 | 922 | |
877 | 923 | // Format the time and then restore any literal percent characters |
@@ -894,16 +940,19 @@ discard block |
||
894 | 940 | static $translation = array(); |
895 | 941 | |
896 | 942 | // Determine the character set... Default to UTF-8 |
897 | - if (empty($context['character_set'])) |
|
898 | - $charset = 'UTF-8'; |
|
943 | + if (empty($context['character_set'])) { |
|
944 | + $charset = 'UTF-8'; |
|
945 | + } |
|
899 | 946 | // Use ISO-8859-1 in place of non-supported ISO-8859 charsets... |
900 | - elseif (strpos($context['character_set'], 'ISO-8859-') !== false && !in_array($context['character_set'], array('ISO-8859-5', 'ISO-8859-15'))) |
|
901 | - $charset = 'ISO-8859-1'; |
|
902 | - else |
|
903 | - $charset = $context['character_set']; |
|
947 | + elseif (strpos($context['character_set'], 'ISO-8859-') !== false && !in_array($context['character_set'], array('ISO-8859-5', 'ISO-8859-15'))) { |
|
948 | + $charset = 'ISO-8859-1'; |
|
949 | + } else { |
|
950 | + $charset = $context['character_set']; |
|
951 | + } |
|
904 | 952 | |
905 | - if (empty($translation)) |
|
906 | - $translation = array_flip(get_html_translation_table(HTML_SPECIALCHARS, ENT_QUOTES, $charset)) + array(''' => '\'', ''' => '\'', ' ' => ' '); |
|
953 | + if (empty($translation)) { |
|
954 | + $translation = array_flip(get_html_translation_table(HTML_SPECIALCHARS, ENT_QUOTES, $charset)) + array(''' => '\'', ''' => '\'', ' ' => ' '); |
|
955 | + } |
|
907 | 956 | |
908 | 957 | return strtr($string, $translation); |
909 | 958 | } |
@@ -925,8 +974,9 @@ discard block |
||
925 | 974 | global $smcFunc; |
926 | 975 | |
927 | 976 | // It was already short enough! |
928 | - if ($smcFunc['strlen']($subject) <= $len) |
|
929 | - return $subject; |
|
977 | + if ($smcFunc['strlen']($subject) <= $len) { |
|
978 | + return $subject; |
|
979 | + } |
|
930 | 980 | |
931 | 981 | // Shorten it by the length it was too long, and strip off junk from the end. |
932 | 982 | return $smcFunc['substr']($subject, 0, $len) . '...'; |
@@ -945,10 +995,11 @@ discard block |
||
945 | 995 | { |
946 | 996 | global $user_info, $modSettings; |
947 | 997 | |
948 | - if ($timestamp === null) |
|
949 | - $timestamp = time(); |
|
950 | - elseif ($timestamp == 0) |
|
951 | - return 0; |
|
998 | + if ($timestamp === null) { |
|
999 | + $timestamp = time(); |
|
1000 | + } elseif ($timestamp == 0) { |
|
1001 | + return 0; |
|
1002 | + } |
|
952 | 1003 | |
953 | 1004 | return $timestamp + ($modSettings['time_offset'] + ($use_user_offset ? $user_info['time_offset'] : 0)) * 3600; |
954 | 1005 | } |
@@ -977,8 +1028,9 @@ discard block |
||
977 | 1028 | $array[$i] = $array[$j]; |
978 | 1029 | $array[$j] = $temp; |
979 | 1030 | |
980 | - for ($i = 1; $p[$i] == 0; $i++) |
|
981 | - $p[$i] = 1; |
|
1031 | + for ($i = 1; $p[$i] == 0; $i++) { |
|
1032 | + $p[$i] = 1; |
|
1033 | + } |
|
982 | 1034 | |
983 | 1035 | $orders[] = $array; |
984 | 1036 | } |
@@ -1010,12 +1062,14 @@ discard block |
||
1010 | 1062 | static $disabled; |
1011 | 1063 | |
1012 | 1064 | // Don't waste cycles |
1013 | - if ($message === '') |
|
1014 | - return ''; |
|
1065 | + if ($message === '') { |
|
1066 | + return ''; |
|
1067 | + } |
|
1015 | 1068 | |
1016 | 1069 | // Just in case it wasn't determined yet whether UTF-8 is enabled. |
1017 | - if (!isset($context['utf8'])) |
|
1018 | - $context['utf8'] = (empty($modSettings['global_character_set']) ? $txt['lang_character_set'] : $modSettings['global_character_set']) === 'UTF-8'; |
|
1070 | + if (!isset($context['utf8'])) { |
|
1071 | + $context['utf8'] = (empty($modSettings['global_character_set']) ? $txt['lang_character_set'] : $modSettings['global_character_set']) === 'UTF-8'; |
|
1072 | + } |
|
1019 | 1073 | |
1020 | 1074 | // Clean up any cut/paste issues we may have |
1021 | 1075 | $message = sanitizeMSCutPaste($message); |
@@ -1027,13 +1081,15 @@ discard block |
||
1027 | 1081 | return $message; |
1028 | 1082 | } |
1029 | 1083 | |
1030 | - if ($smileys !== null && ($smileys == '1' || $smileys == '0')) |
|
1031 | - $smileys = (bool) $smileys; |
|
1084 | + if ($smileys !== null && ($smileys == '1' || $smileys == '0')) { |
|
1085 | + $smileys = (bool) $smileys; |
|
1086 | + } |
|
1032 | 1087 | |
1033 | 1088 | if (empty($modSettings['enableBBC']) && $message !== false) |
1034 | 1089 | { |
1035 | - if ($smileys === true) |
|
1036 | - parsesmileys($message); |
|
1090 | + if ($smileys === true) { |
|
1091 | + parsesmileys($message); |
|
1092 | + } |
|
1037 | 1093 | |
1038 | 1094 | return $message; |
1039 | 1095 | } |
@@ -1046,8 +1102,9 @@ discard block |
||
1046 | 1102 | } |
1047 | 1103 | |
1048 | 1104 | // Ensure $modSettings['tld_regex'] contains a valid regex for the autolinker |
1049 | - if (!empty($modSettings['autoLinkUrls'])) |
|
1050 | - set_tld_regex(); |
|
1105 | + if (!empty($modSettings['autoLinkUrls'])) { |
|
1106 | + set_tld_regex(); |
|
1107 | + } |
|
1051 | 1108 | |
1052 | 1109 | // Allow mods access before entering the main parse_bbc loop |
1053 | 1110 | call_integration_hook('integrate_pre_parsebbc', array(&$message, &$smileys, &$cache_id, &$parse_tags)); |
@@ -1061,12 +1118,14 @@ discard block |
||
1061 | 1118 | |
1062 | 1119 | $temp = explode(',', strtolower($modSettings['disabledBBC'])); |
1063 | 1120 | |
1064 | - foreach ($temp as $tag) |
|
1065 | - $disabled[trim($tag)] = true; |
|
1121 | + foreach ($temp as $tag) { |
|
1122 | + $disabled[trim($tag)] = true; |
|
1123 | + } |
|
1066 | 1124 | } |
1067 | 1125 | |
1068 | - if (empty($modSettings['enableEmbeddedFlash'])) |
|
1069 | - $disabled['flash'] = true; |
|
1126 | + if (empty($modSettings['enableEmbeddedFlash'])) { |
|
1127 | + $disabled['flash'] = true; |
|
1128 | + } |
|
1070 | 1129 | |
1071 | 1130 | /* The following bbc are formatted as an array, with keys as follows: |
1072 | 1131 | |
@@ -1187,8 +1246,9 @@ discard block |
||
1187 | 1246 | $returnContext = ''; |
1188 | 1247 | |
1189 | 1248 | // BBC or the entire attachments feature is disabled |
1190 | - if (empty($modSettings['attachmentEnable']) || !empty($disabled['attach'])) |
|
1191 | - return $data; |
|
1249 | + if (empty($modSettings['attachmentEnable']) || !empty($disabled['attach'])) { |
|
1250 | + return $data; |
|
1251 | + } |
|
1192 | 1252 | |
1193 | 1253 | // Save the attach ID. |
1194 | 1254 | $attachID = $data; |
@@ -1199,8 +1259,9 @@ discard block |
||
1199 | 1259 | $currentAttachment = parseAttachBBC($attachID); |
1200 | 1260 | |
1201 | 1261 | // parseAttachBBC will return a string ($txt key) rather than diying with a fatal_error. Up to you to decide what to do. |
1202 | - if (is_string($currentAttachment)) |
|
1203 | - return $data = !empty($txt[$currentAttachment]) ? $txt[$currentAttachment] : $currentAttachment; |
|
1262 | + if (is_string($currentAttachment)) { |
|
1263 | + return $data = !empty($txt[$currentAttachment]) ? $txt[$currentAttachment] : $currentAttachment; |
|
1264 | + } |
|
1204 | 1265 | |
1205 | 1266 | if (!empty($currentAttachment['is_image'])) |
1206 | 1267 | { |
@@ -1216,15 +1277,17 @@ discard block |
||
1216 | 1277 | $height = ' height="' . $currentAttachment['height'] . '"'; |
1217 | 1278 | } |
1218 | 1279 | |
1219 | - if ($currentAttachment['thumbnail']['has_thumb'] && empty($params['{width}']) && empty($params['{height}'])) |
|
1220 | - $returnContext .= '<a href="'. $currentAttachment['href']. ';image" id="link_'. $currentAttachment['id']. '" onclick="'. $currentAttachment['thumbnail']['javascript']. '"><img src="'. $currentAttachment['thumbnail']['href']. '"' . $alt . $title . ' id="thumb_'. $currentAttachment['id']. '" class="atc_img"></a>'; |
|
1221 | - else |
|
1222 | - $returnContext .= '<img src="' . $currentAttachment['href'] . ';image"' . $alt . $title . $width . $height . ' class="bbc_img"/>'; |
|
1280 | + if ($currentAttachment['thumbnail']['has_thumb'] && empty($params['{width}']) && empty($params['{height}'])) { |
|
1281 | + $returnContext .= '<a href="'. $currentAttachment['href']. ';image" id="link_'. $currentAttachment['id']. '" onclick="'. $currentAttachment['thumbnail']['javascript']. '"><img src="'. $currentAttachment['thumbnail']['href']. '"' . $alt . $title . ' id="thumb_'. $currentAttachment['id']. '" class="atc_img"></a>'; |
|
1282 | + } else { |
|
1283 | + $returnContext .= '<img src="' . $currentAttachment['href'] . ';image"' . $alt . $title . $width . $height . ' class="bbc_img"/>'; |
|
1284 | + } |
|
1223 | 1285 | } |
1224 | 1286 | |
1225 | 1287 | // No image. Show a link. |
1226 | - else |
|
1227 | - $returnContext .= $currentAttachment['link']; |
|
1288 | + else { |
|
1289 | + $returnContext .= $currentAttachment['link']; |
|
1290 | + } |
|
1228 | 1291 | |
1229 | 1292 | // Gotta append what we just did. |
1230 | 1293 | $data = $returnContext; |
@@ -1255,8 +1318,9 @@ discard block |
||
1255 | 1318 | for ($php_i = 0, $php_n = count($php_parts); $php_i < $php_n; $php_i++) |
1256 | 1319 | { |
1257 | 1320 | // Do PHP code coloring? |
1258 | - if ($php_parts[$php_i] != '<?php') |
|
1259 | - continue; |
|
1321 | + if ($php_parts[$php_i] != '<?php') { |
|
1322 | + continue; |
|
1323 | + } |
|
1260 | 1324 | |
1261 | 1325 | $php_string = ''; |
1262 | 1326 | while ($php_i + 1 < count($php_parts) && $php_parts[$php_i] != '?>') |
@@ -1272,8 +1336,9 @@ discard block |
||
1272 | 1336 | $data = str_replace("\t", "<span style=\"white-space: pre;\">\t</span>", $data); |
1273 | 1337 | |
1274 | 1338 | // Recent Opera bug requiring temporary fix. &nsbp; is needed before </code> to avoid broken selection. |
1275 | - if ($context['browser']['is_opera']) |
|
1276 | - $data .= ' '; |
|
1339 | + if ($context['browser']['is_opera']) { |
|
1340 | + $data .= ' '; |
|
1341 | + } |
|
1277 | 1342 | } |
1278 | 1343 | }, |
1279 | 1344 | 'block_level' => true, |
@@ -1292,8 +1357,9 @@ discard block |
||
1292 | 1357 | for ($php_i = 0, $php_n = count($php_parts); $php_i < $php_n; $php_i++) |
1293 | 1358 | { |
1294 | 1359 | // Do PHP code coloring? |
1295 | - if ($php_parts[$php_i] != '<?php') |
|
1296 | - continue; |
|
1360 | + if ($php_parts[$php_i] != '<?php') { |
|
1361 | + continue; |
|
1362 | + } |
|
1297 | 1363 | |
1298 | 1364 | $php_string = ''; |
1299 | 1365 | while ($php_i + 1 < count($php_parts) && $php_parts[$php_i] != '?>') |
@@ -1309,8 +1375,9 @@ discard block |
||
1309 | 1375 | $data[0] = str_replace("\t", "<span style=\"white-space: pre;\">\t</span>", $data[0]); |
1310 | 1376 | |
1311 | 1377 | // Recent Opera bug requiring temporary fix. &nsbp; is needed before </code> to avoid broken selection. |
1312 | - if ($context['browser']['is_opera']) |
|
1313 | - $data[0] .= ' '; |
|
1378 | + if ($context['browser']['is_opera']) { |
|
1379 | + $data[0] .= ' '; |
|
1380 | + } |
|
1314 | 1381 | } |
1315 | 1382 | }, |
1316 | 1383 | 'block_level' => true, |
@@ -1348,11 +1415,13 @@ discard block |
||
1348 | 1415 | 'content' => '<embed type="application/x-shockwave-flash" src="$1" width="$2" height="$3" play="true" loop="true" quality="high" AllowScriptAccess="never">', |
1349 | 1416 | 'validate' => function (&$tag, &$data, $disabled) |
1350 | 1417 | { |
1351 | - if (isset($disabled['url'])) |
|
1352 | - $tag['content'] = '$1'; |
|
1418 | + if (isset($disabled['url'])) { |
|
1419 | + $tag['content'] = '$1'; |
|
1420 | + } |
|
1353 | 1421 | $scheme = parse_url($data[0], PHP_URL_SCHEME); |
1354 | - if (empty($scheme)) |
|
1355 | - $data[0] = '//' . ltrim($data[0], ':/'); |
|
1422 | + if (empty($scheme)) { |
|
1423 | + $data[0] = '//' . ltrim($data[0], ':/'); |
|
1424 | + } |
|
1356 | 1425 | }, |
1357 | 1426 | 'disabled_content' => '<a href="$1" target="_blank">$1</a>', |
1358 | 1427 | ), |
@@ -1366,10 +1435,11 @@ discard block |
||
1366 | 1435 | { |
1367 | 1436 | $class = 'class="bbc_float float' . (strpos($data, 'left') === 0 ? 'left' : 'right') . '"'; |
1368 | 1437 | |
1369 | - if (preg_match('~\bmax=(\d+(?:%|px|em|rem|ex|pt|pc|ch|vw|vh|vmin|vmax|cm|mm|in)?)~', $data, $matches)) |
|
1370 | - $css = ' style="max-width:' . $matches[1] . (is_numeric($matches[1]) ? 'px' : '') . '"'; |
|
1371 | - else |
|
1372 | - $css = ''; |
|
1438 | + if (preg_match('~\bmax=(\d+(?:%|px|em|rem|ex|pt|pc|ch|vw|vh|vmin|vmax|cm|mm|in)?)~', $data, $matches)) { |
|
1439 | + $css = ' style="max-width:' . $matches[1] . (is_numeric($matches[1]) ? 'px' : '') . '"'; |
|
1440 | + } else { |
|
1441 | + $css = ''; |
|
1442 | + } |
|
1373 | 1443 | |
1374 | 1444 | $data = $class . $css; |
1375 | 1445 | }, |
@@ -1419,14 +1489,16 @@ discard block |
||
1419 | 1489 | $scheme = parse_url($data, PHP_URL_SCHEME); |
1420 | 1490 | if ($image_proxy_enabled) |
1421 | 1491 | { |
1422 | - if (empty($scheme)) |
|
1423 | - $data = 'http://' . ltrim($data, ':/'); |
|
1492 | + if (empty($scheme)) { |
|
1493 | + $data = 'http://' . ltrim($data, ':/'); |
|
1494 | + } |
|
1424 | 1495 | |
1425 | - if ($scheme != 'https') |
|
1426 | - $data = $boardurl . '/proxy.php?request=' . urlencode($data) . '&hash=' . md5($data . $image_proxy_secret); |
|
1496 | + if ($scheme != 'https') { |
|
1497 | + $data = $boardurl . '/proxy.php?request=' . urlencode($data) . '&hash=' . md5($data . $image_proxy_secret); |
|
1498 | + } |
|
1499 | + } elseif (empty($scheme)) { |
|
1500 | + $data = '//' . ltrim($data, ':/'); |
|
1427 | 1501 | } |
1428 | - elseif (empty($scheme)) |
|
1429 | - $data = '//' . ltrim($data, ':/'); |
|
1430 | 1502 | }, |
1431 | 1503 | 'disabled_content' => '($1)', |
1432 | 1504 | ), |
@@ -1442,14 +1514,16 @@ discard block |
||
1442 | 1514 | $scheme = parse_url($data, PHP_URL_SCHEME); |
1443 | 1515 | if ($image_proxy_enabled) |
1444 | 1516 | { |
1445 | - if (empty($scheme)) |
|
1446 | - $data = 'http://' . ltrim($data, ':/'); |
|
1517 | + if (empty($scheme)) { |
|
1518 | + $data = 'http://' . ltrim($data, ':/'); |
|
1519 | + } |
|
1447 | 1520 | |
1448 | - if ($scheme != 'https') |
|
1449 | - $data = $boardurl . '/proxy.php?request=' . urlencode($data) . '&hash=' . md5($data . $image_proxy_secret); |
|
1521 | + if ($scheme != 'https') { |
|
1522 | + $data = $boardurl . '/proxy.php?request=' . urlencode($data) . '&hash=' . md5($data . $image_proxy_secret); |
|
1523 | + } |
|
1524 | + } elseif (empty($scheme)) { |
|
1525 | + $data = '//' . ltrim($data, ':/'); |
|
1450 | 1526 | } |
1451 | - elseif (empty($scheme)) |
|
1452 | - $data = '//' . ltrim($data, ':/'); |
|
1453 | 1527 | }, |
1454 | 1528 | 'disabled_content' => '($1)', |
1455 | 1529 | ), |
@@ -1461,8 +1535,9 @@ discard block |
||
1461 | 1535 | { |
1462 | 1536 | $data = strtr($data, array('<br>' => '')); |
1463 | 1537 | $scheme = parse_url($data, PHP_URL_SCHEME); |
1464 | - if (empty($scheme)) |
|
1465 | - $data = '//' . ltrim($data, ':/'); |
|
1538 | + if (empty($scheme)) { |
|
1539 | + $data = '//' . ltrim($data, ':/'); |
|
1540 | + } |
|
1466 | 1541 | }, |
1467 | 1542 | ), |
1468 | 1543 | array( |
@@ -1473,13 +1548,14 @@ discard block |
||
1473 | 1548 | 'after' => '</a>', |
1474 | 1549 | 'validate' => function (&$tag, &$data, $disabled) |
1475 | 1550 | { |
1476 | - if (substr($data, 0, 1) == '#') |
|
1477 | - $data = '#post_' . substr($data, 1); |
|
1478 | - else |
|
1551 | + if (substr($data, 0, 1) == '#') { |
|
1552 | + $data = '#post_' . substr($data, 1); |
|
1553 | + } else |
|
1479 | 1554 | { |
1480 | 1555 | $scheme = parse_url($data, PHP_URL_SCHEME); |
1481 | - if (empty($scheme)) |
|
1482 | - $data = '//' . ltrim($data, ':/'); |
|
1556 | + if (empty($scheme)) { |
|
1557 | + $data = '//' . ltrim($data, ':/'); |
|
1558 | + } |
|
1483 | 1559 | } |
1484 | 1560 | }, |
1485 | 1561 | 'disallow_children' => array('email', 'ftp', 'url', 'iurl'), |
@@ -1557,8 +1633,9 @@ discard block |
||
1557 | 1633 | { |
1558 | 1634 | $add_begin = substr(trim($data), 0, 5) != '<?'; |
1559 | 1635 | $data = highlight_php_code($add_begin ? '<?php ' . $data . '?>' : $data); |
1560 | - if ($add_begin) |
|
1561 | - $data = preg_replace(array('~^(.+?)<\?.{0,40}?php(?: |\s)~', '~\?>((?:</(font|span)>)*)$~'), '$1', $data, 2); |
|
1636 | + if ($add_begin) { |
|
1637 | + $data = preg_replace(array('~^(.+?)<\?.{0,40}?php(?: |\s)~', '~\?>((?:</(font|span)>)*)$~'), '$1', $data, 2); |
|
1638 | + } |
|
1562 | 1639 | } |
1563 | 1640 | }, |
1564 | 1641 | 'block_level' => false, |
@@ -1689,10 +1766,11 @@ discard block |
||
1689 | 1766 | 'content' => '$1', |
1690 | 1767 | 'validate' => function (&$tag, &$data, $disabled) |
1691 | 1768 | { |
1692 | - if (is_numeric($data)) |
|
1693 | - $data = timeformat($data); |
|
1694 | - else |
|
1695 | - $tag['content'] = '[time]$1[/time]'; |
|
1769 | + if (is_numeric($data)) { |
|
1770 | + $data = timeformat($data); |
|
1771 | + } else { |
|
1772 | + $tag['content'] = '[time]$1[/time]'; |
|
1773 | + } |
|
1696 | 1774 | }, |
1697 | 1775 | ), |
1698 | 1776 | array( |
@@ -1719,8 +1797,9 @@ discard block |
||
1719 | 1797 | { |
1720 | 1798 | $data = strtr($data, array('<br>' => '')); |
1721 | 1799 | $scheme = parse_url($data, PHP_URL_SCHEME); |
1722 | - if (empty($scheme)) |
|
1723 | - $data = '//' . ltrim($data, ':/'); |
|
1800 | + if (empty($scheme)) { |
|
1801 | + $data = '//' . ltrim($data, ':/'); |
|
1802 | + } |
|
1724 | 1803 | }, |
1725 | 1804 | ), |
1726 | 1805 | array( |
@@ -1732,8 +1811,9 @@ discard block |
||
1732 | 1811 | 'validate' => function (&$tag, &$data, $disabled) |
1733 | 1812 | { |
1734 | 1813 | $scheme = parse_url($data, PHP_URL_SCHEME); |
1735 | - if (empty($scheme)) |
|
1736 | - $data = '//' . ltrim($data, ':/'); |
|
1814 | + if (empty($scheme)) { |
|
1815 | + $data = '//' . ltrim($data, ':/'); |
|
1816 | + } |
|
1737 | 1817 | }, |
1738 | 1818 | 'disallow_children' => array('email', 'ftp', 'url', 'iurl'), |
1739 | 1819 | 'disabled_after' => ' ($1)', |
@@ -1753,8 +1833,9 @@ discard block |
||
1753 | 1833 | // This is mainly for the bbc manager, so it's easy to add tags above. Custom BBC should be added above this line. |
1754 | 1834 | if ($message === false) |
1755 | 1835 | { |
1756 | - if (isset($temp_bbc)) |
|
1757 | - $bbc_codes = $temp_bbc; |
|
1836 | + if (isset($temp_bbc)) { |
|
1837 | + $bbc_codes = $temp_bbc; |
|
1838 | + } |
|
1758 | 1839 | usort($codes, function ($a, $b) { |
1759 | 1840 | return strcmp($a['tag'], $b['tag']); |
1760 | 1841 | }); |
@@ -1774,8 +1855,9 @@ discard block |
||
1774 | 1855 | ); |
1775 | 1856 | if (!isset($disabled['li']) && !isset($disabled['list'])) |
1776 | 1857 | { |
1777 | - foreach ($itemcodes as $c => $dummy) |
|
1778 | - $bbc_codes[$c] = array(); |
|
1858 | + foreach ($itemcodes as $c => $dummy) { |
|
1859 | + $bbc_codes[$c] = array(); |
|
1860 | + } |
|
1779 | 1861 | } |
1780 | 1862 | |
1781 | 1863 | // Shhhh! |
@@ -1796,12 +1878,14 @@ discard block |
||
1796 | 1878 | foreach ($codes as $code) |
1797 | 1879 | { |
1798 | 1880 | // Make it easier to process parameters later |
1799 | - if (!empty($code['parameters'])) |
|
1800 | - ksort($code['parameters'], SORT_STRING); |
|
1881 | + if (!empty($code['parameters'])) { |
|
1882 | + ksort($code['parameters'], SORT_STRING); |
|
1883 | + } |
|
1801 | 1884 | |
1802 | 1885 | // If we are not doing every tag only do ones we are interested in. |
1803 | - if (empty($parse_tags) || in_array($code['tag'], $parse_tags)) |
|
1804 | - $bbc_codes[substr($code['tag'], 0, 1)][] = $code; |
|
1886 | + if (empty($parse_tags) || in_array($code['tag'], $parse_tags)) { |
|
1887 | + $bbc_codes[substr($code['tag'], 0, 1)][] = $code; |
|
1888 | + } |
|
1805 | 1889 | } |
1806 | 1890 | $codes = null; |
1807 | 1891 | } |
@@ -1812,8 +1896,9 @@ discard block |
||
1812 | 1896 | // It's likely this will change if the message is modified. |
1813 | 1897 | $cache_key = 'parse:' . $cache_id . '-' . md5(md5($message) . '-' . $smileys . (empty($disabled) ? '' : implode(',', array_keys($disabled))) . $smcFunc['json_encode']($context['browser']) . $txt['lang_locale'] . $user_info['time_offset'] . $user_info['time_format']); |
1814 | 1898 | |
1815 | - if (($temp = cache_get_data($cache_key, 240)) != null) |
|
1816 | - return $temp; |
|
1899 | + if (($temp = cache_get_data($cache_key, 240)) != null) { |
|
1900 | + return $temp; |
|
1901 | + } |
|
1817 | 1902 | |
1818 | 1903 | $cache_t = microtime(); |
1819 | 1904 | } |
@@ -1845,8 +1930,9 @@ discard block |
||
1845 | 1930 | $disabled['flash'] = true; |
1846 | 1931 | |
1847 | 1932 | // @todo Change maybe? |
1848 | - if (!isset($_GET['images'])) |
|
1849 | - $disabled['img'] = true; |
|
1933 | + if (!isset($_GET['images'])) { |
|
1934 | + $disabled['img'] = true; |
|
1935 | + } |
|
1850 | 1936 | |
1851 | 1937 | // @todo Interface/setting to add more? |
1852 | 1938 | } |
@@ -1870,8 +1956,9 @@ discard block |
||
1870 | 1956 | $pos = isset($matches[0][1]) ? $matches[0][1] : false; |
1871 | 1957 | |
1872 | 1958 | // Failsafe. |
1873 | - if ($pos === false || $last_pos > $pos) |
|
1874 | - $pos = strlen($message) + 1; |
|
1959 | + if ($pos === false || $last_pos > $pos) { |
|
1960 | + $pos = strlen($message) + 1; |
|
1961 | + } |
|
1875 | 1962 | |
1876 | 1963 | // Can't have a one letter smiley, URL, or email! (sorry.) |
1877 | 1964 | if ($last_pos < $pos - 1) |
@@ -1889,8 +1976,9 @@ discard block |
||
1889 | 1976 | |
1890 | 1977 | // <br> should be empty. |
1891 | 1978 | $empty_tags = array('br', 'hr'); |
1892 | - foreach ($empty_tags as $tag) |
|
1893 | - $data = str_replace(array('<' . $tag . '>', '<' . $tag . '/>', '<' . $tag . ' />'), '<' . $tag . '>', $data); |
|
1979 | + foreach ($empty_tags as $tag) { |
|
1980 | + $data = str_replace(array('<' . $tag . '>', '<' . $tag . '/>', '<' . $tag . ' />'), '<' . $tag . '>', $data); |
|
1981 | + } |
|
1894 | 1982 | |
1895 | 1983 | // b, u, i, s, pre... basic tags. |
1896 | 1984 | $closable_tags = array('b', 'u', 'i', 's', 'em', 'ins', 'del', 'pre', 'blockquote', 'strong'); |
@@ -1899,8 +1987,9 @@ discard block |
||
1899 | 1987 | $diff = substr_count($data, '<' . $tag . '>') - substr_count($data, '</' . $tag . '>'); |
1900 | 1988 | $data = strtr($data, array('<' . $tag . '>' => '<' . $tag . '>', '</' . $tag . '>' => '</' . $tag . '>')); |
1901 | 1989 | |
1902 | - if ($diff > 0) |
|
1903 | - $data = substr($data, 0, -1) . str_repeat('</' . $tag . '>', $diff) . substr($data, -1); |
|
1990 | + if ($diff > 0) { |
|
1991 | + $data = substr($data, 0, -1) . str_repeat('</' . $tag . '>', $diff) . substr($data, -1); |
|
1992 | + } |
|
1904 | 1993 | } |
1905 | 1994 | |
1906 | 1995 | // Do <img ...> - with security... action= -> action-. |
@@ -1913,8 +2002,9 @@ discard block |
||
1913 | 2002 | $alt = empty($matches[3][$match]) ? '' : ' alt=' . preg_replace('~^"|"$~', '', $matches[3][$match]); |
1914 | 2003 | |
1915 | 2004 | // Remove action= from the URL - no funny business, now. |
1916 | - if (preg_match('~action(=|%3d)(?!dlattach)~i', $imgtag) != 0) |
|
1917 | - $imgtag = preg_replace('~action(?:=|%3d)(?!dlattach)~i', 'action-', $imgtag); |
|
2005 | + if (preg_match('~action(=|%3d)(?!dlattach)~i', $imgtag) != 0) { |
|
2006 | + $imgtag = preg_replace('~action(?:=|%3d)(?!dlattach)~i', 'action-', $imgtag); |
|
2007 | + } |
|
1918 | 2008 | |
1919 | 2009 | // Check if the image is larger than allowed. |
1920 | 2010 | if (!empty($modSettings['max_image_width']) && !empty($modSettings['max_image_height'])) |
@@ -1935,9 +2025,9 @@ discard block |
||
1935 | 2025 | |
1936 | 2026 | // Set the new image tag. |
1937 | 2027 | $replaces[$matches[0][$match]] = '[img width=' . $width . ' height=' . $height . $alt . ']' . $imgtag . '[/img]'; |
2028 | + } else { |
|
2029 | + $replaces[$matches[0][$match]] = '[img' . $alt . ']' . $imgtag . '[/img]'; |
|
1938 | 2030 | } |
1939 | - else |
|
1940 | - $replaces[$matches[0][$match]] = '[img' . $alt . ']' . $imgtag . '[/img]'; |
|
1941 | 2031 | } |
1942 | 2032 | |
1943 | 2033 | $data = strtr($data, $replaces); |
@@ -1950,16 +2040,18 @@ discard block |
||
1950 | 2040 | $no_autolink_area = false; |
1951 | 2041 | if (!empty($open_tags)) |
1952 | 2042 | { |
1953 | - foreach ($open_tags as $open_tag) |
|
1954 | - if (in_array($open_tag['tag'], $no_autolink_tags)) |
|
2043 | + foreach ($open_tags as $open_tag) { |
|
2044 | + if (in_array($open_tag['tag'], $no_autolink_tags)) |
|
1955 | 2045 | $no_autolink_area = true; |
2046 | + } |
|
1956 | 2047 | } |
1957 | 2048 | |
1958 | 2049 | // Don't go backwards. |
1959 | 2050 | // @todo Don't think is the real solution.... |
1960 | 2051 | $lastAutoPos = isset($lastAutoPos) ? $lastAutoPos : 0; |
1961 | - if ($pos < $lastAutoPos) |
|
1962 | - $no_autolink_area = true; |
|
2052 | + if ($pos < $lastAutoPos) { |
|
2053 | + $no_autolink_area = true; |
|
2054 | + } |
|
1963 | 2055 | $lastAutoPos = $pos; |
1964 | 2056 | |
1965 | 2057 | if (!$no_autolink_area) |
@@ -2068,17 +2160,19 @@ discard block |
||
2068 | 2160 | if ($scheme == 'mailto') |
2069 | 2161 | { |
2070 | 2162 | $email_address = str_replace('mailto:', '', $url); |
2071 | - if (!isset($disabled['email']) && filter_var($email_address, FILTER_VALIDATE_EMAIL) !== false) |
|
2072 | - return '[email=' . $email_address . ']' . $url . '[/email]'; |
|
2073 | - else |
|
2074 | - return $url; |
|
2163 | + if (!isset($disabled['email']) && filter_var($email_address, FILTER_VALIDATE_EMAIL) !== false) { |
|
2164 | + return '[email=' . $email_address . ']' . $url . '[/email]'; |
|
2165 | + } else { |
|
2166 | + return $url; |
|
2167 | + } |
|
2075 | 2168 | } |
2076 | 2169 | |
2077 | 2170 | // Are we linking a schemeless URL or naked domain name (e.g. "example.com")? |
2078 | - if (empty($scheme)) |
|
2079 | - $fullUrl = '//' . ltrim($url, ':/'); |
|
2080 | - else |
|
2081 | - $fullUrl = $url; |
|
2171 | + if (empty($scheme)) { |
|
2172 | + $fullUrl = '//' . ltrim($url, ':/'); |
|
2173 | + } else { |
|
2174 | + $fullUrl = $url; |
|
2175 | + } |
|
2082 | 2176 | |
2083 | 2177 | return '[url="' . str_replace(array('[', ']'), array('[', ']'), $fullUrl) . '"]' . $url . '[/url]'; |
2084 | 2178 | }, $data); |
@@ -2127,16 +2221,18 @@ discard block |
||
2127 | 2221 | } |
2128 | 2222 | |
2129 | 2223 | // Are we there yet? Are we there yet? |
2130 | - if ($pos >= strlen($message) - 1) |
|
2131 | - break; |
|
2224 | + if ($pos >= strlen($message) - 1) { |
|
2225 | + break; |
|
2226 | + } |
|
2132 | 2227 | |
2133 | 2228 | $tags = strtolower($message[$pos + 1]); |
2134 | 2229 | |
2135 | 2230 | if ($tags == '/' && !empty($open_tags)) |
2136 | 2231 | { |
2137 | 2232 | $pos2 = strpos($message, ']', $pos + 1); |
2138 | - if ($pos2 == $pos + 2) |
|
2139 | - continue; |
|
2233 | + if ($pos2 == $pos + 2) { |
|
2234 | + continue; |
|
2235 | + } |
|
2140 | 2236 | |
2141 | 2237 | $look_for = strtolower(substr($message, $pos + 2, $pos2 - $pos - 2)); |
2142 | 2238 | |
@@ -2146,8 +2242,9 @@ discard block |
||
2146 | 2242 | do |
2147 | 2243 | { |
2148 | 2244 | $tag = array_pop($open_tags); |
2149 | - if (!$tag) |
|
2150 | - break; |
|
2245 | + if (!$tag) { |
|
2246 | + break; |
|
2247 | + } |
|
2151 | 2248 | |
2152 | 2249 | if (!empty($tag['block_level'])) |
2153 | 2250 | { |
@@ -2161,10 +2258,11 @@ discard block |
||
2161 | 2258 | // The idea is, if we are LOOKING for a block level tag, we can close them on the way. |
2162 | 2259 | if (strlen($look_for) > 0 && isset($bbc_codes[$look_for[0]])) |
2163 | 2260 | { |
2164 | - foreach ($bbc_codes[$look_for[0]] as $temp) |
|
2165 | - if ($temp['tag'] == $look_for) |
|
2261 | + foreach ($bbc_codes[$look_for[0]] as $temp) { |
|
2262 | + if ($temp['tag'] == $look_for) |
|
2166 | 2263 | { |
2167 | 2264 | $block_level = !empty($temp['block_level']); |
2265 | + } |
|
2168 | 2266 | break; |
2169 | 2267 | } |
2170 | 2268 | } |
@@ -2186,15 +2284,15 @@ discard block |
||
2186 | 2284 | { |
2187 | 2285 | $open_tags = $to_close; |
2188 | 2286 | continue; |
2189 | - } |
|
2190 | - elseif (!empty($to_close) && $tag['tag'] != $look_for) |
|
2287 | + } elseif (!empty($to_close) && $tag['tag'] != $look_for) |
|
2191 | 2288 | { |
2192 | 2289 | if ($block_level === null && isset($look_for[0], $bbc_codes[$look_for[0]])) |
2193 | 2290 | { |
2194 | - foreach ($bbc_codes[$look_for[0]] as $temp) |
|
2195 | - if ($temp['tag'] == $look_for) |
|
2291 | + foreach ($bbc_codes[$look_for[0]] as $temp) { |
|
2292 | + if ($temp['tag'] == $look_for) |
|
2196 | 2293 | { |
2197 | 2294 | $block_level = !empty($temp['block_level']); |
2295 | + } |
|
2198 | 2296 | break; |
2199 | 2297 | } |
2200 | 2298 | } |
@@ -2202,8 +2300,9 @@ discard block |
||
2202 | 2300 | // We're not looking for a block level tag (or maybe even a tag that exists...) |
2203 | 2301 | if (!$block_level) |
2204 | 2302 | { |
2205 | - foreach ($to_close as $tag) |
|
2206 | - array_push($open_tags, $tag); |
|
2303 | + foreach ($to_close as $tag) { |
|
2304 | + array_push($open_tags, $tag); |
|
2305 | + } |
|
2207 | 2306 | continue; |
2208 | 2307 | } |
2209 | 2308 | } |
@@ -2216,14 +2315,17 @@ discard block |
||
2216 | 2315 | |
2217 | 2316 | // See the comment at the end of the big loop - just eating whitespace ;). |
2218 | 2317 | $whitespace_regex = ''; |
2219 | - if (!empty($tag['block_level'])) |
|
2220 | - $whitespace_regex .= '( |\s)*(<br>)?'; |
|
2318 | + if (!empty($tag['block_level'])) { |
|
2319 | + $whitespace_regex .= '( |\s)*(<br>)?'; |
|
2320 | + } |
|
2221 | 2321 | // Trim one line of whitespace after unnested tags, but all of it after nested ones |
2222 | - if (!empty($tag['trim']) && $tag['trim'] != 'inside') |
|
2223 | - $whitespace_regex .= empty($tag['require_parents']) ? '( |\s)*' : '(<br>| |\s)*'; |
|
2322 | + if (!empty($tag['trim']) && $tag['trim'] != 'inside') { |
|
2323 | + $whitespace_regex .= empty($tag['require_parents']) ? '( |\s)*' : '(<br>| |\s)*'; |
|
2324 | + } |
|
2224 | 2325 | |
2225 | - if (!empty($whitespace_regex) && preg_match('~' . $whitespace_regex . '~', substr($message, $pos), $matches) != 0) |
|
2226 | - $message = substr($message, 0, $pos) . substr($message, $pos + strlen($matches[0])); |
|
2326 | + if (!empty($whitespace_regex) && preg_match('~' . $whitespace_regex . '~', substr($message, $pos), $matches) != 0) { |
|
2327 | + $message = substr($message, 0, $pos) . substr($message, $pos + strlen($matches[0])); |
|
2328 | + } |
|
2227 | 2329 | } |
2228 | 2330 | |
2229 | 2331 | if (!empty($to_close)) |
@@ -2236,8 +2338,9 @@ discard block |
||
2236 | 2338 | } |
2237 | 2339 | |
2238 | 2340 | // No tags for this character, so just keep going (fastest possible course.) |
2239 | - if (!isset($bbc_codes[$tags])) |
|
2240 | - continue; |
|
2341 | + if (!isset($bbc_codes[$tags])) { |
|
2342 | + continue; |
|
2343 | + } |
|
2241 | 2344 | |
2242 | 2345 | $inside = empty($open_tags) ? null : $open_tags[count($open_tags) - 1]; |
2243 | 2346 | $tag = null; |
@@ -2246,44 +2349,52 @@ discard block |
||
2246 | 2349 | $pt_strlen = strlen($possible['tag']); |
2247 | 2350 | |
2248 | 2351 | // Not a match? |
2249 | - if (strtolower(substr($message, $pos + 1, $pt_strlen)) != $possible['tag']) |
|
2250 | - continue; |
|
2352 | + if (strtolower(substr($message, $pos + 1, $pt_strlen)) != $possible['tag']) { |
|
2353 | + continue; |
|
2354 | + } |
|
2251 | 2355 | |
2252 | 2356 | $next_c = $message[$pos + 1 + $pt_strlen]; |
2253 | 2357 | |
2254 | 2358 | // A test validation? |
2255 | - if (isset($possible['test']) && preg_match('~^' . $possible['test'] . '~', substr($message, $pos + 1 + $pt_strlen + 1)) === 0) |
|
2256 | - continue; |
|
2359 | + if (isset($possible['test']) && preg_match('~^' . $possible['test'] . '~', substr($message, $pos + 1 + $pt_strlen + 1)) === 0) { |
|
2360 | + continue; |
|
2361 | + } |
|
2257 | 2362 | // Do we want parameters? |
2258 | 2363 | elseif (!empty($possible['parameters'])) |
2259 | 2364 | { |
2260 | - if ($next_c != ' ') |
|
2261 | - continue; |
|
2262 | - } |
|
2263 | - elseif (isset($possible['type'])) |
|
2365 | + if ($next_c != ' ') { |
|
2366 | + continue; |
|
2367 | + } |
|
2368 | + } elseif (isset($possible['type'])) |
|
2264 | 2369 | { |
2265 | 2370 | // Do we need an equal sign? |
2266 | - if (in_array($possible['type'], array('unparsed_equals', 'unparsed_commas', 'unparsed_commas_content', 'unparsed_equals_content', 'parsed_equals')) && $next_c != '=') |
|
2267 | - continue; |
|
2371 | + if (in_array($possible['type'], array('unparsed_equals', 'unparsed_commas', 'unparsed_commas_content', 'unparsed_equals_content', 'parsed_equals')) && $next_c != '=') { |
|
2372 | + continue; |
|
2373 | + } |
|
2268 | 2374 | // Maybe we just want a /... |
2269 | - if ($possible['type'] == 'closed' && $next_c != ']' && substr($message, $pos + 1 + $pt_strlen, 2) != '/]' && substr($message, $pos + 1 + $pt_strlen, 3) != ' /]') |
|
2270 | - continue; |
|
2375 | + if ($possible['type'] == 'closed' && $next_c != ']' && substr($message, $pos + 1 + $pt_strlen, 2) != '/]' && substr($message, $pos + 1 + $pt_strlen, 3) != ' /]') { |
|
2376 | + continue; |
|
2377 | + } |
|
2271 | 2378 | // An immediate ]? |
2272 | - if ($possible['type'] == 'unparsed_content' && $next_c != ']') |
|
2273 | - continue; |
|
2379 | + if ($possible['type'] == 'unparsed_content' && $next_c != ']') { |
|
2380 | + continue; |
|
2381 | + } |
|
2274 | 2382 | } |
2275 | 2383 | // No type means 'parsed_content', which demands an immediate ] without parameters! |
2276 | - elseif ($next_c != ']') |
|
2277 | - continue; |
|
2384 | + elseif ($next_c != ']') { |
|
2385 | + continue; |
|
2386 | + } |
|
2278 | 2387 | |
2279 | 2388 | // Check allowed tree? |
2280 | - if (isset($possible['require_parents']) && ($inside === null || !in_array($inside['tag'], $possible['require_parents']))) |
|
2281 | - continue; |
|
2282 | - elseif (isset($inside['require_children']) && !in_array($possible['tag'], $inside['require_children'])) |
|
2283 | - continue; |
|
2389 | + if (isset($possible['require_parents']) && ($inside === null || !in_array($inside['tag'], $possible['require_parents']))) { |
|
2390 | + continue; |
|
2391 | + } elseif (isset($inside['require_children']) && !in_array($possible['tag'], $inside['require_children'])) { |
|
2392 | + continue; |
|
2393 | + } |
|
2284 | 2394 | // If this is in the list of disallowed child tags, don't parse it. |
2285 | - elseif (isset($inside['disallow_children']) && in_array($possible['tag'], $inside['disallow_children'])) |
|
2286 | - continue; |
|
2395 | + elseif (isset($inside['disallow_children']) && in_array($possible['tag'], $inside['disallow_children'])) { |
|
2396 | + continue; |
|
2397 | + } |
|
2287 | 2398 | |
2288 | 2399 | $pos1 = $pos + 1 + $pt_strlen + 1; |
2289 | 2400 | |
@@ -2295,8 +2406,9 @@ discard block |
||
2295 | 2406 | foreach ($open_tags as $open_quote) |
2296 | 2407 | { |
2297 | 2408 | // Every parent quote this quote has flips the styling |
2298 | - if ($open_quote['tag'] == 'quote') |
|
2299 | - $quote_alt = !$quote_alt; |
|
2409 | + if ($open_quote['tag'] == 'quote') { |
|
2410 | + $quote_alt = !$quote_alt; |
|
2411 | + } |
|
2300 | 2412 | } |
2301 | 2413 | // Add a class to the quote to style alternating blockquotes |
2302 | 2414 | $possible['before'] = strtr($possible['before'], array('<blockquote>' => '<blockquote class="bbc_' . ($quote_alt ? 'alternate' : 'standard') . '_quote">')); |
@@ -2307,8 +2419,9 @@ discard block |
||
2307 | 2419 | { |
2308 | 2420 | // Build a regular expression for each parameter for the current tag. |
2309 | 2421 | $preg = array(); |
2310 | - foreach ($possible['parameters'] as $p => $info) |
|
2311 | - $preg[] = '(\s+' . $p . '=' . (empty($info['quoted']) ? '' : '"') . (isset($info['match']) ? $info['match'] : '(.+?)') . (empty($info['quoted']) ? '' : '"') . '\s*)' . (empty($info['optional']) ? '' : '?'); |
|
2422 | + foreach ($possible['parameters'] as $p => $info) { |
|
2423 | + $preg[] = '(\s+' . $p . '=' . (empty($info['quoted']) ? '' : '"') . (isset($info['match']) ? $info['match'] : '(.+?)') . (empty($info['quoted']) ? '' : '"') . '\s*)' . (empty($info['optional']) ? '' : '?'); |
|
2424 | + } |
|
2312 | 2425 | |
2313 | 2426 | // Extract the string that potentially holds our parameters. |
2314 | 2427 | $blob = preg_split('~\[/?(?:' . $alltags_regex . ')~i', substr($message, $pos)); |
@@ -2328,24 +2441,27 @@ discard block |
||
2328 | 2441 | |
2329 | 2442 | $match = preg_match('~^' . implode('', $preg) . '$~i', implode(' ', $given_params), $matches) !== 0; |
2330 | 2443 | |
2331 | - if ($match) |
|
2332 | - $blob_counter = count($blobs) + 1; |
|
2444 | + if ($match) { |
|
2445 | + $blob_counter = count($blobs) + 1; |
|
2446 | + } |
|
2333 | 2447 | } |
2334 | 2448 | |
2335 | 2449 | // Didn't match our parameter list, try the next possible. |
2336 | - if (!$match) |
|
2337 | - continue; |
|
2450 | + if (!$match) { |
|
2451 | + continue; |
|
2452 | + } |
|
2338 | 2453 | |
2339 | 2454 | $params = array(); |
2340 | 2455 | for ($i = 1, $n = count($matches); $i < $n; $i += 2) |
2341 | 2456 | { |
2342 | 2457 | $key = strtok(ltrim($matches[$i]), '='); |
2343 | - if (isset($possible['parameters'][$key]['value'])) |
|
2344 | - $params['{' . $key . '}'] = strtr($possible['parameters'][$key]['value'], array('$1' => $matches[$i + 1])); |
|
2345 | - elseif (isset($possible['parameters'][$key]['validate'])) |
|
2346 | - $params['{' . $key . '}'] = $possible['parameters'][$key]['validate']($matches[$i + 1]); |
|
2347 | - else |
|
2348 | - $params['{' . $key . '}'] = $matches[$i + 1]; |
|
2458 | + if (isset($possible['parameters'][$key]['value'])) { |
|
2459 | + $params['{' . $key . '}'] = strtr($possible['parameters'][$key]['value'], array('$1' => $matches[$i + 1])); |
|
2460 | + } elseif (isset($possible['parameters'][$key]['validate'])) { |
|
2461 | + $params['{' . $key . '}'] = $possible['parameters'][$key]['validate']($matches[$i + 1]); |
|
2462 | + } else { |
|
2463 | + $params['{' . $key . '}'] = $matches[$i + 1]; |
|
2464 | + } |
|
2349 | 2465 | |
2350 | 2466 | // Just to make sure: replace any $ or { so they can't interpolate wrongly. |
2351 | 2467 | $params['{' . $key . '}'] = strtr($params['{' . $key . '}'], array('$' => '$', '{' => '{')); |
@@ -2353,23 +2469,26 @@ discard block |
||
2353 | 2469 | |
2354 | 2470 | foreach ($possible['parameters'] as $p => $info) |
2355 | 2471 | { |
2356 | - if (!isset($params['{' . $p . '}'])) |
|
2357 | - $params['{' . $p . '}'] = ''; |
|
2472 | + if (!isset($params['{' . $p . '}'])) { |
|
2473 | + $params['{' . $p . '}'] = ''; |
|
2474 | + } |
|
2358 | 2475 | } |
2359 | 2476 | |
2360 | 2477 | $tag = $possible; |
2361 | 2478 | |
2362 | 2479 | // Put the parameters into the string. |
2363 | - if (isset($tag['before'])) |
|
2364 | - $tag['before'] = strtr($tag['before'], $params); |
|
2365 | - if (isset($tag['after'])) |
|
2366 | - $tag['after'] = strtr($tag['after'], $params); |
|
2367 | - if (isset($tag['content'])) |
|
2368 | - $tag['content'] = strtr($tag['content'], $params); |
|
2480 | + if (isset($tag['before'])) { |
|
2481 | + $tag['before'] = strtr($tag['before'], $params); |
|
2482 | + } |
|
2483 | + if (isset($tag['after'])) { |
|
2484 | + $tag['after'] = strtr($tag['after'], $params); |
|
2485 | + } |
|
2486 | + if (isset($tag['content'])) { |
|
2487 | + $tag['content'] = strtr($tag['content'], $params); |
|
2488 | + } |
|
2369 | 2489 | |
2370 | 2490 | $pos1 += strlen($given_param_string); |
2371 | - } |
|
2372 | - else |
|
2491 | + } else |
|
2373 | 2492 | { |
2374 | 2493 | $tag = $possible; |
2375 | 2494 | $params = array(); |
@@ -2380,8 +2499,9 @@ discard block |
||
2380 | 2499 | // Item codes are complicated buggers... they are implicit [li]s and can make [list]s! |
2381 | 2500 | if ($smileys !== false && $tag === null && isset($itemcodes[$message[$pos + 1]]) && $message[$pos + 2] == ']' && !isset($disabled['list']) && !isset($disabled['li'])) |
2382 | 2501 | { |
2383 | - if ($message[$pos + 1] == '0' && !in_array($message[$pos - 1], array(';', ' ', "\t", "\n", '>'))) |
|
2384 | - continue; |
|
2502 | + if ($message[$pos + 1] == '0' && !in_array($message[$pos - 1], array(';', ' ', "\t", "\n", '>'))) { |
|
2503 | + continue; |
|
2504 | + } |
|
2385 | 2505 | |
2386 | 2506 | $tag = $itemcodes[$message[$pos + 1]]; |
2387 | 2507 | |
@@ -2402,9 +2522,9 @@ discard block |
||
2402 | 2522 | { |
2403 | 2523 | array_pop($open_tags); |
2404 | 2524 | $code = '</li>'; |
2525 | + } else { |
|
2526 | + $code = ''; |
|
2405 | 2527 | } |
2406 | - else |
|
2407 | - $code = ''; |
|
2408 | 2528 | |
2409 | 2529 | // Now we open a new tag. |
2410 | 2530 | $open_tags[] = array( |
@@ -2451,12 +2571,14 @@ discard block |
||
2451 | 2571 | } |
2452 | 2572 | |
2453 | 2573 | // No tag? Keep looking, then. Silly people using brackets without actual tags. |
2454 | - if ($tag === null) |
|
2455 | - continue; |
|
2574 | + if ($tag === null) { |
|
2575 | + continue; |
|
2576 | + } |
|
2456 | 2577 | |
2457 | 2578 | // Propagate the list to the child (so wrapping the disallowed tag won't work either.) |
2458 | - if (isset($inside['disallow_children'])) |
|
2459 | - $tag['disallow_children'] = isset($tag['disallow_children']) ? array_unique(array_merge($tag['disallow_children'], $inside['disallow_children'])) : $inside['disallow_children']; |
|
2579 | + if (isset($inside['disallow_children'])) { |
|
2580 | + $tag['disallow_children'] = isset($tag['disallow_children']) ? array_unique(array_merge($tag['disallow_children'], $inside['disallow_children'])) : $inside['disallow_children']; |
|
2581 | + } |
|
2460 | 2582 | |
2461 | 2583 | // Is this tag disabled? |
2462 | 2584 | if (isset($disabled[$tag['tag']])) |
@@ -2466,14 +2588,13 @@ discard block |
||
2466 | 2588 | $tag['before'] = !empty($tag['block_level']) ? '<div>' : ''; |
2467 | 2589 | $tag['after'] = !empty($tag['block_level']) ? '</div>' : ''; |
2468 | 2590 | $tag['content'] = isset($tag['type']) && $tag['type'] == 'closed' ? '' : (!empty($tag['block_level']) ? '<div>$1</div>' : '$1'); |
2469 | - } |
|
2470 | - elseif (isset($tag['disabled_before']) || isset($tag['disabled_after'])) |
|
2591 | + } elseif (isset($tag['disabled_before']) || isset($tag['disabled_after'])) |
|
2471 | 2592 | { |
2472 | 2593 | $tag['before'] = isset($tag['disabled_before']) ? $tag['disabled_before'] : (!empty($tag['block_level']) ? '<div>' : ''); |
2473 | 2594 | $tag['after'] = isset($tag['disabled_after']) ? $tag['disabled_after'] : (!empty($tag['block_level']) ? '</div>' : ''); |
2595 | + } else { |
|
2596 | + $tag['content'] = $tag['disabled_content']; |
|
2474 | 2597 | } |
2475 | - else |
|
2476 | - $tag['content'] = $tag['disabled_content']; |
|
2477 | 2598 | } |
2478 | 2599 | |
2479 | 2600 | // we use this a lot |
@@ -2483,8 +2604,9 @@ discard block |
||
2483 | 2604 | if (!empty($tag['block_level']) && $tag['tag'] != 'html' && empty($inside['block_level'])) |
2484 | 2605 | { |
2485 | 2606 | $n = count($open_tags) - 1; |
2486 | - while (empty($open_tags[$n]['block_level']) && $n >= 0) |
|
2487 | - $n--; |
|
2607 | + while (empty($open_tags[$n]['block_level']) && $n >= 0) { |
|
2608 | + $n--; |
|
2609 | + } |
|
2488 | 2610 | |
2489 | 2611 | // Close all the non block level tags so this tag isn't surrounded by them. |
2490 | 2612 | for ($i = count($open_tags) - 1; $i > $n; $i--) |
@@ -2496,12 +2618,15 @@ discard block |
||
2496 | 2618 | |
2497 | 2619 | // Trim or eat trailing stuff... see comment at the end of the big loop. |
2498 | 2620 | $whitespace_regex = ''; |
2499 | - if (!empty($tag['block_level'])) |
|
2500 | - $whitespace_regex .= '( |\s)*(<br>)?'; |
|
2501 | - if (!empty($tag['trim']) && $tag['trim'] != 'inside') |
|
2502 | - $whitespace_regex .= empty($tag['require_parents']) ? '( |\s)*' : '(<br>| |\s)*'; |
|
2503 | - if (!empty($whitespace_regex) && preg_match('~' . $whitespace_regex . '~', substr($message, $pos), $matches) != 0) |
|
2504 | - $message = substr($message, 0, $pos) . substr($message, $pos + strlen($matches[0])); |
|
2621 | + if (!empty($tag['block_level'])) { |
|
2622 | + $whitespace_regex .= '( |\s)*(<br>)?'; |
|
2623 | + } |
|
2624 | + if (!empty($tag['trim']) && $tag['trim'] != 'inside') { |
|
2625 | + $whitespace_regex .= empty($tag['require_parents']) ? '( |\s)*' : '(<br>| |\s)*'; |
|
2626 | + } |
|
2627 | + if (!empty($whitespace_regex) && preg_match('~' . $whitespace_regex . '~', substr($message, $pos), $matches) != 0) { |
|
2628 | + $message = substr($message, 0, $pos) . substr($message, $pos + strlen($matches[0])); |
|
2629 | + } |
|
2505 | 2630 | |
2506 | 2631 | array_pop($open_tags); |
2507 | 2632 | } |
@@ -2522,16 +2647,19 @@ discard block |
||
2522 | 2647 | elseif ($tag['type'] == 'unparsed_content') |
2523 | 2648 | { |
2524 | 2649 | $pos2 = stripos($message, '[/' . substr($message, $pos + 1, $tag_strlen) . ']', $pos1); |
2525 | - if ($pos2 === false) |
|
2526 | - continue; |
|
2650 | + if ($pos2 === false) { |
|
2651 | + continue; |
|
2652 | + } |
|
2527 | 2653 | |
2528 | 2654 | $data = substr($message, $pos1, $pos2 - $pos1); |
2529 | 2655 | |
2530 | - if (!empty($tag['block_level']) && substr($data, 0, 4) == '<br>') |
|
2531 | - $data = substr($data, 4); |
|
2656 | + if (!empty($tag['block_level']) && substr($data, 0, 4) == '<br>') { |
|
2657 | + $data = substr($data, 4); |
|
2658 | + } |
|
2532 | 2659 | |
2533 | - if (isset($tag['validate'])) |
|
2534 | - $tag['validate']($tag, $data, $disabled, $params); |
|
2660 | + if (isset($tag['validate'])) { |
|
2661 | + $tag['validate']($tag, $data, $disabled, $params); |
|
2662 | + } |
|
2535 | 2663 | |
2536 | 2664 | $code = strtr($tag['content'], array('$1' => $data)); |
2537 | 2665 | $message = substr($message, 0, $pos) . "\n" . $code . "\n" . substr($message, $pos2 + 3 + $tag_strlen); |
@@ -2547,34 +2675,40 @@ discard block |
||
2547 | 2675 | if (isset($tag['quoted'])) |
2548 | 2676 | { |
2549 | 2677 | $quoted = substr($message, $pos1, 6) == '"'; |
2550 | - if ($tag['quoted'] != 'optional' && !$quoted) |
|
2551 | - continue; |
|
2678 | + if ($tag['quoted'] != 'optional' && !$quoted) { |
|
2679 | + continue; |
|
2680 | + } |
|
2552 | 2681 | |
2553 | - if ($quoted) |
|
2554 | - $pos1 += 6; |
|
2682 | + if ($quoted) { |
|
2683 | + $pos1 += 6; |
|
2684 | + } |
|
2685 | + } else { |
|
2686 | + $quoted = false; |
|
2555 | 2687 | } |
2556 | - else |
|
2557 | - $quoted = false; |
|
2558 | 2688 | |
2559 | 2689 | $pos2 = strpos($message, $quoted == false ? ']' : '"]', $pos1); |
2560 | - if ($pos2 === false) |
|
2561 | - continue; |
|
2690 | + if ($pos2 === false) { |
|
2691 | + continue; |
|
2692 | + } |
|
2562 | 2693 | |
2563 | 2694 | $pos3 = stripos($message, '[/' . substr($message, $pos + 1, $tag_strlen) . ']', $pos2); |
2564 | - if ($pos3 === false) |
|
2565 | - continue; |
|
2695 | + if ($pos3 === false) { |
|
2696 | + continue; |
|
2697 | + } |
|
2566 | 2698 | |
2567 | 2699 | $data = array( |
2568 | 2700 | substr($message, $pos2 + ($quoted == false ? 1 : 7), $pos3 - ($pos2 + ($quoted == false ? 1 : 7))), |
2569 | 2701 | substr($message, $pos1, $pos2 - $pos1) |
2570 | 2702 | ); |
2571 | 2703 | |
2572 | - if (!empty($tag['block_level']) && substr($data[0], 0, 4) == '<br>') |
|
2573 | - $data[0] = substr($data[0], 4); |
|
2704 | + if (!empty($tag['block_level']) && substr($data[0], 0, 4) == '<br>') { |
|
2705 | + $data[0] = substr($data[0], 4); |
|
2706 | + } |
|
2574 | 2707 | |
2575 | 2708 | // Validation for my parking, please! |
2576 | - if (isset($tag['validate'])) |
|
2577 | - $tag['validate']($tag, $data, $disabled, $params); |
|
2709 | + if (isset($tag['validate'])) { |
|
2710 | + $tag['validate']($tag, $data, $disabled, $params); |
|
2711 | + } |
|
2578 | 2712 | |
2579 | 2713 | $code = strtr($tag['content'], array('$1' => $data[0], '$2' => $data[1])); |
2580 | 2714 | $message = substr($message, 0, $pos) . "\n" . $code . "\n" . substr($message, $pos3 + 3 + $tag_strlen); |
@@ -2591,23 +2725,27 @@ discard block |
||
2591 | 2725 | elseif ($tag['type'] == 'unparsed_commas_content') |
2592 | 2726 | { |
2593 | 2727 | $pos2 = strpos($message, ']', $pos1); |
2594 | - if ($pos2 === false) |
|
2595 | - continue; |
|
2728 | + if ($pos2 === false) { |
|
2729 | + continue; |
|
2730 | + } |
|
2596 | 2731 | |
2597 | 2732 | $pos3 = stripos($message, '[/' . substr($message, $pos + 1, $tag_strlen) . ']', $pos2); |
2598 | - if ($pos3 === false) |
|
2599 | - continue; |
|
2733 | + if ($pos3 === false) { |
|
2734 | + continue; |
|
2735 | + } |
|
2600 | 2736 | |
2601 | 2737 | // We want $1 to be the content, and the rest to be csv. |
2602 | 2738 | $data = explode(',', ',' . substr($message, $pos1, $pos2 - $pos1)); |
2603 | 2739 | $data[0] = substr($message, $pos2 + 1, $pos3 - $pos2 - 1); |
2604 | 2740 | |
2605 | - if (isset($tag['validate'])) |
|
2606 | - $tag['validate']($tag, $data, $disabled, $params); |
|
2741 | + if (isset($tag['validate'])) { |
|
2742 | + $tag['validate']($tag, $data, $disabled, $params); |
|
2743 | + } |
|
2607 | 2744 | |
2608 | 2745 | $code = $tag['content']; |
2609 | - foreach ($data as $k => $d) |
|
2610 | - $code = strtr($code, array('$' . ($k + 1) => trim($d))); |
|
2746 | + foreach ($data as $k => $d) { |
|
2747 | + $code = strtr($code, array('$' . ($k + 1) => trim($d))); |
|
2748 | + } |
|
2611 | 2749 | $message = substr($message, 0, $pos) . "\n" . $code . "\n" . substr($message, $pos3 + 3 + $tag_strlen); |
2612 | 2750 | $pos += strlen($code) - 1 + 2; |
2613 | 2751 | } |
@@ -2615,24 +2753,28 @@ discard block |
||
2615 | 2753 | elseif ($tag['type'] == 'unparsed_commas') |
2616 | 2754 | { |
2617 | 2755 | $pos2 = strpos($message, ']', $pos1); |
2618 | - if ($pos2 === false) |
|
2619 | - continue; |
|
2756 | + if ($pos2 === false) { |
|
2757 | + continue; |
|
2758 | + } |
|
2620 | 2759 | |
2621 | 2760 | $data = explode(',', substr($message, $pos1, $pos2 - $pos1)); |
2622 | 2761 | |
2623 | - if (isset($tag['validate'])) |
|
2624 | - $tag['validate']($tag, $data, $disabled, $params); |
|
2762 | + if (isset($tag['validate'])) { |
|
2763 | + $tag['validate']($tag, $data, $disabled, $params); |
|
2764 | + } |
|
2625 | 2765 | |
2626 | 2766 | // Fix after, for disabled code mainly. |
2627 | - foreach ($data as $k => $d) |
|
2628 | - $tag['after'] = strtr($tag['after'], array('$' . ($k + 1) => trim($d))); |
|
2767 | + foreach ($data as $k => $d) { |
|
2768 | + $tag['after'] = strtr($tag['after'], array('$' . ($k + 1) => trim($d))); |
|
2769 | + } |
|
2629 | 2770 | |
2630 | 2771 | $open_tags[] = $tag; |
2631 | 2772 | |
2632 | 2773 | // Replace them out, $1, $2, $3, $4, etc. |
2633 | 2774 | $code = $tag['before']; |
2634 | - foreach ($data as $k => $d) |
|
2635 | - $code = strtr($code, array('$' . ($k + 1) => trim($d))); |
|
2775 | + foreach ($data as $k => $d) { |
|
2776 | + $code = strtr($code, array('$' . ($k + 1) => trim($d))); |
|
2777 | + } |
|
2636 | 2778 | $message = substr($message, 0, $pos) . "\n" . $code . "\n" . substr($message, $pos2 + 1); |
2637 | 2779 | $pos += strlen($code) - 1 + 2; |
2638 | 2780 | } |
@@ -2643,28 +2785,33 @@ discard block |
||
2643 | 2785 | if (isset($tag['quoted'])) |
2644 | 2786 | { |
2645 | 2787 | $quoted = substr($message, $pos1, 6) == '"'; |
2646 | - if ($tag['quoted'] != 'optional' && !$quoted) |
|
2647 | - continue; |
|
2788 | + if ($tag['quoted'] != 'optional' && !$quoted) { |
|
2789 | + continue; |
|
2790 | + } |
|
2648 | 2791 | |
2649 | - if ($quoted) |
|
2650 | - $pos1 += 6; |
|
2792 | + if ($quoted) { |
|
2793 | + $pos1 += 6; |
|
2794 | + } |
|
2795 | + } else { |
|
2796 | + $quoted = false; |
|
2651 | 2797 | } |
2652 | - else |
|
2653 | - $quoted = false; |
|
2654 | 2798 | |
2655 | 2799 | $pos2 = strpos($message, $quoted == false ? ']' : '"]', $pos1); |
2656 | - if ($pos2 === false) |
|
2657 | - continue; |
|
2800 | + if ($pos2 === false) { |
|
2801 | + continue; |
|
2802 | + } |
|
2658 | 2803 | |
2659 | 2804 | $data = substr($message, $pos1, $pos2 - $pos1); |
2660 | 2805 | |
2661 | 2806 | // Validation for my parking, please! |
2662 | - if (isset($tag['validate'])) |
|
2663 | - $tag['validate']($tag, $data, $disabled, $params); |
|
2807 | + if (isset($tag['validate'])) { |
|
2808 | + $tag['validate']($tag, $data, $disabled, $params); |
|
2809 | + } |
|
2664 | 2810 | |
2665 | 2811 | // For parsed content, we must recurse to avoid security problems. |
2666 | - if ($tag['type'] != 'unparsed_equals') |
|
2667 | - $data = parse_bbc($data, !empty($tag['parsed_tags_allowed']) ? false : true, '', !empty($tag['parsed_tags_allowed']) ? $tag['parsed_tags_allowed'] : array()); |
|
2812 | + if ($tag['type'] != 'unparsed_equals') { |
|
2813 | + $data = parse_bbc($data, !empty($tag['parsed_tags_allowed']) ? false : true, '', !empty($tag['parsed_tags_allowed']) ? $tag['parsed_tags_allowed'] : array()); |
|
2814 | + } |
|
2668 | 2815 | |
2669 | 2816 | $tag['after'] = strtr($tag['after'], array('$1' => $data)); |
2670 | 2817 | |
@@ -2676,34 +2823,40 @@ discard block |
||
2676 | 2823 | } |
2677 | 2824 | |
2678 | 2825 | // If this is block level, eat any breaks after it. |
2679 | - if (!empty($tag['block_level']) && substr($message, $pos + 1, 4) == '<br>') |
|
2680 | - $message = substr($message, 0, $pos + 1) . substr($message, $pos + 5); |
|
2826 | + if (!empty($tag['block_level']) && substr($message, $pos + 1, 4) == '<br>') { |
|
2827 | + $message = substr($message, 0, $pos + 1) . substr($message, $pos + 5); |
|
2828 | + } |
|
2681 | 2829 | |
2682 | 2830 | // Are we trimming outside this tag? |
2683 | - if (!empty($tag['trim']) && $tag['trim'] != 'outside' && preg_match('~(<br>| |\s)*~', substr($message, $pos + 1), $matches) != 0) |
|
2684 | - $message = substr($message, 0, $pos + 1) . substr($message, $pos + 1 + strlen($matches[0])); |
|
2831 | + if (!empty($tag['trim']) && $tag['trim'] != 'outside' && preg_match('~(<br>| |\s)*~', substr($message, $pos + 1), $matches) != 0) { |
|
2832 | + $message = substr($message, 0, $pos + 1) . substr($message, $pos + 1 + strlen($matches[0])); |
|
2833 | + } |
|
2685 | 2834 | } |
2686 | 2835 | |
2687 | 2836 | // Close any remaining tags. |
2688 | - while ($tag = array_pop($open_tags)) |
|
2689 | - $message .= "\n" . $tag['after'] . "\n"; |
|
2837 | + while ($tag = array_pop($open_tags)) { |
|
2838 | + $message .= "\n" . $tag['after'] . "\n"; |
|
2839 | + } |
|
2690 | 2840 | |
2691 | 2841 | // Parse the smileys within the parts where it can be done safely. |
2692 | 2842 | if ($smileys === true) |
2693 | 2843 | { |
2694 | 2844 | $message_parts = explode("\n", $message); |
2695 | - for ($i = 0, $n = count($message_parts); $i < $n; $i += 2) |
|
2696 | - parsesmileys($message_parts[$i]); |
|
2845 | + for ($i = 0, $n = count($message_parts); $i < $n; $i += 2) { |
|
2846 | + parsesmileys($message_parts[$i]); |
|
2847 | + } |
|
2697 | 2848 | |
2698 | 2849 | $message = implode('', $message_parts); |
2699 | 2850 | } |
2700 | 2851 | |
2701 | 2852 | // No smileys, just get rid of the markers. |
2702 | - else |
|
2703 | - $message = strtr($message, array("\n" => '')); |
|
2853 | + else { |
|
2854 | + $message = strtr($message, array("\n" => '')); |
|
2855 | + } |
|
2704 | 2856 | |
2705 | - if ($message !== '' && $message[0] === ' ') |
|
2706 | - $message = ' ' . substr($message, 1); |
|
2857 | + if ($message !== '' && $message[0] === ' ') { |
|
2858 | + $message = ' ' . substr($message, 1); |
|
2859 | + } |
|
2707 | 2860 | |
2708 | 2861 | // Cleanup whitespace. |
2709 | 2862 | $message = strtr($message, array(' ' => ' ', "\r" => '', "\n" => '<br>', '<br> ' => '<br> ', ' ' => "\n")); |
@@ -2712,15 +2865,16 @@ discard block |
||
2712 | 2865 | call_integration_hook('integrate_post_parsebbc', array(&$message, &$smileys, &$cache_id, &$parse_tags)); |
2713 | 2866 | |
2714 | 2867 | // Cache the output if it took some time... |
2715 | - if (isset($cache_key, $cache_t) && array_sum(explode(' ', microtime())) - array_sum(explode(' ', $cache_t)) > 0.05) |
|
2716 | - cache_put_data($cache_key, $message, 240); |
|
2868 | + if (isset($cache_key, $cache_t) && array_sum(explode(' ', microtime())) - array_sum(explode(' ', $cache_t)) > 0.05) { |
|
2869 | + cache_put_data($cache_key, $message, 240); |
|
2870 | + } |
|
2717 | 2871 | |
2718 | 2872 | // If this was a force parse revert if needed. |
2719 | 2873 | if (!empty($parse_tags)) |
2720 | 2874 | { |
2721 | - if (empty($temp_bbc)) |
|
2722 | - $bbc_codes = array(); |
|
2723 | - else |
|
2875 | + if (empty($temp_bbc)) { |
|
2876 | + $bbc_codes = array(); |
|
2877 | + } else |
|
2724 | 2878 | { |
2725 | 2879 | $bbc_codes = $temp_bbc; |
2726 | 2880 | unset($temp_bbc); |
@@ -2747,8 +2901,9 @@ discard block |
||
2747 | 2901 | static $smileyPregSearch = null, $smileyPregReplacements = array(); |
2748 | 2902 | |
2749 | 2903 | // No smiley set at all?! |
2750 | - if ($user_info['smiley_set'] == 'none' || trim($message) == '') |
|
2751 | - return; |
|
2904 | + if ($user_info['smiley_set'] == 'none' || trim($message) == '') { |
|
2905 | + return; |
|
2906 | + } |
|
2752 | 2907 | |
2753 | 2908 | // If smileyPregSearch hasn't been set, do it now. |
2754 | 2909 | if (empty($smileyPregSearch)) |
@@ -2759,8 +2914,7 @@ discard block |
||
2759 | 2914 | $smileysfrom = array('>:D', ':D', '::)', '>:(', ':))', ':)', ';)', ';D', ':(', ':o', '8)', ':P', '???', ':-[', ':-X', ':-*', ':\'(', ':-\\', '^-^', 'O0', 'C:-)', '0:)'); |
2760 | 2915 | $smileysto = array('evil.gif', 'cheesy.gif', 'rolleyes.gif', 'angry.gif', 'laugh.gif', 'smiley.gif', 'wink.gif', 'grin.gif', 'sad.gif', 'shocked.gif', 'cool.gif', 'tongue.gif', 'huh.gif', 'embarrassed.gif', 'lipsrsealed.gif', 'kiss.gif', 'cry.gif', 'undecided.gif', 'azn.gif', 'afro.gif', 'police.gif', 'angel.gif'); |
2761 | 2916 | $smileysdescs = array('', $txt['icon_cheesy'], $txt['icon_rolleyes'], $txt['icon_angry'], '', $txt['icon_smiley'], $txt['icon_wink'], $txt['icon_grin'], $txt['icon_sad'], $txt['icon_shocked'], $txt['icon_cool'], $txt['icon_tongue'], $txt['icon_huh'], $txt['icon_embarrassed'], $txt['icon_lips'], $txt['icon_kiss'], $txt['icon_cry'], $txt['icon_undecided'], '', '', '', ''); |
2762 | - } |
|
2763 | - else |
|
2917 | + } else |
|
2764 | 2918 | { |
2765 | 2919 | // Load the smileys in reverse order by length so they don't get parsed wrong. |
2766 | 2920 | if (($temp = cache_get_data('parsing_smileys', 480)) == null) |
@@ -2784,9 +2938,9 @@ discard block |
||
2784 | 2938 | $smcFunc['db_free_result']($result); |
2785 | 2939 | |
2786 | 2940 | cache_put_data('parsing_smileys', array($smileysfrom, $smileysto, $smileysdescs), 480); |
2941 | + } else { |
|
2942 | + list ($smileysfrom, $smileysto, $smileysdescs) = $temp; |
|
2787 | 2943 | } |
2788 | - else |
|
2789 | - list ($smileysfrom, $smileysto, $smileysdescs) = $temp; |
|
2790 | 2944 | } |
2791 | 2945 | |
2792 | 2946 | // The non-breaking-space is a complex thing... |
@@ -2863,35 +3017,41 @@ discard block |
||
2863 | 3017 | global $scripturl, $context, $modSettings, $db_show_debug, $db_cache; |
2864 | 3018 | |
2865 | 3019 | // In case we have mail to send, better do that - as obExit doesn't always quite make it... |
2866 | - if (!empty($context['flush_mail'])) |
|
2867 | - // @todo this relies on 'flush_mail' being only set in AddMailQueue itself... :\ |
|
3020 | + if (!empty($context['flush_mail'])) { |
|
3021 | + // @todo this relies on 'flush_mail' being only set in AddMailQueue itself... :\ |
|
2868 | 3022 | AddMailQueue(true); |
3023 | + } |
|
2869 | 3024 | |
2870 | 3025 | $add = preg_match('~^(ftp|http)[s]?://~', $setLocation) == 0 && substr($setLocation, 0, 6) != 'about:'; |
2871 | 3026 | |
2872 | - if ($add) |
|
2873 | - $setLocation = $scripturl . ($setLocation != '' ? '?' . $setLocation : ''); |
|
3027 | + if ($add) { |
|
3028 | + $setLocation = $scripturl . ($setLocation != '' ? '?' . $setLocation : ''); |
|
3029 | + } |
|
2874 | 3030 | |
2875 | 3031 | // Put the session ID in. |
2876 | - if (defined('SID') && SID != '') |
|
2877 | - $setLocation = preg_replace('/^' . preg_quote($scripturl, '/') . '(?!\?' . preg_quote(SID, '/') . ')\\??/', $scripturl . '?' . SID . ';', $setLocation); |
|
3032 | + if (defined('SID') && SID != '') { |
|
3033 | + $setLocation = preg_replace('/^' . preg_quote($scripturl, '/') . '(?!\?' . preg_quote(SID, '/') . ')\\??/', $scripturl . '?' . SID . ';', $setLocation); |
|
3034 | + } |
|
2878 | 3035 | // Keep that debug in their for template debugging! |
2879 | - elseif (isset($_GET['debug'])) |
|
2880 | - $setLocation = preg_replace('/^' . preg_quote($scripturl, '/') . '\\??/', $scripturl . '?debug;', $setLocation); |
|
3036 | + elseif (isset($_GET['debug'])) { |
|
3037 | + $setLocation = preg_replace('/^' . preg_quote($scripturl, '/') . '\\??/', $scripturl . '?debug;', $setLocation); |
|
3038 | + } |
|
2881 | 3039 | |
2882 | 3040 | if (!empty($modSettings['queryless_urls']) && (empty($context['server']['is_cgi']) || ini_get('cgi.fix_pathinfo') == 1 || @get_cfg_var('cgi.fix_pathinfo') == 1) && (!empty($context['server']['is_apache']) || !empty($context['server']['is_lighttpd']) || !empty($context['server']['is_litespeed']))) |
2883 | 3041 | { |
2884 | - if (defined('SID') && SID != '') |
|
2885 | - $setLocation = preg_replace_callback('~^' . preg_quote($scripturl, '/') . '\?(?:' . SID . '(?:;|&|&))((?:board|topic)=[^#]+?)(#[^"]*?)?$~', |
|
3042 | + if (defined('SID') && SID != '') { |
|
3043 | + $setLocation = preg_replace_callback('~^' . preg_quote($scripturl, '/') . '\?(?:' . SID . '(?:;|&|&))((?:board|topic)=[^#]+?)(#[^"]*?)?$~', |
|
2886 | 3044 | function ($m) use ($scripturl) |
2887 | 3045 | { |
2888 | 3046 | return $scripturl . '/' . strtr("$m[1]", '&;=', '//,') . '.html?' . SID. (isset($m[2]) ? "$m[2]" : ""); |
3047 | + } |
|
2889 | 3048 | }, $setLocation); |
2890 | - else |
|
2891 | - $setLocation = preg_replace_callback('~^' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?$~', |
|
3049 | + else { |
|
3050 | + $setLocation = preg_replace_callback('~^' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?$~', |
|
2892 | 3051 | function ($m) use ($scripturl) |
2893 | 3052 | { |
2894 | 3053 | return $scripturl . '/' . strtr("$m[1]", '&;=', '//,') . '.html' . (isset($m[2]) ? "$m[2]" : ""); |
3054 | + } |
|
2895 | 3055 | }, $setLocation); |
2896 | 3056 | } |
2897 | 3057 | |
@@ -2902,8 +3062,9 @@ discard block |
||
2902 | 3062 | header('Location: ' . str_replace(' ', '%20', $setLocation), true, $permanent ? 301 : 302); |
2903 | 3063 | |
2904 | 3064 | // Debugging. |
2905 | - if (isset($db_show_debug) && $db_show_debug === true) |
|
2906 | - $_SESSION['debug_redirect'] = $db_cache; |
|
3065 | + if (isset($db_show_debug) && $db_show_debug === true) { |
|
3066 | + $_SESSION['debug_redirect'] = $db_cache; |
|
3067 | + } |
|
2907 | 3068 | |
2908 | 3069 | obExit(false); |
2909 | 3070 | } |
@@ -2922,51 +3083,60 @@ discard block |
||
2922 | 3083 | |
2923 | 3084 | // Attempt to prevent a recursive loop. |
2924 | 3085 | ++$level; |
2925 | - if ($level > 1 && !$from_fatal_error && !$has_fatal_error) |
|
2926 | - exit; |
|
2927 | - if ($from_fatal_error) |
|
2928 | - $has_fatal_error = true; |
|
3086 | + if ($level > 1 && !$from_fatal_error && !$has_fatal_error) { |
|
3087 | + exit; |
|
3088 | + } |
|
3089 | + if ($from_fatal_error) { |
|
3090 | + $has_fatal_error = true; |
|
3091 | + } |
|
2929 | 3092 | |
2930 | 3093 | // Clear out the stat cache. |
2931 | 3094 | trackStats(); |
2932 | 3095 | |
2933 | 3096 | // If we have mail to send, send it. |
2934 | - if (!empty($context['flush_mail'])) |
|
2935 | - // @todo this relies on 'flush_mail' being only set in AddMailQueue itself... :\ |
|
3097 | + if (!empty($context['flush_mail'])) { |
|
3098 | + // @todo this relies on 'flush_mail' being only set in AddMailQueue itself... :\ |
|
2936 | 3099 | AddMailQueue(true); |
3100 | + } |
|
2937 | 3101 | |
2938 | 3102 | $do_header = $header === null ? !$header_done : $header; |
2939 | - if ($do_footer === null) |
|
2940 | - $do_footer = $do_header; |
|
3103 | + if ($do_footer === null) { |
|
3104 | + $do_footer = $do_header; |
|
3105 | + } |
|
2941 | 3106 | |
2942 | 3107 | // Has the template/header been done yet? |
2943 | 3108 | if ($do_header) |
2944 | 3109 | { |
2945 | 3110 | // Was the page title set last minute? Also update the HTML safe one. |
2946 | - if (!empty($context['page_title']) && empty($context['page_title_html_safe'])) |
|
2947 | - $context['page_title_html_safe'] = $smcFunc['htmlspecialchars'](un_htmlspecialchars($context['page_title'])) . (!empty($context['current_page']) ? ' - ' . $txt['page'] . ' ' . ($context['current_page'] + 1) : ''); |
|
3111 | + if (!empty($context['page_title']) && empty($context['page_title_html_safe'])) { |
|
3112 | + $context['page_title_html_safe'] = $smcFunc['htmlspecialchars'](un_htmlspecialchars($context['page_title'])) . (!empty($context['current_page']) ? ' - ' . $txt['page'] . ' ' . ($context['current_page'] + 1) : ''); |
|
3113 | + } |
|
2948 | 3114 | |
2949 | 3115 | // Start up the session URL fixer. |
2950 | 3116 | ob_start('ob_sessrewrite'); |
2951 | 3117 | |
2952 | - if (!empty($settings['output_buffers']) && is_string($settings['output_buffers'])) |
|
2953 | - $buffers = explode(',', $settings['output_buffers']); |
|
2954 | - elseif (!empty($settings['output_buffers'])) |
|
2955 | - $buffers = $settings['output_buffers']; |
|
2956 | - else |
|
2957 | - $buffers = array(); |
|
3118 | + if (!empty($settings['output_buffers']) && is_string($settings['output_buffers'])) { |
|
3119 | + $buffers = explode(',', $settings['output_buffers']); |
|
3120 | + } elseif (!empty($settings['output_buffers'])) { |
|
3121 | + $buffers = $settings['output_buffers']; |
|
3122 | + } else { |
|
3123 | + $buffers = array(); |
|
3124 | + } |
|
2958 | 3125 | |
2959 | - if (isset($modSettings['integrate_buffer'])) |
|
2960 | - $buffers = array_merge(explode(',', $modSettings['integrate_buffer']), $buffers); |
|
3126 | + if (isset($modSettings['integrate_buffer'])) { |
|
3127 | + $buffers = array_merge(explode(',', $modSettings['integrate_buffer']), $buffers); |
|
3128 | + } |
|
2961 | 3129 | |
2962 | - if (!empty($buffers)) |
|
2963 | - foreach ($buffers as $function) |
|
3130 | + if (!empty($buffers)) { |
|
3131 | + foreach ($buffers as $function) |
|
2964 | 3132 | { |
2965 | 3133 | $call = call_helper($function, true); |
3134 | + } |
|
2966 | 3135 | |
2967 | 3136 | // Is it valid? |
2968 | - if (!empty($call)) |
|
2969 | - ob_start($call); |
|
3137 | + if (!empty($call)) { |
|
3138 | + ob_start($call); |
|
3139 | + } |
|
2970 | 3140 | } |
2971 | 3141 | |
2972 | 3142 | // Display the screen in the logical order. |
@@ -2978,8 +3148,9 @@ discard block |
||
2978 | 3148 | loadSubTemplate(isset($context['sub_template']) ? $context['sub_template'] : 'main'); |
2979 | 3149 | |
2980 | 3150 | // Anything special to put out? |
2981 | - if (!empty($context['insert_after_template']) && !isset($_REQUEST['xml'])) |
|
2982 | - echo $context['insert_after_template']; |
|
3151 | + if (!empty($context['insert_after_template']) && !isset($_REQUEST['xml'])) { |
|
3152 | + echo $context['insert_after_template']; |
|
3153 | + } |
|
2983 | 3154 | |
2984 | 3155 | // Just so we don't get caught in an endless loop of errors from the footer... |
2985 | 3156 | if (!$footer_done) |
@@ -2988,14 +3159,16 @@ discard block |
||
2988 | 3159 | template_footer(); |
2989 | 3160 | |
2990 | 3161 | // (since this is just debugging... it's okay that it's after </html>.) |
2991 | - if (!isset($_REQUEST['xml'])) |
|
2992 | - displayDebug(); |
|
3162 | + if (!isset($_REQUEST['xml'])) { |
|
3163 | + displayDebug(); |
|
3164 | + } |
|
2993 | 3165 | } |
2994 | 3166 | } |
2995 | 3167 | |
2996 | 3168 | // Remember this URL in case someone doesn't like sending HTTP_REFERER. |
2997 | - if (strpos($_SERVER['REQUEST_URL'], 'action=dlattach') === false && strpos($_SERVER['REQUEST_URL'], 'action=viewsmfile') === false) |
|
2998 | - $_SESSION['old_url'] = $_SERVER['REQUEST_URL']; |
|
3169 | + if (strpos($_SERVER['REQUEST_URL'], 'action=dlattach') === false && strpos($_SERVER['REQUEST_URL'], 'action=viewsmfile') === false) { |
|
3170 | + $_SESSION['old_url'] = $_SERVER['REQUEST_URL']; |
|
3171 | + } |
|
2999 | 3172 | |
3000 | 3173 | // For session check verification.... don't switch browsers... |
3001 | 3174 | $_SESSION['USER_AGENT'] = empty($_SERVER['HTTP_USER_AGENT']) ? '' : $_SERVER['HTTP_USER_AGENT']; |
@@ -3004,9 +3177,10 @@ discard block |
||
3004 | 3177 | call_integration_hook('integrate_exit', array($do_footer)); |
3005 | 3178 | |
3006 | 3179 | // Don't exit if we're coming from index.php; that will pass through normally. |
3007 | - if (!$from_index) |
|
3008 | - exit; |
|
3009 | -} |
|
3180 | + if (!$from_index) { |
|
3181 | + exit; |
|
3182 | + } |
|
3183 | + } |
|
3010 | 3184 | |
3011 | 3185 | /** |
3012 | 3186 | * Get the size of a specified image with better error handling. |
@@ -3025,8 +3199,9 @@ discard block |
||
3025 | 3199 | $url = str_replace(' ', '%20', $url); |
3026 | 3200 | |
3027 | 3201 | // Can we pull this from the cache... please please? |
3028 | - if (($temp = cache_get_data('url_image_size-' . md5($url), 240)) !== null) |
|
3029 | - return $temp; |
|
3202 | + if (($temp = cache_get_data('url_image_size-' . md5($url), 240)) !== null) { |
|
3203 | + return $temp; |
|
3204 | + } |
|
3030 | 3205 | $t = microtime(); |
3031 | 3206 | |
3032 | 3207 | // Get the host to pester... |
@@ -3036,12 +3211,10 @@ discard block |
||
3036 | 3211 | if ($url == '' || $url == 'http://' || $url == 'https://') |
3037 | 3212 | { |
3038 | 3213 | return false; |
3039 | - } |
|
3040 | - elseif (!isset($match[1])) |
|
3214 | + } elseif (!isset($match[1])) |
|
3041 | 3215 | { |
3042 | 3216 | $size = @getimagesize($url); |
3043 | - } |
|
3044 | - else |
|
3217 | + } else |
|
3045 | 3218 | { |
3046 | 3219 | // Try to connect to the server... give it half a second. |
3047 | 3220 | $temp = 0; |
@@ -3080,12 +3253,14 @@ discard block |
||
3080 | 3253 | } |
3081 | 3254 | |
3082 | 3255 | // If we didn't get it, we failed. |
3083 | - if (!isset($size)) |
|
3084 | - $size = false; |
|
3256 | + if (!isset($size)) { |
|
3257 | + $size = false; |
|
3258 | + } |
|
3085 | 3259 | |
3086 | 3260 | // If this took a long time, we may never have to do it again, but then again we might... |
3087 | - if (array_sum(explode(' ', microtime())) - array_sum(explode(' ', $t)) > 0.8) |
|
3088 | - cache_put_data('url_image_size-' . md5($url), $size, 240); |
|
3261 | + if (array_sum(explode(' ', microtime())) - array_sum(explode(' ', $t)) > 0.8) { |
|
3262 | + cache_put_data('url_image_size-' . md5($url), $size, 240); |
|
3263 | + } |
|
3089 | 3264 | |
3090 | 3265 | // Didn't work. |
3091 | 3266 | return $size; |
@@ -3103,8 +3278,9 @@ discard block |
||
3103 | 3278 | |
3104 | 3279 | // Under SSI this function can be called more then once. That can cause some problems. |
3105 | 3280 | // So only run the function once unless we are forced to run it again. |
3106 | - if ($loaded && !$forceload) |
|
3107 | - return; |
|
3281 | + if ($loaded && !$forceload) { |
|
3282 | + return; |
|
3283 | + } |
|
3108 | 3284 | |
3109 | 3285 | $loaded = true; |
3110 | 3286 | |
@@ -3116,14 +3292,16 @@ discard block |
||
3116 | 3292 | $context['news_lines'] = array_filter(explode("\n", str_replace("\r", '', trim(addslashes($modSettings['news']))))); |
3117 | 3293 | for ($i = 0, $n = count($context['news_lines']); $i < $n; $i++) |
3118 | 3294 | { |
3119 | - if (trim($context['news_lines'][$i]) == '') |
|
3120 | - continue; |
|
3295 | + if (trim($context['news_lines'][$i]) == '') { |
|
3296 | + continue; |
|
3297 | + } |
|
3121 | 3298 | |
3122 | 3299 | // Clean it up for presentation ;). |
3123 | 3300 | $context['news_lines'][$i] = parse_bbc(stripslashes(trim($context['news_lines'][$i])), true, 'news' . $i); |
3124 | 3301 | } |
3125 | - if (!empty($context['news_lines'])) |
|
3126 | - $context['random_news_line'] = $context['news_lines'][mt_rand(0, count($context['news_lines']) - 1)]; |
|
3302 | + if (!empty($context['news_lines'])) { |
|
3303 | + $context['random_news_line'] = $context['news_lines'][mt_rand(0, count($context['news_lines']) - 1)]; |
|
3304 | + } |
|
3127 | 3305 | |
3128 | 3306 | if (!$user_info['is_guest']) |
3129 | 3307 | { |
@@ -3132,40 +3310,48 @@ discard block |
||
3132 | 3310 | $context['user']['alerts'] = &$user_info['alerts']; |
3133 | 3311 | |
3134 | 3312 | // Personal message popup... |
3135 | - if ($user_info['unread_messages'] > (isset($_SESSION['unread_messages']) ? $_SESSION['unread_messages'] : 0)) |
|
3136 | - $context['user']['popup_messages'] = true; |
|
3137 | - else |
|
3138 | - $context['user']['popup_messages'] = false; |
|
3313 | + if ($user_info['unread_messages'] > (isset($_SESSION['unread_messages']) ? $_SESSION['unread_messages'] : 0)) { |
|
3314 | + $context['user']['popup_messages'] = true; |
|
3315 | + } else { |
|
3316 | + $context['user']['popup_messages'] = false; |
|
3317 | + } |
|
3139 | 3318 | $_SESSION['unread_messages'] = $user_info['unread_messages']; |
3140 | 3319 | |
3141 | - if (allowedTo('moderate_forum')) |
|
3142 | - $context['unapproved_members'] = (!empty($modSettings['registration_method']) && ($modSettings['registration_method'] == 2 || (!empty($modSettings['coppaType']) && $modSettings['coppaType'] == 2))) || !empty($modSettings['approveAccountDeletion']) ? $modSettings['unapprovedMembers'] : 0; |
|
3320 | + if (allowedTo('moderate_forum')) { |
|
3321 | + $context['unapproved_members'] = (!empty($modSettings['registration_method']) && ($modSettings['registration_method'] == 2 || (!empty($modSettings['coppaType']) && $modSettings['coppaType'] == 2))) || !empty($modSettings['approveAccountDeletion']) ? $modSettings['unapprovedMembers'] : 0; |
|
3322 | + } |
|
3143 | 3323 | |
3144 | 3324 | $context['user']['avatar'] = array(); |
3145 | 3325 | |
3146 | 3326 | // Check for gravatar first since we might be forcing them... |
3147 | 3327 | if (($modSettings['gravatarEnabled'] && substr($user_info['avatar']['url'], 0, 11) == 'gravatar://') || !empty($modSettings['gravatarOverride'])) |
3148 | 3328 | { |
3149 | - if (!empty($modSettings['gravatarAllowExtraEmail']) && stristr($user_info['avatar']['url'], 'gravatar://') && strlen($user_info['avatar']['url']) > 11) |
|
3150 | - $context['user']['avatar']['href'] = get_gravatar_url($smcFunc['substr']($user_info['avatar']['url'], 11)); |
|
3151 | - else |
|
3152 | - $context['user']['avatar']['href'] = get_gravatar_url($user_info['email']); |
|
3329 | + if (!empty($modSettings['gravatarAllowExtraEmail']) && stristr($user_info['avatar']['url'], 'gravatar://') && strlen($user_info['avatar']['url']) > 11) { |
|
3330 | + $context['user']['avatar']['href'] = get_gravatar_url($smcFunc['substr']($user_info['avatar']['url'], 11)); |
|
3331 | + } else { |
|
3332 | + $context['user']['avatar']['href'] = get_gravatar_url($user_info['email']); |
|
3333 | + } |
|
3153 | 3334 | } |
3154 | 3335 | // Uploaded? |
3155 | - elseif ($user_info['avatar']['url'] == '' && !empty($user_info['avatar']['id_attach'])) |
|
3156 | - $context['user']['avatar']['href'] = $user_info['avatar']['custom_dir'] ? $modSettings['custom_avatar_url'] . '/' . $user_info['avatar']['filename'] : $scripturl . '?action=dlattach;attach=' . $user_info['avatar']['id_attach'] . ';type=avatar'; |
|
3336 | + elseif ($user_info['avatar']['url'] == '' && !empty($user_info['avatar']['id_attach'])) { |
|
3337 | + $context['user']['avatar']['href'] = $user_info['avatar']['custom_dir'] ? $modSettings['custom_avatar_url'] . '/' . $user_info['avatar']['filename'] : $scripturl . '?action=dlattach;attach=' . $user_info['avatar']['id_attach'] . ';type=avatar'; |
|
3338 | + } |
|
3157 | 3339 | // Full URL? |
3158 | - elseif (strpos($user_info['avatar']['url'], 'http://') === 0 || strpos($user_info['avatar']['url'], 'https://') === 0) |
|
3159 | - $context['user']['avatar']['href'] = $user_info['avatar']['url']; |
|
3340 | + elseif (strpos($user_info['avatar']['url'], 'http://') === 0 || strpos($user_info['avatar']['url'], 'https://') === 0) { |
|
3341 | + $context['user']['avatar']['href'] = $user_info['avatar']['url']; |
|
3342 | + } |
|
3160 | 3343 | // Otherwise we assume it's server stored. |
3161 | - elseif ($user_info['avatar']['url'] != '') |
|
3162 | - $context['user']['avatar']['href'] = $modSettings['avatar_url'] . '/' . $smcFunc['htmlspecialchars']($user_info['avatar']['url']); |
|
3344 | + elseif ($user_info['avatar']['url'] != '') { |
|
3345 | + $context['user']['avatar']['href'] = $modSettings['avatar_url'] . '/' . $smcFunc['htmlspecialchars']($user_info['avatar']['url']); |
|
3346 | + } |
|
3163 | 3347 | // No avatar at all? Fine, we have a big fat default avatar ;) |
3164 | - else |
|
3165 | - $context['user']['avatar']['href'] = $modSettings['avatar_url'] . '/default.png'; |
|
3348 | + else { |
|
3349 | + $context['user']['avatar']['href'] = $modSettings['avatar_url'] . '/default.png'; |
|
3350 | + } |
|
3166 | 3351 | |
3167 | - if (!empty($context['user']['avatar'])) |
|
3168 | - $context['user']['avatar']['image'] = '<img src="' . $context['user']['avatar']['href'] . '" alt="" class="avatar">'; |
|
3352 | + if (!empty($context['user']['avatar'])) { |
|
3353 | + $context['user']['avatar']['image'] = '<img src="' . $context['user']['avatar']['href'] . '" alt="" class="avatar">'; |
|
3354 | + } |
|
3169 | 3355 | |
3170 | 3356 | // Figure out how long they've been logged in. |
3171 | 3357 | $context['user']['total_time_logged_in'] = array( |
@@ -3173,8 +3359,7 @@ discard block |
||
3173 | 3359 | 'hours' => floor(($user_info['total_time_logged_in'] % 86400) / 3600), |
3174 | 3360 | 'minutes' => floor(($user_info['total_time_logged_in'] % 3600) / 60) |
3175 | 3361 | ); |
3176 | - } |
|
3177 | - else |
|
3362 | + } else |
|
3178 | 3363 | { |
3179 | 3364 | $context['user']['messages'] = 0; |
3180 | 3365 | $context['user']['unread_messages'] = 0; |
@@ -3182,12 +3367,14 @@ discard block |
||
3182 | 3367 | $context['user']['total_time_logged_in'] = array('days' => 0, 'hours' => 0, 'minutes' => 0); |
3183 | 3368 | $context['user']['popup_messages'] = false; |
3184 | 3369 | |
3185 | - if (!empty($modSettings['registration_method']) && $modSettings['registration_method'] == 1) |
|
3186 | - $txt['welcome_guest'] .= $txt['welcome_guest_activate']; |
|
3370 | + if (!empty($modSettings['registration_method']) && $modSettings['registration_method'] == 1) { |
|
3371 | + $txt['welcome_guest'] .= $txt['welcome_guest_activate']; |
|
3372 | + } |
|
3187 | 3373 | |
3188 | 3374 | // If we've upgraded recently, go easy on the passwords. |
3189 | - if (!empty($modSettings['disableHashTime']) && ($modSettings['disableHashTime'] == 1 || time() < $modSettings['disableHashTime'])) |
|
3190 | - $context['disable_login_hashing'] = true; |
|
3375 | + if (!empty($modSettings['disableHashTime']) && ($modSettings['disableHashTime'] == 1 || time() < $modSettings['disableHashTime'])) { |
|
3376 | + $context['disable_login_hashing'] = true; |
|
3377 | + } |
|
3191 | 3378 | } |
3192 | 3379 | |
3193 | 3380 | // Setup the main menu items. |
@@ -3200,8 +3387,8 @@ discard block |
||
3200 | 3387 | $context['show_pm_popup'] = $context['user']['popup_messages'] && !empty($options['popup_messages']) && (!isset($_REQUEST['action']) || $_REQUEST['action'] != 'pm'); |
3201 | 3388 | |
3202 | 3389 | // 2.1+: Add the PM popup here instead. Theme authors can still override it simply by editing/removing the 'fPmPopup' in the array. |
3203 | - if ($context['show_pm_popup']) |
|
3204 | - addInlineJavaScript(' |
|
3390 | + if ($context['show_pm_popup']) { |
|
3391 | + addInlineJavaScript(' |
|
3205 | 3392 | jQuery(document).ready(function($) { |
3206 | 3393 | new smc_Popup({ |
3207 | 3394 | heading: ' . JavaScriptEscape($txt['show_personal_messages_heading']) . ', |
@@ -3209,15 +3396,17 @@ discard block |
||
3209 | 3396 | icon_class: \'generic_icons mail_new\' |
3210 | 3397 | }); |
3211 | 3398 | });'); |
3399 | + } |
|
3212 | 3400 | |
3213 | 3401 | // Add a generic "Are you sure?" confirmation message. |
3214 | 3402 | addInlineJavaScript(' |
3215 | 3403 | var smf_you_sure =' . JavaScriptEscape($txt['quickmod_confirm']) .';'); |
3216 | 3404 | |
3217 | 3405 | // Now add the capping code for avatars. |
3218 | - if (!empty($modSettings['avatar_max_width_external']) && !empty($modSettings['avatar_max_height_external']) && !empty($modSettings['avatar_action_too_large']) && $modSettings['avatar_action_too_large'] == 'option_css_resize') |
|
3219 | - addInlineCss(' |
|
3406 | + if (!empty($modSettings['avatar_max_width_external']) && !empty($modSettings['avatar_max_height_external']) && !empty($modSettings['avatar_action_too_large']) && $modSettings['avatar_action_too_large'] == 'option_css_resize') { |
|
3407 | + addInlineCss(' |
|
3220 | 3408 | img.avatar { max-width: ' . $modSettings['avatar_max_width_external'] . 'px; max-height: ' . $modSettings['avatar_max_height_external'] . 'px; }'); |
3409 | + } |
|
3221 | 3410 | |
3222 | 3411 | // This looks weird, but it's because BoardIndex.php references the variable. |
3223 | 3412 | $context['common_stats']['latest_member'] = array( |
@@ -3234,11 +3423,13 @@ discard block |
||
3234 | 3423 | ); |
3235 | 3424 | $context['common_stats']['boardindex_total_posts'] = sprintf($txt['boardindex_total_posts'], $context['common_stats']['total_posts'], $context['common_stats']['total_topics'], $context['common_stats']['total_members']); |
3236 | 3425 | |
3237 | - if (empty($settings['theme_version'])) |
|
3238 | - addJavaScriptVar('smf_scripturl', $scripturl); |
|
3426 | + if (empty($settings['theme_version'])) { |
|
3427 | + addJavaScriptVar('smf_scripturl', $scripturl); |
|
3428 | + } |
|
3239 | 3429 | |
3240 | - if (!isset($context['page_title'])) |
|
3241 | - $context['page_title'] = ''; |
|
3430 | + if (!isset($context['page_title'])) { |
|
3431 | + $context['page_title'] = ''; |
|
3432 | + } |
|
3242 | 3433 | |
3243 | 3434 | // Set some specific vars. |
3244 | 3435 | $context['page_title_html_safe'] = $smcFunc['htmlspecialchars'](un_htmlspecialchars($context['page_title'])) . (!empty($context['current_page']) ? ' - ' . $txt['page'] . ' ' . ($context['current_page'] + 1) : ''); |
@@ -3248,21 +3439,23 @@ discard block |
||
3248 | 3439 | $context['meta_tags'][] = array('property' => 'og:site_name', 'content' => $context['forum_name']); |
3249 | 3440 | $context['meta_tags'][] = array('property' => 'og:title', 'content' => $context['page_title_html_safe']); |
3250 | 3441 | |
3251 | - if (!empty($context['meta_keywords'])) |
|
3252 | - $context['meta_tags'][] = array('name' => 'keywords', 'content' => $context['meta_keywords']); |
|
3442 | + if (!empty($context['meta_keywords'])) { |
|
3443 | + $context['meta_tags'][] = array('name' => 'keywords', 'content' => $context['meta_keywords']); |
|
3444 | + } |
|
3253 | 3445 | |
3254 | - if (!empty($context['canonical_url'])) |
|
3255 | - $context['meta_tags'][] = array('property' => 'og:url', 'content' => $context['canonical_url']); |
|
3446 | + if (!empty($context['canonical_url'])) { |
|
3447 | + $context['meta_tags'][] = array('property' => 'og:url', 'content' => $context['canonical_url']); |
|
3448 | + } |
|
3256 | 3449 | |
3257 | - if (!empty($settings['og_image'])) |
|
3258 | - $context['meta_tags'][] = array('property' => 'og:image', 'content' => $settings['og_image']); |
|
3450 | + if (!empty($settings['og_image'])) { |
|
3451 | + $context['meta_tags'][] = array('property' => 'og:image', 'content' => $settings['og_image']); |
|
3452 | + } |
|
3259 | 3453 | |
3260 | 3454 | if (!empty($context['meta_description'])) |
3261 | 3455 | { |
3262 | 3456 | $context['meta_tags'][] = array('property' => 'og:description', 'content' => $context['meta_description']); |
3263 | 3457 | $context['meta_tags'][] = array('name' => 'description', 'content' => $context['meta_description']); |
3264 | - } |
|
3265 | - else |
|
3458 | + } else |
|
3266 | 3459 | { |
3267 | 3460 | $context['meta_tags'][] = array('property' => 'og:description', 'content' => $context['page_title_html_safe']); |
3268 | 3461 | $context['meta_tags'][] = array('name' => 'description', 'content' => $context['page_title_html_safe']); |
@@ -3287,8 +3480,9 @@ discard block |
||
3287 | 3480 | $memory_needed = memoryReturnBytes($needed); |
3288 | 3481 | |
3289 | 3482 | // should we account for how much is currently being used? |
3290 | - if ($in_use) |
|
3291 | - $memory_needed += function_exists('memory_get_usage') ? memory_get_usage() : (2 * 1048576); |
|
3483 | + if ($in_use) { |
|
3484 | + $memory_needed += function_exists('memory_get_usage') ? memory_get_usage() : (2 * 1048576); |
|
3485 | + } |
|
3292 | 3486 | |
3293 | 3487 | // if more is needed, request it |
3294 | 3488 | if ($memory_current < $memory_needed) |
@@ -3311,8 +3505,9 @@ discard block |
||
3311 | 3505 | */ |
3312 | 3506 | function memoryReturnBytes($val) |
3313 | 3507 | { |
3314 | - if (is_integer($val)) |
|
3315 | - return $val; |
|
3508 | + if (is_integer($val)) { |
|
3509 | + return $val; |
|
3510 | + } |
|
3316 | 3511 | |
3317 | 3512 | // Separate the number from the designator |
3318 | 3513 | $val = trim($val); |
@@ -3348,10 +3543,11 @@ discard block |
||
3348 | 3543 | header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT'); |
3349 | 3544 | |
3350 | 3545 | // Are we debugging the template/html content? |
3351 | - if (!isset($_REQUEST['xml']) && isset($_GET['debug']) && !isBrowser('ie')) |
|
3352 | - header('Content-Type: application/xhtml+xml'); |
|
3353 | - elseif (!isset($_REQUEST['xml'])) |
|
3354 | - header('Content-Type: text/html; charset=' . (empty($context['character_set']) ? 'ISO-8859-1' : $context['character_set'])); |
|
3546 | + if (!isset($_REQUEST['xml']) && isset($_GET['debug']) && !isBrowser('ie')) { |
|
3547 | + header('Content-Type: application/xhtml+xml'); |
|
3548 | + } elseif (!isset($_REQUEST['xml'])) { |
|
3549 | + header('Content-Type: text/html; charset=' . (empty($context['character_set']) ? 'ISO-8859-1' : $context['character_set'])); |
|
3550 | + } |
|
3355 | 3551 | } |
3356 | 3552 | |
3357 | 3553 | header('Content-Type: text/' . (isset($_REQUEST['xml']) ? 'xml' : 'html') . '; charset=' . (empty($context['character_set']) ? 'ISO-8859-1' : $context['character_set'])); |
@@ -3360,8 +3556,9 @@ discard block |
||
3360 | 3556 | if ($context['in_maintenance'] && $context['user']['is_admin']) |
3361 | 3557 | { |
3362 | 3558 | $position = array_search('body', $context['template_layers']); |
3363 | - if ($position === false) |
|
3364 | - $position = array_search('main', $context['template_layers']); |
|
3559 | + if ($position === false) { |
|
3560 | + $position = array_search('main', $context['template_layers']); |
|
3561 | + } |
|
3365 | 3562 | |
3366 | 3563 | if ($position !== false) |
3367 | 3564 | { |
@@ -3389,23 +3586,25 @@ discard block |
||
3389 | 3586 | |
3390 | 3587 | foreach ($securityFiles as $i => $securityFile) |
3391 | 3588 | { |
3392 | - if (!file_exists($boarddir . '/' . $securityFile)) |
|
3393 | - unset($securityFiles[$i]); |
|
3589 | + if (!file_exists($boarddir . '/' . $securityFile)) { |
|
3590 | + unset($securityFiles[$i]); |
|
3591 | + } |
|
3394 | 3592 | } |
3395 | 3593 | |
3396 | 3594 | // We are already checking so many files...just few more doesn't make any difference! :P |
3397 | - if (!empty($modSettings['currentAttachmentUploadDir'])) |
|
3398 | - $path = $modSettings['attachmentUploadDir'][$modSettings['currentAttachmentUploadDir']]; |
|
3399 | - |
|
3400 | - else |
|
3401 | - $path = $modSettings['attachmentUploadDir']; |
|
3595 | + if (!empty($modSettings['currentAttachmentUploadDir'])) { |
|
3596 | + $path = $modSettings['attachmentUploadDir'][$modSettings['currentAttachmentUploadDir']]; |
|
3597 | + } else { |
|
3598 | + $path = $modSettings['attachmentUploadDir']; |
|
3599 | + } |
|
3402 | 3600 | |
3403 | 3601 | secureDirectory($path, true); |
3404 | 3602 | secureDirectory($cachedir); |
3405 | 3603 | |
3406 | 3604 | // If agreement is enabled, at least the english version shall exists |
3407 | - if ($modSettings['requireAgreement']) |
|
3408 | - $agreement = !file_exists($boarddir . '/agreement.txt'); |
|
3605 | + if ($modSettings['requireAgreement']) { |
|
3606 | + $agreement = !file_exists($boarddir . '/agreement.txt'); |
|
3607 | + } |
|
3409 | 3608 | |
3410 | 3609 | if (!empty($securityFiles) || (!empty($modSettings['cache_enable']) && !is_writable($cachedir)) || !empty($agreement)) |
3411 | 3610 | { |
@@ -3420,18 +3619,21 @@ discard block |
||
3420 | 3619 | echo ' |
3421 | 3620 | ', $txt['not_removed'], '<strong>', $securityFile, '</strong>!<br>'; |
3422 | 3621 | |
3423 | - if ($securityFile == 'Settings.php~' || $securityFile == 'Settings_bak.php~') |
|
3424 | - echo ' |
|
3622 | + if ($securityFile == 'Settings.php~' || $securityFile == 'Settings_bak.php~') { |
|
3623 | + echo ' |
|
3425 | 3624 | ', sprintf($txt['not_removed_extra'], $securityFile, substr($securityFile, 0, -1)), '<br>'; |
3625 | + } |
|
3426 | 3626 | } |
3427 | 3627 | |
3428 | - if (!empty($modSettings['cache_enable']) && !is_writable($cachedir)) |
|
3429 | - echo ' |
|
3628 | + if (!empty($modSettings['cache_enable']) && !is_writable($cachedir)) { |
|
3629 | + echo ' |
|
3430 | 3630 | <strong>', $txt['cache_writable'], '</strong><br>'; |
3631 | + } |
|
3431 | 3632 | |
3432 | - if (!empty($agreement)) |
|
3433 | - echo ' |
|
3633 | + if (!empty($agreement)) { |
|
3634 | + echo ' |
|
3434 | 3635 | <strong>', $txt['agreement_missing'], '</strong><br>'; |
3636 | + } |
|
3435 | 3637 | |
3436 | 3638 | echo ' |
3437 | 3639 | </p> |
@@ -3446,16 +3648,18 @@ discard block |
||
3446 | 3648 | <div class="windowbg alert" style="margin: 2ex; padding: 2ex; border: 2px dashed red;"> |
3447 | 3649 | ', sprintf($txt['you_are_post_banned'], $user_info['is_guest'] ? $txt['guest_title'] : $user_info['name']); |
3448 | 3650 | |
3449 | - if (!empty($_SESSION['ban']['cannot_post']['reason'])) |
|
3450 | - echo ' |
|
3651 | + if (!empty($_SESSION['ban']['cannot_post']['reason'])) { |
|
3652 | + echo ' |
|
3451 | 3653 | <div style="padding-left: 4ex; padding-top: 1ex;">', $_SESSION['ban']['cannot_post']['reason'], '</div>'; |
3654 | + } |
|
3452 | 3655 | |
3453 | - if (!empty($_SESSION['ban']['expire_time'])) |
|
3454 | - echo ' |
|
3656 | + if (!empty($_SESSION['ban']['expire_time'])) { |
|
3657 | + echo ' |
|
3455 | 3658 | <div>', sprintf($txt['your_ban_expires'], timeformat($_SESSION['ban']['expire_time'], false)), '</div>'; |
3456 | - else |
|
3457 | - echo ' |
|
3659 | + } else { |
|
3660 | + echo ' |
|
3458 | 3661 | <div>', $txt['your_ban_expires_never'], '</div>'; |
3662 | + } |
|
3459 | 3663 | |
3460 | 3664 | echo ' |
3461 | 3665 | </div>'; |
@@ -3471,8 +3675,9 @@ discard block |
||
3471 | 3675 | global $forum_copyright, $software_year, $forum_version; |
3472 | 3676 | |
3473 | 3677 | // Don't display copyright for things like SSI. |
3474 | - if (!isset($forum_version) || !isset($software_year)) |
|
3475 | - return; |
|
3678 | + if (!isset($forum_version) || !isset($software_year)) { |
|
3679 | + return; |
|
3680 | + } |
|
3476 | 3681 | |
3477 | 3682 | // Put in the version... |
3478 | 3683 | printf($forum_copyright, $forum_version, $software_year); |
@@ -3490,9 +3695,10 @@ discard block |
||
3490 | 3695 | $context['load_time'] = round(microtime(true) - $time_start, 3); |
3491 | 3696 | $context['load_queries'] = $db_count; |
3492 | 3697 | |
3493 | - foreach (array_reverse($context['template_layers']) as $layer) |
|
3494 | - loadSubTemplate($layer . '_below', true); |
|
3495 | -} |
|
3698 | + foreach (array_reverse($context['template_layers']) as $layer) { |
|
3699 | + loadSubTemplate($layer . '_below', true); |
|
3700 | + } |
|
3701 | + } |
|
3496 | 3702 | |
3497 | 3703 | /** |
3498 | 3704 | * Output the Javascript files |
@@ -3523,8 +3729,7 @@ discard block |
||
3523 | 3729 | { |
3524 | 3730 | echo ' |
3525 | 3731 | var ', $key, ';'; |
3526 | - } |
|
3527 | - else |
|
3732 | + } else |
|
3528 | 3733 | { |
3529 | 3734 | echo ' |
3530 | 3735 | var ', $key, ' = ', $value, ';'; |
@@ -3539,26 +3744,27 @@ discard block |
||
3539 | 3744 | foreach ($context['javascript_files'] as $id => $js_file) |
3540 | 3745 | { |
3541 | 3746 | // Last minute call! allow theme authors to disable single files. |
3542 | - if (!empty($settings['disable_files']) && in_array($id, $settings['disable_files'])) |
|
3543 | - continue; |
|
3747 | + if (!empty($settings['disable_files']) && in_array($id, $settings['disable_files'])) { |
|
3748 | + continue; |
|
3749 | + } |
|
3544 | 3750 | |
3545 | 3751 | // By default all files don't get minimized unless the file explicitly says so! |
3546 | 3752 | if (!empty($js_file['options']['minimize']) && !empty($modSettings['minimize_files'])) |
3547 | 3753 | { |
3548 | - if ($do_deferred && !empty($js_file['options']['defer'])) |
|
3549 | - $toMinifyDefer[] = $js_file; |
|
3550 | - |
|
3551 | - elseif (!$do_deferred && empty($js_file['options']['defer'])) |
|
3552 | - $toMinify[] = $js_file; |
|
3754 | + if ($do_deferred && !empty($js_file['options']['defer'])) { |
|
3755 | + $toMinifyDefer[] = $js_file; |
|
3756 | + } elseif (!$do_deferred && empty($js_file['options']['defer'])) { |
|
3757 | + $toMinify[] = $js_file; |
|
3758 | + } |
|
3553 | 3759 | |
3554 | 3760 | // Grab a random seed. |
3555 | - if (!isset($minSeed)) |
|
3556 | - $minSeed = $js_file['options']['seed']; |
|
3557 | - } |
|
3558 | - |
|
3559 | - elseif ((!$do_deferred && empty($js_file['options']['defer'])) || ($do_deferred && !empty($js_file['options']['defer']))) |
|
3560 | - echo ' |
|
3761 | + if (!isset($minSeed)) { |
|
3762 | + $minSeed = $js_file['options']['seed']; |
|
3763 | + } |
|
3764 | + } elseif ((!$do_deferred && empty($js_file['options']['defer'])) || ($do_deferred && !empty($js_file['options']['defer']))) { |
|
3765 | + echo ' |
|
3561 | 3766 | <script src="', $js_file['fileUrl'], '"', !empty($js_file['options']['async']) ? ' async="async"' : '', '></script>'; |
3767 | + } |
|
3562 | 3768 | } |
3563 | 3769 | |
3564 | 3770 | if ((!$do_deferred && !empty($toMinify)) || ($do_deferred && !empty($toMinifyDefer))) |
@@ -3566,14 +3772,14 @@ discard block |
||
3566 | 3772 | $result = custMinify(($do_deferred ? $toMinifyDefer : $toMinify), 'js', $do_deferred); |
3567 | 3773 | |
3568 | 3774 | // Minify process couldn't work, print each individual files. |
3569 | - if (!empty($result) && is_array($result)) |
|
3570 | - foreach ($result as $minFailedFile) |
|
3775 | + if (!empty($result) && is_array($result)) { |
|
3776 | + foreach ($result as $minFailedFile) |
|
3571 | 3777 | echo ' |
3572 | 3778 | <script src="', $minFailedFile['fileUrl'], '"', !empty($minFailedFile['options']['async']) ? ' async="async"' : '', '></script>'; |
3573 | - |
|
3574 | - else |
|
3575 | - echo ' |
|
3779 | + } else { |
|
3780 | + echo ' |
|
3576 | 3781 | <script src="', $settings['theme_url'] ,'/scripts/minified', ($do_deferred ? '_deferred' : '') ,'.js', $minSeed ,'"></script>'; |
3782 | + } |
|
3577 | 3783 | } |
3578 | 3784 | |
3579 | 3785 | // Inline JavaScript - Actually useful some times! |
@@ -3584,8 +3790,9 @@ discard block |
||
3584 | 3790 | echo ' |
3585 | 3791 | <script>'; |
3586 | 3792 | |
3587 | - foreach ($context['javascript_inline']['defer'] as $js_code) |
|
3588 | - echo $js_code; |
|
3793 | + foreach ($context['javascript_inline']['defer'] as $js_code) { |
|
3794 | + echo $js_code; |
|
3795 | + } |
|
3589 | 3796 | |
3590 | 3797 | echo ' |
3591 | 3798 | </script>'; |
@@ -3596,8 +3803,9 @@ discard block |
||
3596 | 3803 | echo ' |
3597 | 3804 | <script>'; |
3598 | 3805 | |
3599 | - foreach ($context['javascript_inline']['standard'] as $js_code) |
|
3600 | - echo $js_code; |
|
3806 | + foreach ($context['javascript_inline']['standard'] as $js_code) { |
|
3807 | + echo $js_code; |
|
3808 | + } |
|
3601 | 3809 | |
3602 | 3810 | echo ' |
3603 | 3811 | </script>'; |
@@ -3622,8 +3830,9 @@ discard block |
||
3622 | 3830 | foreach ($context['css_files'] as $id => $file) |
3623 | 3831 | { |
3624 | 3832 | // Last minute call! allow theme authors to disable single files. |
3625 | - if (!empty($settings['disable_files']) && in_array($id, $settings['disable_files'])) |
|
3626 | - continue; |
|
3833 | + if (!empty($settings['disable_files']) && in_array($id, $settings['disable_files'])) { |
|
3834 | + continue; |
|
3835 | + } |
|
3627 | 3836 | |
3628 | 3837 | // By default all files don't get minimized unless the file explicitly says so! |
3629 | 3838 | if (!empty($file['options']['minimize']) && !empty($modSettings['minimize_files'])) |
@@ -3631,12 +3840,12 @@ discard block |
||
3631 | 3840 | $toMinify[] = $file; |
3632 | 3841 | |
3633 | 3842 | // Grab a random seed. |
3634 | - if (!isset($minSeed)) |
|
3635 | - $minSeed = $file['options']['seed']; |
|
3843 | + if (!isset($minSeed)) { |
|
3844 | + $minSeed = $file['options']['seed']; |
|
3845 | + } |
|
3846 | + } else { |
|
3847 | + $normal[] = $file['fileUrl']; |
|
3636 | 3848 | } |
3637 | - |
|
3638 | - else |
|
3639 | - $normal[] = $file['fileUrl']; |
|
3640 | 3849 | } |
3641 | 3850 | |
3642 | 3851 | if (!empty($toMinify)) |
@@ -3644,28 +3853,30 @@ discard block |
||
3644 | 3853 | $result = custMinify($toMinify, 'css'); |
3645 | 3854 | |
3646 | 3855 | // Minify process couldn't work, print each individual files. |
3647 | - if (!empty($result) && is_array($result)) |
|
3648 | - foreach ($result as $minFailedFile) |
|
3856 | + if (!empty($result) && is_array($result)) { |
|
3857 | + foreach ($result as $minFailedFile) |
|
3649 | 3858 | echo ' |
3650 | 3859 | <link rel="stylesheet" href="', $minFailedFile['fileUrl'], '">'; |
3651 | - |
|
3652 | - else |
|
3653 | - echo ' |
|
3860 | + } else { |
|
3861 | + echo ' |
|
3654 | 3862 | <link rel="stylesheet" href="', $settings['theme_url'] ,'/css/minified.css', $minSeed ,'">'; |
3863 | + } |
|
3655 | 3864 | } |
3656 | 3865 | |
3657 | 3866 | // Print the rest after the minified files. |
3658 | - if (!empty($normal)) |
|
3659 | - foreach ($normal as $nf) |
|
3867 | + if (!empty($normal)) { |
|
3868 | + foreach ($normal as $nf) |
|
3660 | 3869 | echo ' |
3661 | 3870 | <link rel="stylesheet" href="', $nf ,'">'; |
3871 | + } |
|
3662 | 3872 | |
3663 | 3873 | if ($db_show_debug === true) |
3664 | 3874 | { |
3665 | 3875 | // Try to keep only what's useful. |
3666 | 3876 | $repl = array($boardurl . '/Themes/' => '', $boardurl . '/' => ''); |
3667 | - foreach ($context['css_files'] as $file) |
|
3668 | - $context['debug']['sheets'][] = strtr($file['fileName'], $repl); |
|
3877 | + foreach ($context['css_files'] as $file) { |
|
3878 | + $context['debug']['sheets'][] = strtr($file['fileName'], $repl); |
|
3879 | + } |
|
3669 | 3880 | } |
3670 | 3881 | |
3671 | 3882 | if (!empty($context['css_header'])) |
@@ -3673,9 +3884,10 @@ discard block |
||
3673 | 3884 | echo ' |
3674 | 3885 | <style>'; |
3675 | 3886 | |
3676 | - foreach ($context['css_header'] as $css) |
|
3677 | - echo $css .' |
|
3887 | + foreach ($context['css_header'] as $css) { |
|
3888 | + echo $css .' |
|
3678 | 3889 | '; |
3890 | + } |
|
3679 | 3891 | |
3680 | 3892 | echo' |
3681 | 3893 | </style>'; |
@@ -3699,15 +3911,17 @@ discard block |
||
3699 | 3911 | $type = !empty($type) && in_array($type, $types) ? $type : false; |
3700 | 3912 | $data = !empty($data) ? $data : false; |
3701 | 3913 | |
3702 | - if (empty($type) || empty($data)) |
|
3703 | - return false; |
|
3914 | + if (empty($type) || empty($data)) { |
|
3915 | + return false; |
|
3916 | + } |
|
3704 | 3917 | |
3705 | 3918 | // Did we already did this? |
3706 | 3919 | $toCache = cache_get_data('minimized_'. $settings['theme_id'] .'_'. $type, 86400); |
3707 | 3920 | |
3708 | 3921 | // Already done? |
3709 | - if (!empty($toCache)) |
|
3710 | - return true; |
|
3922 | + if (!empty($toCache)) { |
|
3923 | + return true; |
|
3924 | + } |
|
3711 | 3925 | |
3712 | 3926 | // No namespaces, sorry! |
3713 | 3927 | $classType = 'MatthiasMullie\\Minify\\'. strtoupper($type); |
@@ -3789,8 +4003,9 @@ discard block |
||
3789 | 4003 | global $modSettings, $smcFunc; |
3790 | 4004 | |
3791 | 4005 | // Just make up a nice hash... |
3792 | - if ($new) |
|
3793 | - return sha1(md5($filename . time()) . mt_rand()); |
|
4006 | + if ($new) { |
|
4007 | + return sha1(md5($filename . time()) . mt_rand()); |
|
4008 | + } |
|
3794 | 4009 | |
3795 | 4010 | // Just make sure that attachment id is only a int |
3796 | 4011 | $attachment_id = (int) $attachment_id; |
@@ -3807,23 +4022,25 @@ discard block |
||
3807 | 4022 | 'id_attach' => $attachment_id, |
3808 | 4023 | )); |
3809 | 4024 | |
3810 | - if ($smcFunc['db_num_rows']($request) === 0) |
|
3811 | - return false; |
|
4025 | + if ($smcFunc['db_num_rows']($request) === 0) { |
|
4026 | + return false; |
|
4027 | + } |
|
3812 | 4028 | |
3813 | 4029 | list ($file_hash) = $smcFunc['db_fetch_row']($request); |
3814 | 4030 | $smcFunc['db_free_result']($request); |
3815 | 4031 | } |
3816 | 4032 | |
3817 | 4033 | // Still no hash? mmm... |
3818 | - if (empty($file_hash)) |
|
3819 | - $file_hash = sha1(md5($filename . time()) . mt_rand()); |
|
4034 | + if (empty($file_hash)) { |
|
4035 | + $file_hash = sha1(md5($filename . time()) . mt_rand()); |
|
4036 | + } |
|
3820 | 4037 | |
3821 | 4038 | // Are we using multiple directories? |
3822 | - if (is_array($modSettings['attachmentUploadDir'])) |
|
3823 | - $path = $modSettings['attachmentUploadDir'][$dir]; |
|
3824 | - |
|
3825 | - else |
|
3826 | - $path = $modSettings['attachmentUploadDir']; |
|
4039 | + if (is_array($modSettings['attachmentUploadDir'])) { |
|
4040 | + $path = $modSettings['attachmentUploadDir'][$dir]; |
|
4041 | + } else { |
|
4042 | + $path = $modSettings['attachmentUploadDir']; |
|
4043 | + } |
|
3827 | 4044 | |
3828 | 4045 | return $path . '/' . $attachment_id . '_' . $file_hash .'.dat'; |
3829 | 4046 | } |
@@ -3838,8 +4055,9 @@ discard block |
||
3838 | 4055 | function ip2range($fullip) |
3839 | 4056 | { |
3840 | 4057 | // Pretend that 'unknown' is 255.255.255.255. (since that can't be an IP anyway.) |
3841 | - if ($fullip == 'unknown') |
|
3842 | - $fullip = '255.255.255.255'; |
|
4058 | + if ($fullip == 'unknown') { |
|
4059 | + $fullip = '255.255.255.255'; |
|
4060 | + } |
|
3843 | 4061 | |
3844 | 4062 | $ip_parts = explode('-', $fullip); |
3845 | 4063 | $ip_array = array(); |
@@ -3863,10 +4081,11 @@ discard block |
||
3863 | 4081 | $ip_array['low'] = $ip_parts[0]; |
3864 | 4082 | $ip_array['high'] = $ip_parts[1]; |
3865 | 4083 | return $ip_array; |
3866 | - } |
|
3867 | - elseif (count($ip_parts) == 2) // if ip 22.22.*-22.22.* |
|
4084 | + } elseif (count($ip_parts) == 2) { |
|
4085 | + // if ip 22.22.*-22.22.* |
|
3868 | 4086 | { |
3869 | 4087 | $valid_low = isValidIP($ip_parts[0]); |
4088 | + } |
|
3870 | 4089 | $valid_high = isValidIP($ip_parts[1]); |
3871 | 4090 | $count = 0; |
3872 | 4091 | $mode = (preg_match('/:/',$ip_parts[0]) > 0 ? ':' : '.'); |
@@ -3881,7 +4100,9 @@ discard block |
||
3881 | 4100 | $ip_parts[0] .= $mode . $min; |
3882 | 4101 | $valid_low = isValidIP($ip_parts[0]); |
3883 | 4102 | $count++; |
3884 | - if ($count > 9) break; |
|
4103 | + if ($count > 9) { |
|
4104 | + break; |
|
4105 | + } |
|
3885 | 4106 | } |
3886 | 4107 | } |
3887 | 4108 | |
@@ -3895,7 +4116,9 @@ discard block |
||
3895 | 4116 | $ip_parts[1] .= $mode . $max; |
3896 | 4117 | $valid_high = isValidIP($ip_parts[1]); |
3897 | 4118 | $count++; |
3898 | - if ($count > 9) break; |
|
4119 | + if ($count > 9) { |
|
4120 | + break; |
|
4121 | + } |
|
3899 | 4122 | } |
3900 | 4123 | } |
3901 | 4124 | |
@@ -3920,46 +4143,54 @@ discard block |
||
3920 | 4143 | { |
3921 | 4144 | global $modSettings; |
3922 | 4145 | |
3923 | - if (($host = cache_get_data('hostlookup-' . $ip, 600)) !== null) |
|
3924 | - return $host; |
|
4146 | + if (($host = cache_get_data('hostlookup-' . $ip, 600)) !== null) { |
|
4147 | + return $host; |
|
4148 | + } |
|
3925 | 4149 | $t = microtime(); |
3926 | 4150 | |
3927 | 4151 | // Try the Linux host command, perhaps? |
3928 | 4152 | if (!isset($host) && (strpos(strtolower(PHP_OS), 'win') === false || strpos(strtolower(PHP_OS), 'darwin') !== false) && mt_rand(0, 1) == 1) |
3929 | 4153 | { |
3930 | - if (!isset($modSettings['host_to_dis'])) |
|
3931 | - $test = @shell_exec('host -W 1 ' . @escapeshellarg($ip)); |
|
3932 | - else |
|
3933 | - $test = @shell_exec('host ' . @escapeshellarg($ip)); |
|
4154 | + if (!isset($modSettings['host_to_dis'])) { |
|
4155 | + $test = @shell_exec('host -W 1 ' . @escapeshellarg($ip)); |
|
4156 | + } else { |
|
4157 | + $test = @shell_exec('host ' . @escapeshellarg($ip)); |
|
4158 | + } |
|
3934 | 4159 | |
3935 | 4160 | // Did host say it didn't find anything? |
3936 | - if (strpos($test, 'not found') !== false) |
|
3937 | - $host = ''; |
|
4161 | + if (strpos($test, 'not found') !== false) { |
|
4162 | + $host = ''; |
|
4163 | + } |
|
3938 | 4164 | // Invalid server option? |
3939 | - elseif ((strpos($test, 'invalid option') || strpos($test, 'Invalid query name 1')) && !isset($modSettings['host_to_dis'])) |
|
3940 | - updateSettings(array('host_to_dis' => 1)); |
|
4165 | + elseif ((strpos($test, 'invalid option') || strpos($test, 'Invalid query name 1')) && !isset($modSettings['host_to_dis'])) { |
|
4166 | + updateSettings(array('host_to_dis' => 1)); |
|
4167 | + } |
|
3941 | 4168 | // Maybe it found something, after all? |
3942 | - elseif (preg_match('~\s([^\s]+?)\.\s~', $test, $match) == 1) |
|
3943 | - $host = $match[1]; |
|
4169 | + elseif (preg_match('~\s([^\s]+?)\.\s~', $test, $match) == 1) { |
|
4170 | + $host = $match[1]; |
|
4171 | + } |
|
3944 | 4172 | } |
3945 | 4173 | |
3946 | 4174 | // This is nslookup; usually only Windows, but possibly some Unix? |
3947 | 4175 | if (!isset($host) && stripos(PHP_OS, 'win') !== false && strpos(strtolower(PHP_OS), 'darwin') === false && mt_rand(0, 1) == 1) |
3948 | 4176 | { |
3949 | 4177 | $test = @shell_exec('nslookup -timeout=1 ' . @escapeshellarg($ip)); |
3950 | - if (strpos($test, 'Non-existent domain') !== false) |
|
3951 | - $host = ''; |
|
3952 | - elseif (preg_match('~Name:\s+([^\s]+)~', $test, $match) == 1) |
|
3953 | - $host = $match[1]; |
|
4178 | + if (strpos($test, 'Non-existent domain') !== false) { |
|
4179 | + $host = ''; |
|
4180 | + } elseif (preg_match('~Name:\s+([^\s]+)~', $test, $match) == 1) { |
|
4181 | + $host = $match[1]; |
|
4182 | + } |
|
3954 | 4183 | } |
3955 | 4184 | |
3956 | 4185 | // This is the last try :/. |
3957 | - if (!isset($host) || $host === false) |
|
3958 | - $host = @gethostbyaddr($ip); |
|
4186 | + if (!isset($host) || $host === false) { |
|
4187 | + $host = @gethostbyaddr($ip); |
|
4188 | + } |
|
3959 | 4189 | |
3960 | 4190 | // It took a long time, so let's cache it! |
3961 | - if (array_sum(explode(' ', microtime())) - array_sum(explode(' ', $t)) > 0.5) |
|
3962 | - cache_put_data('hostlookup-' . $ip, $host, 600); |
|
4191 | + if (array_sum(explode(' ', microtime())) - array_sum(explode(' ', $t)) > 0.5) { |
|
4192 | + cache_put_data('hostlookup-' . $ip, $host, 600); |
|
4193 | + } |
|
3963 | 4194 | |
3964 | 4195 | return $host; |
3965 | 4196 | } |
@@ -3995,20 +4226,21 @@ discard block |
||
3995 | 4226 | { |
3996 | 4227 | $encrypted = substr(crypt($word, 'uk'), 2, $max_chars); |
3997 | 4228 | $total = 0; |
3998 | - for ($i = 0; $i < $max_chars; $i++) |
|
3999 | - $total += $possible_chars[ord($encrypted{$i})] * pow(63, $i); |
|
4229 | + for ($i = 0; $i < $max_chars; $i++) { |
|
4230 | + $total += $possible_chars[ord($encrypted{$i})] * pow(63, $i); |
|
4231 | + } |
|
4000 | 4232 | $returned_ints[] = $max_chars == 4 ? min($total, 16777215) : $total; |
4001 | 4233 | } |
4002 | 4234 | } |
4003 | 4235 | return array_unique($returned_ints); |
4004 | - } |
|
4005 | - else |
|
4236 | + } else |
|
4006 | 4237 | { |
4007 | 4238 | // Trim characters before and after and add slashes for database insertion. |
4008 | 4239 | $returned_words = array(); |
4009 | - foreach ($words as $word) |
|
4010 | - if (($word = trim($word, '-_\'')) !== '') |
|
4240 | + foreach ($words as $word) { |
|
4241 | + if (($word = trim($word, '-_\'')) !== '') |
|
4011 | 4242 | $returned_words[] = $max_chars === null ? $word : substr($word, 0, $max_chars); |
4243 | + } |
|
4012 | 4244 | |
4013 | 4245 | // Filter out all words that occur more than once. |
4014 | 4246 | return array_unique($returned_words); |
@@ -4030,16 +4262,18 @@ discard block |
||
4030 | 4262 | global $settings, $txt; |
4031 | 4263 | |
4032 | 4264 | // Does the current loaded theme have this and we are not forcing the usage of this function? |
4033 | - if (function_exists('template_create_button') && !$force_use) |
|
4034 | - return template_create_button($name, $alt, $label = '', $custom = ''); |
|
4265 | + if (function_exists('template_create_button') && !$force_use) { |
|
4266 | + return template_create_button($name, $alt, $label = '', $custom = ''); |
|
4267 | + } |
|
4035 | 4268 | |
4036 | - if (!$settings['use_image_buttons']) |
|
4037 | - return $txt[$alt]; |
|
4038 | - elseif (!empty($settings['use_buttons'])) |
|
4039 | - return '<span class="generic_icons ' . $name . '" alt="' . $txt[$alt] . '"></span>' . ($label != '' ? ' <strong>' . $txt[$label] . '</strong>' : ''); |
|
4040 | - else |
|
4041 | - return '<img src="' . $settings['lang_images_url'] . '/' . $name . '" alt="' . $txt[$alt] . '" ' . $custom . '>'; |
|
4042 | -} |
|
4269 | + if (!$settings['use_image_buttons']) { |
|
4270 | + return $txt[$alt]; |
|
4271 | + } elseif (!empty($settings['use_buttons'])) { |
|
4272 | + return '<span class="generic_icons ' . $name . '" alt="' . $txt[$alt] . '"></span>' . ($label != '' ? ' <strong>' . $txt[$label] . '</strong>' : ''); |
|
4273 | + } else { |
|
4274 | + return '<img src="' . $settings['lang_images_url'] . '/' . $name . '" alt="' . $txt[$alt] . '" ' . $custom . '>'; |
|
4275 | + } |
|
4276 | + } |
|
4043 | 4277 | |
4044 | 4278 | /** |
4045 | 4279 | * Sets up all of the top menu buttons |
@@ -4082,9 +4316,10 @@ discard block |
||
4082 | 4316 | var user_menus = new smc_PopupMenu(); |
4083 | 4317 | user_menus.add("profile", "' . $scripturl . '?action=profile;area=popup"); |
4084 | 4318 | user_menus.add("alerts", "' . $scripturl . '?action=profile;area=alerts_popup;u='. $context['user']['id'] .'");', true); |
4085 | - if ($context['allow_pm']) |
|
4086 | - addInlineJavaScript(' |
|
4319 | + if ($context['allow_pm']) { |
|
4320 | + addInlineJavaScript(' |
|
4087 | 4321 | user_menus.add("pm", "' . $scripturl . '?action=pm;sa=popup");', true); |
4322 | + } |
|
4088 | 4323 | |
4089 | 4324 | if (!empty($modSettings['enable_ajax_alerts'])) |
4090 | 4325 | { |
@@ -4244,88 +4479,96 @@ discard block |
||
4244 | 4479 | |
4245 | 4480 | // Now we put the buttons in the context so the theme can use them. |
4246 | 4481 | $menu_buttons = array(); |
4247 | - foreach ($buttons as $act => $button) |
|
4248 | - if (!empty($button['show'])) |
|
4482 | + foreach ($buttons as $act => $button) { |
|
4483 | + if (!empty($button['show'])) |
|
4249 | 4484 | { |
4250 | 4485 | $button['active_button'] = false; |
4486 | + } |
|
4251 | 4487 | |
4252 | 4488 | // This button needs some action. |
4253 | - if (isset($button['action_hook'])) |
|
4254 | - $needs_action_hook = true; |
|
4489 | + if (isset($button['action_hook'])) { |
|
4490 | + $needs_action_hook = true; |
|
4491 | + } |
|
4255 | 4492 | |
4256 | 4493 | // Make sure the last button truly is the last button. |
4257 | 4494 | if (!empty($button['is_last'])) |
4258 | 4495 | { |
4259 | - if (isset($last_button)) |
|
4260 | - unset($menu_buttons[$last_button]['is_last']); |
|
4496 | + if (isset($last_button)) { |
|
4497 | + unset($menu_buttons[$last_button]['is_last']); |
|
4498 | + } |
|
4261 | 4499 | $last_button = $act; |
4262 | 4500 | } |
4263 | 4501 | |
4264 | 4502 | // Go through the sub buttons if there are any. |
4265 | - if (!empty($button['sub_buttons'])) |
|
4266 | - foreach ($button['sub_buttons'] as $key => $subbutton) |
|
4503 | + if (!empty($button['sub_buttons'])) { |
|
4504 | + foreach ($button['sub_buttons'] as $key => $subbutton) |
|
4267 | 4505 | { |
4268 | 4506 | if (empty($subbutton['show'])) |
4269 | 4507 | unset($button['sub_buttons'][$key]); |
4508 | + } |
|
4270 | 4509 | |
4271 | 4510 | // 2nd level sub buttons next... |
4272 | 4511 | if (!empty($subbutton['sub_buttons'])) |
4273 | 4512 | { |
4274 | 4513 | foreach ($subbutton['sub_buttons'] as $key2 => $sub_button2) |
4275 | 4514 | { |
4276 | - if (empty($sub_button2['show'])) |
|
4277 | - unset($button['sub_buttons'][$key]['sub_buttons'][$key2]); |
|
4515 | + if (empty($sub_button2['show'])) { |
|
4516 | + unset($button['sub_buttons'][$key]['sub_buttons'][$key2]); |
|
4517 | + } |
|
4278 | 4518 | } |
4279 | 4519 | } |
4280 | 4520 | } |
4281 | 4521 | |
4282 | 4522 | // Does this button have its own icon? |
4283 | - if (isset($button['icon']) && file_exists($settings['theme_dir'] . '/images/' . $button['icon'])) |
|
4284 | - $button['icon'] = '<img src="' . $settings['images_url'] . '/' . $button['icon'] . '" alt="">'; |
|
4285 | - elseif (isset($button['icon']) && file_exists($settings['default_theme_dir'] . '/images/' . $button['icon'])) |
|
4286 | - $button['icon'] = '<img src="' . $settings['default_images_url'] . '/' . $button['icon'] . '" alt="">'; |
|
4287 | - elseif (isset($button['icon'])) |
|
4288 | - $button['icon'] = '<span class="generic_icons ' . $button['icon'] . '"></span>'; |
|
4289 | - else |
|
4290 | - $button['icon'] = '<span class="generic_icons ' . $act . '"></span>'; |
|
4523 | + if (isset($button['icon']) && file_exists($settings['theme_dir'] . '/images/' . $button['icon'])) { |
|
4524 | + $button['icon'] = '<img src="' . $settings['images_url'] . '/' . $button['icon'] . '" alt="">'; |
|
4525 | + } elseif (isset($button['icon']) && file_exists($settings['default_theme_dir'] . '/images/' . $button['icon'])) { |
|
4526 | + $button['icon'] = '<img src="' . $settings['default_images_url'] . '/' . $button['icon'] . '" alt="">'; |
|
4527 | + } elseif (isset($button['icon'])) { |
|
4528 | + $button['icon'] = '<span class="generic_icons ' . $button['icon'] . '"></span>'; |
|
4529 | + } else { |
|
4530 | + $button['icon'] = '<span class="generic_icons ' . $act . '"></span>'; |
|
4531 | + } |
|
4291 | 4532 | |
4292 | 4533 | $menu_buttons[$act] = $button; |
4293 | 4534 | } |
4294 | 4535 | |
4295 | - if (!empty($modSettings['cache_enable']) && $modSettings['cache_enable'] >= 2) |
|
4296 | - cache_put_data('menu_buttons-' . implode('_', $user_info['groups']) . '-' . $user_info['language'], $menu_buttons, $cacheTime); |
|
4536 | + if (!empty($modSettings['cache_enable']) && $modSettings['cache_enable'] >= 2) { |
|
4537 | + cache_put_data('menu_buttons-' . implode('_', $user_info['groups']) . '-' . $user_info['language'], $menu_buttons, $cacheTime); |
|
4538 | + } |
|
4297 | 4539 | } |
4298 | 4540 | |
4299 | 4541 | $context['menu_buttons'] = $menu_buttons; |
4300 | 4542 | |
4301 | 4543 | // Logging out requires the session id in the url. |
4302 | - if (isset($context['menu_buttons']['logout'])) |
|
4303 | - $context['menu_buttons']['logout']['href'] = sprintf($context['menu_buttons']['logout']['href'], $context['session_var'], $context['session_id']); |
|
4544 | + if (isset($context['menu_buttons']['logout'])) { |
|
4545 | + $context['menu_buttons']['logout']['href'] = sprintf($context['menu_buttons']['logout']['href'], $context['session_var'], $context['session_id']); |
|
4546 | + } |
|
4304 | 4547 | |
4305 | 4548 | // Figure out which action we are doing so we can set the active tab. |
4306 | 4549 | // Default to home. |
4307 | 4550 | $current_action = 'home'; |
4308 | 4551 | |
4309 | - if (isset($context['menu_buttons'][$context['current_action']])) |
|
4310 | - $current_action = $context['current_action']; |
|
4311 | - elseif ($context['current_action'] == 'search2') |
|
4312 | - $current_action = 'search'; |
|
4313 | - elseif ($context['current_action'] == 'theme') |
|
4314 | - $current_action = isset($_REQUEST['sa']) && $_REQUEST['sa'] == 'pick' ? 'profile' : 'admin'; |
|
4315 | - elseif ($context['current_action'] == 'register2') |
|
4316 | - $current_action = 'register'; |
|
4317 | - elseif ($context['current_action'] == 'login2' || ($user_info['is_guest'] && $context['current_action'] == 'reminder')) |
|
4318 | - $current_action = 'login'; |
|
4319 | - elseif ($context['current_action'] == 'groups' && $context['allow_moderation_center']) |
|
4320 | - $current_action = 'moderate'; |
|
4552 | + if (isset($context['menu_buttons'][$context['current_action']])) { |
|
4553 | + $current_action = $context['current_action']; |
|
4554 | + } elseif ($context['current_action'] == 'search2') { |
|
4555 | + $current_action = 'search'; |
|
4556 | + } elseif ($context['current_action'] == 'theme') { |
|
4557 | + $current_action = isset($_REQUEST['sa']) && $_REQUEST['sa'] == 'pick' ? 'profile' : 'admin'; |
|
4558 | + } elseif ($context['current_action'] == 'register2') { |
|
4559 | + $current_action = 'register'; |
|
4560 | + } elseif ($context['current_action'] == 'login2' || ($user_info['is_guest'] && $context['current_action'] == 'reminder')) { |
|
4561 | + $current_action = 'login'; |
|
4562 | + } elseif ($context['current_action'] == 'groups' && $context['allow_moderation_center']) { |
|
4563 | + $current_action = 'moderate'; |
|
4564 | + } |
|
4321 | 4565 | |
4322 | 4566 | // There are certain exceptions to the above where we don't want anything on the menu highlighted. |
4323 | 4567 | if ($context['current_action'] == 'profile' && !empty($context['user']['is_owner'])) |
4324 | 4568 | { |
4325 | 4569 | $current_action = !empty($_GET['area']) && $_GET['area'] == 'showalerts' ? 'self_alerts' : 'self_profile'; |
4326 | 4570 | $context[$current_action] = true; |
4327 | - } |
|
4328 | - elseif ($context['current_action'] == 'pm') |
|
4571 | + } elseif ($context['current_action'] == 'pm') |
|
4329 | 4572 | { |
4330 | 4573 | $current_action = 'self_pm'; |
4331 | 4574 | $context['self_pm'] = true; |
@@ -4366,12 +4609,14 @@ discard block |
||
4366 | 4609 | } |
4367 | 4610 | |
4368 | 4611 | // Not all actions are simple. |
4369 | - if (!empty($needs_action_hook)) |
|
4370 | - call_integration_hook('integrate_current_action', array(&$current_action)); |
|
4612 | + if (!empty($needs_action_hook)) { |
|
4613 | + call_integration_hook('integrate_current_action', array(&$current_action)); |
|
4614 | + } |
|
4371 | 4615 | |
4372 | - if (isset($context['menu_buttons'][$current_action])) |
|
4373 | - $context['menu_buttons'][$current_action]['active_button'] = true; |
|
4374 | -} |
|
4616 | + if (isset($context['menu_buttons'][$current_action])) { |
|
4617 | + $context['menu_buttons'][$current_action]['active_button'] = true; |
|
4618 | + } |
|
4619 | + } |
|
4375 | 4620 | |
4376 | 4621 | /** |
4377 | 4622 | * Generate a random seed and ensure it's stored in settings. |
@@ -4395,30 +4640,35 @@ discard block |
||
4395 | 4640 | global $modSettings, $settings, $boarddir, $sourcedir, $db_show_debug; |
4396 | 4641 | global $context, $txt; |
4397 | 4642 | |
4398 | - if ($db_show_debug === true) |
|
4399 | - $context['debug']['hooks'][] = $hook; |
|
4643 | + if ($db_show_debug === true) { |
|
4644 | + $context['debug']['hooks'][] = $hook; |
|
4645 | + } |
|
4400 | 4646 | |
4401 | 4647 | // Need to have some control. |
4402 | - if (!isset($context['instances'])) |
|
4403 | - $context['instances'] = array(); |
|
4648 | + if (!isset($context['instances'])) { |
|
4649 | + $context['instances'] = array(); |
|
4650 | + } |
|
4404 | 4651 | |
4405 | 4652 | $results = array(); |
4406 | - if (empty($modSettings[$hook])) |
|
4407 | - return $results; |
|
4653 | + if (empty($modSettings[$hook])) { |
|
4654 | + return $results; |
|
4655 | + } |
|
4408 | 4656 | |
4409 | 4657 | $functions = explode(',', $modSettings[$hook]); |
4410 | 4658 | // Loop through each function. |
4411 | 4659 | foreach ($functions as $function) |
4412 | 4660 | { |
4413 | 4661 | // Hook has been marked as "disabled". Skip it! |
4414 | - if (strpos($function, '!') !== false) |
|
4415 | - continue; |
|
4662 | + if (strpos($function, '!') !== false) { |
|
4663 | + continue; |
|
4664 | + } |
|
4416 | 4665 | |
4417 | 4666 | $call = call_helper($function, true); |
4418 | 4667 | |
4419 | 4668 | // Is it valid? |
4420 | - if (!empty($call)) |
|
4421 | - $results[$function] = call_user_func_array($call, $parameters); |
|
4669 | + if (!empty($call)) { |
|
4670 | + $results[$function] = call_user_func_array($call, $parameters); |
|
4671 | + } |
|
4422 | 4672 | |
4423 | 4673 | // Whatever it was suppose to call, it failed :( |
4424 | 4674 | elseif (!empty($function)) |
@@ -4434,8 +4684,9 @@ discard block |
||
4434 | 4684 | } |
4435 | 4685 | |
4436 | 4686 | // "Assume" the file resides on $boarddir somewhere... |
4437 | - else |
|
4438 | - log_error(sprintf($txt['hook_fail_call_to'], $function, $boarddir), 'general'); |
|
4687 | + else { |
|
4688 | + log_error(sprintf($txt['hook_fail_call_to'], $function, $boarddir), 'general'); |
|
4689 | + } |
|
4439 | 4690 | } |
4440 | 4691 | } |
4441 | 4692 | |
@@ -4457,12 +4708,14 @@ discard block |
||
4457 | 4708 | global $smcFunc, $modSettings; |
4458 | 4709 | |
4459 | 4710 | // Any objects? |
4460 | - if ($object) |
|
4461 | - $function = $function . '#'; |
|
4711 | + if ($object) { |
|
4712 | + $function = $function . '#'; |
|
4713 | + } |
|
4462 | 4714 | |
4463 | 4715 | // Any files to load? |
4464 | - if (!empty($file) && is_string($file)) |
|
4465 | - $function = $file . (!empty($function) ? '|' . $function : ''); |
|
4716 | + if (!empty($file) && is_string($file)) { |
|
4717 | + $function = $file . (!empty($function) ? '|' . $function : ''); |
|
4718 | + } |
|
4466 | 4719 | |
4467 | 4720 | // Get the correct string. |
4468 | 4721 | $integration_call = $function; |
@@ -4484,13 +4737,14 @@ discard block |
||
4484 | 4737 | if (!empty($current_functions)) |
4485 | 4738 | { |
4486 | 4739 | $current_functions = explode(',', $current_functions); |
4487 | - if (in_array($integration_call, $current_functions)) |
|
4488 | - return; |
|
4740 | + if (in_array($integration_call, $current_functions)) { |
|
4741 | + return; |
|
4742 | + } |
|
4489 | 4743 | |
4490 | 4744 | $permanent_functions = array_merge($current_functions, array($integration_call)); |
4745 | + } else { |
|
4746 | + $permanent_functions = array($integration_call); |
|
4491 | 4747 | } |
4492 | - else |
|
4493 | - $permanent_functions = array($integration_call); |
|
4494 | 4748 | |
4495 | 4749 | updateSettings(array($hook => implode(',', $permanent_functions))); |
4496 | 4750 | } |
@@ -4499,8 +4753,9 @@ discard block |
||
4499 | 4753 | $functions = empty($modSettings[$hook]) ? array() : explode(',', $modSettings[$hook]); |
4500 | 4754 | |
4501 | 4755 | // Do nothing, if it's already there. |
4502 | - if (in_array($integration_call, $functions)) |
|
4503 | - return; |
|
4756 | + if (in_array($integration_call, $functions)) { |
|
4757 | + return; |
|
4758 | + } |
|
4504 | 4759 | |
4505 | 4760 | $functions[] = $integration_call; |
4506 | 4761 | $modSettings[$hook] = implode(',', $functions); |
@@ -4523,12 +4778,14 @@ discard block |
||
4523 | 4778 | global $smcFunc, $modSettings; |
4524 | 4779 | |
4525 | 4780 | // Any objects? |
4526 | - if ($object) |
|
4527 | - $function = $function . '#'; |
|
4781 | + if ($object) { |
|
4782 | + $function = $function . '#'; |
|
4783 | + } |
|
4528 | 4784 | |
4529 | 4785 | // Any files to load? |
4530 | - if (!empty($file) && is_string($file)) |
|
4531 | - $function = $file . '|' . $function; |
|
4786 | + if (!empty($file) && is_string($file)) { |
|
4787 | + $function = $file . '|' . $function; |
|
4788 | + } |
|
4532 | 4789 | |
4533 | 4790 | // Get the correct string. |
4534 | 4791 | $integration_call = $function; |
@@ -4549,16 +4806,18 @@ discard block |
||
4549 | 4806 | { |
4550 | 4807 | $current_functions = explode(',', $current_functions); |
4551 | 4808 | |
4552 | - if (in_array($integration_call, $current_functions)) |
|
4553 | - updateSettings(array($hook => implode(',', array_diff($current_functions, array($integration_call))))); |
|
4809 | + if (in_array($integration_call, $current_functions)) { |
|
4810 | + updateSettings(array($hook => implode(',', array_diff($current_functions, array($integration_call))))); |
|
4811 | + } |
|
4554 | 4812 | } |
4555 | 4813 | |
4556 | 4814 | // Turn the function list into something usable. |
4557 | 4815 | $functions = empty($modSettings[$hook]) ? array() : explode(',', $modSettings[$hook]); |
4558 | 4816 | |
4559 | 4817 | // You can only remove it if it's available. |
4560 | - if (!in_array($integration_call, $functions)) |
|
4561 | - return; |
|
4818 | + if (!in_array($integration_call, $functions)) { |
|
4819 | + return; |
|
4820 | + } |
|
4562 | 4821 | |
4563 | 4822 | $functions = array_diff($functions, array($integration_call)); |
4564 | 4823 | $modSettings[$hook] = implode(',', $functions); |
@@ -4579,17 +4838,20 @@ discard block |
||
4579 | 4838 | global $context, $smcFunc, $txt, $db_show_debug; |
4580 | 4839 | |
4581 | 4840 | // Really? |
4582 | - if (empty($string)) |
|
4583 | - return false; |
|
4841 | + if (empty($string)) { |
|
4842 | + return false; |
|
4843 | + } |
|
4584 | 4844 | |
4585 | 4845 | // An array? should be a "callable" array IE array(object/class, valid_callable). |
4586 | 4846 | // A closure? should be a callable one. |
4587 | - if (is_array($string) || $string instanceof Closure) |
|
4588 | - return $return ? $string : (is_callable($string) ? call_user_func($string) : false); |
|
4847 | + if (is_array($string) || $string instanceof Closure) { |
|
4848 | + return $return ? $string : (is_callable($string) ? call_user_func($string) : false); |
|
4849 | + } |
|
4589 | 4850 | |
4590 | 4851 | // No full objects, sorry! pass a method or a property instead! |
4591 | - if (is_object($string)) |
|
4592 | - return false; |
|
4852 | + if (is_object($string)) { |
|
4853 | + return false; |
|
4854 | + } |
|
4593 | 4855 | |
4594 | 4856 | // Stay vitaminized my friends... |
4595 | 4857 | $string = $smcFunc['htmlspecialchars']($smcFunc['htmltrim']($string)); |
@@ -4598,8 +4860,9 @@ discard block |
||
4598 | 4860 | $string = load_file($string); |
4599 | 4861 | |
4600 | 4862 | // Loaded file failed |
4601 | - if (empty($string)) |
|
4602 | - return false; |
|
4863 | + if (empty($string)) { |
|
4864 | + return false; |
|
4865 | + } |
|
4603 | 4866 | |
4604 | 4867 | // Found a method. |
4605 | 4868 | if (strpos($string, '::') !== false) |
@@ -4620,8 +4883,9 @@ discard block |
||
4620 | 4883 | // Add another one to the list. |
4621 | 4884 | if ($db_show_debug === true) |
4622 | 4885 | { |
4623 | - if (!isset($context['debug']['instances'])) |
|
4624 | - $context['debug']['instances'] = array(); |
|
4886 | + if (!isset($context['debug']['instances'])) { |
|
4887 | + $context['debug']['instances'] = array(); |
|
4888 | + } |
|
4625 | 4889 | |
4626 | 4890 | $context['debug']['instances'][$class] = $class; |
4627 | 4891 | } |
@@ -4631,13 +4895,15 @@ discard block |
||
4631 | 4895 | } |
4632 | 4896 | |
4633 | 4897 | // Right then. This is a call to a static method. |
4634 | - else |
|
4635 | - $func = array($class, $method); |
|
4898 | + else { |
|
4899 | + $func = array($class, $method); |
|
4900 | + } |
|
4636 | 4901 | } |
4637 | 4902 | |
4638 | 4903 | // Nope! just a plain regular function. |
4639 | - else |
|
4640 | - $func = $string; |
|
4904 | + else { |
|
4905 | + $func = $string; |
|
4906 | + } |
|
4641 | 4907 | |
4642 | 4908 | // Right, we got what we need, time to do some checks. |
4643 | 4909 | if (!is_callable($func, false, $callable_name)) |
@@ -4653,17 +4919,18 @@ discard block |
||
4653 | 4919 | else |
4654 | 4920 | { |
4655 | 4921 | // What are we gonna do about it? |
4656 | - if ($return) |
|
4657 | - return $func; |
|
4922 | + if ($return) { |
|
4923 | + return $func; |
|
4924 | + } |
|
4658 | 4925 | |
4659 | 4926 | // If this is a plain function, avoid the heat of calling call_user_func(). |
4660 | 4927 | else |
4661 | 4928 | { |
4662 | - if (is_array($func)) |
|
4663 | - call_user_func($func); |
|
4664 | - |
|
4665 | - else |
|
4666 | - $func(); |
|
4929 | + if (is_array($func)) { |
|
4930 | + call_user_func($func); |
|
4931 | + } else { |
|
4932 | + $func(); |
|
4933 | + } |
|
4667 | 4934 | } |
4668 | 4935 | } |
4669 | 4936 | } |
@@ -4680,31 +4947,34 @@ discard block |
||
4680 | 4947 | { |
4681 | 4948 | global $sourcedir, $txt, $boarddir, $settings; |
4682 | 4949 | |
4683 | - if (empty($string)) |
|
4684 | - return false; |
|
4950 | + if (empty($string)) { |
|
4951 | + return false; |
|
4952 | + } |
|
4685 | 4953 | |
4686 | 4954 | if (strpos($string, '|') !== false) |
4687 | 4955 | { |
4688 | 4956 | list ($file, $string) = explode('|', $string); |
4689 | 4957 | |
4690 | 4958 | // Match the wildcards to their regular vars. |
4691 | - if (empty($settings['theme_dir'])) |
|
4692 | - $absPath = strtr(trim($file), array('$boarddir' => $boarddir, '$sourcedir' => $sourcedir)); |
|
4693 | - |
|
4694 | - else |
|
4695 | - $absPath = strtr(trim($file), array('$boarddir' => $boarddir, '$sourcedir' => $sourcedir, '$themedir' => $settings['theme_dir'])); |
|
4959 | + if (empty($settings['theme_dir'])) { |
|
4960 | + $absPath = strtr(trim($file), array('$boarddir' => $boarddir, '$sourcedir' => $sourcedir)); |
|
4961 | + } else { |
|
4962 | + $absPath = strtr(trim($file), array('$boarddir' => $boarddir, '$sourcedir' => $sourcedir, '$themedir' => $settings['theme_dir'])); |
|
4963 | + } |
|
4696 | 4964 | |
4697 | 4965 | // Load the file if it can be loaded. |
4698 | - if (file_exists($absPath)) |
|
4699 | - require_once($absPath); |
|
4966 | + if (file_exists($absPath)) { |
|
4967 | + require_once($absPath); |
|
4968 | + } |
|
4700 | 4969 | |
4701 | 4970 | // No? try a fallback to $sourcedir |
4702 | 4971 | else |
4703 | 4972 | { |
4704 | 4973 | $absPath = $sourcedir .'/'. $file; |
4705 | 4974 | |
4706 | - if (file_exists($absPath)) |
|
4707 | - require_once($absPath); |
|
4975 | + if (file_exists($absPath)) { |
|
4976 | + require_once($absPath); |
|
4977 | + } |
|
4708 | 4978 | |
4709 | 4979 | // Sorry, can't do much for you at this point. |
4710 | 4980 | else |
@@ -4731,8 +5001,9 @@ discard block |
||
4731 | 5001 | global $user_info, $smcFunc; |
4732 | 5002 | |
4733 | 5003 | // Make sure we have something to work with. |
4734 | - if (empty($topic)) |
|
4735 | - return array(); |
|
5004 | + if (empty($topic)) { |
|
5005 | + return array(); |
|
5006 | + } |
|
4736 | 5007 | |
4737 | 5008 | |
4738 | 5009 | // We already know the number of likes per message, we just want to know whether the current user liked it or not. |
@@ -4755,8 +5026,9 @@ discard block |
||
4755 | 5026 | 'topic' => $topic, |
4756 | 5027 | ) |
4757 | 5028 | ); |
4758 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
4759 | - $temp[] = (int) $row['content_id']; |
|
5029 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
5030 | + $temp[] = (int) $row['content_id']; |
|
5031 | + } |
|
4760 | 5032 | |
4761 | 5033 | cache_put_data($cache_key, $temp, $ttl); |
4762 | 5034 | } |
@@ -4777,8 +5049,9 @@ discard block |
||
4777 | 5049 | { |
4778 | 5050 | global $context; |
4779 | 5051 | |
4780 | - if (empty($string)) |
|
4781 | - return $string; |
|
5052 | + if (empty($string)) { |
|
5053 | + return $string; |
|
5054 | + } |
|
4782 | 5055 | |
4783 | 5056 | // UTF-8 occurences of MS special characters |
4784 | 5057 | $findchars_utf8 = array( |
@@ -4819,10 +5092,11 @@ discard block |
||
4819 | 5092 | '--', // — |
4820 | 5093 | ); |
4821 | 5094 | |
4822 | - if ($context['utf8']) |
|
4823 | - $string = str_replace($findchars_utf8, $replacechars, $string); |
|
4824 | - else |
|
4825 | - $string = str_replace($findchars_iso, $replacechars, $string); |
|
5095 | + if ($context['utf8']) { |
|
5096 | + $string = str_replace($findchars_utf8, $replacechars, $string); |
|
5097 | + } else { |
|
5098 | + $string = str_replace($findchars_iso, $replacechars, $string); |
|
5099 | + } |
|
4826 | 5100 | |
4827 | 5101 | return $string; |
4828 | 5102 | } |
@@ -4841,49 +5115,59 @@ discard block |
||
4841 | 5115 | { |
4842 | 5116 | global $context; |
4843 | 5117 | |
4844 | - if (!isset($matches[2])) |
|
4845 | - return ''; |
|
5118 | + if (!isset($matches[2])) { |
|
5119 | + return ''; |
|
5120 | + } |
|
4846 | 5121 | |
4847 | 5122 | $num = $matches[2][0] === 'x' ? hexdec(substr($matches[2], 1)) : (int) $matches[2]; |
4848 | 5123 | |
4849 | 5124 | // remove left to right / right to left overrides |
4850 | - if ($num === 0x202D || $num === 0x202E) |
|
4851 | - return ''; |
|
5125 | + if ($num === 0x202D || $num === 0x202E) { |
|
5126 | + return ''; |
|
5127 | + } |
|
4852 | 5128 | |
4853 | 5129 | // Quote, Ampersand, Apostrophe, Less/Greater Than get html replaced |
4854 | - if (in_array($num, array(0x22, 0x26, 0x27, 0x3C, 0x3E))) |
|
4855 | - return '&#' . $num . ';'; |
|
5130 | + if (in_array($num, array(0x22, 0x26, 0x27, 0x3C, 0x3E))) { |
|
5131 | + return '&#' . $num . ';'; |
|
5132 | + } |
|
4856 | 5133 | |
4857 | 5134 | if (empty($context['utf8'])) |
4858 | 5135 | { |
4859 | 5136 | // no control characters |
4860 | - if ($num < 0x20) |
|
4861 | - return ''; |
|
5137 | + if ($num < 0x20) { |
|
5138 | + return ''; |
|
5139 | + } |
|
4862 | 5140 | // text is text |
4863 | - elseif ($num < 0x80) |
|
4864 | - return chr($num); |
|
5141 | + elseif ($num < 0x80) { |
|
5142 | + return chr($num); |
|
5143 | + } |
|
4865 | 5144 | // all others get html-ised |
4866 | - else |
|
4867 | - return '&#' . $matches[2] . ';'; |
|
4868 | - } |
|
4869 | - else |
|
5145 | + else { |
|
5146 | + return '&#' . $matches[2] . ';'; |
|
5147 | + } |
|
5148 | + } else |
|
4870 | 5149 | { |
4871 | 5150 | // <0x20 are control characters, 0x20 is a space, > 0x10FFFF is past the end of the utf8 character set |
4872 | 5151 | // 0xD800 >= $num <= 0xDFFF are surrogate markers (not valid for utf8 text) |
4873 | - if ($num < 0x20 || $num > 0x10FFFF || ($num >= 0xD800 && $num <= 0xDFFF)) |
|
4874 | - return ''; |
|
5152 | + if ($num < 0x20 || $num > 0x10FFFF || ($num >= 0xD800 && $num <= 0xDFFF)) { |
|
5153 | + return ''; |
|
5154 | + } |
|
4875 | 5155 | // <0x80 (or less than 128) are standard ascii characters a-z A-Z 0-9 and punctuation |
4876 | - elseif ($num < 0x80) |
|
4877 | - return chr($num); |
|
5156 | + elseif ($num < 0x80) { |
|
5157 | + return chr($num); |
|
5158 | + } |
|
4878 | 5159 | // <0x800 (2048) |
4879 | - elseif ($num < 0x800) |
|
4880 | - return chr(($num >> 6) + 192) . chr(($num & 63) + 128); |
|
5160 | + elseif ($num < 0x800) { |
|
5161 | + return chr(($num >> 6) + 192) . chr(($num & 63) + 128); |
|
5162 | + } |
|
4881 | 5163 | // < 0x10000 (65536) |
4882 | - elseif ($num < 0x10000) |
|
4883 | - return chr(($num >> 12) + 224) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128); |
|
5164 | + elseif ($num < 0x10000) { |
|
5165 | + return chr(($num >> 12) + 224) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128); |
|
5166 | + } |
|
4884 | 5167 | // <= 0x10FFFF (1114111) |
4885 | - else |
|
4886 | - return chr(($num >> 18) + 240) . chr((($num >> 12) & 63) + 128) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128); |
|
5168 | + else { |
|
5169 | + return chr(($num >> 18) + 240) . chr((($num >> 12) & 63) + 128) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128); |
|
5170 | + } |
|
4887 | 5171 | } |
4888 | 5172 | } |
4889 | 5173 | |
@@ -4899,28 +5183,34 @@ discard block |
||
4899 | 5183 | */ |
4900 | 5184 | function fixchar__callback($matches) |
4901 | 5185 | { |
4902 | - if (!isset($matches[1])) |
|
4903 | - return ''; |
|
5186 | + if (!isset($matches[1])) { |
|
5187 | + return ''; |
|
5188 | + } |
|
4904 | 5189 | |
4905 | 5190 | $num = $matches[1][0] === 'x' ? hexdec(substr($matches[1], 1)) : (int) $matches[1]; |
4906 | 5191 | |
4907 | 5192 | // <0x20 are control characters, > 0x10FFFF is past the end of the utf8 character set |
4908 | 5193 | // 0xD800 >= $num <= 0xDFFF are surrogate markers (not valid for utf8 text), 0x202D-E are left to right overrides |
4909 | - if ($num < 0x20 || $num > 0x10FFFF || ($num >= 0xD800 && $num <= 0xDFFF) || $num === 0x202D || $num === 0x202E) |
|
4910 | - return ''; |
|
5194 | + if ($num < 0x20 || $num > 0x10FFFF || ($num >= 0xD800 && $num <= 0xDFFF) || $num === 0x202D || $num === 0x202E) { |
|
5195 | + return ''; |
|
5196 | + } |
|
4911 | 5197 | // <0x80 (or less than 128) are standard ascii characters a-z A-Z 0-9 and punctuation |
4912 | - elseif ($num < 0x80) |
|
4913 | - return chr($num); |
|
5198 | + elseif ($num < 0x80) { |
|
5199 | + return chr($num); |
|
5200 | + } |
|
4914 | 5201 | // <0x800 (2048) |
4915 | - elseif ($num < 0x800) |
|
4916 | - return chr(($num >> 6) + 192) . chr(($num & 63) + 128); |
|
5202 | + elseif ($num < 0x800) { |
|
5203 | + return chr(($num >> 6) + 192) . chr(($num & 63) + 128); |
|
5204 | + } |
|
4917 | 5205 | // < 0x10000 (65536) |
4918 | - elseif ($num < 0x10000) |
|
4919 | - return chr(($num >> 12) + 224) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128); |
|
5206 | + elseif ($num < 0x10000) { |
|
5207 | + return chr(($num >> 12) + 224) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128); |
|
5208 | + } |
|
4920 | 5209 | // <= 0x10FFFF (1114111) |
4921 | - else |
|
4922 | - return chr(($num >> 18) + 240) . chr((($num >> 12) & 63) + 128) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128); |
|
4923 | -} |
|
5210 | + else { |
|
5211 | + return chr(($num >> 18) + 240) . chr((($num >> 12) & 63) + 128) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128); |
|
5212 | + } |
|
5213 | + } |
|
4924 | 5214 | |
4925 | 5215 | /** |
4926 | 5216 | * Strips out invalid html entities, replaces others with html style { codes |
@@ -4933,17 +5223,19 @@ discard block |
||
4933 | 5223 | */ |
4934 | 5224 | function entity_fix__callback($matches) |
4935 | 5225 | { |
4936 | - if (!isset($matches[2])) |
|
4937 | - return ''; |
|
5226 | + if (!isset($matches[2])) { |
|
5227 | + return ''; |
|
5228 | + } |
|
4938 | 5229 | |
4939 | 5230 | $num = $matches[2][0] === 'x' ? hexdec(substr($matches[2], 1)) : (int) $matches[2]; |
4940 | 5231 | |
4941 | 5232 | // we don't allow control characters, characters out of range, byte markers, etc |
4942 | - if ($num < 0x20 || $num > 0x10FFFF || ($num >= 0xD800 && $num <= 0xDFFF) || $num == 0x202D || $num == 0x202E) |
|
4943 | - return ''; |
|
4944 | - else |
|
4945 | - return '&#' . $num . ';'; |
|
4946 | -} |
|
5233 | + if ($num < 0x20 || $num > 0x10FFFF || ($num >= 0xD800 && $num <= 0xDFFF) || $num == 0x202D || $num == 0x202E) { |
|
5234 | + return ''; |
|
5235 | + } else { |
|
5236 | + return '&#' . $num . ';'; |
|
5237 | + } |
|
5238 | + } |
|
4947 | 5239 | |
4948 | 5240 | /** |
4949 | 5241 | * Return a Gravatar URL based on |
@@ -4967,18 +5259,23 @@ discard block |
||
4967 | 5259 | $ratings = array('G', 'PG', 'R', 'X'); |
4968 | 5260 | $defaults = array('mm', 'identicon', 'monsterid', 'wavatar', 'retro', 'blank'); |
4969 | 5261 | $url_params = array(); |
4970 | - if (!empty($modSettings['gravatarMaxRating']) && in_array($modSettings['gravatarMaxRating'], $ratings)) |
|
4971 | - $url_params[] = 'rating=' . $modSettings['gravatarMaxRating']; |
|
4972 | - if (!empty($modSettings['gravatarDefault']) && in_array($modSettings['gravatarDefault'], $defaults)) |
|
4973 | - $url_params[] = 'default=' . $modSettings['gravatarDefault']; |
|
4974 | - if (!empty($modSettings['avatar_max_width_external'])) |
|
4975 | - $size_string = (int) $modSettings['avatar_max_width_external']; |
|
4976 | - if (!empty($modSettings['avatar_max_height_external']) && !empty($size_string)) |
|
4977 | - if ((int) $modSettings['avatar_max_height_external'] < $size_string) |
|
5262 | + if (!empty($modSettings['gravatarMaxRating']) && in_array($modSettings['gravatarMaxRating'], $ratings)) { |
|
5263 | + $url_params[] = 'rating=' . $modSettings['gravatarMaxRating']; |
|
5264 | + } |
|
5265 | + if (!empty($modSettings['gravatarDefault']) && in_array($modSettings['gravatarDefault'], $defaults)) { |
|
5266 | + $url_params[] = 'default=' . $modSettings['gravatarDefault']; |
|
5267 | + } |
|
5268 | + if (!empty($modSettings['avatar_max_width_external'])) { |
|
5269 | + $size_string = (int) $modSettings['avatar_max_width_external']; |
|
5270 | + } |
|
5271 | + if (!empty($modSettings['avatar_max_height_external']) && !empty($size_string)) { |
|
5272 | + if ((int) $modSettings['avatar_max_height_external'] < $size_string) |
|
4978 | 5273 | $size_string = $modSettings['avatar_max_height_external']; |
5274 | + } |
|
4979 | 5275 | |
4980 | - if (!empty($size_string)) |
|
4981 | - $url_params[] = 's=' . $size_string; |
|
5276 | + if (!empty($size_string)) { |
|
5277 | + $url_params[] = 's=' . $size_string; |
|
5278 | + } |
|
4982 | 5279 | } |
4983 | 5280 | $http_method = !empty($modSettings['force_ssl']) && $modSettings['force_ssl'] == 2 ? 'https://secure' : 'http://www'; |
4984 | 5281 | |
@@ -4997,22 +5294,26 @@ discard block |
||
4997 | 5294 | static $timezones = null, $lastwhen = null; |
4998 | 5295 | |
4999 | 5296 | // No point doing this over if we already did it once |
5000 | - if (!empty($timezones) && $when == $lastwhen) |
|
5001 | - return $timezones; |
|
5002 | - else |
|
5003 | - $lastwhen = $when; |
|
5297 | + if (!empty($timezones) && $when == $lastwhen) { |
|
5298 | + return $timezones; |
|
5299 | + } else { |
|
5300 | + $lastwhen = $when; |
|
5301 | + } |
|
5004 | 5302 | |
5005 | 5303 | // Parseable datetime string? |
5006 | - if (is_int($timestamp = strtotime($when))) |
|
5007 | - $when = $timestamp; |
|
5304 | + if (is_int($timestamp = strtotime($when))) { |
|
5305 | + $when = $timestamp; |
|
5306 | + } |
|
5008 | 5307 | |
5009 | 5308 | // A Unix timestamp? |
5010 | - elseif (is_numeric($when)) |
|
5011 | - $when = intval($when); |
|
5309 | + elseif (is_numeric($when)) { |
|
5310 | + $when = intval($when); |
|
5311 | + } |
|
5012 | 5312 | |
5013 | 5313 | // Invalid value? Just get current Unix timestamp. |
5014 | - else |
|
5015 | - $when = time(); |
|
5314 | + else { |
|
5315 | + $when = time(); |
|
5316 | + } |
|
5016 | 5317 | |
5017 | 5318 | // We'll need these too |
5018 | 5319 | $date_when = date_create('@' . $when); |
@@ -5076,8 +5377,9 @@ discard block |
||
5076 | 5377 | foreach ($priority_countries as $country) |
5077 | 5378 | { |
5078 | 5379 | $country_tzids = @timezone_identifiers_list(DateTimeZone::PER_COUNTRY, strtoupper(trim($country))); |
5079 | - if (!empty($country_tzids)) |
|
5080 | - $priority_tzids = array_merge($priority_tzids, $country_tzids); |
|
5380 | + if (!empty($country_tzids)) { |
|
5381 | + $priority_tzids = array_merge($priority_tzids, $country_tzids); |
|
5382 | + } |
|
5081 | 5383 | } |
5082 | 5384 | |
5083 | 5385 | // Process the preferred timezones first, then the rest. |
@@ -5087,8 +5389,9 @@ discard block |
||
5087 | 5389 | foreach ($tzids as $tzid) |
5088 | 5390 | { |
5089 | 5391 | // We don't want UTC right now |
5090 | - if ($tzid == 'UTC') |
|
5091 | - continue; |
|
5392 | + if ($tzid == 'UTC') { |
|
5393 | + continue; |
|
5394 | + } |
|
5092 | 5395 | |
5093 | 5396 | $tz = timezone_open($tzid); |
5094 | 5397 | |
@@ -5109,8 +5412,9 @@ discard block |
||
5109 | 5412 | } |
5110 | 5413 | |
5111 | 5414 | // A time zone from a prioritized country? |
5112 | - if (in_array($tzid, $priority_tzids)) |
|
5113 | - $priority_zones[$tzkey] = true; |
|
5415 | + if (in_array($tzid, $priority_tzids)) { |
|
5416 | + $priority_zones[$tzkey] = true; |
|
5417 | + } |
|
5114 | 5418 | |
5115 | 5419 | // Keep track of the location and offset for this tzid |
5116 | 5420 | $tzid_parts = explode('/', $tzid); |
@@ -5129,15 +5433,17 @@ discard block |
||
5129 | 5433 | { |
5130 | 5434 | date_timezone_set($date_when, timezone_open($tzvalue['tzid'])); |
5131 | 5435 | |
5132 | - if (!empty($timezone_descriptions[$tzvalue['tzid']])) |
|
5133 | - $desc = $timezone_descriptions[$tzvalue['tzid']]; |
|
5134 | - else |
|
5135 | - $desc = implode(', ', array_unique($tzvalue['locations'])); |
|
5436 | + if (!empty($timezone_descriptions[$tzvalue['tzid']])) { |
|
5437 | + $desc = $timezone_descriptions[$tzvalue['tzid']]; |
|
5438 | + } else { |
|
5439 | + $desc = implode(', ', array_unique($tzvalue['locations'])); |
|
5440 | + } |
|
5136 | 5441 | |
5137 | - if (isset($priority_zones[$tzkey])) |
|
5138 | - $priority_timezones[$tzvalue['tzid']] = $tzvalue['abbr'] . ' - ' . $desc . ' [UTC' . date_format($date_when, 'P') . ']'; |
|
5139 | - else |
|
5140 | - $timezones[$tzvalue['tzid']] = $tzvalue['abbr'] . ' - ' . $desc . ' [UTC' . date_format($date_when, 'P') . ']'; |
|
5442 | + if (isset($priority_zones[$tzkey])) { |
|
5443 | + $priority_timezones[$tzvalue['tzid']] = $tzvalue['abbr'] . ' - ' . $desc . ' [UTC' . date_format($date_when, 'P') . ']'; |
|
5444 | + } else { |
|
5445 | + $timezones[$tzvalue['tzid']] = $tzvalue['abbr'] . ' - ' . $desc . ' [UTC' . date_format($date_when, 'P') . ']'; |
|
5446 | + } |
|
5141 | 5447 | } |
5142 | 5448 | |
5143 | 5449 | $timezones = array_merge( |
@@ -5191,9 +5497,9 @@ discard block |
||
5191 | 5497 | 'Indian/Kerguelen' => 'TFT', |
5192 | 5498 | ); |
5193 | 5499 | |
5194 | - if (!empty($missing_tz_abbrs[$tzid])) |
|
5195 | - $tz_abbrev = $missing_tz_abbrs[$tzid]; |
|
5196 | - else |
|
5500 | + if (!empty($missing_tz_abbrs[$tzid])) { |
|
5501 | + $tz_abbrev = $missing_tz_abbrs[$tzid]; |
|
5502 | + } else |
|
5197 | 5503 | { |
5198 | 5504 | // Russia likes to experiment with time zones often, and names them as offsets from Moscow |
5199 | 5505 | $tz_location = timezone_location_get(timezone_open($tzid)); |
@@ -5221,8 +5527,9 @@ discard block |
||
5221 | 5527 | */ |
5222 | 5528 | function inet_ptod($ip_address) |
5223 | 5529 | { |
5224 | - if (!isValidIP($ip_address)) |
|
5225 | - return $ip_address; |
|
5530 | + if (!isValidIP($ip_address)) { |
|
5531 | + return $ip_address; |
|
5532 | + } |
|
5226 | 5533 | |
5227 | 5534 | $bin = inet_pton($ip_address); |
5228 | 5535 | return $bin; |
@@ -5234,13 +5541,15 @@ discard block |
||
5234 | 5541 | */ |
5235 | 5542 | function inet_dtop($bin) |
5236 | 5543 | { |
5237 | - if(empty($bin)) |
|
5238 | - return ''; |
|
5544 | + if(empty($bin)) { |
|
5545 | + return ''; |
|
5546 | + } |
|
5239 | 5547 | |
5240 | 5548 | global $db_type; |
5241 | 5549 | |
5242 | - if ($db_type == 'postgresql') |
|
5243 | - return $bin; |
|
5550 | + if ($db_type == 'postgresql') { |
|
5551 | + return $bin; |
|
5552 | + } |
|
5244 | 5553 | |
5245 | 5554 | $ip_address = inet_ntop($bin); |
5246 | 5555 | |
@@ -5265,26 +5574,32 @@ discard block |
||
5265 | 5574 | */ |
5266 | 5575 | function _safe_serialize($value) |
5267 | 5576 | { |
5268 | - if(is_null($value)) |
|
5269 | - return 'N;'; |
|
5577 | + if(is_null($value)) { |
|
5578 | + return 'N;'; |
|
5579 | + } |
|
5270 | 5580 | |
5271 | - if(is_bool($value)) |
|
5272 | - return 'b:'. (int) $value .';'; |
|
5581 | + if(is_bool($value)) { |
|
5582 | + return 'b:'. (int) $value .';'; |
|
5583 | + } |
|
5273 | 5584 | |
5274 | - if(is_int($value)) |
|
5275 | - return 'i:'. $value .';'; |
|
5585 | + if(is_int($value)) { |
|
5586 | + return 'i:'. $value .';'; |
|
5587 | + } |
|
5276 | 5588 | |
5277 | - if(is_float($value)) |
|
5278 | - return 'd:'. str_replace(',', '.', $value) .';'; |
|
5589 | + if(is_float($value)) { |
|
5590 | + return 'd:'. str_replace(',', '.', $value) .';'; |
|
5591 | + } |
|
5279 | 5592 | |
5280 | - if(is_string($value)) |
|
5281 | - return 's:'. strlen($value) .':"'. $value .'";'; |
|
5593 | + if(is_string($value)) { |
|
5594 | + return 's:'. strlen($value) .':"'. $value .'";'; |
|
5595 | + } |
|
5282 | 5596 | |
5283 | 5597 | if(is_array($value)) |
5284 | 5598 | { |
5285 | 5599 | $out = ''; |
5286 | - foreach($value as $k => $v) |
|
5287 | - $out .= _safe_serialize($k) . _safe_serialize($v); |
|
5600 | + foreach($value as $k => $v) { |
|
5601 | + $out .= _safe_serialize($k) . _safe_serialize($v); |
|
5602 | + } |
|
5288 | 5603 | |
5289 | 5604 | return 'a:'. count($value) .':{'. $out .'}'; |
5290 | 5605 | } |
@@ -5310,8 +5625,9 @@ discard block |
||
5310 | 5625 | |
5311 | 5626 | $out = _safe_serialize($value); |
5312 | 5627 | |
5313 | - if (isset($mbIntEnc)) |
|
5314 | - mb_internal_encoding($mbIntEnc); |
|
5628 | + if (isset($mbIntEnc)) { |
|
5629 | + mb_internal_encoding($mbIntEnc); |
|
5630 | + } |
|
5315 | 5631 | |
5316 | 5632 | return $out; |
5317 | 5633 | } |
@@ -5328,8 +5644,9 @@ discard block |
||
5328 | 5644 | function _safe_unserialize($str) |
5329 | 5645 | { |
5330 | 5646 | // Input is not a string. |
5331 | - if(empty($str) || !is_string($str)) |
|
5332 | - return false; |
|
5647 | + if(empty($str) || !is_string($str)) { |
|
5648 | + return false; |
|
5649 | + } |
|
5333 | 5650 | |
5334 | 5651 | $stack = array(); |
5335 | 5652 | $expected = array(); |
@@ -5345,43 +5662,38 @@ discard block |
||
5345 | 5662 | while($state != 1) |
5346 | 5663 | { |
5347 | 5664 | $type = isset($str[0]) ? $str[0] : ''; |
5348 | - if($type == '}') |
|
5349 | - $str = substr($str, 1); |
|
5350 | - |
|
5351 | - else if($type == 'N' && $str[1] == ';') |
|
5665 | + if($type == '}') { |
|
5666 | + $str = substr($str, 1); |
|
5667 | + } else if($type == 'N' && $str[1] == ';') |
|
5352 | 5668 | { |
5353 | 5669 | $value = null; |
5354 | 5670 | $str = substr($str, 2); |
5355 | - } |
|
5356 | - else if($type == 'b' && preg_match('/^b:([01]);/', $str, $matches)) |
|
5671 | + } else if($type == 'b' && preg_match('/^b:([01]);/', $str, $matches)) |
|
5357 | 5672 | { |
5358 | 5673 | $value = $matches[1] == '1' ? true : false; |
5359 | 5674 | $str = substr($str, 4); |
5360 | - } |
|
5361 | - else if($type == 'i' && preg_match('/^i:(-?[0-9]+);(.*)/s', $str, $matches)) |
|
5675 | + } else if($type == 'i' && preg_match('/^i:(-?[0-9]+);(.*)/s', $str, $matches)) |
|
5362 | 5676 | { |
5363 | 5677 | $value = (int)$matches[1]; |
5364 | 5678 | $str = $matches[2]; |
5365 | - } |
|
5366 | - else if($type == 'd' && preg_match('/^d:(-?[0-9]+\.?[0-9]*(E[+-][0-9]+)?);(.*)/s', $str, $matches)) |
|
5679 | + } else if($type == 'd' && preg_match('/^d:(-?[0-9]+\.?[0-9]*(E[+-][0-9]+)?);(.*)/s', $str, $matches)) |
|
5367 | 5680 | { |
5368 | 5681 | $value = (float)$matches[1]; |
5369 | 5682 | $str = $matches[3]; |
5370 | - } |
|
5371 | - else if($type == 's' && preg_match('/^s:([0-9]+):"(.*)/s', $str, $matches) && substr($matches[2], (int)$matches[1], 2) == '";') |
|
5683 | + } else if($type == 's' && preg_match('/^s:([0-9]+):"(.*)/s', $str, $matches) && substr($matches[2], (int)$matches[1], 2) == '";') |
|
5372 | 5684 | { |
5373 | 5685 | $value = substr($matches[2], 0, (int)$matches[1]); |
5374 | 5686 | $str = substr($matches[2], (int)$matches[1] + 2); |
5375 | - } |
|
5376 | - else if($type == 'a' && preg_match('/^a:([0-9]+):{(.*)/s', $str, $matches)) |
|
5687 | + } else if($type == 'a' && preg_match('/^a:([0-9]+):{(.*)/s', $str, $matches)) |
|
5377 | 5688 | { |
5378 | 5689 | $expectedLength = (int)$matches[1]; |
5379 | 5690 | $str = $matches[2]; |
5380 | 5691 | } |
5381 | 5692 | |
5382 | 5693 | // Object or unknown/malformed type. |
5383 | - else |
|
5384 | - return false; |
|
5694 | + else { |
|
5695 | + return false; |
|
5696 | + } |
|
5385 | 5697 | |
5386 | 5698 | switch($state) |
5387 | 5699 | { |
@@ -5409,8 +5721,9 @@ discard block |
||
5409 | 5721 | if($type == '}') |
5410 | 5722 | { |
5411 | 5723 | // Array size is less than expected. |
5412 | - if(count($list) < end($expected)) |
|
5413 | - return false; |
|
5724 | + if(count($list) < end($expected)) { |
|
5725 | + return false; |
|
5726 | + } |
|
5414 | 5727 | |
5415 | 5728 | unset($list); |
5416 | 5729 | $list = &$stack[count($stack)-1]; |
@@ -5419,8 +5732,9 @@ discard block |
||
5419 | 5732 | // Go to terminal state if we're at the end of the root array. |
5420 | 5733 | array_pop($expected); |
5421 | 5734 | |
5422 | - if(count($expected) == 0) |
|
5423 | - $state = 1; |
|
5735 | + if(count($expected) == 0) { |
|
5736 | + $state = 1; |
|
5737 | + } |
|
5424 | 5738 | |
5425 | 5739 | break; |
5426 | 5740 | } |
@@ -5428,8 +5742,9 @@ discard block |
||
5428 | 5742 | if($type == 'i' || $type == 's') |
5429 | 5743 | { |
5430 | 5744 | // Array size exceeds expected length. |
5431 | - if(count($list) >= end($expected)) |
|
5432 | - return false; |
|
5745 | + if(count($list) >= end($expected)) { |
|
5746 | + return false; |
|
5747 | + } |
|
5433 | 5748 | |
5434 | 5749 | $key = $value; |
5435 | 5750 | $state = 3; |
@@ -5463,8 +5778,9 @@ discard block |
||
5463 | 5778 | } |
5464 | 5779 | |
5465 | 5780 | // Trailing data in input. |
5466 | - if(!empty($str)) |
|
5467 | - return false; |
|
5781 | + if(!empty($str)) { |
|
5782 | + return false; |
|
5783 | + } |
|
5468 | 5784 | |
5469 | 5785 | return $data; |
5470 | 5786 | } |
@@ -5487,8 +5803,9 @@ discard block |
||
5487 | 5803 | |
5488 | 5804 | $out = _safe_unserialize($str); |
5489 | 5805 | |
5490 | - if (isset($mbIntEnc)) |
|
5491 | - mb_internal_encoding($mbIntEnc); |
|
5806 | + if (isset($mbIntEnc)) { |
|
5807 | + mb_internal_encoding($mbIntEnc); |
|
5808 | + } |
|
5492 | 5809 | |
5493 | 5810 | return $out; |
5494 | 5811 | } |
@@ -5503,12 +5820,14 @@ discard block |
||
5503 | 5820 | function smf_chmod($file, $value = 0) |
5504 | 5821 | { |
5505 | 5822 | // No file? no checks! |
5506 | - if (empty($file)) |
|
5507 | - return false; |
|
5823 | + if (empty($file)) { |
|
5824 | + return false; |
|
5825 | + } |
|
5508 | 5826 | |
5509 | 5827 | // Already writable? |
5510 | - if (is_writable($file)) |
|
5511 | - return true; |
|
5828 | + if (is_writable($file)) { |
|
5829 | + return true; |
|
5830 | + } |
|
5512 | 5831 | |
5513 | 5832 | // Do we have a file or a dir? |
5514 | 5833 | $isDir = is_dir($file); |
@@ -5524,10 +5843,9 @@ discard block |
||
5524 | 5843 | { |
5525 | 5844 | $isWritable = true; |
5526 | 5845 | break; |
5846 | + } else { |
|
5847 | + @chmod($file, $val); |
|
5527 | 5848 | } |
5528 | - |
|
5529 | - else |
|
5530 | - @chmod($file, $val); |
|
5531 | 5849 | } |
5532 | 5850 | |
5533 | 5851 | return $isWritable; |
@@ -5546,8 +5864,9 @@ discard block |
||
5546 | 5864 | global $txt; |
5547 | 5865 | |
5548 | 5866 | // Come on... |
5549 | - if (empty($json) || !is_string($json)) |
|
5550 | - return array(); |
|
5867 | + if (empty($json) || !is_string($json)) { |
|
5868 | + return array(); |
|
5869 | + } |
|
5551 | 5870 | |
5552 | 5871 | $returnArray = @json_decode($json, $returnAsArray); |
5553 | 5872 | |
@@ -5585,11 +5904,11 @@ discard block |
||
5585 | 5904 | $jsonDebug = $jsonDebug[0]; |
5586 | 5905 | loadLanguage('Errors'); |
5587 | 5906 | |
5588 | - if (!empty($jsonDebug)) |
|
5589 | - log_error($txt['json_'. $jsonError], 'critical', $jsonDebug['file'], $jsonDebug['line']); |
|
5590 | - |
|
5591 | - else |
|
5592 | - log_error($txt['json_'. $jsonError], 'critical'); |
|
5907 | + if (!empty($jsonDebug)) { |
|
5908 | + log_error($txt['json_'. $jsonError], 'critical', $jsonDebug['file'], $jsonDebug['line']); |
|
5909 | + } else { |
|
5910 | + log_error($txt['json_'. $jsonError], 'critical'); |
|
5911 | + } |
|
5593 | 5912 | |
5594 | 5913 | // Everyone expects an array. |
5595 | 5914 | return array(); |
@@ -5623,8 +5942,9 @@ discard block |
||
5623 | 5942 | global $db_show_debug, $modSettings; |
5624 | 5943 | |
5625 | 5944 | // Defensive programming anyone? |
5626 | - if (empty($data)) |
|
5627 | - return false; |
|
5945 | + if (empty($data)) { |
|
5946 | + return false; |
|
5947 | + } |
|
5628 | 5948 | |
5629 | 5949 | // Don't need extra stuff... |
5630 | 5950 | $db_show_debug = false; |
@@ -5632,11 +5952,11 @@ discard block |
||
5632 | 5952 | // Kill anything else. |
5633 | 5953 | ob_end_clean(); |
5634 | 5954 | |
5635 | - if (!empty($modSettings['CompressedOutput'])) |
|
5636 | - @ob_start('ob_gzhandler'); |
|
5637 | - |
|
5638 | - else |
|
5639 | - ob_start(); |
|
5955 | + if (!empty($modSettings['CompressedOutput'])) { |
|
5956 | + @ob_start('ob_gzhandler'); |
|
5957 | + } else { |
|
5958 | + ob_start(); |
|
5959 | + } |
|
5640 | 5960 | |
5641 | 5961 | // Set the header. |
5642 | 5962 | header($type); |
@@ -5668,8 +5988,9 @@ discard block |
||
5668 | 5988 | static $done = false; |
5669 | 5989 | |
5670 | 5990 | // If we don't need to do anything, don't |
5671 | - if (!$update && $done) |
|
5672 | - return; |
|
5991 | + if (!$update && $done) { |
|
5992 | + return; |
|
5993 | + } |
|
5673 | 5994 | |
5674 | 5995 | // Should we get a new copy of the official list of TLDs? |
5675 | 5996 | if ($update) |
@@ -5678,8 +5999,9 @@ discard block |
||
5678 | 5999 | $tlds = fetch_web_data('https://data.iana.org/TLD/tlds-alpha-by-domain.txt'); |
5679 | 6000 | |
5680 | 6001 | // If the Internet Assigned Numbers Authority can't be reached, the Internet is gone. We're probably running on a server hidden in a bunker deep underground to protect it from marauding bandits roaming on the surface. We don't want to waste precious electricity on pointlessly repeating background tasks, so we'll wait until the next regularly scheduled update to see if civilization has been restored. |
5681 | - if ($tlds === false) |
|
5682 | - $postapocalypticNightmare = true; |
|
6002 | + if ($tlds === false) { |
|
6003 | + $postapocalypticNightmare = true; |
|
6004 | + } |
|
5683 | 6005 | } |
5684 | 6006 | // If we aren't updating and the regex is valid, we're done |
5685 | 6007 | elseif (!empty($modSettings['tld_regex']) && @preg_match('~' . $modSettings['tld_regex'] . '~', null) !== false) |
@@ -5694,10 +6016,11 @@ discard block |
||
5694 | 6016 | // Clean $tlds and convert it to an array |
5695 | 6017 | $tlds = array_filter(explode("\n", strtolower($tlds)), function($line) { |
5696 | 6018 | $line = trim($line); |
5697 | - if (empty($line) || strpos($line, '#') !== false || strpos($line, ' ') !== false) |
|
5698 | - return false; |
|
5699 | - else |
|
5700 | - return true; |
|
6019 | + if (empty($line) || strpos($line, '#') !== false || strpos($line, ' ') !== false) { |
|
6020 | + return false; |
|
6021 | + } else { |
|
6022 | + return true; |
|
6023 | + } |
|
5701 | 6024 | }); |
5702 | 6025 | |
5703 | 6026 | // Convert Punycode to Unicode |
@@ -5751,8 +6074,9 @@ discard block |
||
5751 | 6074 | $idx += $digit * $w; |
5752 | 6075 | $t = ($k <= $bias) ? $tmin : (($k >= $bias + $tmax) ? $tmax : ($k - $bias)); |
5753 | 6076 | |
5754 | - if ($digit < $t) |
|
5755 | - break; |
|
6077 | + if ($digit < $t) { |
|
6078 | + break; |
|
6079 | + } |
|
5756 | 6080 | |
5757 | 6081 | $w = (int) ($w * ($base - $t)); |
5758 | 6082 | } |
@@ -5761,8 +6085,9 @@ discard block |
||
5761 | 6085 | $delta = intval($is_first ? ($delta / $damp) : ($delta / 2)); |
5762 | 6086 | $delta += intval($delta / ($deco_len + 1)); |
5763 | 6087 | |
5764 | - for ($k = 0; $delta > (($base - $tmin) * $tmax) / 2; $k += $base) |
|
5765 | - $delta = intval($delta / ($base - $tmin)); |
|
6088 | + for ($k = 0; $delta > (($base - $tmin) * $tmax) / 2; $k += $base) { |
|
6089 | + $delta = intval($delta / ($base - $tmin)); |
|
6090 | + } |
|
5766 | 6091 | |
5767 | 6092 | $bias = intval($k + ($base - $tmin + 1) * $delta / ($delta + $skew)); |
5768 | 6093 | $is_first = false; |
@@ -5771,8 +6096,9 @@ discard block |
||
5771 | 6096 | |
5772 | 6097 | if ($deco_len > 0) |
5773 | 6098 | { |
5774 | - for ($i = $deco_len; $i > $idx; $i--) |
|
5775 | - $decoded[$i] = $decoded[($i - 1)]; |
|
6099 | + for ($i = $deco_len; $i > $idx; $i--) { |
|
6100 | + $decoded[$i] = $decoded[($i - 1)]; |
|
6101 | + } |
|
5776 | 6102 | } |
5777 | 6103 | $decoded[$idx++] = $char; |
5778 | 6104 | } |
@@ -5780,24 +6106,29 @@ discard block |
||
5780 | 6106 | foreach ($decoded as $k => $v) |
5781 | 6107 | { |
5782 | 6108 | // 7bit are transferred literally |
5783 | - if ($v < 128) |
|
5784 | - $output .= chr($v); |
|
6109 | + if ($v < 128) { |
|
6110 | + $output .= chr($v); |
|
6111 | + } |
|
5785 | 6112 | |
5786 | 6113 | // 2 bytes |
5787 | - elseif ($v < (1 << 11)) |
|
5788 | - $output .= chr(192+($v >> 6)) . chr(128+($v & 63)); |
|
6114 | + elseif ($v < (1 << 11)) { |
|
6115 | + $output .= chr(192+($v >> 6)) . chr(128+($v & 63)); |
|
6116 | + } |
|
5789 | 6117 | |
5790 | 6118 | // 3 bytes |
5791 | - elseif ($v < (1 << 16)) |
|
5792 | - $output .= chr(224+($v >> 12)) . chr(128+(($v >> 6) & 63)) . chr(128+($v & 63)); |
|
6119 | + elseif ($v < (1 << 16)) { |
|
6120 | + $output .= chr(224+($v >> 12)) . chr(128+(($v >> 6) & 63)) . chr(128+($v & 63)); |
|
6121 | + } |
|
5793 | 6122 | |
5794 | 6123 | // 4 bytes |
5795 | - elseif ($v < (1 << 21)) |
|
5796 | - $output .= chr(240+($v >> 18)) . chr(128+(($v >> 12) & 63)) . chr(128+(($v >> 6) & 63)) . chr(128+($v & 63)); |
|
6124 | + elseif ($v < (1 << 21)) { |
|
6125 | + $output .= chr(240+($v >> 18)) . chr(128+(($v >> 12) & 63)) . chr(128+(($v >> 6) & 63)) . chr(128+($v & 63)); |
|
6126 | + } |
|
5797 | 6127 | |
5798 | 6128 | // 'Conversion from UCS-4 to UTF-8 failed: malformed input at byte '.$k |
5799 | - else |
|
5800 | - $output .= $safe_char; |
|
6129 | + else { |
|
6130 | + $output .= $safe_char; |
|
6131 | + } |
|
5801 | 6132 | } |
5802 | 6133 | |
5803 | 6134 | $output_parts[] = $output; |
@@ -5890,8 +6221,7 @@ discard block |
||
5890 | 6221 | |
5891 | 6222 | $strlen = 'mb_strlen'; |
5892 | 6223 | $substr = 'mb_substr'; |
5893 | - } |
|
5894 | - else |
|
6224 | + } else |
|
5895 | 6225 | { |
5896 | 6226 | $strlen = $smcFunc['strlen']; |
5897 | 6227 | $substr = $smcFunc['substr']; |
@@ -5905,20 +6235,21 @@ discard block |
||
5905 | 6235 | |
5906 | 6236 | $first = $substr($string, 0, 1); |
5907 | 6237 | |
5908 | - if (empty($index[$first])) |
|
5909 | - $index[$first] = array(); |
|
6238 | + if (empty($index[$first])) { |
|
6239 | + $index[$first] = array(); |
|
6240 | + } |
|
5910 | 6241 | |
5911 | 6242 | if ($strlen($string) > 1) |
5912 | 6243 | { |
5913 | 6244 | // Sanity check on recursion |
5914 | - if ($depth > 99) |
|
5915 | - $index[$first][$substr($string, 1)] = ''; |
|
5916 | - |
|
5917 | - else |
|
5918 | - $index[$first] = $add_string_to_index($substr($string, 1), $index[$first]); |
|
6245 | + if ($depth > 99) { |
|
6246 | + $index[$first][$substr($string, 1)] = ''; |
|
6247 | + } else { |
|
6248 | + $index[$first] = $add_string_to_index($substr($string, 1), $index[$first]); |
|
6249 | + } |
|
6250 | + } else { |
|
6251 | + $index[$first][''] = ''; |
|
5919 | 6252 | } |
5920 | - else |
|
5921 | - $index[$first][''] = ''; |
|
5922 | 6253 | |
5923 | 6254 | $depth--; |
5924 | 6255 | return $index; |
@@ -5941,9 +6272,9 @@ discard block |
||
5941 | 6272 | $key_regex = preg_quote($key, $delim); |
5942 | 6273 | $new_key = $key; |
5943 | 6274 | |
5944 | - if (empty($value)) |
|
5945 | - $sub_regex = ''; |
|
5946 | - else |
|
6275 | + if (empty($value)) { |
|
6276 | + $sub_regex = ''; |
|
6277 | + } else |
|
5947 | 6278 | { |
5948 | 6279 | $sub_regex = $index_to_regex($value, $delim); |
5949 | 6280 | |
@@ -5951,22 +6282,22 @@ discard block |
||
5951 | 6282 | { |
5952 | 6283 | $new_key_array = explode('(?'.'>', $sub_regex); |
5953 | 6284 | $new_key .= $new_key_array[0]; |
6285 | + } else { |
|
6286 | + $sub_regex = '(?'.'>' . $sub_regex . ')'; |
|
5954 | 6287 | } |
5955 | - else |
|
5956 | - $sub_regex = '(?'.'>' . $sub_regex . ')'; |
|
5957 | 6288 | } |
5958 | 6289 | |
5959 | - if ($depth > 1) |
|
5960 | - $regex[$new_key] = $key_regex . $sub_regex; |
|
5961 | - else |
|
6290 | + if ($depth > 1) { |
|
6291 | + $regex[$new_key] = $key_regex . $sub_regex; |
|
6292 | + } else |
|
5962 | 6293 | { |
5963 | 6294 | if (($length += strlen($key_regex) + 1) < $max_length || empty($regex)) |
5964 | 6295 | { |
5965 | 6296 | $regex[$new_key] = $key_regex . $sub_regex; |
5966 | 6297 | unset($index[$key]); |
6298 | + } else { |
|
6299 | + break; |
|
5967 | 6300 | } |
5968 | - else |
|
5969 | - break; |
|
5970 | 6301 | } |
5971 | 6302 | } |
5972 | 6303 | |
@@ -5975,10 +6306,11 @@ discard block |
||
5975 | 6306 | $l1 = $strlen($k1); |
5976 | 6307 | $l2 = $strlen($k2); |
5977 | 6308 | |
5978 | - if ($l1 == $l2) |
|
5979 | - return strcmp($k1, $k2) > 0 ? 1 : -1; |
|
5980 | - else |
|
5981 | - return $l1 > $l2 ? -1 : 1; |
|
6309 | + if ($l1 == $l2) { |
|
6310 | + return strcmp($k1, $k2) > 0 ? 1 : -1; |
|
6311 | + } else { |
|
6312 | + return $l1 > $l2 ? -1 : 1; |
|
6313 | + } |
|
5982 | 6314 | }); |
5983 | 6315 | |
5984 | 6316 | $depth--; |
@@ -5989,21 +6321,24 @@ discard block |
||
5989 | 6321 | $index = array(); |
5990 | 6322 | $regex = ''; |
5991 | 6323 | |
5992 | - foreach ($strings as $string) |
|
5993 | - $index = $add_string_to_index($string, $index); |
|
6324 | + foreach ($strings as $string) { |
|
6325 | + $index = $add_string_to_index($string, $index); |
|
6326 | + } |
|
5994 | 6327 | |
5995 | 6328 | if ($returnArray === true) |
5996 | 6329 | { |
5997 | 6330 | $regex = array(); |
5998 | - while (!empty($index)) |
|
5999 | - $regex[] = '(?'.'>' . $index_to_regex($index, $delim) . ')'; |
|
6331 | + while (!empty($index)) { |
|
6332 | + $regex[] = '(?'.'>' . $index_to_regex($index, $delim) . ')'; |
|
6333 | + } |
|
6334 | + } else { |
|
6335 | + $regex = '(?'.'>' . $index_to_regex($index, $delim) . ')'; |
|
6000 | 6336 | } |
6001 | - else |
|
6002 | - $regex = '(?'.'>' . $index_to_regex($index, $delim) . ')'; |
|
6003 | 6337 | |
6004 | 6338 | // Restore PHP's internal character encoding to whatever it was originally |
6005 | - if (!empty($current_encoding)) |
|
6006 | - mb_internal_encoding($current_encoding); |
|
6339 | + if (!empty($current_encoding)) { |
|
6340 | + mb_internal_encoding($current_encoding); |
|
6341 | + } |
|
6007 | 6342 | |
6008 | 6343 | return $regex; |
6009 | 6344 | } |
@@ -6043,13 +6378,15 @@ discard block |
||
6043 | 6378 | // Need to add the trailing slash, or it puts it there & thinks there's a redirect when there isn't... |
6044 | 6379 | $url = str_ireplace('https://', 'http://', $url) . '/'; |
6045 | 6380 | $headers = @get_headers($url); |
6046 | - if ($headers === false) |
|
6047 | - return false; |
|
6381 | + if ($headers === false) { |
|
6382 | + return false; |
|
6383 | + } |
|
6048 | 6384 | |
6049 | 6385 | // Now to see if it came back https... |
6050 | 6386 | // First check for a redirect status code in first row (301, 302, 307) |
6051 | - if (strstr($headers[0], '301') === false && strstr($headers[0], '302') === false && strstr($headers[0], '307') === false) |
|
6052 | - return false; |
|
6387 | + if (strstr($headers[0], '301') === false && strstr($headers[0], '302') === false && strstr($headers[0], '307') === false) { |
|
6388 | + return false; |
|
6389 | + } |
|
6053 | 6390 | |
6054 | 6391 | // Search for the location entry to confirm https |
6055 | 6392 | $result = false; |
@@ -6085,8 +6422,7 @@ discard block |
||
6085 | 6422 | $is_admin = $user_info['is_admin']; |
6086 | 6423 | $mod_cache = !empty($user_info['mod_cache']) ? $user_info['mod_cache'] : null; |
6087 | 6424 | $ignoreboards = !empty($user_info['ignoreboards']) ? $user_info['ignoreboards'] : null; |
6088 | - } |
|
6089 | - else |
|
6425 | + } else |
|
6090 | 6426 | { |
6091 | 6427 | $request = $smcFunc['db_query']('', ' |
6092 | 6428 | SELECT mem.ignore_boards, mem.id_group, mem.additional_groups, mem.id_post_group |
@@ -6100,17 +6436,19 @@ discard block |
||
6100 | 6436 | |
6101 | 6437 | $row = $smcFunc['db_fetch_assoc']($request); |
6102 | 6438 | |
6103 | - if (empty($row['additional_groups'])) |
|
6104 | - $groups = array($row['id_group'], $user_settings['id_post_group']); |
|
6105 | - else |
|
6106 | - $groups = array_merge( |
|
6439 | + if (empty($row['additional_groups'])) { |
|
6440 | + $groups = array($row['id_group'], $user_settings['id_post_group']); |
|
6441 | + } else { |
|
6442 | + $groups = array_merge( |
|
6107 | 6443 | array($row['id_group'], $user_settings['id_post_group']), |
6108 | 6444 | explode(',', $row['additional_groups']) |
6109 | 6445 | ); |
6446 | + } |
|
6110 | 6447 | |
6111 | 6448 | // Because history has proven that it is possible for groups to go bad - clean up in case. |
6112 | - foreach ($groups as $k => $v) |
|
6113 | - $groups[$k] = (int) $v; |
|
6449 | + foreach ($groups as $k => $v) { |
|
6450 | + $groups[$k] = (int) $v; |
|
6451 | + } |
|
6114 | 6452 | |
6115 | 6453 | $is_admin = in_array(1, $groups); |
6116 | 6454 | |
@@ -6127,8 +6465,9 @@ discard block |
||
6127 | 6465 | 'current_member' => $userid, |
6128 | 6466 | ) |
6129 | 6467 | ); |
6130 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
6131 | - $boards_mod[] = $row['id_board']; |
|
6468 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
6469 | + $boards_mod[] = $row['id_board']; |
|
6470 | + } |
|
6132 | 6471 | $smcFunc['db_free_result']($request); |
6133 | 6472 | |
6134 | 6473 | // Can any of the groups they're in moderate any of the boards? |
@@ -6140,8 +6479,9 @@ discard block |
||
6140 | 6479 | 'groups' => $groups, |
6141 | 6480 | ) |
6142 | 6481 | ); |
6143 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
6144 | - $boards_mod[] = $row['id_board']; |
|
6482 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
6483 | + $boards_mod[] = $row['id_board']; |
|
6484 | + } |
|
6145 | 6485 | $smcFunc['db_free_result']($request); |
6146 | 6486 | |
6147 | 6487 | // Just in case we've got duplicates here... |
@@ -6151,21 +6491,25 @@ discard block |
||
6151 | 6491 | } |
6152 | 6492 | |
6153 | 6493 | // Just build this here, it makes it easier to change/use - administrators can see all boards. |
6154 | - if ($is_admin) |
|
6155 | - $query_part['query_see_board'] = '1=1'; |
|
6494 | + if ($is_admin) { |
|
6495 | + $query_part['query_see_board'] = '1=1'; |
|
6496 | + } |
|
6156 | 6497 | // Otherwise just the groups in $user_info['groups']. |
6157 | - else |
|
6158 | - $query_part['query_see_board'] = '((FIND_IN_SET(' . implode(', b.member_groups) != 0 OR FIND_IN_SET(', $groups) . ', b.member_groups) != 0)' . (!empty($deny_boards_access) ? ' AND (FIND_IN_SET(' . implode(', b.deny_member_groups) = 0 AND FIND_IN_SET(', $groups) . ', b.deny_member_groups) = 0)' : '') . (isset($mod_cache) ? ' OR ' . $mod_cache['mq'] : '') . ')'; |
|
6498 | + else { |
|
6499 | + $query_part['query_see_board'] = '((FIND_IN_SET(' . implode(', b.member_groups) != 0 OR FIND_IN_SET(', $groups) . ', b.member_groups) != 0)' . (!empty($deny_boards_access) ? ' AND (FIND_IN_SET(' . implode(', b.deny_member_groups) = 0 AND FIND_IN_SET(', $groups) . ', b.deny_member_groups) = 0)' : '') . (isset($mod_cache) ? ' OR ' . $mod_cache['mq'] : '') . ')'; |
|
6500 | + } |
|
6159 | 6501 | |
6160 | 6502 | // Build the list of boards they WANT to see. |
6161 | 6503 | // This will take the place of query_see_boards in certain spots, so it better include the boards they can see also |
6162 | 6504 | |
6163 | 6505 | // If they aren't ignoring any boards then they want to see all the boards they can see |
6164 | - if (empty($ignoreboards)) |
|
6165 | - $query_part['query_wanna_see_board'] = $query_part['query_see_board']; |
|
6506 | + if (empty($ignoreboards)) { |
|
6507 | + $query_part['query_wanna_see_board'] = $query_part['query_see_board']; |
|
6508 | + } |
|
6166 | 6509 | // Ok I guess they don't want to see all the boards |
6167 | - else |
|
6168 | - $query_part['query_wanna_see_board'] = '(' . $query_part['query_see_board'] . ' AND b.id_board NOT IN (' . implode(',', $ignoreboards) . '))'; |
|
6510 | + else { |
|
6511 | + $query_part['query_wanna_see_board'] = '(' . $query_part['query_see_board'] . ' AND b.id_board NOT IN (' . implode(',', $ignoreboards) . '))'; |
|
6512 | + } |
|
6169 | 6513 | |
6170 | 6514 | return $query_part; |
6171 | 6515 | } |
@@ -5495,7 +5495,6 @@ discard block |
||
5495 | 5495 | |
5496 | 5496 | /** |
5497 | 5497 | * Tries different modes to make file/dirs writable. Wrapper function for chmod() |
5498 | - |
|
5499 | 5498 | * @param string $file The file/dir full path. |
5500 | 5499 | * @param int $value Not needed, added for legacy reasons. |
5501 | 5500 | * @return boolean true if the file/dir is already writable or the function was able to make it writable, false if the function couldn't make the file/dir writable. |
@@ -5535,7 +5534,6 @@ discard block |
||
5535 | 5534 | |
5536 | 5535 | /** |
5537 | 5536 | * Wrapper function for json_decode() with error handling. |
5538 | - |
|
5539 | 5537 | * @param string $json The string to decode. |
5540 | 5538 | * @param bool $returnAsArray To return the decoded string as an array or an object, SMF only uses Arrays but to keep on compatibility with json_decode its set to false as default. |
5541 | 5539 | * @param bool $logIt To specify if the error will be logged if theres any. |
@@ -6035,7 +6033,7 @@ discard block |
||
6035 | 6033 | $cont = stream_context_get_params($read); |
6036 | 6034 | $result = isset($cont['options']['ssl']['peer_certificate']) ? true : false; |
6037 | 6035 | } |
6038 | - return $result; |
|
6036 | + return $result; |
|
6039 | 6037 | } |
6040 | 6038 | |
6041 | 6039 | /** |
@@ -386,7 +386,7 @@ discard block |
||
386 | 386 | { |
387 | 387 | $val = 'CASE '; |
388 | 388 | foreach ($members as $k => $v) |
389 | - $val .= 'WHEN id_member = ' . $v . ' THEN '. count(fetch_alerts($v, false, 0, array(), false)) . ' '; |
|
389 | + $val .= 'WHEN id_member = ' . $v . ' THEN ' . count(fetch_alerts($v, false, 0, array(), false)) . ' '; |
|
390 | 390 | $val = $val . ' END'; |
391 | 391 | $type = 'raw'; |
392 | 392 | } |
@@ -817,7 +817,7 @@ discard block |
||
817 | 817 | $unsupportedFormats = (array) cache_get_data('unsupportedtimeformats', 86400); |
818 | 818 | if (empty($unsupportedFormats)) |
819 | 819 | { |
820 | - foreach($strftimeFormatSubstitutions as $format => $substitution) |
|
820 | + foreach ($strftimeFormatSubstitutions as $format => $substitution) |
|
821 | 821 | { |
822 | 822 | $value = @strftime('%' . $format); |
823 | 823 | |
@@ -1182,7 +1182,7 @@ discard block |
||
1182 | 1182 | 'height' => array('optional' => true, 'match' => '(\d+)'), |
1183 | 1183 | ), |
1184 | 1184 | 'content' => '$1', |
1185 | - 'validate' => function (&$tag, &$data, $disabled, $params) use ($modSettings, $context, $sourcedir, $txt) |
|
1185 | + 'validate' => function(&$tag, &$data, $disabled, $params) use ($modSettings, $context, $sourcedir, $txt) |
|
1186 | 1186 | { |
1187 | 1187 | $returnContext = ''; |
1188 | 1188 | |
@@ -1217,7 +1217,7 @@ discard block |
||
1217 | 1217 | } |
1218 | 1218 | |
1219 | 1219 | if ($currentAttachment['thumbnail']['has_thumb'] && empty($params['{width}']) && empty($params['{height}'])) |
1220 | - $returnContext .= '<a href="'. $currentAttachment['href']. ';image" id="link_'. $currentAttachment['id']. '" onclick="'. $currentAttachment['thumbnail']['javascript']. '"><img src="'. $currentAttachment['thumbnail']['href']. '"' . $alt . $title . ' id="thumb_'. $currentAttachment['id']. '" class="atc_img"></a>'; |
|
1220 | + $returnContext .= '<a href="' . $currentAttachment['href'] . ';image" id="link_' . $currentAttachment['id'] . '" onclick="' . $currentAttachment['thumbnail']['javascript'] . '"><img src="' . $currentAttachment['thumbnail']['href'] . '"' . $alt . $title . ' id="thumb_' . $currentAttachment['id'] . '" class="atc_img"></a>'; |
|
1221 | 1221 | else |
1222 | 1222 | $returnContext .= '<img src="' . $currentAttachment['href'] . ';image"' . $alt . $title . $width . $height . ' class="bbc_img"/>'; |
1223 | 1223 | } |
@@ -1246,7 +1246,7 @@ discard block |
||
1246 | 1246 | 'type' => 'unparsed_content', |
1247 | 1247 | 'content' => '<div class="codeheader"><span class="code floatleft">' . $txt['code'] . '</span> <a class="codeoperation smf_select_text">' . $txt['code_select'] . '</a></div><code class="bbc_code">$1</code>', |
1248 | 1248 | // @todo Maybe this can be simplified? |
1249 | - 'validate' => isset($disabled['code']) ? null : function (&$tag, &$data, $disabled) use ($context) |
|
1249 | + 'validate' => isset($disabled['code']) ? null : function(&$tag, &$data, $disabled) use ($context) |
|
1250 | 1250 | { |
1251 | 1251 | if (!isset($disabled['code'])) |
1252 | 1252 | { |
@@ -1283,7 +1283,7 @@ discard block |
||
1283 | 1283 | 'type' => 'unparsed_equals_content', |
1284 | 1284 | 'content' => '<div class="codeheader"><span class="code floatleft">' . $txt['code'] . '</span> ($2) <a class="codeoperation smf_select_text">' . $txt['code_select'] . '</a></div><code class="bbc_code">$1</code>', |
1285 | 1285 | // @todo Maybe this can be simplified? |
1286 | - 'validate' => isset($disabled['code']) ? null : function (&$tag, &$data, $disabled) use ($context) |
|
1286 | + 'validate' => isset($disabled['code']) ? null : function(&$tag, &$data, $disabled) use ($context) |
|
1287 | 1287 | { |
1288 | 1288 | if (!isset($disabled['code'])) |
1289 | 1289 | { |
@@ -1327,7 +1327,7 @@ discard block |
||
1327 | 1327 | 'type' => 'unparsed_content', |
1328 | 1328 | 'content' => '<a href="mailto:$1" class="bbc_email">$1</a>', |
1329 | 1329 | // @todo Should this respect guest_hideContacts? |
1330 | - 'validate' => function (&$tag, &$data, $disabled) |
|
1330 | + 'validate' => function(&$tag, &$data, $disabled) |
|
1331 | 1331 | { |
1332 | 1332 | $data = strtr($data, array('<br>' => '')); |
1333 | 1333 | }, |
@@ -1346,7 +1346,7 @@ discard block |
||
1346 | 1346 | 'type' => 'unparsed_commas_content', |
1347 | 1347 | 'test' => '\d+,\d+\]', |
1348 | 1348 | 'content' => '<embed type="application/x-shockwave-flash" src="$1" width="$2" height="$3" play="true" loop="true" quality="high" AllowScriptAccess="never">', |
1349 | - 'validate' => function (&$tag, &$data, $disabled) |
|
1349 | + 'validate' => function(&$tag, &$data, $disabled) |
|
1350 | 1350 | { |
1351 | 1351 | if (isset($disabled['url'])) |
1352 | 1352 | $tag['content'] = '$1'; |
@@ -1362,7 +1362,7 @@ discard block |
||
1362 | 1362 | 'test' => '(left|right)(\s+max=\d+(?:%|px|em|rem|ex|pt|pc|ch|vw|vh|vmin|vmax|cm|mm|in)?)?\]', |
1363 | 1363 | 'before' => '<div $1>', |
1364 | 1364 | 'after' => '</div>', |
1365 | - 'validate' => function (&$tag, &$data, $disabled) |
|
1365 | + 'validate' => function(&$tag, &$data, $disabled) |
|
1366 | 1366 | { |
1367 | 1367 | $class = 'class="bbc_float float' . (strpos($data, 'left') === 0 ? 'left' : 'right') . '"'; |
1368 | 1368 | |
@@ -1411,7 +1411,7 @@ discard block |
||
1411 | 1411 | 'height' => array('optional' => true, 'value' => ' height="$1"', 'match' => '(\d+)'), |
1412 | 1412 | ), |
1413 | 1413 | 'content' => '<img src="$1" alt="{alt}" title="{title}"{width}{height} class="bbc_img resized">', |
1414 | - 'validate' => function (&$tag, &$data, $disabled) |
|
1414 | + 'validate' => function(&$tag, &$data, $disabled) |
|
1415 | 1415 | { |
1416 | 1416 | global $image_proxy_enabled, $image_proxy_secret, $boardurl; |
1417 | 1417 | |
@@ -1434,7 +1434,7 @@ discard block |
||
1434 | 1434 | 'tag' => 'img', |
1435 | 1435 | 'type' => 'unparsed_content', |
1436 | 1436 | 'content' => '<img src="$1" alt="" class="bbc_img">', |
1437 | - 'validate' => function (&$tag, &$data, $disabled) |
|
1437 | + 'validate' => function(&$tag, &$data, $disabled) |
|
1438 | 1438 | { |
1439 | 1439 | global $image_proxy_enabled, $image_proxy_secret, $boardurl; |
1440 | 1440 | |
@@ -1457,7 +1457,7 @@ discard block |
||
1457 | 1457 | 'tag' => 'iurl', |
1458 | 1458 | 'type' => 'unparsed_content', |
1459 | 1459 | 'content' => '<a href="$1" class="bbc_link">$1</a>', |
1460 | - 'validate' => function (&$tag, &$data, $disabled) |
|
1460 | + 'validate' => function(&$tag, &$data, $disabled) |
|
1461 | 1461 | { |
1462 | 1462 | $data = strtr($data, array('<br>' => '')); |
1463 | 1463 | $scheme = parse_url($data, PHP_URL_SCHEME); |
@@ -1471,7 +1471,7 @@ discard block |
||
1471 | 1471 | 'quoted' => 'optional', |
1472 | 1472 | 'before' => '<a href="$1" class="bbc_link">', |
1473 | 1473 | 'after' => '</a>', |
1474 | - 'validate' => function (&$tag, &$data, $disabled) |
|
1474 | + 'validate' => function(&$tag, &$data, $disabled) |
|
1475 | 1475 | { |
1476 | 1476 | if (substr($data, 0, 1) == '#') |
1477 | 1477 | $data = '#post_' . substr($data, 1); |
@@ -1551,7 +1551,7 @@ discard block |
||
1551 | 1551 | 'tag' => 'php', |
1552 | 1552 | 'type' => 'unparsed_content', |
1553 | 1553 | 'content' => '<span class="phpcode">$1</span>', |
1554 | - 'validate' => isset($disabled['php']) ? null : function (&$tag, &$data, $disabled) |
|
1554 | + 'validate' => isset($disabled['php']) ? null : function(&$tag, &$data, $disabled) |
|
1555 | 1555 | { |
1556 | 1556 | if (!isset($disabled['php'])) |
1557 | 1557 | { |
@@ -1649,7 +1649,7 @@ discard block |
||
1649 | 1649 | 'test' => '[1-7]\]', |
1650 | 1650 | 'before' => '<span style="font-size: $1;" class="bbc_size">', |
1651 | 1651 | 'after' => '</span>', |
1652 | - 'validate' => function (&$tag, &$data, $disabled) |
|
1652 | + 'validate' => function(&$tag, &$data, $disabled) |
|
1653 | 1653 | { |
1654 | 1654 | $sizes = array(1 => 0.7, 2 => 1.0, 3 => 1.35, 4 => 1.45, 5 => 2.0, 6 => 2.65, 7 => 3.95); |
1655 | 1655 | $data = $sizes[$data] . 'em'; |
@@ -1687,7 +1687,7 @@ discard block |
||
1687 | 1687 | 'tag' => 'time', |
1688 | 1688 | 'type' => 'unparsed_content', |
1689 | 1689 | 'content' => '$1', |
1690 | - 'validate' => function (&$tag, &$data, $disabled) |
|
1690 | + 'validate' => function(&$tag, &$data, $disabled) |
|
1691 | 1691 | { |
1692 | 1692 | if (is_numeric($data)) |
1693 | 1693 | $data = timeformat($data); |
@@ -1715,7 +1715,7 @@ discard block |
||
1715 | 1715 | 'tag' => 'url', |
1716 | 1716 | 'type' => 'unparsed_content', |
1717 | 1717 | 'content' => '<a href="$1" class="bbc_link" target="_blank">$1</a>', |
1718 | - 'validate' => function (&$tag, &$data, $disabled) |
|
1718 | + 'validate' => function(&$tag, &$data, $disabled) |
|
1719 | 1719 | { |
1720 | 1720 | $data = strtr($data, array('<br>' => '')); |
1721 | 1721 | $scheme = parse_url($data, PHP_URL_SCHEME); |
@@ -1729,7 +1729,7 @@ discard block |
||
1729 | 1729 | 'quoted' => 'optional', |
1730 | 1730 | 'before' => '<a href="$1" class="bbc_link" target="_blank">', |
1731 | 1731 | 'after' => '</a>', |
1732 | - 'validate' => function (&$tag, &$data, $disabled) |
|
1732 | + 'validate' => function(&$tag, &$data, $disabled) |
|
1733 | 1733 | { |
1734 | 1734 | $scheme = parse_url($data, PHP_URL_SCHEME); |
1735 | 1735 | if (empty($scheme)) |
@@ -1755,7 +1755,7 @@ discard block |
||
1755 | 1755 | { |
1756 | 1756 | if (isset($temp_bbc)) |
1757 | 1757 | $bbc_codes = $temp_bbc; |
1758 | - usort($codes, function ($a, $b) { |
|
1758 | + usort($codes, function($a, $b) { |
|
1759 | 1759 | return strcmp($a['tag'], $b['tag']); |
1760 | 1760 | }); |
1761 | 1761 | return $codes; |
@@ -1992,7 +1992,7 @@ discard block |
||
1992 | 1992 | # a run of Unicode domain name characters and a dot |
1993 | 1993 | [\p{L}\p{M}\p{N}\-.:@]+\. |
1994 | 1994 | # and then a TLD valid in the DNS or the reserved "local" TLD |
1995 | - (?:'. $modSettings['tld_regex'] .'|local) |
|
1995 | + (?:'. $modSettings['tld_regex'] . '|local) |
|
1996 | 1996 | ) |
1997 | 1997 | # followed by a non-domain character or end of line |
1998 | 1998 | (?=[^\p{L}\p{N}\-.]|$) |
@@ -2060,7 +2060,7 @@ discard block |
||
2060 | 2060 | )? |
2061 | 2061 | '; |
2062 | 2062 | |
2063 | - $data = preg_replace_callback('~' . $url_regex . '~xi' . ($context['utf8'] ? 'u' : ''), function ($matches) { |
|
2063 | + $data = preg_replace_callback('~' . $url_regex . '~xi' . ($context['utf8'] ? 'u' : ''), function($matches) { |
|
2064 | 2064 | $url = array_shift($matches); |
2065 | 2065 | |
2066 | 2066 | $scheme = parse_url($url, PHP_URL_SCHEME); |
@@ -2800,7 +2800,7 @@ discard block |
||
2800 | 2800 | for ($i = 0, $n = count($smileysfrom); $i < $n; $i++) |
2801 | 2801 | { |
2802 | 2802 | $specialChars = $smcFunc['htmlspecialchars']($smileysfrom[$i], ENT_QUOTES); |
2803 | - $smileyCode = '<img src="' . $smileys_path . $smileysto[$i] . '" alt="' . strtr($specialChars, array(':' => ':', '(' => '(', ')' => ')', '$' => '$', '[' => '[')). '" title="' . strtr($smcFunc['htmlspecialchars']($smileysdescs[$i]), array(':' => ':', '(' => '(', ')' => ')', '$' => '$', '[' => '[')) . '" class="smiley">'; |
|
2803 | + $smileyCode = '<img src="' . $smileys_path . $smileysto[$i] . '" alt="' . strtr($specialChars, array(':' => ':', '(' => '(', ')' => ')', '$' => '$', '[' => '[')) . '" title="' . strtr($smcFunc['htmlspecialchars']($smileysdescs[$i]), array(':' => ':', '(' => '(', ')' => ')', '$' => '$', '[' => '[')) . '" class="smiley">'; |
|
2804 | 2804 | |
2805 | 2805 | $smileyPregReplacements[$smileysfrom[$i]] = $smileyCode; |
2806 | 2806 | |
@@ -2817,7 +2817,7 @@ discard block |
||
2817 | 2817 | |
2818 | 2818 | // Replace away! |
2819 | 2819 | $message = preg_replace_callback($smileyPregSearch, |
2820 | - function ($matches) use ($smileyPregReplacements) |
|
2820 | + function($matches) use ($smileyPregReplacements) |
|
2821 | 2821 | { |
2822 | 2822 | return $smileyPregReplacements[$matches[1]]; |
2823 | 2823 | }, $message); |
@@ -2883,13 +2883,13 @@ discard block |
||
2883 | 2883 | { |
2884 | 2884 | if (defined('SID') && SID != '') |
2885 | 2885 | $setLocation = preg_replace_callback('~^' . preg_quote($scripturl, '/') . '\?(?:' . SID . '(?:;|&|&))((?:board|topic)=[^#]+?)(#[^"]*?)?$~', |
2886 | - function ($m) use ($scripturl) |
|
2886 | + function($m) use ($scripturl) |
|
2887 | 2887 | { |
2888 | - return $scripturl . '/' . strtr("$m[1]", '&;=', '//,') . '.html?' . SID. (isset($m[2]) ? "$m[2]" : ""); |
|
2888 | + return $scripturl . '/' . strtr("$m[1]", '&;=', '//,') . '.html?' . SID . (isset($m[2]) ? "$m[2]" : ""); |
|
2889 | 2889 | }, $setLocation); |
2890 | 2890 | else |
2891 | 2891 | $setLocation = preg_replace_callback('~^' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?$~', |
2892 | - function ($m) use ($scripturl) |
|
2892 | + function($m) use ($scripturl) |
|
2893 | 2893 | { |
2894 | 2894 | return $scripturl . '/' . strtr("$m[1]", '&;=', '//,') . '.html' . (isset($m[2]) ? "$m[2]" : ""); |
2895 | 2895 | }, $setLocation); |
@@ -3212,7 +3212,7 @@ discard block |
||
3212 | 3212 | |
3213 | 3213 | // Add a generic "Are you sure?" confirmation message. |
3214 | 3214 | addInlineJavaScript(' |
3215 | - var smf_you_sure =' . JavaScriptEscape($txt['quickmod_confirm']) .';'); |
|
3215 | + var smf_you_sure =' . JavaScriptEscape($txt['quickmod_confirm']) . ';'); |
|
3216 | 3216 | |
3217 | 3217 | // Now add the capping code for avatars. |
3218 | 3218 | if (!empty($modSettings['avatar_max_width_external']) && !empty($modSettings['avatar_max_height_external']) && !empty($modSettings['avatar_action_too_large']) && $modSettings['avatar_action_too_large'] == 'option_css_resize') |
@@ -3573,7 +3573,7 @@ discard block |
||
3573 | 3573 | |
3574 | 3574 | else |
3575 | 3575 | echo ' |
3576 | - <script src="', $settings['theme_url'] ,'/scripts/minified', ($do_deferred ? '_deferred' : '') ,'.js', $minSeed ,'"></script>'; |
|
3576 | + <script src="', $settings['theme_url'], '/scripts/minified', ($do_deferred ? '_deferred' : ''), '.js', $minSeed, '"></script>'; |
|
3577 | 3577 | } |
3578 | 3578 | |
3579 | 3579 | // Inline JavaScript - Actually useful some times! |
@@ -3651,14 +3651,14 @@ discard block |
||
3651 | 3651 | |
3652 | 3652 | else |
3653 | 3653 | echo ' |
3654 | - <link rel="stylesheet" href="', $settings['theme_url'] ,'/css/minified.css', $minSeed ,'">'; |
|
3654 | + <link rel="stylesheet" href="', $settings['theme_url'], '/css/minified.css', $minSeed, '">'; |
|
3655 | 3655 | } |
3656 | 3656 | |
3657 | 3657 | // Print the rest after the minified files. |
3658 | 3658 | if (!empty($normal)) |
3659 | 3659 | foreach ($normal as $nf) |
3660 | 3660 | echo ' |
3661 | - <link rel="stylesheet" href="', $nf ,'">'; |
|
3661 | + <link rel="stylesheet" href="', $nf, '">'; |
|
3662 | 3662 | |
3663 | 3663 | if ($db_show_debug === true) |
3664 | 3664 | { |
@@ -3674,7 +3674,7 @@ discard block |
||
3674 | 3674 | <style>'; |
3675 | 3675 | |
3676 | 3676 | foreach ($context['css_header'] as $css) |
3677 | - echo $css .' |
|
3677 | + echo $css . ' |
|
3678 | 3678 | '; |
3679 | 3679 | |
3680 | 3680 | echo' |
@@ -3703,27 +3703,27 @@ discard block |
||
3703 | 3703 | return false; |
3704 | 3704 | |
3705 | 3705 | // Did we already did this? |
3706 | - $toCache = cache_get_data('minimized_'. $settings['theme_id'] .'_'. $type, 86400); |
|
3706 | + $toCache = cache_get_data('minimized_' . $settings['theme_id'] . '_' . $type, 86400); |
|
3707 | 3707 | |
3708 | 3708 | // Already done? |
3709 | 3709 | if (!empty($toCache)) |
3710 | 3710 | return true; |
3711 | 3711 | |
3712 | 3712 | // No namespaces, sorry! |
3713 | - $classType = 'MatthiasMullie\\Minify\\'. strtoupper($type); |
|
3713 | + $classType = 'MatthiasMullie\\Minify\\' . strtoupper($type); |
|
3714 | 3714 | |
3715 | 3715 | // Temp path. |
3716 | - $cTempPath = $settings['theme_dir'] .'/'. ($type == 'css' ? 'css' : 'scripts') .'/'; |
|
3716 | + $cTempPath = $settings['theme_dir'] . '/' . ($type == 'css' ? 'css' : 'scripts') . '/'; |
|
3717 | 3717 | |
3718 | 3718 | // What kind of file are we going to create? |
3719 | - $toCreate = $cTempPath .'minified'. ($do_deferred ? '_deferred' : '') .'.'. $type; |
|
3719 | + $toCreate = $cTempPath . 'minified' . ($do_deferred ? '_deferred' : '') . '.' . $type; |
|
3720 | 3720 | |
3721 | 3721 | // File has to exists, if it isn't try to create it. |
3722 | 3722 | if ((!file_exists($toCreate) && @fopen($toCreate, 'w') === false) || !smf_chmod($toCreate)) |
3723 | 3723 | { |
3724 | 3724 | loadLanguage('Errors'); |
3725 | 3725 | log_error(sprintf($txt['file_not_created'], $toCreate), 'general'); |
3726 | - cache_put_data('minimized_'. $settings['theme_id'] .'_'. $type, null); |
|
3726 | + cache_put_data('minimized_' . $settings['theme_id'] . '_' . $type, null); |
|
3727 | 3727 | |
3728 | 3728 | // The process failed so roll back to print each individual file. |
3729 | 3729 | return $data; |
@@ -3758,14 +3758,14 @@ discard block |
||
3758 | 3758 | { |
3759 | 3759 | loadLanguage('Errors'); |
3760 | 3760 | log_error(sprintf($txt['file_not_created'], $toCreate), 'general'); |
3761 | - cache_put_data('minimized_'. $settings['theme_id'] .'_'. $type, null); |
|
3761 | + cache_put_data('minimized_' . $settings['theme_id'] . '_' . $type, null); |
|
3762 | 3762 | |
3763 | 3763 | // The process failed so roll back to print each individual file. |
3764 | 3764 | return $data; |
3765 | 3765 | } |
3766 | 3766 | |
3767 | 3767 | // And create a long lived cache entry. |
3768 | - cache_put_data('minimized_'. $settings['theme_id'] .'_'. $type, $toCreate, 86400); |
|
3768 | + cache_put_data('minimized_' . $settings['theme_id'] . '_' . $type, $toCreate, 86400); |
|
3769 | 3769 | |
3770 | 3770 | return true; |
3771 | 3771 | } |
@@ -3825,7 +3825,7 @@ discard block |
||
3825 | 3825 | else |
3826 | 3826 | $path = $modSettings['attachmentUploadDir']; |
3827 | 3827 | |
3828 | - return $path . '/' . $attachment_id . '_' . $file_hash .'.dat'; |
|
3828 | + return $path . '/' . $attachment_id . '_' . $file_hash . '.dat'; |
|
3829 | 3829 | } |
3830 | 3830 | |
3831 | 3831 | /** |
@@ -3869,10 +3869,10 @@ discard block |
||
3869 | 3869 | $valid_low = isValidIP($ip_parts[0]); |
3870 | 3870 | $valid_high = isValidIP($ip_parts[1]); |
3871 | 3871 | $count = 0; |
3872 | - $mode = (preg_match('/:/',$ip_parts[0]) > 0 ? ':' : '.'); |
|
3872 | + $mode = (preg_match('/:/', $ip_parts[0]) > 0 ? ':' : '.'); |
|
3873 | 3873 | $max = ($mode == ':' ? 'ffff' : '255'); |
3874 | 3874 | $min = 0; |
3875 | - if(!$valid_low) |
|
3875 | + if (!$valid_low) |
|
3876 | 3876 | { |
3877 | 3877 | $ip_parts[0] = preg_replace('/\*/', '0', $ip_parts[0]); |
3878 | 3878 | $valid_low = isValidIP($ip_parts[0]); |
@@ -3886,7 +3886,7 @@ discard block |
||
3886 | 3886 | } |
3887 | 3887 | |
3888 | 3888 | $count = 0; |
3889 | - if(!$valid_high) |
|
3889 | + if (!$valid_high) |
|
3890 | 3890 | { |
3891 | 3891 | $ip_parts[1] = preg_replace('/\*/', $max, $ip_parts[1]); |
3892 | 3892 | $valid_high = isValidIP($ip_parts[1]); |
@@ -3899,7 +3899,7 @@ discard block |
||
3899 | 3899 | } |
3900 | 3900 | } |
3901 | 3901 | |
3902 | - if($valid_high && $valid_low) |
|
3902 | + if ($valid_high && $valid_low) |
|
3903 | 3903 | { |
3904 | 3904 | $ip_array['low'] = $ip_parts[0]; |
3905 | 3905 | $ip_array['high'] = $ip_parts[1]; |
@@ -4081,7 +4081,7 @@ discard block |
||
4081 | 4081 | addInlineJavaScript(' |
4082 | 4082 | var user_menus = new smc_PopupMenu(); |
4083 | 4083 | user_menus.add("profile", "' . $scripturl . '?action=profile;area=popup"); |
4084 | - user_menus.add("alerts", "' . $scripturl . '?action=profile;area=alerts_popup;u='. $context['user']['id'] .'");', true); |
|
4084 | + user_menus.add("alerts", "' . $scripturl . '?action=profile;area=alerts_popup;u=' . $context['user']['id'] . '");', true); |
|
4085 | 4085 | if ($context['allow_pm']) |
4086 | 4086 | addInlineJavaScript(' |
4087 | 4087 | user_menus.add("pm", "' . $scripturl . '?action=pm;sa=popup");', true); |
@@ -4701,7 +4701,7 @@ discard block |
||
4701 | 4701 | // No? try a fallback to $sourcedir |
4702 | 4702 | else |
4703 | 4703 | { |
4704 | - $absPath = $sourcedir .'/'. $file; |
|
4704 | + $absPath = $sourcedir . '/' . $file; |
|
4705 | 4705 | |
4706 | 4706 | if (file_exists($absPath)) |
4707 | 4707 | require_once($absPath); |
@@ -4782,15 +4782,15 @@ discard block |
||
4782 | 4782 | |
4783 | 4783 | // UTF-8 occurences of MS special characters |
4784 | 4784 | $findchars_utf8 = array( |
4785 | - "\xe2\x80\x9a", // single low-9 quotation mark |
|
4786 | - "\xe2\x80\x9e", // double low-9 quotation mark |
|
4787 | - "\xe2\x80\xa6", // horizontal ellipsis |
|
4788 | - "\xe2\x80\x98", // left single curly quote |
|
4789 | - "\xe2\x80\x99", // right single curly quote |
|
4790 | - "\xe2\x80\x9c", // left double curly quote |
|
4791 | - "\xe2\x80\x9d", // right double curly quote |
|
4792 | - "\xe2\x80\x93", // en dash |
|
4793 | - "\xe2\x80\x94", // em dash |
|
4785 | + "\xe2\x80\x9a", // single low-9 quotation mark |
|
4786 | + "\xe2\x80\x9e", // double low-9 quotation mark |
|
4787 | + "\xe2\x80\xa6", // horizontal ellipsis |
|
4788 | + "\xe2\x80\x98", // left single curly quote |
|
4789 | + "\xe2\x80\x99", // right single curly quote |
|
4790 | + "\xe2\x80\x9c", // left double curly quote |
|
4791 | + "\xe2\x80\x9d", // right double curly quote |
|
4792 | + "\xe2\x80\x93", // en dash |
|
4793 | + "\xe2\x80\x94", // em dash |
|
4794 | 4794 | ); |
4795 | 4795 | |
4796 | 4796 | // windows 1252 / iso equivalents |
@@ -4808,15 +4808,15 @@ discard block |
||
4808 | 4808 | |
4809 | 4809 | // safe replacements |
4810 | 4810 | $replacechars = array( |
4811 | - ',', // ‚ |
|
4812 | - ',,', // „ |
|
4813 | - '...', // … |
|
4814 | - "'", // ‘ |
|
4815 | - "'", // ’ |
|
4816 | - '"', // “ |
|
4817 | - '"', // ” |
|
4818 | - '-', // – |
|
4819 | - '--', // — |
|
4811 | + ',', // ‚ |
|
4812 | + ',,', // „ |
|
4813 | + '...', // … |
|
4814 | + "'", // ‘ |
|
4815 | + "'", // ’ |
|
4816 | + '"', // “ |
|
4817 | + '"', // ” |
|
4818 | + '-', // – |
|
4819 | + '--', // — |
|
4820 | 4820 | ); |
4821 | 4821 | |
4822 | 4822 | if ($context['utf8']) |
@@ -5234,7 +5234,7 @@ discard block |
||
5234 | 5234 | */ |
5235 | 5235 | function inet_dtop($bin) |
5236 | 5236 | { |
5237 | - if(empty($bin)) |
|
5237 | + if (empty($bin)) |
|
5238 | 5238 | return ''; |
5239 | 5239 | |
5240 | 5240 | global $db_type; |
@@ -5265,28 +5265,28 @@ discard block |
||
5265 | 5265 | */ |
5266 | 5266 | function _safe_serialize($value) |
5267 | 5267 | { |
5268 | - if(is_null($value)) |
|
5268 | + if (is_null($value)) |
|
5269 | 5269 | return 'N;'; |
5270 | 5270 | |
5271 | - if(is_bool($value)) |
|
5272 | - return 'b:'. (int) $value .';'; |
|
5271 | + if (is_bool($value)) |
|
5272 | + return 'b:' . (int) $value . ';'; |
|
5273 | 5273 | |
5274 | - if(is_int($value)) |
|
5275 | - return 'i:'. $value .';'; |
|
5274 | + if (is_int($value)) |
|
5275 | + return 'i:' . $value . ';'; |
|
5276 | 5276 | |
5277 | - if(is_float($value)) |
|
5278 | - return 'd:'. str_replace(',', '.', $value) .';'; |
|
5277 | + if (is_float($value)) |
|
5278 | + return 'd:' . str_replace(',', '.', $value) . ';'; |
|
5279 | 5279 | |
5280 | - if(is_string($value)) |
|
5281 | - return 's:'. strlen($value) .':"'. $value .'";'; |
|
5280 | + if (is_string($value)) |
|
5281 | + return 's:' . strlen($value) . ':"' . $value . '";'; |
|
5282 | 5282 | |
5283 | - if(is_array($value)) |
|
5283 | + if (is_array($value)) |
|
5284 | 5284 | { |
5285 | 5285 | $out = ''; |
5286 | - foreach($value as $k => $v) |
|
5286 | + foreach ($value as $k => $v) |
|
5287 | 5287 | $out .= _safe_serialize($k) . _safe_serialize($v); |
5288 | 5288 | |
5289 | - return 'a:'. count($value) .':{'. $out .'}'; |
|
5289 | + return 'a:' . count($value) . ':{' . $out . '}'; |
|
5290 | 5290 | } |
5291 | 5291 | |
5292 | 5292 | // safe_serialize cannot serialize resources or objects. |
@@ -5328,7 +5328,7 @@ discard block |
||
5328 | 5328 | function _safe_unserialize($str) |
5329 | 5329 | { |
5330 | 5330 | // Input is not a string. |
5331 | - if(empty($str) || !is_string($str)) |
|
5331 | + if (empty($str) || !is_string($str)) |
|
5332 | 5332 | return false; |
5333 | 5333 | |
5334 | 5334 | $stack = array(); |
@@ -5342,40 +5342,40 @@ discard block |
||
5342 | 5342 | * 3 - in array, expecting value or another array |
5343 | 5343 | */ |
5344 | 5344 | $state = 0; |
5345 | - while($state != 1) |
|
5345 | + while ($state != 1) |
|
5346 | 5346 | { |
5347 | 5347 | $type = isset($str[0]) ? $str[0] : ''; |
5348 | - if($type == '}') |
|
5348 | + if ($type == '}') |
|
5349 | 5349 | $str = substr($str, 1); |
5350 | 5350 | |
5351 | - else if($type == 'N' && $str[1] == ';') |
|
5351 | + else if ($type == 'N' && $str[1] == ';') |
|
5352 | 5352 | { |
5353 | 5353 | $value = null; |
5354 | 5354 | $str = substr($str, 2); |
5355 | 5355 | } |
5356 | - else if($type == 'b' && preg_match('/^b:([01]);/', $str, $matches)) |
|
5356 | + else if ($type == 'b' && preg_match('/^b:([01]);/', $str, $matches)) |
|
5357 | 5357 | { |
5358 | 5358 | $value = $matches[1] == '1' ? true : false; |
5359 | 5359 | $str = substr($str, 4); |
5360 | 5360 | } |
5361 | - else if($type == 'i' && preg_match('/^i:(-?[0-9]+);(.*)/s', $str, $matches)) |
|
5361 | + else if ($type == 'i' && preg_match('/^i:(-?[0-9]+);(.*)/s', $str, $matches)) |
|
5362 | 5362 | { |
5363 | - $value = (int)$matches[1]; |
|
5363 | + $value = (int) $matches[1]; |
|
5364 | 5364 | $str = $matches[2]; |
5365 | 5365 | } |
5366 | - else if($type == 'd' && preg_match('/^d:(-?[0-9]+\.?[0-9]*(E[+-][0-9]+)?);(.*)/s', $str, $matches)) |
|
5366 | + else if ($type == 'd' && preg_match('/^d:(-?[0-9]+\.?[0-9]*(E[+-][0-9]+)?);(.*)/s', $str, $matches)) |
|
5367 | 5367 | { |
5368 | - $value = (float)$matches[1]; |
|
5368 | + $value = (float) $matches[1]; |
|
5369 | 5369 | $str = $matches[3]; |
5370 | 5370 | } |
5371 | - else if($type == 's' && preg_match('/^s:([0-9]+):"(.*)/s', $str, $matches) && substr($matches[2], (int)$matches[1], 2) == '";') |
|
5371 | + else if ($type == 's' && preg_match('/^s:([0-9]+):"(.*)/s', $str, $matches) && substr($matches[2], (int) $matches[1], 2) == '";') |
|
5372 | 5372 | { |
5373 | - $value = substr($matches[2], 0, (int)$matches[1]); |
|
5374 | - $str = substr($matches[2], (int)$matches[1] + 2); |
|
5373 | + $value = substr($matches[2], 0, (int) $matches[1]); |
|
5374 | + $str = substr($matches[2], (int) $matches[1] + 2); |
|
5375 | 5375 | } |
5376 | - else if($type == 'a' && preg_match('/^a:([0-9]+):{(.*)/s', $str, $matches)) |
|
5376 | + else if ($type == 'a' && preg_match('/^a:([0-9]+):{(.*)/s', $str, $matches)) |
|
5377 | 5377 | { |
5378 | - $expectedLength = (int)$matches[1]; |
|
5378 | + $expectedLength = (int) $matches[1]; |
|
5379 | 5379 | $str = $matches[2]; |
5380 | 5380 | } |
5381 | 5381 | |
@@ -5383,10 +5383,10 @@ discard block |
||
5383 | 5383 | else |
5384 | 5384 | return false; |
5385 | 5385 | |
5386 | - switch($state) |
|
5386 | + switch ($state) |
|
5387 | 5387 | { |
5388 | 5388 | case 3: // In array, expecting value or another array. |
5389 | - if($type == 'a') |
|
5389 | + if ($type == 'a') |
|
5390 | 5390 | { |
5391 | 5391 | $stack[] = &$list; |
5392 | 5392 | $list[$key] = array(); |
@@ -5395,7 +5395,7 @@ discard block |
||
5395 | 5395 | $state = 2; |
5396 | 5396 | break; |
5397 | 5397 | } |
5398 | - if($type != '}') |
|
5398 | + if ($type != '}') |
|
5399 | 5399 | { |
5400 | 5400 | $list[$key] = $value; |
5401 | 5401 | $state = 2; |
@@ -5406,29 +5406,29 @@ discard block |
||
5406 | 5406 | return false; |
5407 | 5407 | |
5408 | 5408 | case 2: // in array, expecting end of array or a key |
5409 | - if($type == '}') |
|
5409 | + if ($type == '}') |
|
5410 | 5410 | { |
5411 | 5411 | // Array size is less than expected. |
5412 | - if(count($list) < end($expected)) |
|
5412 | + if (count($list) < end($expected)) |
|
5413 | 5413 | return false; |
5414 | 5414 | |
5415 | 5415 | unset($list); |
5416 | - $list = &$stack[count($stack)-1]; |
|
5416 | + $list = &$stack[count($stack) - 1]; |
|
5417 | 5417 | array_pop($stack); |
5418 | 5418 | |
5419 | 5419 | // Go to terminal state if we're at the end of the root array. |
5420 | 5420 | array_pop($expected); |
5421 | 5421 | |
5422 | - if(count($expected) == 0) |
|
5422 | + if (count($expected) == 0) |
|
5423 | 5423 | $state = 1; |
5424 | 5424 | |
5425 | 5425 | break; |
5426 | 5426 | } |
5427 | 5427 | |
5428 | - if($type == 'i' || $type == 's') |
|
5428 | + if ($type == 'i' || $type == 's') |
|
5429 | 5429 | { |
5430 | 5430 | // Array size exceeds expected length. |
5431 | - if(count($list) >= end($expected)) |
|
5431 | + if (count($list) >= end($expected)) |
|
5432 | 5432 | return false; |
5433 | 5433 | |
5434 | 5434 | $key = $value; |
@@ -5441,7 +5441,7 @@ discard block |
||
5441 | 5441 | |
5442 | 5442 | // Expecting array or value. |
5443 | 5443 | case 0: |
5444 | - if($type == 'a') |
|
5444 | + if ($type == 'a') |
|
5445 | 5445 | { |
5446 | 5446 | $data = array(); |
5447 | 5447 | $list = &$data; |
@@ -5450,7 +5450,7 @@ discard block |
||
5450 | 5450 | break; |
5451 | 5451 | } |
5452 | 5452 | |
5453 | - if($type != '}') |
|
5453 | + if ($type != '}') |
|
5454 | 5454 | { |
5455 | 5455 | $data = $value; |
5456 | 5456 | $state = 1; |
@@ -5463,7 +5463,7 @@ discard block |
||
5463 | 5463 | } |
5464 | 5464 | |
5465 | 5465 | // Trailing data in input. |
5466 | - if(!empty($str)) |
|
5466 | + if (!empty($str)) |
|
5467 | 5467 | return false; |
5468 | 5468 | |
5469 | 5469 | return $data; |
@@ -5517,7 +5517,7 @@ discard block |
||
5517 | 5517 | // Set different modes. |
5518 | 5518 | $chmodValues = $isDir ? array(0750, 0755, 0775, 0777) : array(0644, 0664, 0666); |
5519 | 5519 | |
5520 | - foreach($chmodValues as $val) |
|
5520 | + foreach ($chmodValues as $val) |
|
5521 | 5521 | { |
5522 | 5522 | // If it's writable, break out of the loop. |
5523 | 5523 | if (is_writable($file)) |
@@ -5552,13 +5552,13 @@ discard block |
||
5552 | 5552 | $returnArray = @json_decode($json, $returnAsArray); |
5553 | 5553 | |
5554 | 5554 | // PHP 5.3 so no json_last_error_msg() |
5555 | - switch(json_last_error()) |
|
5555 | + switch (json_last_error()) |
|
5556 | 5556 | { |
5557 | 5557 | case JSON_ERROR_NONE: |
5558 | 5558 | $jsonError = false; |
5559 | 5559 | break; |
5560 | 5560 | case JSON_ERROR_DEPTH: |
5561 | - $jsonError = 'JSON_ERROR_DEPTH'; |
|
5561 | + $jsonError = 'JSON_ERROR_DEPTH'; |
|
5562 | 5562 | break; |
5563 | 5563 | case JSON_ERROR_STATE_MISMATCH: |
5564 | 5564 | $jsonError = 'JSON_ERROR_STATE_MISMATCH'; |
@@ -5586,10 +5586,10 @@ discard block |
||
5586 | 5586 | loadLanguage('Errors'); |
5587 | 5587 | |
5588 | 5588 | if (!empty($jsonDebug)) |
5589 | - log_error($txt['json_'. $jsonError], 'critical', $jsonDebug['file'], $jsonDebug['line']); |
|
5589 | + log_error($txt['json_' . $jsonError], 'critical', $jsonDebug['file'], $jsonDebug['line']); |
|
5590 | 5590 | |
5591 | 5591 | else |
5592 | - log_error($txt['json_'. $jsonError], 'critical'); |
|
5592 | + log_error($txt['json_' . $jsonError], 'critical'); |
|
5593 | 5593 | |
5594 | 5594 | // Everyone expects an array. |
5595 | 5595 | return array(); |
@@ -5701,7 +5701,7 @@ discard block |
||
5701 | 5701 | }); |
5702 | 5702 | |
5703 | 5703 | // Convert Punycode to Unicode |
5704 | - $tlds = array_map(function ($input) { |
|
5704 | + $tlds = array_map(function($input) { |
|
5705 | 5705 | $prefix = 'xn--'; |
5706 | 5706 | $safe_char = 0xFFFC; |
5707 | 5707 | $base = 36; |
@@ -5717,7 +5717,7 @@ discard block |
||
5717 | 5717 | |
5718 | 5718 | foreach ($enco_parts as $encoded) |
5719 | 5719 | { |
5720 | - if (strpos($encoded,$prefix) !== 0 || strlen(trim(str_replace($prefix,'',$encoded))) == 0) |
|
5720 | + if (strpos($encoded, $prefix) !== 0 || strlen(trim(str_replace($prefix, '', $encoded))) == 0) |
|
5721 | 5721 | { |
5722 | 5722 | $output_parts[] = $encoded; |
5723 | 5723 | continue; |
@@ -5728,7 +5728,7 @@ discard block |
||
5728 | 5728 | $idx = 0; |
5729 | 5729 | $char = 0x80; |
5730 | 5730 | $decoded = array(); |
5731 | - $output=''; |
|
5731 | + $output = ''; |
|
5732 | 5732 | $delim_pos = strrpos($encoded, '-'); |
5733 | 5733 | |
5734 | 5734 | if ($delim_pos > strlen($prefix)) |
@@ -5744,7 +5744,7 @@ discard block |
||
5744 | 5744 | |
5745 | 5745 | for ($enco_idx = $delim_pos ? ($delim_pos + 1) : 0; $enco_idx < $enco_len; ++$deco_len) |
5746 | 5746 | { |
5747 | - for ($old_idx = $idx, $w = 1, $k = $base; 1 ; $k += $base) |
|
5747 | + for ($old_idx = $idx, $w = 1, $k = $base; 1; $k += $base) |
|
5748 | 5748 | { |
5749 | 5749 | $cp = ord($encoded{$enco_idx++}); |
5750 | 5750 | $digit = ($cp - 48 < 10) ? $cp - 22 : (($cp - 65 < 26) ? $cp - 65 : (($cp - 97 < 26) ? $cp - 97 : $base)); |
@@ -5785,15 +5785,15 @@ discard block |
||
5785 | 5785 | |
5786 | 5786 | // 2 bytes |
5787 | 5787 | elseif ($v < (1 << 11)) |
5788 | - $output .= chr(192+($v >> 6)) . chr(128+($v & 63)); |
|
5788 | + $output .= chr(192 + ($v >> 6)) . chr(128 + ($v & 63)); |
|
5789 | 5789 | |
5790 | 5790 | // 3 bytes |
5791 | 5791 | elseif ($v < (1 << 16)) |
5792 | - $output .= chr(224+($v >> 12)) . chr(128+(($v >> 6) & 63)) . chr(128+($v & 63)); |
|
5792 | + $output .= chr(224 + ($v >> 12)) . chr(128 + (($v >> 6) & 63)) . chr(128 + ($v & 63)); |
|
5793 | 5793 | |
5794 | 5794 | // 4 bytes |
5795 | 5795 | elseif ($v < (1 << 21)) |
5796 | - $output .= chr(240+($v >> 18)) . chr(128+(($v >> 12) & 63)) . chr(128+(($v >> 6) & 63)) . chr(128+($v & 63)); |
|
5796 | + $output .= chr(240 + ($v >> 18)) . chr(128 + (($v >> 12) & 63)) . chr(128 + (($v >> 6) & 63)) . chr(128 + ($v & 63)); |
|
5797 | 5797 | |
5798 | 5798 | // 'Conversion from UCS-4 to UTF-8 failed: malformed input at byte '.$k |
5799 | 5799 | else |
@@ -5898,7 +5898,7 @@ discard block |
||
5898 | 5898 | } |
5899 | 5899 | |
5900 | 5900 | // This recursive function creates the index array from the strings |
5901 | - $add_string_to_index = function ($string, $index) use (&$strlen, &$substr, &$add_string_to_index) |
|
5901 | + $add_string_to_index = function($string, $index) use (&$strlen, &$substr, &$add_string_to_index) |
|
5902 | 5902 | { |
5903 | 5903 | static $depth = 0; |
5904 | 5904 | $depth++; |
@@ -5925,7 +5925,7 @@ discard block |
||
5925 | 5925 | }; |
5926 | 5926 | |
5927 | 5927 | // This recursive function turns the index array into a regular expression |
5928 | - $index_to_regex = function (&$index, $delim) use (&$strlen, &$index_to_regex) |
|
5928 | + $index_to_regex = function(&$index, $delim) use (&$strlen, &$index_to_regex) |
|
5929 | 5929 | { |
5930 | 5930 | static $depth = 0; |
5931 | 5931 | $depth++; |
@@ -5949,11 +5949,11 @@ discard block |
||
5949 | 5949 | |
5950 | 5950 | if (count(array_keys($value)) == 1) |
5951 | 5951 | { |
5952 | - $new_key_array = explode('(?'.'>', $sub_regex); |
|
5952 | + $new_key_array = explode('(?' . '>', $sub_regex); |
|
5953 | 5953 | $new_key .= $new_key_array[0]; |
5954 | 5954 | } |
5955 | 5955 | else |
5956 | - $sub_regex = '(?'.'>' . $sub_regex . ')'; |
|
5956 | + $sub_regex = '(?' . '>' . $sub_regex . ')'; |
|
5957 | 5957 | } |
5958 | 5958 | |
5959 | 5959 | if ($depth > 1) |
@@ -5996,10 +5996,10 @@ discard block |
||
5996 | 5996 | { |
5997 | 5997 | $regex = array(); |
5998 | 5998 | while (!empty($index)) |
5999 | - $regex[] = '(?'.'>' . $index_to_regex($index, $delim) . ')'; |
|
5999 | + $regex[] = '(?' . '>' . $index_to_regex($index, $delim) . ')'; |
|
6000 | 6000 | } |
6001 | 6001 | else |
6002 | - $regex = '(?'.'>' . $index_to_regex($index, $delim) . ')'; |
|
6002 | + $regex = '(?' . '>' . $index_to_regex($index, $delim) . ')'; |
|
6003 | 6003 | |
6004 | 6004 | // Restore PHP's internal character encoding to whatever it was originally |
6005 | 6005 | if (!empty($current_encoding)) |
@@ -6021,7 +6021,7 @@ discard block |
||
6021 | 6021 | |
6022 | 6022 | $result = false; |
6023 | 6023 | $params = array('ssl' => array('capture_peer_cert' => true, 'verify_peer' => true, 'allow_self_signed' => true)); |
6024 | - $stream = stream_context_create ($params); |
|
6024 | + $stream = stream_context_create($params); |
|
6025 | 6025 | |
6026 | 6026 | $read = @fopen($url, 'rb', false, $stream); |
6027 | 6027 | if ($read !== false) { |
@@ -23,7 +23,7 @@ discard block |
||
23 | 23 | * |
24 | 24 | * @return array The truncated array |
25 | 25 | */ |
26 | -function truncateArray($arr, $max_length=1900) |
|
26 | +function truncateArray($arr, $max_length = 1900) |
|
27 | 27 | { |
28 | 28 | $curr_length = array_sum(array_map("strlen", $arr)); |
29 | 29 | if ($curr_length <= $max_length) |
@@ -31,7 +31,7 @@ discard block |
||
31 | 31 | else |
32 | 32 | { |
33 | 33 | // Truncate each element's value to a reasonable length |
34 | - $param_max = floor($max_length/count($arr)); |
|
34 | + $param_max = floor($max_length / count($arr)); |
|
35 | 35 | foreach ($arr as $key => &$value) |
36 | 36 | $value = substr($value, 0, $param_max - strlen($key) - 5); |
37 | 37 | return $arr; |
@@ -197,7 +197,7 @@ discard block |
||
197 | 197 | if (filemtime($boarddir . '/db_last_error.php') === $last_db_error_change) |
198 | 198 | { |
199 | 199 | // Write the change |
200 | - $write_db_change = '<' . '?' . "php\n" . '$db_last_error = ' . time() . ';' . "\n" . '?' . '>'; |
|
200 | + $write_db_change = '<' . '?' . "php\n" . '$db_last_error = ' . time() . ';' . "\n" . '?' . '>'; |
|
201 | 201 | $written_bytes = file_put_contents($boarddir . '/db_last_error.php', $write_db_change, LOCK_EX); |
202 | 202 | |
203 | 203 | // survey says ... |
@@ -270,7 +270,7 @@ discard block |
||
270 | 270 | ', $txt['debug_language_files'], count($context['debug']['language_files']), ': <em>', implode('</em>, <em>', $context['debug']['language_files']), '</em>.<br> |
271 | 271 | ', $txt['debug_stylesheets'], count($context['debug']['sheets']), ': <em>', implode('</em>, <em>', $context['debug']['sheets']), '</em>.<br> |
272 | 272 | ', $txt['debug_hooks'], empty($context['debug']['hooks']) ? 0 : count($context['debug']['hooks']) . ' (<a href="javascript:void(0);" onclick="document.getElementById(\'debug_hooks\').style.display = \'inline\'; this.style.display = \'none\'; return false;">', $txt['debug_show'], '</a><span id="debug_hooks" style="display: none;"><em>' . implode('</em>, <em>', $context['debug']['hooks']), '</em></span>)', '<br> |
273 | - ',(isset($context['debug']['instances']) ? ($txt['debug_instances'] . (empty($context['debug']['instances']) ? 0 : count($context['debug']['instances'])) . ' (<a href="javascript:void(0);" onclick="document.getElementById(\'debug_instances\').style.display = \'inline\'; this.style.display = \'none\'; return false;">'. $txt['debug_show'] .'</a><span id="debug_instances" style="display: none;"><em>'. implode('</em>, <em>', array_keys($context['debug']['instances'])) .'</em></span>)'. '<br>') : ''),' |
|
273 | + ',(isset($context['debug']['instances']) ? ($txt['debug_instances'] . (empty($context['debug']['instances']) ? 0 : count($context['debug']['instances'])) . ' (<a href="javascript:void(0);" onclick="document.getElementById(\'debug_instances\').style.display = \'inline\'; this.style.display = \'none\'; return false;">' . $txt['debug_show'] . '</a><span id="debug_instances" style="display: none;"><em>' . implode('</em>, <em>', array_keys($context['debug']['instances'])) . '</em></span>)' . '<br>') : ''), ' |
|
274 | 274 | ', $txt['debug_files_included'], count($files), ' - ', round($total_size / 1024), $txt['debug_kb'], ' (<a href="javascript:void(0);" onclick="document.getElementById(\'debug_include_info\').style.display = \'inline\'; this.style.display = \'none\'; return false;">', $txt['debug_show'], '</a><span id="debug_include_info" style="display: none;"><em>', implode('</em>, <em>', $files), '</em></span>)<br>'; |
275 | 275 | |
276 | 276 | if (function_exists('memory_get_peak_usage')) |
@@ -13,8 +13,9 @@ discard block |
||
13 | 13 | * @version 2.1 Beta 4 |
14 | 14 | */ |
15 | 15 | |
16 | -if (!defined('SMF')) |
|
16 | +if (!defined('SMF')) { |
|
17 | 17 | die('No direct access...'); |
18 | +} |
|
18 | 19 | |
19 | 20 | /** |
20 | 21 | * Truncate the GET array to a specified length |
@@ -26,14 +27,15 @@ discard block |
||
26 | 27 | function truncateArray($arr, $max_length=1900) |
27 | 28 | { |
28 | 29 | $curr_length = array_sum(array_map("strlen", $arr)); |
29 | - if ($curr_length <= $max_length) |
|
30 | - return $arr; |
|
31 | - else |
|
30 | + if ($curr_length <= $max_length) { |
|
31 | + return $arr; |
|
32 | + } else |
|
32 | 33 | { |
33 | 34 | // Truncate each element's value to a reasonable length |
34 | 35 | $param_max = floor($max_length/count($arr)); |
35 | - foreach ($arr as $key => &$value) |
|
36 | - $value = substr($value, 0, $param_max - strlen($key) - 5); |
|
36 | + foreach ($arr as $key => &$value) { |
|
37 | + $value = substr($value, 0, $param_max - strlen($key) - 5); |
|
38 | + } |
|
37 | 39 | return $arr; |
38 | 40 | } |
39 | 41 | } |
@@ -55,8 +57,9 @@ discard block |
||
55 | 57 | // Don't update for every page - this isn't wholly accurate but who cares. |
56 | 58 | if ($topic) |
57 | 59 | { |
58 | - if (isset($_SESSION['last_topic_id']) && $_SESSION['last_topic_id'] == $topic) |
|
59 | - $force = false; |
|
60 | + if (isset($_SESSION['last_topic_id']) && $_SESSION['last_topic_id'] == $topic) { |
|
61 | + $force = false; |
|
62 | + } |
|
60 | 63 | $_SESSION['last_topic_id'] = $topic; |
61 | 64 | } |
62 | 65 | } |
@@ -69,22 +72,24 @@ discard block |
||
69 | 72 | } |
70 | 73 | |
71 | 74 | // Don't mark them as online more than every so often. |
72 | - if (!empty($_SESSION['log_time']) && $_SESSION['log_time'] >= (time() - 8) && !$force) |
|
73 | - return; |
|
75 | + if (!empty($_SESSION['log_time']) && $_SESSION['log_time'] >= (time() - 8) && !$force) { |
|
76 | + return; |
|
77 | + } |
|
74 | 78 | |
75 | 79 | if (!empty($modSettings['who_enabled'])) |
76 | 80 | { |
77 | 81 | $encoded_get = truncateArray($_GET) + array('USER_AGENT' => $_SERVER['HTTP_USER_AGENT']); |
78 | 82 | |
79 | 83 | // In the case of a dlattach action, session_var may not be set. |
80 | - if (!isset($context['session_var'])) |
|
81 | - $context['session_var'] = $_SESSION['session_var']; |
|
84 | + if (!isset($context['session_var'])) { |
|
85 | + $context['session_var'] = $_SESSION['session_var']; |
|
86 | + } |
|
82 | 87 | |
83 | 88 | unset($encoded_get['sesc'], $encoded_get[$context['session_var']]); |
84 | 89 | $encoded_get = $smcFunc['json_encode']($encoded_get); |
90 | + } else { |
|
91 | + $encoded_get = ''; |
|
85 | 92 | } |
86 | - else |
|
87 | - $encoded_get = ''; |
|
88 | 93 | |
89 | 94 | // Guests use 0, members use their session ID. |
90 | 95 | $session_id = $user_info['is_guest'] ? 'ip' . $user_info['ip'] : session_id(); |
@@ -124,17 +129,18 @@ discard block |
||
124 | 129 | ); |
125 | 130 | |
126 | 131 | // Guess it got deleted. |
127 | - if ($smcFunc['db_affected_rows']() == 0) |
|
132 | + if ($smcFunc['db_affected_rows']() == 0) { |
|
133 | + $_SESSION['log_time'] = 0; |
|
134 | + } |
|
135 | + } else { |
|
128 | 136 | $_SESSION['log_time'] = 0; |
129 | 137 | } |
130 | - else |
|
131 | - $_SESSION['log_time'] = 0; |
|
132 | 138 | |
133 | 139 | // Otherwise, we have to delete and insert. |
134 | 140 | if (empty($_SESSION['log_time'])) |
135 | 141 | { |
136 | - if ($do_delete || !empty($user_info['id'])) |
|
137 | - $smcFunc['db_query']('', ' |
|
142 | + if ($do_delete || !empty($user_info['id'])) { |
|
143 | + $smcFunc['db_query']('', ' |
|
138 | 144 | DELETE FROM {db_prefix}log_online |
139 | 145 | WHERE ' . ($do_delete ? 'log_time < {int:log_time}' : '') . ($do_delete && !empty($user_info['id']) ? ' OR ' : '') . (empty($user_info['id']) ? '' : 'id_member = {int:current_member}'), |
140 | 146 | array( |
@@ -142,6 +148,7 @@ discard block |
||
142 | 148 | 'log_time' => time() - $modSettings['lastActive'] * 60, |
143 | 149 | ) |
144 | 150 | ); |
151 | + } |
|
145 | 152 | |
146 | 153 | $smcFunc['db_insert']($do_delete ? 'ignore' : 'replace', |
147 | 154 | '{db_prefix}log_online', |
@@ -155,21 +162,24 @@ discard block |
||
155 | 162 | $_SESSION['log_time'] = time(); |
156 | 163 | |
157 | 164 | // Well, they are online now. |
158 | - if (empty($_SESSION['timeOnlineUpdated'])) |
|
159 | - $_SESSION['timeOnlineUpdated'] = time(); |
|
165 | + if (empty($_SESSION['timeOnlineUpdated'])) { |
|
166 | + $_SESSION['timeOnlineUpdated'] = time(); |
|
167 | + } |
|
160 | 168 | |
161 | 169 | // Set their login time, if not already done within the last minute. |
162 | 170 | if (SMF != 'SSI' && !empty($user_info['last_login']) && $user_info['last_login'] < time() - 60 && (!isset($_REQUEST['action']) || !in_array($_REQUEST['action'], array('.xml', 'login2', 'logintfa')))) |
163 | 171 | { |
164 | 172 | // Don't count longer than 15 minutes. |
165 | - if (time() - $_SESSION['timeOnlineUpdated'] > 60 * 15) |
|
166 | - $_SESSION['timeOnlineUpdated'] = time(); |
|
173 | + if (time() - $_SESSION['timeOnlineUpdated'] > 60 * 15) { |
|
174 | + $_SESSION['timeOnlineUpdated'] = time(); |
|
175 | + } |
|
167 | 176 | |
168 | 177 | $user_settings['total_time_logged_in'] += time() - $_SESSION['timeOnlineUpdated']; |
169 | 178 | updateMemberData($user_info['id'], array('last_login' => time(), 'member_ip' => $user_info['ip'], 'member_ip2' => $_SERVER['BAN_CHECK_IP'], 'total_time_logged_in' => $user_settings['total_time_logged_in'])); |
170 | 179 | |
171 | - if (!empty($modSettings['cache_enable']) && $modSettings['cache_enable'] >= 2) |
|
172 | - cache_put_data('user_settings-' . $user_info['id'], $user_settings, 60); |
|
180 | + if (!empty($modSettings['cache_enable']) && $modSettings['cache_enable'] >= 2) { |
|
181 | + cache_put_data('user_settings-' . $user_info['id'], $user_settings, 60); |
|
182 | + } |
|
173 | 183 | |
174 | 184 | $user_info['total_time_logged_in'] += time() - $_SESSION['timeOnlineUpdated']; |
175 | 185 | $_SESSION['timeOnlineUpdated'] = time(); |
@@ -206,8 +216,7 @@ discard block |
||
206 | 216 | // Oops. maybe we have no more disk space left, or some other troubles, troubles... |
207 | 217 | // Copy the file back and run for your life! |
208 | 218 | @copy($boarddir . '/db_last_error_bak.php', $boarddir . '/db_last_error.php'); |
209 | - } |
|
210 | - else |
|
219 | + } else |
|
211 | 220 | { |
212 | 221 | @touch($boarddir . '/' . 'Settings.php'); |
213 | 222 | return true; |
@@ -227,22 +236,27 @@ discard block |
||
227 | 236 | global $db_cache, $db_count, $cache_misses, $cache_count_misses, $db_show_debug, $cache_count, $cache_hits, $smcFunc, $txt; |
228 | 237 | |
229 | 238 | // Add to Settings.php if you want to show the debugging information. |
230 | - if (!isset($db_show_debug) || $db_show_debug !== true || (isset($_GET['action']) && $_GET['action'] == 'viewquery')) |
|
231 | - return; |
|
239 | + if (!isset($db_show_debug) || $db_show_debug !== true || (isset($_GET['action']) && $_GET['action'] == 'viewquery')) { |
|
240 | + return; |
|
241 | + } |
|
232 | 242 | |
233 | - if (empty($_SESSION['view_queries'])) |
|
234 | - $_SESSION['view_queries'] = 0; |
|
235 | - if (empty($context['debug']['language_files'])) |
|
236 | - $context['debug']['language_files'] = array(); |
|
237 | - if (empty($context['debug']['sheets'])) |
|
238 | - $context['debug']['sheets'] = array(); |
|
243 | + if (empty($_SESSION['view_queries'])) { |
|
244 | + $_SESSION['view_queries'] = 0; |
|
245 | + } |
|
246 | + if (empty($context['debug']['language_files'])) { |
|
247 | + $context['debug']['language_files'] = array(); |
|
248 | + } |
|
249 | + if (empty($context['debug']['sheets'])) { |
|
250 | + $context['debug']['sheets'] = array(); |
|
251 | + } |
|
239 | 252 | |
240 | 253 | $files = get_included_files(); |
241 | 254 | $total_size = 0; |
242 | 255 | for ($i = 0, $n = count($files); $i < $n; $i++) |
243 | 256 | { |
244 | - if (file_exists($files[$i])) |
|
245 | - $total_size += filesize($files[$i]); |
|
257 | + if (file_exists($files[$i])) { |
|
258 | + $total_size += filesize($files[$i]); |
|
259 | + } |
|
246 | 260 | $files[$i] = strtr($files[$i], array($boarddir => '.', $sourcedir => '(Sources)', $cachedir => '(Cache)', $settings['actual_theme_dir'] => '(Current Theme)')); |
247 | 261 | } |
248 | 262 | |
@@ -251,8 +265,9 @@ discard block |
||
251 | 265 | { |
252 | 266 | foreach ($db_cache as $q => $qq) |
253 | 267 | { |
254 | - if (!empty($qq['w'])) |
|
255 | - $warnings += count($qq['w']); |
|
268 | + if (!empty($qq['w'])) { |
|
269 | + $warnings += count($qq['w']); |
|
270 | + } |
|
256 | 271 | } |
257 | 272 | |
258 | 273 | $_SESSION['debug'] = &$db_cache; |
@@ -273,12 +288,14 @@ discard block |
||
273 | 288 | ',(isset($context['debug']['instances']) ? ($txt['debug_instances'] . (empty($context['debug']['instances']) ? 0 : count($context['debug']['instances'])) . ' (<a href="javascript:void(0);" onclick="document.getElementById(\'debug_instances\').style.display = \'inline\'; this.style.display = \'none\'; return false;">'. $txt['debug_show'] .'</a><span id="debug_instances" style="display: none;"><em>'. implode('</em>, <em>', array_keys($context['debug']['instances'])) .'</em></span>)'. '<br>') : ''),' |
274 | 289 | ', $txt['debug_files_included'], count($files), ' - ', round($total_size / 1024), $txt['debug_kb'], ' (<a href="javascript:void(0);" onclick="document.getElementById(\'debug_include_info\').style.display = \'inline\'; this.style.display = \'none\'; return false;">', $txt['debug_show'], '</a><span id="debug_include_info" style="display: none;"><em>', implode('</em>, <em>', $files), '</em></span>)<br>'; |
275 | 290 | |
276 | - if (function_exists('memory_get_peak_usage')) |
|
277 | - echo $txt['debug_memory_use'], ceil(memory_get_peak_usage() / 1024), $txt['debug_kb'], '<br>'; |
|
291 | + if (function_exists('memory_get_peak_usage')) { |
|
292 | + echo $txt['debug_memory_use'], ceil(memory_get_peak_usage() / 1024), $txt['debug_kb'], '<br>'; |
|
293 | + } |
|
278 | 294 | |
279 | 295 | // What tokens are active? |
280 | - if (isset($_SESSION['token'])) |
|
281 | - echo $txt['debug_tokens'] . '<em>' . implode(',</em> <em>', array_keys($_SESSION['token'])), '</em>.<br>'; |
|
296 | + if (isset($_SESSION['token'])) { |
|
297 | + echo $txt['debug_tokens'] . '<em>' . implode(',</em> <em>', array_keys($_SESSION['token'])), '</em>.<br>'; |
|
298 | + } |
|
282 | 299 | |
283 | 300 | if (!empty($modSettings['cache_enable']) && !empty($cache_hits)) |
284 | 301 | { |
@@ -292,10 +309,12 @@ discard block |
||
292 | 309 | $total_t += $cache_hit['t']; |
293 | 310 | $total_s += $cache_hit['s']; |
294 | 311 | } |
295 | - if (!isset($cache_misses)) |
|
296 | - $cache_misses = array(); |
|
297 | - foreach ($cache_misses as $missed) |
|
298 | - $missed_entries[] = $missed['d'] . ' ' . $missed['k']; |
|
312 | + if (!isset($cache_misses)) { |
|
313 | + $cache_misses = array(); |
|
314 | + } |
|
315 | + foreach ($cache_misses as $missed) { |
|
316 | + $missed_entries[] = $missed['d'] . ' ' . $missed['k']; |
|
317 | + } |
|
299 | 318 | |
300 | 319 | echo ' |
301 | 320 | ', $txt['debug_cache_hits'], $cache_count, ': ', sprintf($txt['debug_cache_seconds_bytes_total'], comma_format($total_t, 5), comma_format($total_s)), ' (<a href="javascript:void(0);" onclick="document.getElementById(\'debug_cache_info\').style.display = \'inline\'; this.style.display = \'none\'; return false;">', $txt['debug_show'], '</a><span id="debug_cache_info" style="display: none;"><em>', implode('</em>, <em>', $entries), '</em></span>)<br> |
@@ -306,38 +325,44 @@ discard block |
||
306 | 325 | <a href="', $scripturl, '?action=viewquery" target="_blank">', $warnings == 0 ? sprintf($txt['debug_queries_used'], (int) $db_count) : sprintf($txt['debug_queries_used_and_warnings'], (int) $db_count, $warnings), '</a><br> |
307 | 326 | <br>'; |
308 | 327 | |
309 | - if ($_SESSION['view_queries'] == 1 && !empty($db_cache)) |
|
310 | - foreach ($db_cache as $q => $qq) |
|
328 | + if ($_SESSION['view_queries'] == 1 && !empty($db_cache)) { |
|
329 | + foreach ($db_cache as $q => $qq) |
|
311 | 330 | { |
312 | 331 | $is_select = strpos(trim($qq['q']), 'SELECT') === 0 || preg_match('~^INSERT(?: IGNORE)? INTO \w+(?:\s+\([^)]+\))?\s+SELECT .+$~s', trim($qq['q'])) != 0; |
332 | + } |
|
313 | 333 | // Temporary tables created in earlier queries are not explainable. |
314 | 334 | if ($is_select) |
315 | 335 | { |
316 | - foreach (array('log_topics_unread', 'topics_posted_in', 'tmp_log_search_topics', 'tmp_log_search_messages') as $tmp) |
|
317 | - if (strpos(trim($qq['q']), $tmp) !== false) |
|
336 | + foreach (array('log_topics_unread', 'topics_posted_in', 'tmp_log_search_topics', 'tmp_log_search_messages') as $tmp) { |
|
337 | + if (strpos(trim($qq['q']), $tmp) !== false) |
|
318 | 338 | { |
319 | 339 | $is_select = false; |
340 | + } |
|
320 | 341 | break; |
321 | 342 | } |
322 | 343 | } |
323 | 344 | // But actual creation of the temporary tables are. |
324 | - elseif (preg_match('~^CREATE TEMPORARY TABLE .+?SELECT .+$~s', trim($qq['q'])) != 0) |
|
325 | - $is_select = true; |
|
345 | + elseif (preg_match('~^CREATE TEMPORARY TABLE .+?SELECT .+$~s', trim($qq['q'])) != 0) { |
|
346 | + $is_select = true; |
|
347 | + } |
|
326 | 348 | |
327 | 349 | // Make the filenames look a bit better. |
328 | - if (isset($qq['f'])) |
|
329 | - $qq['f'] = preg_replace('~^' . preg_quote($boarddir, '~') . '~', '...', $qq['f']); |
|
350 | + if (isset($qq['f'])) { |
|
351 | + $qq['f'] = preg_replace('~^' . preg_quote($boarddir, '~') . '~', '...', $qq['f']); |
|
352 | + } |
|
330 | 353 | |
331 | 354 | echo ' |
332 | 355 | <strong>', $is_select ? '<a href="' . $scripturl . '?action=viewquery;qq=' . ($q + 1) . '#qq' . $q . '" target="_blank" style="text-decoration: none;">' : '', nl2br(str_replace("\t", ' ', $smcFunc['htmlspecialchars'](ltrim($qq['q'], "\n\r")))) . ($is_select ? '</a></strong>' : '</strong>') . '<br> |
333 | 356 | '; |
334 | - if (!empty($qq['f']) && !empty($qq['l'])) |
|
335 | - echo sprintf($txt['debug_query_in_line'], $qq['f'], $qq['l']); |
|
357 | + if (!empty($qq['f']) && !empty($qq['l'])) { |
|
358 | + echo sprintf($txt['debug_query_in_line'], $qq['f'], $qq['l']); |
|
359 | + } |
|
336 | 360 | |
337 | - if (isset($qq['s'], $qq['t']) && isset($txt['debug_query_which_took_at'])) |
|
338 | - echo sprintf($txt['debug_query_which_took_at'], round($qq['t'], 8), round($qq['s'], 8)) . '<br>'; |
|
339 | - elseif (isset($qq['t'])) |
|
340 | - echo sprintf($txt['debug_query_which_took'], round($qq['t'], 8)) . '<br>'; |
|
361 | + if (isset($qq['s'], $qq['t']) && isset($txt['debug_query_which_took_at'])) { |
|
362 | + echo sprintf($txt['debug_query_which_took_at'], round($qq['t'], 8), round($qq['s'], 8)) . '<br>'; |
|
363 | + } elseif (isset($qq['t'])) { |
|
364 | + echo sprintf($txt['debug_query_which_took'], round($qq['t'], 8)) . '<br>'; |
|
365 | + } |
|
341 | 366 | echo ' |
342 | 367 | <br>'; |
343 | 368 | } |
@@ -362,12 +387,14 @@ discard block |
||
362 | 387 | global $modSettings, $smcFunc; |
363 | 388 | static $cache_stats = array(); |
364 | 389 | |
365 | - if (empty($modSettings['trackStats'])) |
|
366 | - return false; |
|
367 | - if (!empty($stats)) |
|
368 | - return $cache_stats = array_merge($cache_stats, $stats); |
|
369 | - elseif (empty($cache_stats)) |
|
370 | - return false; |
|
390 | + if (empty($modSettings['trackStats'])) { |
|
391 | + return false; |
|
392 | + } |
|
393 | + if (!empty($stats)) { |
|
394 | + return $cache_stats = array_merge($cache_stats, $stats); |
|
395 | + } elseif (empty($cache_stats)) { |
|
396 | + return false; |
|
397 | + } |
|
371 | 398 | |
372 | 399 | $setStringUpdate = ''; |
373 | 400 | $insert_keys = array(); |
@@ -380,10 +407,11 @@ discard block |
||
380 | 407 | $setStringUpdate .= ' |
381 | 408 | ' . $field . ' = ' . ($change === '+' ? $field . ' + 1' : '{int:' . $field . '}') . ','; |
382 | 409 | |
383 | - if ($change === '+') |
|
384 | - $cache_stats[$field] = 1; |
|
385 | - else |
|
386 | - $update_parameters[$field] = $change; |
|
410 | + if ($change === '+') { |
|
411 | + $cache_stats[$field] = 1; |
|
412 | + } else { |
|
413 | + $update_parameters[$field] = $change; |
|
414 | + } |
|
387 | 415 | $insert_keys[$field] = 'int'; |
388 | 416 | } |
389 | 417 | |
@@ -447,43 +475,50 @@ discard block |
||
447 | 475 | ); |
448 | 476 | |
449 | 477 | // Make sure this particular log is enabled first... |
450 | - if (empty($modSettings['modlog_enabled'])) |
|
451 | - unset ($log_types['moderate']); |
|
452 | - if (empty($modSettings['userlog_enabled'])) |
|
453 | - unset ($log_types['user']); |
|
454 | - if (empty($modSettings['adminlog_enabled'])) |
|
455 | - unset ($log_types['admin']); |
|
478 | + if (empty($modSettings['modlog_enabled'])) { |
|
479 | + unset ($log_types['moderate']); |
|
480 | + } |
|
481 | + if (empty($modSettings['userlog_enabled'])) { |
|
482 | + unset ($log_types['user']); |
|
483 | + } |
|
484 | + if (empty($modSettings['adminlog_enabled'])) { |
|
485 | + unset ($log_types['admin']); |
|
486 | + } |
|
456 | 487 | |
457 | 488 | call_integration_hook('integrate_log_types', array(&$log_types)); |
458 | 489 | |
459 | 490 | foreach ($logs as $log) |
460 | 491 | { |
461 | - if (!isset($log_types[$log['log_type']])) |
|
462 | - return false; |
|
492 | + if (!isset($log_types[$log['log_type']])) { |
|
493 | + return false; |
|
494 | + } |
|
463 | 495 | |
464 | - if (!is_array($log['extra'])) |
|
465 | - trigger_error('logActions(): data is not an array with action \'' . $log['action'] . '\'', E_USER_NOTICE); |
|
496 | + if (!is_array($log['extra'])) { |
|
497 | + trigger_error('logActions(): data is not an array with action \'' . $log['action'] . '\'', E_USER_NOTICE); |
|
498 | + } |
|
466 | 499 | |
467 | 500 | // Pull out the parts we want to store separately, but also make sure that the data is proper |
468 | 501 | if (isset($log['extra']['topic'])) |
469 | 502 | { |
470 | - if (!is_numeric($log['extra']['topic'])) |
|
471 | - trigger_error('logActions(): data\'s topic is not a number', E_USER_NOTICE); |
|
503 | + if (!is_numeric($log['extra']['topic'])) { |
|
504 | + trigger_error('logActions(): data\'s topic is not a number', E_USER_NOTICE); |
|
505 | + } |
|
472 | 506 | $topic_id = empty($log['extra']['topic']) ? 0 : (int) $log['extra']['topic']; |
473 | 507 | unset($log['extra']['topic']); |
508 | + } else { |
|
509 | + $topic_id = 0; |
|
474 | 510 | } |
475 | - else |
|
476 | - $topic_id = 0; |
|
477 | 511 | |
478 | 512 | if (isset($log['extra']['message'])) |
479 | 513 | { |
480 | - if (!is_numeric($log['extra']['message'])) |
|
481 | - trigger_error('logActions(): data\'s message is not a number', E_USER_NOTICE); |
|
514 | + if (!is_numeric($log['extra']['message'])) { |
|
515 | + trigger_error('logActions(): data\'s message is not a number', E_USER_NOTICE); |
|
516 | + } |
|
482 | 517 | $msg_id = empty($log['extra']['message']) ? 0 : (int) $log['extra']['message']; |
483 | 518 | unset($log['extra']['message']); |
519 | + } else { |
|
520 | + $msg_id = 0; |
|
484 | 521 | } |
485 | - else |
|
486 | - $msg_id = 0; |
|
487 | 522 | |
488 | 523 | // @todo cache this? |
489 | 524 | // Is there an associated report on this? |
@@ -510,23 +545,26 @@ discard block |
||
510 | 545 | $smcFunc['db_free_result']($request); |
511 | 546 | } |
512 | 547 | |
513 | - if (isset($log['extra']['member']) && !is_numeric($log['extra']['member'])) |
|
514 | - trigger_error('logActions(): data\'s member is not a number', E_USER_NOTICE); |
|
548 | + if (isset($log['extra']['member']) && !is_numeric($log['extra']['member'])) { |
|
549 | + trigger_error('logActions(): data\'s member is not a number', E_USER_NOTICE); |
|
550 | + } |
|
515 | 551 | |
516 | 552 | if (isset($log['extra']['board'])) |
517 | 553 | { |
518 | - if (!is_numeric($log['extra']['board'])) |
|
519 | - trigger_error('logActions(): data\'s board is not a number', E_USER_NOTICE); |
|
554 | + if (!is_numeric($log['extra']['board'])) { |
|
555 | + trigger_error('logActions(): data\'s board is not a number', E_USER_NOTICE); |
|
556 | + } |
|
520 | 557 | $board_id = empty($log['extra']['board']) ? 0 : (int) $log['extra']['board']; |
521 | 558 | unset($log['extra']['board']); |
559 | + } else { |
|
560 | + $board_id = 0; |
|
522 | 561 | } |
523 | - else |
|
524 | - $board_id = 0; |
|
525 | 562 | |
526 | 563 | if (isset($log['extra']['board_to'])) |
527 | 564 | { |
528 | - if (!is_numeric($log['extra']['board_to'])) |
|
529 | - trigger_error('logActions(): data\'s board_to is not a number', E_USER_NOTICE); |
|
565 | + if (!is_numeric($log['extra']['board_to'])) { |
|
566 | + trigger_error('logActions(): data\'s board_to is not a number', E_USER_NOTICE); |
|
567 | + } |
|
530 | 568 | if (empty($board_id)) |
531 | 569 | { |
532 | 570 | $board_id = empty($log['extra']['board_to']) ? 0 : (int) $log['extra']['board_to']; |
@@ -534,10 +572,11 @@ discard block |
||
534 | 572 | } |
535 | 573 | } |
536 | 574 | |
537 | - if (isset($log['extra']['member_affected'])) |
|
538 | - $memID = $log['extra']['member_affected']; |
|
539 | - else |
|
540 | - $memID = $user_info['id']; |
|
575 | + if (isset($log['extra']['member_affected'])) { |
|
576 | + $memID = $log['extra']['member_affected']; |
|
577 | + } else { |
|
578 | + $memID = $user_info['id']; |
|
579 | + } |
|
541 | 580 | |
542 | 581 | $inserts[] = array( |
543 | 582 | time(), $log_types[$log['log_type']], $memID, $user_info['ip'], $log['action'], |
@@ -200,22 +200,22 @@ discard block |
||
200 | 200 | |
201 | 201 | case 'date': |
202 | 202 | if (preg_match('~^(\d{4})-([0-1]?\d)-([0-3]?\d)$~', $replacement, $date_matches) === 1) |
203 | - return sprintf('\'%04d-%02d-%02d\'', $date_matches[1], $date_matches[2], $date_matches[3]).'::date'; |
|
203 | + return sprintf('\'%04d-%02d-%02d\'', $date_matches[1], $date_matches[2], $date_matches[3]) . '::date'; |
|
204 | 204 | else |
205 | 205 | smf_db_error_backtrace('Wrong value type sent to the database. Date expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
206 | 206 | break; |
207 | 207 | |
208 | 208 | case 'time': |
209 | 209 | if (preg_match('~^([0-1]?\d|2[0-3]):([0-5]\d):([0-5]\d)$~', $replacement, $time_matches) === 1) |
210 | - return sprintf('\'%02d:%02d:%02d\'', $time_matches[1], $time_matches[2], $time_matches[3]).'::time'; |
|
210 | + return sprintf('\'%02d:%02d:%02d\'', $time_matches[1], $time_matches[2], $time_matches[3]) . '::time'; |
|
211 | 211 | else |
212 | 212 | smf_db_error_backtrace('Wrong value type sent to the database. Time expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
213 | 213 | break; |
214 | 214 | |
215 | 215 | case 'datetime': |
216 | 216 | if (preg_match('~^(\d{4})-([0-1]?\d)-([0-3]?\d) ([0-1]?\d|2[0-3]):([0-5]\d):([0-5]\d)$~', $replacement, $datetime_matches) === 1) |
217 | - return 'to_timestamp('. |
|
218 | - sprintf('\'%04d-%02d-%02d %02d:%02d:%02d\'', $datetime_matches[1], $datetime_matches[2], $datetime_matches[3], $datetime_matches[4], $datetime_matches[5] ,$datetime_matches[6]). |
|
217 | + return 'to_timestamp(' . |
|
218 | + sprintf('\'%04d-%02d-%02d %02d:%02d:%02d\'', $datetime_matches[1], $datetime_matches[2], $datetime_matches[3], $datetime_matches[4], $datetime_matches[5], $datetime_matches[6]) . |
|
219 | 219 | ',\'YYYY-MM-DD HH24:MI:SS\')'; |
220 | 220 | else |
221 | 221 | smf_db_error_backtrace('Wrong value type sent to the database. Datetime expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
@@ -767,7 +767,7 @@ discard block |
||
767 | 767 | if (!empty($keys) && (count($keys) > 0) && $returnmode > 0) |
768 | 768 | { |
769 | 769 | // we only take the first key |
770 | - $returning = ' RETURNING '.$keys[0]; |
|
770 | + $returning = ' RETURNING ' . $keys[0]; |
|
771 | 771 | $with_returning = true; |
772 | 772 | } |
773 | 773 | |
@@ -798,7 +798,7 @@ discard block |
||
798 | 798 | INSERT INTO ' . $table . '("' . implode('", "', $indexed_columns) . '") |
799 | 799 | VALUES |
800 | 800 | ' . implode(', |
801 | - ', $insertRows).$replace.$returning, |
|
801 | + ', $insertRows) . $replace . $returning, |
|
802 | 802 | array( |
803 | 803 | 'security_override' => true, |
804 | 804 | 'db_error_skip' => $method == 'ignore' || $table === $db_prefix . 'log_errors', |
@@ -811,7 +811,7 @@ discard block |
||
811 | 811 | if ($returnmode === 2) |
812 | 812 | $return_var = array(); |
813 | 813 | |
814 | - while(($row = $smcFunc['db_fetch_row']($request)) && $with_returning) |
|
814 | + while (($row = $smcFunc['db_fetch_row']($request)) && $with_returning) |
|
815 | 815 | { |
816 | 816 | if (is_numeric($row[0])) // try to emulate mysql limitation |
817 | 817 | { |
@@ -500,7 +500,7 @@ discard block |
||
500 | 500 | /** |
501 | 501 | * Returns the amount of affected rows for a query. |
502 | 502 | * |
503 | - * @param mixed $result |
|
503 | + * @param resource|null $result |
|
504 | 504 | * |
505 | 505 | * @return int |
506 | 506 | * |
@@ -869,7 +869,7 @@ discard block |
||
869 | 869 | * |
870 | 870 | * @param string $db_name The database name |
871 | 871 | * @param resource $db_connection The database connection |
872 | - * @return true Always returns true |
|
872 | + * @return boolean Always returns true |
|
873 | 873 | */ |
874 | 874 | function smf_db_select_db($db_name, $db_connection) |
875 | 875 | { |
@@ -13,8 +13,9 @@ discard block |
||
13 | 13 | * @version 2.1 Beta 4 |
14 | 14 | */ |
15 | 15 | |
16 | -if (!defined('SMF')) |
|
16 | +if (!defined('SMF')) { |
|
17 | 17 | die('No direct access...'); |
18 | +} |
|
18 | 19 | |
19 | 20 | /** |
20 | 21 | * Maps the implementations in this file (smf_db_function_name) |
@@ -34,8 +35,8 @@ discard block |
||
34 | 35 | global $smcFunc; |
35 | 36 | |
36 | 37 | // Map some database specific functions, only do this once. |
37 | - if (!isset($smcFunc['db_fetch_assoc'])) |
|
38 | - $smcFunc += array( |
|
38 | + if (!isset($smcFunc['db_fetch_assoc'])) { |
|
39 | + $smcFunc += array( |
|
39 | 40 | 'db_query' => 'smf_db_query', |
40 | 41 | 'db_quote' => 'smf_db_quote', |
41 | 42 | 'db_insert' => 'smf_db_insert', |
@@ -63,11 +64,13 @@ discard block |
||
63 | 64 | 'db_fetch_all' => 'smf_db_fetch_all', |
64 | 65 | 'db_error_insert' => 'smf_db_error_insert', |
65 | 66 | ); |
67 | + } |
|
66 | 68 | |
67 | - if (!empty($db_options['persist'])) |
|
68 | - $connection = @pg_pconnect('host=' . $db_server . ' dbname=' . $db_name . ' user=\'' . $db_user . '\' password=\'' . $db_passwd . '\'' . (empty($db_options['port']) ? '' : ' port=\'' . $db_options['port'] . '\'')); |
|
69 | - else |
|
70 | - $connection = @pg_connect('host=' . $db_server . ' dbname=' . $db_name . ' user=\'' . $db_user . '\' password=\'' . $db_passwd . '\'' . (empty($db_options['port']) ? '' : ' port=\'' . $db_options['port'] . '\'')); |
|
69 | + if (!empty($db_options['persist'])) { |
|
70 | + $connection = @pg_pconnect('host=' . $db_server . ' dbname=' . $db_name . ' user=\'' . $db_user . '\' password=\'' . $db_passwd . '\'' . (empty($db_options['port']) ? '' : ' port=\'' . $db_options['port'] . '\'')); |
|
71 | + } else { |
|
72 | + $connection = @pg_connect('host=' . $db_server . ' dbname=' . $db_name . ' user=\'' . $db_user . '\' password=\'' . $db_passwd . '\'' . (empty($db_options['port']) ? '' : ' port=\'' . $db_options['port'] . '\'')); |
|
73 | + } |
|
71 | 74 | |
72 | 75 | // Something's wrong, show an error if its fatal (which we assume it is) |
73 | 76 | if (!$connection) |
@@ -75,8 +78,7 @@ discard block |
||
75 | 78 | if (!empty($db_options['non_fatal'])) |
76 | 79 | { |
77 | 80 | return null; |
78 | - } |
|
79 | - else |
|
81 | + } else |
|
80 | 82 | { |
81 | 83 | display_db_error(); |
82 | 84 | } |
@@ -127,31 +129,38 @@ discard block |
||
127 | 129 | |
128 | 130 | list ($values, $connection) = $db_callback; |
129 | 131 | |
130 | - if ($matches[1] === 'db_prefix') |
|
131 | - return $db_prefix; |
|
132 | + if ($matches[1] === 'db_prefix') { |
|
133 | + return $db_prefix; |
|
134 | + } |
|
132 | 135 | |
133 | - if (isset($user_info[$matches[1]]) && strpos($matches[1], 'query_') !== false) |
|
134 | - return $user_info[$matches[1]]; |
|
136 | + if (isset($user_info[$matches[1]]) && strpos($matches[1], 'query_') !== false) { |
|
137 | + return $user_info[$matches[1]]; |
|
138 | + } |
|
135 | 139 | |
136 | - if ($matches[1] === 'empty') |
|
137 | - return '\'\''; |
|
140 | + if ($matches[1] === 'empty') { |
|
141 | + return '\'\''; |
|
142 | + } |
|
138 | 143 | |
139 | - if (!isset($matches[2])) |
|
140 | - smf_db_error_backtrace('Invalid value inserted or no type specified.', '', E_USER_ERROR, __FILE__, __LINE__); |
|
144 | + if (!isset($matches[2])) { |
|
145 | + smf_db_error_backtrace('Invalid value inserted or no type specified.', '', E_USER_ERROR, __FILE__, __LINE__); |
|
146 | + } |
|
141 | 147 | |
142 | - if ($matches[1] === 'literal') |
|
143 | - return '\'' . pg_escape_string($matches[2]) . '\''; |
|
148 | + if ($matches[1] === 'literal') { |
|
149 | + return '\'' . pg_escape_string($matches[2]) . '\''; |
|
150 | + } |
|
144 | 151 | |
145 | - if (!isset($values[$matches[2]])) |
|
146 | - smf_db_error_backtrace('The database value you\'re trying to insert does not exist: ' . (isset($smcFunc['htmlspecialchars']) ? $smcFunc['htmlspecialchars']($matches[2]) : htmlspecialchars($matches[2])), '', E_USER_ERROR, __FILE__, __LINE__); |
|
152 | + if (!isset($values[$matches[2]])) { |
|
153 | + smf_db_error_backtrace('The database value you\'re trying to insert does not exist: ' . (isset($smcFunc['htmlspecialchars']) ? $smcFunc['htmlspecialchars']($matches[2]) : htmlspecialchars($matches[2])), '', E_USER_ERROR, __FILE__, __LINE__); |
|
154 | + } |
|
147 | 155 | |
148 | 156 | $replacement = $values[$matches[2]]; |
149 | 157 | |
150 | 158 | switch ($matches[1]) |
151 | 159 | { |
152 | 160 | case 'int': |
153 | - if (!is_numeric($replacement) || (string) $replacement !== (string) (int) $replacement) |
|
154 | - smf_db_error_backtrace('Wrong value type sent to the database. Integer expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
161 | + if (!is_numeric($replacement) || (string) $replacement !== (string) (int) $replacement) { |
|
162 | + smf_db_error_backtrace('Wrong value type sent to the database. Integer expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
163 | + } |
|
155 | 164 | return (string) (int) $replacement; |
156 | 165 | break; |
157 | 166 | |
@@ -163,65 +172,73 @@ discard block |
||
163 | 172 | case 'array_int': |
164 | 173 | if (is_array($replacement)) |
165 | 174 | { |
166 | - if (empty($replacement)) |
|
167 | - smf_db_error_backtrace('Database error, given array of integer values is empty. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
175 | + if (empty($replacement)) { |
|
176 | + smf_db_error_backtrace('Database error, given array of integer values is empty. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
177 | + } |
|
168 | 178 | |
169 | 179 | foreach ($replacement as $key => $value) |
170 | 180 | { |
171 | - if (!is_numeric($value) || (string) $value !== (string) (int) $value) |
|
172 | - smf_db_error_backtrace('Wrong value type sent to the database. Array of integers expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
181 | + if (!is_numeric($value) || (string) $value !== (string) (int) $value) { |
|
182 | + smf_db_error_backtrace('Wrong value type sent to the database. Array of integers expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
183 | + } |
|
173 | 184 | |
174 | 185 | $replacement[$key] = (string) (int) $value; |
175 | 186 | } |
176 | 187 | |
177 | 188 | return implode(', ', $replacement); |
189 | + } else { |
|
190 | + smf_db_error_backtrace('Wrong value type sent to the database. Array of integers expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
178 | 191 | } |
179 | - else |
|
180 | - smf_db_error_backtrace('Wrong value type sent to the database. Array of integers expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
181 | 192 | |
182 | 193 | break; |
183 | 194 | |
184 | 195 | case 'array_string': |
185 | 196 | if (is_array($replacement)) |
186 | 197 | { |
187 | - if (empty($replacement)) |
|
188 | - smf_db_error_backtrace('Database error, given array of string values is empty. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
198 | + if (empty($replacement)) { |
|
199 | + smf_db_error_backtrace('Database error, given array of string values is empty. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
200 | + } |
|
189 | 201 | |
190 | - foreach ($replacement as $key => $value) |
|
191 | - $replacement[$key] = sprintf('\'%1$s\'', pg_escape_string($value)); |
|
202 | + foreach ($replacement as $key => $value) { |
|
203 | + $replacement[$key] = sprintf('\'%1$s\'', pg_escape_string($value)); |
|
204 | + } |
|
192 | 205 | |
193 | 206 | return implode(', ', $replacement); |
207 | + } else { |
|
208 | + smf_db_error_backtrace('Wrong value type sent to the database. Array of strings expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
194 | 209 | } |
195 | - else |
|
196 | - smf_db_error_backtrace('Wrong value type sent to the database. Array of strings expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
197 | 210 | break; |
198 | 211 | |
199 | 212 | case 'date': |
200 | - if (preg_match('~^(\d{4})-([0-1]?\d)-([0-3]?\d)$~', $replacement, $date_matches) === 1) |
|
201 | - return sprintf('\'%04d-%02d-%02d\'', $date_matches[1], $date_matches[2], $date_matches[3]).'::date'; |
|
202 | - else |
|
203 | - smf_db_error_backtrace('Wrong value type sent to the database. Date expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
213 | + if (preg_match('~^(\d{4})-([0-1]?\d)-([0-3]?\d)$~', $replacement, $date_matches) === 1) { |
|
214 | + return sprintf('\'%04d-%02d-%02d\'', $date_matches[1], $date_matches[2], $date_matches[3]).'::date'; |
|
215 | + } else { |
|
216 | + smf_db_error_backtrace('Wrong value type sent to the database. Date expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
217 | + } |
|
204 | 218 | break; |
205 | 219 | |
206 | 220 | case 'time': |
207 | - if (preg_match('~^([0-1]?\d|2[0-3]):([0-5]\d):([0-5]\d)$~', $replacement, $time_matches) === 1) |
|
208 | - return sprintf('\'%02d:%02d:%02d\'', $time_matches[1], $time_matches[2], $time_matches[3]).'::time'; |
|
209 | - else |
|
210 | - smf_db_error_backtrace('Wrong value type sent to the database. Time expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
221 | + if (preg_match('~^([0-1]?\d|2[0-3]):([0-5]\d):([0-5]\d)$~', $replacement, $time_matches) === 1) { |
|
222 | + return sprintf('\'%02d:%02d:%02d\'', $time_matches[1], $time_matches[2], $time_matches[3]).'::time'; |
|
223 | + } else { |
|
224 | + smf_db_error_backtrace('Wrong value type sent to the database. Time expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
225 | + } |
|
211 | 226 | break; |
212 | 227 | |
213 | 228 | case 'datetime': |
214 | - if (preg_match('~^(\d{4})-([0-1]?\d)-([0-3]?\d) ([0-1]?\d|2[0-3]):([0-5]\d):([0-5]\d)$~', $replacement, $datetime_matches) === 1) |
|
215 | - return 'to_timestamp('. |
|
229 | + if (preg_match('~^(\d{4})-([0-1]?\d)-([0-3]?\d) ([0-1]?\d|2[0-3]):([0-5]\d):([0-5]\d)$~', $replacement, $datetime_matches) === 1) { |
|
230 | + return 'to_timestamp('. |
|
216 | 231 | sprintf('\'%04d-%02d-%02d %02d:%02d:%02d\'', $datetime_matches[1], $datetime_matches[2], $datetime_matches[3], $datetime_matches[4], $datetime_matches[5] ,$datetime_matches[6]). |
217 | 232 | ',\'YYYY-MM-DD HH24:MI:SS\')'; |
218 | - else |
|
219 | - smf_db_error_backtrace('Wrong value type sent to the database. Datetime expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
233 | + } else { |
|
234 | + smf_db_error_backtrace('Wrong value type sent to the database. Datetime expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
235 | + } |
|
220 | 236 | break; |
221 | 237 | |
222 | 238 | case 'float': |
223 | - if (!is_numeric($replacement)) |
|
224 | - smf_db_error_backtrace('Wrong value type sent to the database. Floating point number expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
239 | + if (!is_numeric($replacement)) { |
|
240 | + smf_db_error_backtrace('Wrong value type sent to the database. Floating point number expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
241 | + } |
|
225 | 242 | return (string) (float) $replacement; |
226 | 243 | break; |
227 | 244 | |
@@ -234,31 +251,36 @@ discard block |
||
234 | 251 | break; |
235 | 252 | |
236 | 253 | case 'inet': |
237 | - if ($replacement == 'null' || $replacement == '') |
|
238 | - return 'null'; |
|
239 | - if (inet_pton($replacement) === false) |
|
240 | - smf_db_error_backtrace('Wrong value type sent to the database. IPv4 or IPv6 expected.(' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
254 | + if ($replacement == 'null' || $replacement == '') { |
|
255 | + return 'null'; |
|
256 | + } |
|
257 | + if (inet_pton($replacement) === false) { |
|
258 | + smf_db_error_backtrace('Wrong value type sent to the database. IPv4 or IPv6 expected.(' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
259 | + } |
|
241 | 260 | return sprintf('\'%1$s\'::inet', pg_escape_string($replacement)); |
242 | 261 | |
243 | 262 | case 'array_inet': |
244 | 263 | if (is_array($replacement)) |
245 | 264 | { |
246 | - if (empty($replacement)) |
|
247 | - smf_db_error_backtrace('Database error, given array of IPv4 or IPv6 values is empty. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
265 | + if (empty($replacement)) { |
|
266 | + smf_db_error_backtrace('Database error, given array of IPv4 or IPv6 values is empty. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
267 | + } |
|
248 | 268 | |
249 | 269 | foreach ($replacement as $key => $value) |
250 | 270 | { |
251 | - if ($replacement == 'null' || $replacement == '') |
|
252 | - $replacement[$key] = 'null'; |
|
253 | - if (!isValidIP($value)) |
|
254 | - smf_db_error_backtrace('Wrong value type sent to the database. IPv4 or IPv6 expected.(' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
271 | + if ($replacement == 'null' || $replacement == '') { |
|
272 | + $replacement[$key] = 'null'; |
|
273 | + } |
|
274 | + if (!isValidIP($value)) { |
|
275 | + smf_db_error_backtrace('Wrong value type sent to the database. IPv4 or IPv6 expected.(' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
276 | + } |
|
255 | 277 | $replacement[$key] = sprintf('\'%1$s\'::inet', pg_escape_string($value)); |
256 | 278 | } |
257 | 279 | |
258 | 280 | return implode(', ', $replacement); |
281 | + } else { |
|
282 | + smf_db_error_backtrace('Wrong value type sent to the database. Array of IPv4 or IPv6 expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
259 | 283 | } |
260 | - else |
|
261 | - smf_db_error_backtrace('Wrong value type sent to the database. Array of IPv4 or IPv6 expected. (' . $matches[2] . ')', '', E_USER_ERROR, __FILE__, __LINE__); |
|
262 | 284 | break; |
263 | 285 | |
264 | 286 | default: |
@@ -349,14 +371,16 @@ discard block |
||
349 | 371 | ), |
350 | 372 | ); |
351 | 373 | |
352 | - if (isset($replacements[$identifier])) |
|
353 | - $db_string = preg_replace(array_keys($replacements[$identifier]), array_values($replacements[$identifier]), $db_string); |
|
374 | + if (isset($replacements[$identifier])) { |
|
375 | + $db_string = preg_replace(array_keys($replacements[$identifier]), array_values($replacements[$identifier]), $db_string); |
|
376 | + } |
|
354 | 377 | |
355 | 378 | // Limits need to be a little different. |
356 | 379 | $db_string = preg_replace('~\sLIMIT\s(\d+|{int:.+}),\s*(\d+|{int:.+})\s*$~i', 'LIMIT $2 OFFSET $1', $db_string); |
357 | 380 | |
358 | - if (trim($db_string) == '') |
|
359 | - return false; |
|
381 | + if (trim($db_string) == '') { |
|
382 | + return false; |
|
383 | + } |
|
360 | 384 | |
361 | 385 | // Comments that are allowed in a query are preg_removed. |
362 | 386 | static $allowed_comments_from = array( |
@@ -376,8 +400,9 @@ discard block |
||
376 | 400 | $db_count = !isset($db_count) ? 1 : $db_count + 1; |
377 | 401 | $db_replace_result = 0; |
378 | 402 | |
379 | - if (empty($modSettings['disableQueryCheck']) && strpos($db_string, '\'') !== false && empty($db_values['security_override'])) |
|
380 | - smf_db_error_backtrace('Hacking attempt...', 'Illegal character (\') used in query...', true, __FILE__, __LINE__); |
|
403 | + if (empty($modSettings['disableQueryCheck']) && strpos($db_string, '\'') !== false && empty($db_values['security_override'])) { |
|
404 | + smf_db_error_backtrace('Hacking attempt...', 'Illegal character (\') used in query...', true, __FILE__, __LINE__); |
|
405 | + } |
|
381 | 406 | |
382 | 407 | if (empty($db_values['security_override']) && (!empty($db_values) || strpos($db_string, '{db_prefix}') !== false)) |
383 | 408 | { |
@@ -398,8 +423,9 @@ discard block |
||
398 | 423 | list ($file, $line) = smf_db_error_backtrace('', '', 'return', __FILE__, __LINE__); |
399 | 424 | |
400 | 425 | // Initialize $db_cache if not already initialized. |
401 | - if (!isset($db_cache)) |
|
402 | - $db_cache = array(); |
|
426 | + if (!isset($db_cache)) { |
|
427 | + $db_cache = array(); |
|
428 | + } |
|
403 | 429 | |
404 | 430 | if (!empty($_SESSION['debug_redirect'])) |
405 | 431 | { |
@@ -425,17 +451,18 @@ discard block |
||
425 | 451 | while (true) |
426 | 452 | { |
427 | 453 | $pos = strpos($db_string, '\'', $pos + 1); |
428 | - if ($pos === false) |
|
429 | - break; |
|
454 | + if ($pos === false) { |
|
455 | + break; |
|
456 | + } |
|
430 | 457 | $clean .= substr($db_string, $old_pos, $pos - $old_pos); |
431 | 458 | |
432 | 459 | while (true) |
433 | 460 | { |
434 | 461 | $pos1 = strpos($db_string, '\'', $pos + 1); |
435 | 462 | $pos2 = strpos($db_string, '\\', $pos + 1); |
436 | - if ($pos1 === false) |
|
437 | - break; |
|
438 | - elseif ($pos2 === false || $pos2 > $pos1) |
|
463 | + if ($pos1 === false) { |
|
464 | + break; |
|
465 | + } elseif ($pos2 === false || $pos2 > $pos1) |
|
439 | 466 | { |
440 | 467 | $pos = $pos1; |
441 | 468 | break; |
@@ -451,16 +478,19 @@ discard block |
||
451 | 478 | $clean = trim(strtolower(preg_replace($allowed_comments_from, $allowed_comments_to, $clean))); |
452 | 479 | |
453 | 480 | // Comments? We don't use comments in our queries, we leave 'em outside! |
454 | - if (strpos($clean, '/*') > 2 || strpos($clean, '--') !== false || strpos($clean, ';') !== false) |
|
455 | - $fail = true; |
|
481 | + if (strpos($clean, '/*') > 2 || strpos($clean, '--') !== false || strpos($clean, ';') !== false) { |
|
482 | + $fail = true; |
|
483 | + } |
|
456 | 484 | // Trying to change passwords, slow us down, or something? |
457 | - elseif (strpos($clean, 'sleep') !== false && preg_match('~(^|[^a-z])sleep($|[^[_a-z])~s', $clean) != 0) |
|
458 | - $fail = true; |
|
459 | - elseif (strpos($clean, 'benchmark') !== false && preg_match('~(^|[^a-z])benchmark($|[^[a-z])~s', $clean) != 0) |
|
460 | - $fail = true; |
|
485 | + elseif (strpos($clean, 'sleep') !== false && preg_match('~(^|[^a-z])sleep($|[^[_a-z])~s', $clean) != 0) { |
|
486 | + $fail = true; |
|
487 | + } elseif (strpos($clean, 'benchmark') !== false && preg_match('~(^|[^a-z])benchmark($|[^[a-z])~s', $clean) != 0) { |
|
488 | + $fail = true; |
|
489 | + } |
|
461 | 490 | |
462 | - if (!empty($fail) && function_exists('log_error')) |
|
463 | - smf_db_error_backtrace('Hacking attempt...', 'Hacking attempt...' . "\n" . $db_string, E_USER_ERROR, __FILE__, __LINE__); |
|
491 | + if (!empty($fail) && function_exists('log_error')) { |
|
492 | + smf_db_error_backtrace('Hacking attempt...', 'Hacking attempt...' . "\n" . $db_string, E_USER_ERROR, __FILE__, __LINE__); |
|
493 | + } |
|
464 | 494 | } |
465 | 495 | |
466 | 496 | // Set optimize stuff |
@@ -479,18 +509,21 @@ discard block |
||
479 | 509 | |
480 | 510 | $db_string = $query_hints_set . $db_string; |
481 | 511 | |
482 | - if (isset($db_show_debug) && $db_show_debug === true && $db_cache[$db_count]['q'] != '...') |
|
483 | - $db_cache[$db_count]['q'] = "\t\t" . $db_string; |
|
512 | + if (isset($db_show_debug) && $db_show_debug === true && $db_cache[$db_count]['q'] != '...') { |
|
513 | + $db_cache[$db_count]['q'] = "\t\t" . $db_string; |
|
514 | + } |
|
484 | 515 | } |
485 | 516 | |
486 | 517 | $db_last_result = @pg_query($connection, $db_string); |
487 | 518 | |
488 | - if ($db_last_result === false && empty($db_values['db_error_skip'])) |
|
489 | - $db_last_result = smf_db_error($db_string, $connection); |
|
519 | + if ($db_last_result === false && empty($db_values['db_error_skip'])) { |
|
520 | + $db_last_result = smf_db_error($db_string, $connection); |
|
521 | + } |
|
490 | 522 | |
491 | 523 | // Debugging. |
492 | - if (isset($db_show_debug) && $db_show_debug === true) |
|
493 | - $db_cache[$db_count]['t'] = array_sum(explode(' ', microtime())) - array_sum(explode(' ', $st)); |
|
524 | + if (isset($db_show_debug) && $db_show_debug === true) { |
|
525 | + $db_cache[$db_count]['t'] = array_sum(explode(' ', microtime())) - array_sum(explode(' ', $st)); |
|
526 | + } |
|
494 | 527 | |
495 | 528 | return $db_last_result; |
496 | 529 | } |
@@ -507,10 +540,11 @@ discard block |
||
507 | 540 | { |
508 | 541 | global $db_last_result, $db_replace_result; |
509 | 542 | |
510 | - if ($db_replace_result) |
|
511 | - return $db_replace_result; |
|
512 | - elseif ($result === null && !$db_last_result) |
|
513 | - return 0; |
|
543 | + if ($db_replace_result) { |
|
544 | + return $db_replace_result; |
|
545 | + } elseif ($result === null && !$db_last_result) { |
|
546 | + return 0; |
|
547 | + } |
|
514 | 548 | |
515 | 549 | return pg_affected_rows($result === null ? $db_last_result : $result); |
516 | 550 | } |
@@ -534,8 +568,9 @@ discard block |
||
534 | 568 | array( |
535 | 569 | ) |
536 | 570 | ); |
537 | - if (!$request) |
|
538 | - return false; |
|
571 | + if (!$request) { |
|
572 | + return false; |
|
573 | + } |
|
539 | 574 | list ($lastID) = $smcFunc['db_fetch_row']($request); |
540 | 575 | $smcFunc['db_free_result']($request); |
541 | 576 | |
@@ -556,12 +591,13 @@ discard block |
||
556 | 591 | // Decide which connection to use |
557 | 592 | $connection = $connection === null ? $db_connection : $connection; |
558 | 593 | |
559 | - if ($type == 'begin') |
|
560 | - return @pg_query($connection, 'BEGIN'); |
|
561 | - elseif ($type == 'rollback') |
|
562 | - return @pg_query($connection, 'ROLLBACK'); |
|
563 | - elseif ($type == 'commit') |
|
564 | - return @pg_query($connection, 'COMMIT'); |
|
594 | + if ($type == 'begin') { |
|
595 | + return @pg_query($connection, 'BEGIN'); |
|
596 | + } elseif ($type == 'rollback') { |
|
597 | + return @pg_query($connection, 'ROLLBACK'); |
|
598 | + } elseif ($type == 'commit') { |
|
599 | + return @pg_query($connection, 'COMMIT'); |
|
600 | + } |
|
565 | 601 | |
566 | 602 | return false; |
567 | 603 | } |
@@ -589,19 +625,22 @@ discard block |
||
589 | 625 | $query_error = @pg_last_error($connection); |
590 | 626 | |
591 | 627 | // Log the error. |
592 | - if (function_exists('log_error')) |
|
593 | - log_error($txt['database_error'] . ': ' . $query_error . (!empty($modSettings['enableErrorQueryLogging']) ? "\n\n" . $db_string : ''), 'database', $file, $line); |
|
628 | + if (function_exists('log_error')) { |
|
629 | + log_error($txt['database_error'] . ': ' . $query_error . (!empty($modSettings['enableErrorQueryLogging']) ? "\n\n" . $db_string : ''), 'database', $file, $line); |
|
630 | + } |
|
594 | 631 | |
595 | 632 | // Nothing's defined yet... just die with it. |
596 | - if (empty($context) || empty($txt)) |
|
597 | - die($query_error); |
|
633 | + if (empty($context) || empty($txt)) { |
|
634 | + die($query_error); |
|
635 | + } |
|
598 | 636 | |
599 | 637 | // Show an error message, if possible. |
600 | 638 | $context['error_title'] = $txt['database_error']; |
601 | - if (allowedTo('admin_forum')) |
|
602 | - $context['error_message'] = nl2br($query_error) . '<br>' . $txt['file'] . ': ' . $file . '<br>' . $txt['line'] . ': ' . $line; |
|
603 | - else |
|
604 | - $context['error_message'] = $txt['try_again']; |
|
639 | + if (allowedTo('admin_forum')) { |
|
640 | + $context['error_message'] = nl2br($query_error) . '<br>' . $txt['file'] . ': ' . $file . '<br>' . $txt['line'] . ': ' . $line; |
|
641 | + } else { |
|
642 | + $context['error_message'] = $txt['try_again']; |
|
643 | + } |
|
605 | 644 | |
606 | 645 | if (allowedTo('admin_forum') && isset($db_show_debug) && $db_show_debug === true) |
607 | 646 | { |
@@ -623,12 +662,14 @@ discard block |
||
623 | 662 | { |
624 | 663 | global $db_row_count; |
625 | 664 | |
626 | - if ($counter !== false) |
|
627 | - return pg_fetch_row($request, $counter); |
|
665 | + if ($counter !== false) { |
|
666 | + return pg_fetch_row($request, $counter); |
|
667 | + } |
|
628 | 668 | |
629 | 669 | // Reset the row counter... |
630 | - if (!isset($db_row_count[(int) $request])) |
|
631 | - $db_row_count[(int) $request] = 0; |
|
670 | + if (!isset($db_row_count[(int) $request])) { |
|
671 | + $db_row_count[(int) $request] = 0; |
|
672 | + } |
|
632 | 673 | |
633 | 674 | // Return the right row. |
634 | 675 | return @pg_fetch_row($request, $db_row_count[(int) $request]++); |
@@ -645,12 +686,14 @@ discard block |
||
645 | 686 | { |
646 | 687 | global $db_row_count; |
647 | 688 | |
648 | - if ($counter !== false) |
|
649 | - return pg_fetch_assoc($request, $counter); |
|
689 | + if ($counter !== false) { |
|
690 | + return pg_fetch_assoc($request, $counter); |
|
691 | + } |
|
650 | 692 | |
651 | 693 | // Reset the row counter... |
652 | - if (!isset($db_row_count[(int) $request])) |
|
653 | - $db_row_count[(int) $request] = 0; |
|
694 | + if (!isset($db_row_count[(int) $request])) { |
|
695 | + $db_row_count[(int) $request] = 0; |
|
696 | + } |
|
654 | 697 | |
655 | 698 | // Return the right row. |
656 | 699 | return @pg_fetch_assoc($request, $db_row_count[(int) $request]++); |
@@ -703,11 +746,13 @@ discard block |
||
703 | 746 | |
704 | 747 | $replace = ''; |
705 | 748 | |
706 | - if (empty($data)) |
|
707 | - return; |
|
749 | + if (empty($data)) { |
|
750 | + return; |
|
751 | + } |
|
708 | 752 | |
709 | - if (!is_array($data[array_rand($data)])) |
|
710 | - $data = array($data); |
|
753 | + if (!is_array($data[array_rand($data)])) { |
|
754 | + $data = array($data); |
|
755 | + } |
|
711 | 756 | |
712 | 757 | // Replace the prefix holder with the actual prefix. |
713 | 758 | $table = str_replace('{db_prefix}', $db_prefix, $table); |
@@ -726,11 +771,13 @@ discard block |
||
726 | 771 | //pg 9.5 got replace support |
727 | 772 | $pg_version = $smcFunc['db_get_version'](); |
728 | 773 | // if we got a Beta Version |
729 | - if (stripos($pg_version, 'beta') !== false) |
|
730 | - $pg_version = substr($pg_version, 0, stripos($pg_version, 'beta')) . '.0'; |
|
774 | + if (stripos($pg_version, 'beta') !== false) { |
|
775 | + $pg_version = substr($pg_version, 0, stripos($pg_version, 'beta')) . '.0'; |
|
776 | + } |
|
731 | 777 | // or RC |
732 | - if (stripos($pg_version, 'rc') !== false) |
|
733 | - $pg_version = substr($pg_version, 0, stripos($pg_version, 'rc')) . '.0'; |
|
778 | + if (stripos($pg_version, 'rc') !== false) { |
|
779 | + $pg_version = substr($pg_version, 0, stripos($pg_version, 'rc')) . '.0'; |
|
780 | + } |
|
734 | 781 | |
735 | 782 | $replace_support = (version_compare($pg_version, '9.5.0', '>=') ? true : false); |
736 | 783 | } |
@@ -749,32 +796,35 @@ discard block |
||
749 | 796 | $key_str .= ($count_pk > 0 ? ',' : ''); |
750 | 797 | $key_str .= $columnName; |
751 | 798 | $count_pk++; |
752 | - } |
|
753 | - else if ($method == 'replace') //normal field |
|
799 | + } else if ($method == 'replace') { |
|
800 | + //normal field |
|
754 | 801 | { |
755 | 802 | $col_str .= ($count > 0 ? ',' : ''); |
803 | + } |
|
756 | 804 | $col_str .= $columnName . ' = EXCLUDED.' . $columnName; |
757 | 805 | $count++; |
758 | 806 | } |
759 | 807 | } |
760 | - if ($method == 'replace') |
|
761 | - $replace = ' ON CONFLICT (' . $key_str . ') DO UPDATE SET ' . $col_str; |
|
762 | - else |
|
763 | - $replace = ' ON CONFLICT (' . $key_str . ') DO NOTHING'; |
|
764 | - } |
|
765 | - else if ($method == 'replace') |
|
808 | + if ($method == 'replace') { |
|
809 | + $replace = ' ON CONFLICT (' . $key_str . ') DO UPDATE SET ' . $col_str; |
|
810 | + } else { |
|
811 | + $replace = ' ON CONFLICT (' . $key_str . ') DO NOTHING'; |
|
812 | + } |
|
813 | + } else if ($method == 'replace') |
|
766 | 814 | { |
767 | 815 | foreach ($columns as $columnName => $type) |
768 | 816 | { |
769 | 817 | // Are we restricting the length? |
770 | - if (strpos($type, 'string-') !== false) |
|
771 | - $actualType = sprintf($columnName . ' = SUBSTRING({string:%1$s}, 1, ' . substr($type, 7) . '), ', $count); |
|
772 | - else |
|
773 | - $actualType = sprintf($columnName . ' = {%1$s:%2$s}, ', $type, $count); |
|
818 | + if (strpos($type, 'string-') !== false) { |
|
819 | + $actualType = sprintf($columnName . ' = SUBSTRING({string:%1$s}, 1, ' . substr($type, 7) . '), ', $count); |
|
820 | + } else { |
|
821 | + $actualType = sprintf($columnName . ' = {%1$s:%2$s}, ', $type, $count); |
|
822 | + } |
|
774 | 823 | |
775 | 824 | // A key? That's what we were looking for. |
776 | - if (in_array($columnName, $keys)) |
|
777 | - $where .= (empty($where) ? '' : ' AND ') . substr($actualType, 0, -2); |
|
825 | + if (in_array($columnName, $keys)) { |
|
826 | + $where .= (empty($where) ? '' : ' AND ') . substr($actualType, 0, -2); |
|
827 | + } |
|
778 | 828 | $count++; |
779 | 829 | } |
780 | 830 | |
@@ -810,10 +860,11 @@ discard block |
||
810 | 860 | foreach ($columns as $columnName => $type) |
811 | 861 | { |
812 | 862 | // Are we restricting the length? |
813 | - if (strpos($type, 'string-') !== false) |
|
814 | - $insertData .= sprintf('SUBSTRING({string:%1$s}, 1, ' . substr($type, 7) . '), ', $columnName); |
|
815 | - else |
|
816 | - $insertData .= sprintf('{%1$s:%2$s}, ', $type, $columnName); |
|
863 | + if (strpos($type, 'string-') !== false) { |
|
864 | + $insertData .= sprintf('SUBSTRING({string:%1$s}, 1, ' . substr($type, 7) . '), ', $columnName); |
|
865 | + } else { |
|
866 | + $insertData .= sprintf('{%1$s:%2$s}, ', $type, $columnName); |
|
867 | + } |
|
817 | 868 | } |
818 | 869 | $insertData = substr($insertData, 0, -2) . ')'; |
819 | 870 | |
@@ -822,8 +873,9 @@ discard block |
||
822 | 873 | |
823 | 874 | // Here's where the variables are injected to the query. |
824 | 875 | $insertRows = array(); |
825 | - foreach ($data as $dataRow) |
|
826 | - $insertRows[] = smf_db_quote($insertData, array_combine($indexed_columns, $dataRow), $connection); |
|
876 | + foreach ($data as $dataRow) { |
|
877 | + $insertRows[] = smf_db_quote($insertData, array_combine($indexed_columns, $dataRow), $connection); |
|
878 | + } |
|
827 | 879 | |
828 | 880 | // Do the insert. |
829 | 881 | $request = $smcFunc['db_query']('', ' |
@@ -840,19 +892,21 @@ discard block |
||
840 | 892 | |
841 | 893 | if ($with_returning && $request !== false) |
842 | 894 | { |
843 | - if ($returnmode === 2) |
|
844 | - $return_var = array(); |
|
895 | + if ($returnmode === 2) { |
|
896 | + $return_var = array(); |
|
897 | + } |
|
845 | 898 | |
846 | 899 | while(($row = $smcFunc['db_fetch_row']($request)) && $with_returning) |
847 | 900 | { |
848 | - if (is_numeric($row[0])) // try to emulate mysql limitation |
|
901 | + if (is_numeric($row[0])) { |
|
902 | + // try to emulate mysql limitation |
|
849 | 903 | { |
850 | 904 | if ($returnmode === 1) |
851 | 905 | $return_var = $row[0]; |
852 | - elseif ($returnmode === 2) |
|
853 | - $return_var[] = $row[0]; |
|
854 | - } |
|
855 | - else |
|
906 | + } elseif ($returnmode === 2) { |
|
907 | + $return_var[] = $row[0]; |
|
908 | + } |
|
909 | + } else |
|
856 | 910 | { |
857 | 911 | $with_returning = false; |
858 | 912 | trigger_error('trying to returning ID Field which is not a Int field', E_USER_ERROR); |
@@ -861,9 +915,10 @@ discard block |
||
861 | 915 | } |
862 | 916 | } |
863 | 917 | |
864 | - if ($with_returning && !empty($return_var)) |
|
865 | - return $return_var; |
|
866 | -} |
|
918 | + if ($with_returning && !empty($return_var)) { |
|
919 | + return $return_var; |
|
920 | + } |
|
921 | + } |
|
867 | 922 | |
868 | 923 | /** |
869 | 924 | * Dummy function really. Doesn't do anything on PostgreSQL. |
@@ -900,8 +955,9 @@ discard block |
||
900 | 955 | */ |
901 | 956 | function smf_db_error_backtrace($error_message, $log_message = '', $error_type = false, $file = null, $line = null) |
902 | 957 | { |
903 | - if (empty($log_message)) |
|
904 | - $log_message = $error_message; |
|
958 | + if (empty($log_message)) { |
|
959 | + $log_message = $error_message; |
|
960 | + } |
|
905 | 961 | |
906 | 962 | foreach (debug_backtrace() as $step) |
907 | 963 | { |
@@ -920,12 +976,14 @@ discard block |
||
920 | 976 | } |
921 | 977 | |
922 | 978 | // A special case - we want the file and line numbers for debugging. |
923 | - if ($error_type == 'return') |
|
924 | - return array($file, $line); |
|
979 | + if ($error_type == 'return') { |
|
980 | + return array($file, $line); |
|
981 | + } |
|
925 | 982 | |
926 | 983 | // Is always a critical error. |
927 | - if (function_exists('log_error')) |
|
928 | - log_error($log_message, 'critical', $file, $line); |
|
984 | + if (function_exists('log_error')) { |
|
985 | + log_error($log_message, 'critical', $file, $line); |
|
986 | + } |
|
929 | 987 | |
930 | 988 | if (function_exists('fatal_error')) |
931 | 989 | { |
@@ -933,12 +991,12 @@ discard block |
||
933 | 991 | |
934 | 992 | // Cannot continue... |
935 | 993 | exit; |
994 | + } elseif ($error_type) { |
|
995 | + trigger_error($error_message . ($line !== null ? '<em>(' . basename($file) . '-' . $line . ')</em>' : ''), $error_type); |
|
996 | + } else { |
|
997 | + trigger_error($error_message . ($line !== null ? '<em>(' . basename($file) . '-' . $line . ')</em>' : '')); |
|
998 | + } |
|
936 | 999 | } |
937 | - elseif ($error_type) |
|
938 | - trigger_error($error_message . ($line !== null ? '<em>(' . basename($file) . '-' . $line . ')</em>' : ''), $error_type); |
|
939 | - else |
|
940 | - trigger_error($error_message . ($line !== null ? '<em>(' . basename($file) . '-' . $line . ')</em>' : '')); |
|
941 | -} |
|
942 | 1000 | |
943 | 1001 | /** |
944 | 1002 | * Escape the LIKE wildcards so that they match the character and not the wildcard. |
@@ -955,10 +1013,11 @@ discard block |
||
955 | 1013 | '\\' => '\\\\', |
956 | 1014 | ); |
957 | 1015 | |
958 | - if ($translate_human_wildcards) |
|
959 | - $replacements += array( |
|
1016 | + if ($translate_human_wildcards) { |
|
1017 | + $replacements += array( |
|
960 | 1018 | '*' => '%', |
961 | 1019 | ); |
1020 | + } |
|
962 | 1021 | |
963 | 1022 | return strtr($string, $replacements); |
964 | 1023 | } |
@@ -986,11 +1045,12 @@ discard block |
||
986 | 1045 | global $db_prefix, $db_connection; |
987 | 1046 | static $pg_error_data_prep; |
988 | 1047 | |
989 | - if (empty($pg_error_data_prep)) |
|
990 | - $pg_error_data_prep = pg_prepare($db_connection, 'smf_log_errors', |
|
1048 | + if (empty($pg_error_data_prep)) { |
|
1049 | + $pg_error_data_prep = pg_prepare($db_connection, 'smf_log_errors', |
|
991 | 1050 | 'INSERT INTO ' . $db_prefix . 'log_errors(id_member, log_time, ip, url, message, session, error_type, file, line) |
992 | 1051 | VALUES( $1, $2, $3, $4, $5, $6, $7, $8, $9)' |
993 | 1052 | ); |
1053 | + } |
|
994 | 1054 | |
995 | 1055 | pg_execute($db_connection, 'smf_log_errors', $error_array); |
996 | 1056 | } |
@@ -11,8 +11,9 @@ discard block |
||
11 | 11 | * @version 2.1 Beta 4 |
12 | 12 | */ |
13 | 13 | |
14 | -if (!defined('SMF')) |
|
14 | +if (!defined('SMF')) { |
|
15 | 15 | die('Hacking attempt...'); |
16 | +} |
|
16 | 17 | |
17 | 18 | /** |
18 | 19 | * Our Cache API class |
@@ -27,8 +28,9 @@ discard block |
||
27 | 28 | { |
28 | 29 | $supported = function_exists('zend_shm_cache_fetch') || function_exists('output_cache_get'); |
29 | 30 | |
30 | - if ($test) |
|
31 | - return $supported; |
|
31 | + if ($test) { |
|
32 | + return $supported; |
|
33 | + } |
|
32 | 34 | return parent::isSupported() && $supported; |
33 | 35 | } |
34 | 36 | |
@@ -40,10 +42,11 @@ discard block |
||
40 | 42 | $key = $this->prefix . strtr($key, ':/', '-_'); |
41 | 43 | |
42 | 44 | // Zend's pricey stuff. |
43 | - if (function_exists('zend_shm_cache_fetch')) |
|
44 | - return zend_shm_cache_fetch('SMF::' . $key); |
|
45 | - elseif (function_exists('output_cache_get')) |
|
46 | - return output_cache_get($key, $ttl); |
|
45 | + if (function_exists('zend_shm_cache_fetch')) { |
|
46 | + return zend_shm_cache_fetch('SMF::' . $key); |
|
47 | + } elseif (function_exists('output_cache_get')) { |
|
48 | + return output_cache_get($key, $ttl); |
|
49 | + } |
|
47 | 50 | } |
48 | 51 | |
49 | 52 | /** |
@@ -53,10 +56,11 @@ discard block |
||
53 | 56 | { |
54 | 57 | $key = $this->prefix . strtr($key, ':/', '-_'); |
55 | 58 | |
56 | - if (function_exists('zend_shm_cache_store')) |
|
57 | - return zend_shm_cache_store('SMF::' . $key, $value, $ttl); |
|
58 | - elseif (function_exists('output_cache_put')) |
|
59 | - return output_cache_put($key, $value); |
|
59 | + if (function_exists('zend_shm_cache_store')) { |
|
60 | + return zend_shm_cache_store('SMF::' . $key, $value, $ttl); |
|
61 | + } elseif (function_exists('output_cache_put')) { |
|
62 | + return output_cache_put($key, $value); |
|
63 | + } |
|
60 | 64 | } |
61 | 65 | |
62 | 66 | /** |
@@ -11,8 +11,9 @@ discard block |
||
11 | 11 | * @version 2.1 Beta 4 |
12 | 12 | */ |
13 | 13 | |
14 | -if (!defined('SMF')) |
|
14 | +if (!defined('SMF')) { |
|
15 | 15 | die('Hacking attempt...'); |
16 | +} |
|
16 | 17 | |
17 | 18 | /** |
18 | 19 | * Our Cache API class |
@@ -27,8 +28,9 @@ discard block |
||
27 | 28 | { |
28 | 29 | $supported = function_exists('apc_fetch') && function_exists('apc_store'); |
29 | 30 | |
30 | - if ($test) |
|
31 | - return $supported; |
|
31 | + if ($test) { |
|
32 | + return $supported; |
|
33 | + } |
|
32 | 34 | return parent::isSupported() && $supported; |
33 | 35 | } |
34 | 36 | |
@@ -50,10 +52,11 @@ discard block |
||
50 | 52 | $key = $this->prefix . strtr($key, ':/', '-_'); |
51 | 53 | |
52 | 54 | // An extended key is needed to counteract a bug in APC. |
53 | - if ($value === null) |
|
54 | - return apc_delete($key . 'smf'); |
|
55 | - else |
|
56 | - return apc_store($key . 'smf', $value, $ttl); |
|
55 | + if ($value === null) { |
|
56 | + return apc_delete($key . 'smf'); |
|
57 | + } else { |
|
58 | + return apc_store($key . 'smf', $value, $ttl); |
|
59 | + } |
|
57 | 60 | } |
58 | 61 | |
59 | 62 | /** |
@@ -67,9 +70,9 @@ discard block |
||
67 | 70 | // Always returns true. |
68 | 71 | apc_clear_cache('user'); |
69 | 72 | apc_clear_cache('system'); |
73 | + } elseif ($type === 'user') { |
|
74 | + apc_clear_cache('user'); |
|
70 | 75 | } |
71 | - elseif ($type === 'user') |
|
72 | - apc_clear_cache('user'); |
|
73 | 76 | |
74 | 77 | $this->invalidateCache(); |
75 | 78 | return true; |
@@ -13,8 +13,9 @@ discard block |
||
13 | 13 | * @version 2.1 Beta 4 |
14 | 14 | */ |
15 | 15 | |
16 | -if (!defined('SMF')) |
|
16 | +if (!defined('SMF')) { |
|
17 | 17 | die('No direct access...'); |
18 | +} |
|
18 | 19 | |
19 | 20 | /** |
20 | 21 | * This is a handling function for all things post moderation. |
@@ -39,8 +40,9 @@ discard block |
||
39 | 40 | ); |
40 | 41 | |
41 | 42 | // Pick something valid... |
42 | - if (!isset($_REQUEST['sa']) || !isset($subActions[$_REQUEST['sa']])) |
|
43 | - $_REQUEST['sa'] = 'replies'; |
|
43 | + if (!isset($_REQUEST['sa']) || !isset($subActions[$_REQUEST['sa']])) { |
|
44 | + $_REQUEST['sa'] = 'replies'; |
|
45 | + } |
|
44 | 46 | |
45 | 47 | call_integration_hook('integrate_post_moderation', array(&$subActions)); |
46 | 48 | |
@@ -68,13 +70,15 @@ discard block |
||
68 | 70 | $approve_boards = $approve_boards == array(0) ? $filter_board : array_intersect($approve_boards, $filter_board); |
69 | 71 | } |
70 | 72 | |
71 | - if ($approve_boards == array(0)) |
|
72 | - $approve_query = ''; |
|
73 | - elseif (!empty($approve_boards)) |
|
74 | - $approve_query = ' AND m.id_board IN (' . implode(',', $approve_boards) . ')'; |
|
73 | + if ($approve_boards == array(0)) { |
|
74 | + $approve_query = ''; |
|
75 | + } elseif (!empty($approve_boards)) { |
|
76 | + $approve_query = ' AND m.id_board IN (' . implode(',', $approve_boards) . ')'; |
|
77 | + } |
|
75 | 78 | // Nada, zip, etc... |
76 | - else |
|
77 | - $approve_query = ' AND 1=0'; |
|
79 | + else { |
|
80 | + $approve_query = ' AND 1=0'; |
|
81 | + } |
|
78 | 82 | |
79 | 83 | // We also need to know where we can delete topics and/or replies to. |
80 | 84 | if ($context['current_view'] == 'topics') |
@@ -82,8 +86,7 @@ discard block |
||
82 | 86 | $delete_own_boards = boardsAllowedTo('remove_own'); |
83 | 87 | $delete_any_boards = boardsAllowedTo('remove_any'); |
84 | 88 | $delete_own_replies = array(); |
85 | - } |
|
86 | - else |
|
89 | + } else |
|
87 | 90 | { |
88 | 91 | $delete_own_boards = boardsAllowedTo('delete_own'); |
89 | 92 | $delete_any_boards = boardsAllowedTo('delete_any'); |
@@ -92,21 +95,25 @@ discard block |
||
92 | 95 | |
93 | 96 | $toAction = array(); |
94 | 97 | // Check if we have something to do? |
95 | - if (isset($_GET['approve'])) |
|
96 | - $toAction[] = (int) $_GET['approve']; |
|
98 | + if (isset($_GET['approve'])) { |
|
99 | + $toAction[] = (int) $_GET['approve']; |
|
100 | + } |
|
97 | 101 | // Just a deletion? |
98 | - elseif (isset($_GET['delete'])) |
|
99 | - $toAction[] = (int) $_GET['delete']; |
|
102 | + elseif (isset($_GET['delete'])) { |
|
103 | + $toAction[] = (int) $_GET['delete']; |
|
104 | + } |
|
100 | 105 | // Lots of approvals? |
101 | - elseif (isset($_POST['item'])) |
|
102 | - foreach ($_POST['item'] as $item) |
|
106 | + elseif (isset($_POST['item'])) { |
|
107 | + foreach ($_POST['item'] as $item) |
|
103 | 108 | $toAction[] = (int) $item; |
109 | + } |
|
104 | 110 | |
105 | 111 | // What are we actually doing. |
106 | - if (isset($_GET['approve']) || (isset($_POST['do']) && $_POST['do'] == 'approve')) |
|
107 | - $curAction = 'approve'; |
|
108 | - elseif (isset($_GET['delete']) || (isset($_POST['do']) && $_POST['do'] == 'delete')) |
|
109 | - $curAction = 'delete'; |
|
112 | + if (isset($_GET['approve']) || (isset($_POST['do']) && $_POST['do'] == 'approve')) { |
|
113 | + $curAction = 'approve'; |
|
114 | + } elseif (isset($_GET['delete']) || (isset($_POST['do']) && $_POST['do'] == 'delete')) { |
|
115 | + $curAction = 'delete'; |
|
116 | + } |
|
110 | 117 | |
111 | 118 | // Right, so we have something to do? |
112 | 119 | if (!empty($toAction) && isset($curAction)) |
@@ -135,8 +142,9 @@ discard block |
||
135 | 142 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
136 | 143 | { |
137 | 144 | // If it's not within what our view is ignore it... |
138 | - if (($row['id_msg'] == $row['id_first_msg'] && $context['current_view'] != 'topics') || ($row['id_msg'] != $row['id_first_msg'] && $context['current_view'] != 'replies')) |
|
139 | - continue; |
|
145 | + if (($row['id_msg'] == $row['id_first_msg'] && $context['current_view'] != 'topics') || ($row['id_msg'] != $row['id_first_msg'] && $context['current_view'] != 'replies')) { |
|
146 | + continue; |
|
147 | + } |
|
140 | 148 | |
141 | 149 | $can_add = false; |
142 | 150 | // If we're approving this is simple. |
@@ -148,18 +156,22 @@ discard block |
||
148 | 156 | elseif ($curAction == 'delete') |
149 | 157 | { |
150 | 158 | // Own post is easy! |
151 | - if ($row['id_member'] == $user_info['id'] && ($delete_own_boards == array(0) || in_array($row['id_board'], $delete_own_boards))) |
|
152 | - $can_add = true; |
|
159 | + if ($row['id_member'] == $user_info['id'] && ($delete_own_boards == array(0) || in_array($row['id_board'], $delete_own_boards))) { |
|
160 | + $can_add = true; |
|
161 | + } |
|
153 | 162 | // Is it a reply to their own topic? |
154 | - elseif ($row['id_member'] == $row['id_member_started'] && $row['id_msg'] != $row['id_first_msg'] && ($delete_own_replies == array(0) || in_array($row['id_board'], $delete_own_replies))) |
|
155 | - $can_add = true; |
|
163 | + elseif ($row['id_member'] == $row['id_member_started'] && $row['id_msg'] != $row['id_first_msg'] && ($delete_own_replies == array(0) || in_array($row['id_board'], $delete_own_replies))) { |
|
164 | + $can_add = true; |
|
165 | + } |
|
156 | 166 | // Someone elses? |
157 | - elseif ($row['id_member'] != $user_info['id'] && ($delete_any_boards == array(0) || in_array($row['id_board'], $delete_any_boards))) |
|
158 | - $can_add = true; |
|
167 | + elseif ($row['id_member'] != $user_info['id'] && ($delete_any_boards == array(0) || in_array($row['id_board'], $delete_any_boards))) { |
|
168 | + $can_add = true; |
|
169 | + } |
|
159 | 170 | } |
160 | 171 | |
161 | - if ($can_add) |
|
162 | - $anItem = $context['current_view'] == 'topics' ? $row['id_topic'] : $row['id_msg']; |
|
172 | + if ($can_add) { |
|
173 | + $anItem = $context['current_view'] == 'topics' ? $row['id_topic'] : $row['id_msg']; |
|
174 | + } |
|
163 | 175 | $toAction[] = $anItem; |
164 | 176 | |
165 | 177 | // All clear. What have we got now, what, what? |
@@ -177,8 +189,7 @@ discard block |
||
177 | 189 | if ($curAction == 'approve') |
178 | 190 | { |
179 | 191 | approveMessages($toAction, $details, $context['current_view']); |
180 | - } |
|
181 | - else |
|
192 | + } else |
|
182 | 193 | { |
183 | 194 | removeMessages($toAction, $details, $context['current_view']); |
184 | 195 | } |
@@ -265,16 +276,19 @@ discard block |
||
265 | 276 | for ($i = 1; $row = $smcFunc['db_fetch_assoc']($request); $i++) |
266 | 277 | { |
267 | 278 | // Can delete is complicated, let's solve it first... is it their own post? |
268 | - if ($row['id_member'] == $user_info['id'] && ($delete_own_boards == array(0) || in_array($row['id_board'], $delete_own_boards))) |
|
269 | - $can_delete = true; |
|
279 | + if ($row['id_member'] == $user_info['id'] && ($delete_own_boards == array(0) || in_array($row['id_board'], $delete_own_boards))) { |
|
280 | + $can_delete = true; |
|
281 | + } |
|
270 | 282 | // Is it a reply to their own topic? |
271 | - elseif ($row['id_member'] == $row['id_member_started'] && $row['id_msg'] != $row['id_first_msg'] && ($delete_own_replies == array(0) || in_array($row['id_board'], $delete_own_replies))) |
|
272 | - $can_delete = true; |
|
283 | + elseif ($row['id_member'] == $row['id_member_started'] && $row['id_msg'] != $row['id_first_msg'] && ($delete_own_replies == array(0) || in_array($row['id_board'], $delete_own_replies))) { |
|
284 | + $can_delete = true; |
|
285 | + } |
|
273 | 286 | // Someone elses? |
274 | - elseif ($row['id_member'] != $user_info['id'] && ($delete_any_boards == array(0) || in_array($row['id_board'], $delete_any_boards))) |
|
275 | - $can_delete = true; |
|
276 | - else |
|
277 | - $can_delete = false; |
|
287 | + elseif ($row['id_member'] != $user_info['id'] && ($delete_any_boards == array(0) || in_array($row['id_board'], $delete_any_boards))) { |
|
288 | + $can_delete = true; |
|
289 | + } else { |
|
290 | + $can_delete = false; |
|
291 | + } |
|
278 | 292 | |
279 | 293 | $context['unapproved_items'][] = array( |
280 | 294 | 'id' => $row['id_msg'], |
@@ -323,28 +337,31 @@ discard block |
||
323 | 337 | // Once again, permissions are king! |
324 | 338 | $approve_boards = boardsAllowedTo('approve_posts'); |
325 | 339 | |
326 | - if ($approve_boards == array(0)) |
|
327 | - $approve_query = ''; |
|
328 | - elseif (!empty($approve_boards)) |
|
329 | - $approve_query = ' AND m.id_board IN (' . implode(',', $approve_boards) . ')'; |
|
330 | - else |
|
331 | - $approve_query = ' AND 1=0'; |
|
340 | + if ($approve_boards == array(0)) { |
|
341 | + $approve_query = ''; |
|
342 | + } elseif (!empty($approve_boards)) { |
|
343 | + $approve_query = ' AND m.id_board IN (' . implode(',', $approve_boards) . ')'; |
|
344 | + } else { |
|
345 | + $approve_query = ' AND 1=0'; |
|
346 | + } |
|
332 | 347 | |
333 | 348 | // Get together the array of things to act on, if any. |
334 | 349 | $attachments = array(); |
335 | - if (isset($_GET['approve'])) |
|
336 | - $attachments[] = (int) $_GET['approve']; |
|
337 | - elseif (isset($_GET['delete'])) |
|
338 | - $attachments[] = (int) $_GET['delete']; |
|
339 | - elseif (isset($_POST['item'])) |
|
340 | - foreach ($_POST['item'] as $item) |
|
350 | + if (isset($_GET['approve'])) { |
|
351 | + $attachments[] = (int) $_GET['approve']; |
|
352 | + } elseif (isset($_GET['delete'])) { |
|
353 | + $attachments[] = (int) $_GET['delete']; |
|
354 | + } elseif (isset($_POST['item'])) { |
|
355 | + foreach ($_POST['item'] as $item) |
|
341 | 356 | $attachments[] = (int) $item; |
357 | + } |
|
342 | 358 | |
343 | 359 | // Are we approving or deleting? |
344 | - if (isset($_GET['approve']) || (isset($_POST['do']) && $_POST['do'] == 'approve')) |
|
345 | - $curAction = 'approve'; |
|
346 | - elseif (isset($_GET['delete']) || (isset($_POST['do']) && $_POST['do'] == 'delete')) |
|
347 | - $curAction = 'delete'; |
|
360 | + if (isset($_GET['approve']) || (isset($_POST['do']) && $_POST['do'] == 'approve')) { |
|
361 | + $curAction = 'approve'; |
|
362 | + } elseif (isset($_GET['delete']) || (isset($_POST['do']) && $_POST['do'] == 'delete')) { |
|
363 | + $curAction = 'delete'; |
|
364 | + } |
|
348 | 365 | |
349 | 366 | // Something to do, let's do it! |
350 | 367 | if (!empty($attachments) && isset($curAction)) |
@@ -372,17 +389,19 @@ discard block |
||
372 | 389 | ) |
373 | 390 | ); |
374 | 391 | $attachments = array(); |
375 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
376 | - $attachments[] = $row['id_attach']; |
|
392 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
393 | + $attachments[] = $row['id_attach']; |
|
394 | + } |
|
377 | 395 | $smcFunc['db_free_result']($request); |
378 | 396 | |
379 | 397 | // Assuming it wasn't all like, proper illegal, we can do the approving. |
380 | 398 | if (!empty($attachments)) |
381 | 399 | { |
382 | - if ($curAction == 'approve') |
|
383 | - ApproveAttachments($attachments); |
|
384 | - else |
|
385 | - removeAttachments(array('id_attach' => $attachments, 'do_logging' => true)); |
|
400 | + if ($curAction == 'approve') { |
|
401 | + ApproveAttachments($attachments); |
|
402 | + } else { |
|
403 | + removeAttachments(array('id_attach' => $attachments, 'do_logging' => true)); |
|
404 | + } |
|
386 | 405 | } |
387 | 406 | } |
388 | 407 | |
@@ -682,15 +701,16 @@ discard block |
||
682 | 701 | { |
683 | 702 | approveTopics($topic, !$approved); |
684 | 703 | |
685 | - if ($starter != $user_info['id']) |
|
686 | - logAction(($approved ? 'un' : '') . 'approve_topic', array('topic' => $topic, 'subject' => $subject, 'member' => $starter, 'board' => $board)); |
|
687 | - } |
|
688 | - else |
|
704 | + if ($starter != $user_info['id']) { |
|
705 | + logAction(($approved ? 'un' : '') . 'approve_topic', array('topic' => $topic, 'subject' => $subject, 'member' => $starter, 'board' => $board)); |
|
706 | + } |
|
707 | + } else |
|
689 | 708 | { |
690 | 709 | approvePosts($_REQUEST['msg'], !$approved); |
691 | 710 | |
692 | - if ($poster != $user_info['id']) |
|
693 | - logAction(($approved ? 'un' : '') . 'approve', array('topic' => $topic, 'subject' => $subject, 'member' => $poster, 'board' => $board)); |
|
711 | + if ($poster != $user_info['id']) { |
|
712 | + logAction(($approved ? 'un' : '') . 'approve', array('topic' => $topic, 'subject' => $subject, 'member' => $poster, 'board' => $board)); |
|
713 | + } |
|
694 | 714 | } |
695 | 715 | |
696 | 716 | redirectexit('topic=' . $topic . '.msg' . $_REQUEST['msg'] . '#msg' . $_REQUEST['msg']); |
@@ -716,8 +736,7 @@ discard block |
||
716 | 736 | { |
717 | 737 | logAction('approve_topic', array('topic' => $topic, 'subject' => $messageDetails[$topic]['subject'], 'member' => $messageDetails[$topic]['member'], 'board' => $messageDetails[$topic]['board'])); |
718 | 738 | } |
719 | - } |
|
720 | - else |
|
739 | + } else |
|
721 | 740 | { |
722 | 741 | approvePosts($messages); |
723 | 742 | // and tell the world about it again |
@@ -745,8 +764,9 @@ discard block |
||
745 | 764 | ) |
746 | 765 | ); |
747 | 766 | $msgs = array(); |
748 | - while ($row = $smcFunc['db_fetch_row']($request)) |
|
749 | - $msgs[] = $row[0]; |
|
767 | + while ($row = $smcFunc['db_fetch_row']($request)) { |
|
768 | + $msgs[] = $row[0]; |
|
769 | + } |
|
750 | 770 | $smcFunc['db_free_result']($request); |
751 | 771 | |
752 | 772 | if (!empty($msgs)) |
@@ -765,8 +785,9 @@ discard block |
||
765 | 785 | ) |
766 | 786 | ); |
767 | 787 | $attaches = array(); |
768 | - while ($row = $smcFunc['db_fetch_row']($request)) |
|
769 | - $attaches[] = $row[0]; |
|
788 | + while ($row = $smcFunc['db_fetch_row']($request)) { |
|
789 | + $attaches[] = $row[0]; |
|
790 | + } |
|
770 | 791 | $smcFunc['db_free_result']($request); |
771 | 792 | |
772 | 793 | if (!empty($attaches)) |
@@ -794,12 +815,12 @@ discard block |
||
794 | 815 | { |
795 | 816 | removeTopics($messages); |
796 | 817 | // and tell the world about it |
797 | - foreach ($messages as $topic) |
|
798 | - // Note, only log topic ID in native form if it's not gone forever. |
|
818 | + foreach ($messages as $topic) { |
|
819 | + // Note, only log topic ID in native form if it's not gone forever. |
|
799 | 820 | logAction('remove', array( |
800 | 821 | (empty($modSettings['recycle_enable']) || $modSettings['recycle_board'] != $messageDetails[$topic]['board'] ? 'topic' : 'old_topic_id') => $topic, 'subject' => $messageDetails[$topic]['subject'], 'member' => $messageDetails[$topic]['member'], 'board' => $messageDetails[$topic]['board'])); |
801 | - } |
|
802 | - else |
|
822 | + } |
|
823 | + } else |
|
803 | 824 | { |
804 | 825 | foreach ($messages as $post) |
805 | 826 | { |
@@ -14,8 +14,9 @@ discard block |
||
14 | 14 | * @version 2.1 Beta 4 |
15 | 15 | */ |
16 | 16 | |
17 | -if (!defined('SMF')) |
|
17 | +if (!defined('SMF')) { |
|
18 | 18 | die('No direct access...'); |
19 | +} |
|
19 | 20 | |
20 | 21 | /** |
21 | 22 | * This function shows the board index. |
@@ -34,8 +35,9 @@ discard block |
||
34 | 35 | $context['canonical_url'] = $scripturl; |
35 | 36 | |
36 | 37 | // Do not let search engines index anything if there is a random thing in $_GET. |
37 | - if (!empty($_GET)) |
|
38 | - $context['robot_no_index'] = true; |
|
38 | + if (!empty($_GET)) { |
|
39 | + $context['robot_no_index'] = true; |
|
40 | + } |
|
39 | 41 | |
40 | 42 | // Retrieve the categories and boards. |
41 | 43 | require_once($sourcedir . '/Subs-BoardIndex.php'); |
@@ -62,11 +64,12 @@ discard block |
||
62 | 64 | $context['latest_posts'] = cache_quick_get('boardindex-latest_posts:' . md5($user_info['query_wanna_see_board'] . $user_info['language']), 'Subs-Recent.php', 'cache_getLastPosts', array($latestPostOptions)); |
63 | 65 | } |
64 | 66 | |
65 | - if (!empty($context['latest_posts']) || !empty($context['latest_post'])) |
|
66 | - $context['info_center'][] = array( |
|
67 | + if (!empty($context['latest_posts']) || !empty($context['latest_post'])) { |
|
68 | + $context['info_center'][] = array( |
|
67 | 69 | 'tpl' => 'recent', |
68 | 70 | 'txt' => 'recent_posts', |
69 | 71 | ); |
72 | + } |
|
70 | 73 | } |
71 | 74 | |
72 | 75 | // Load the calendar? |
@@ -87,20 +90,22 @@ discard block |
||
87 | 90 | // This is used to show the "how-do-I-edit" help. |
88 | 91 | $context['calendar_can_edit'] = allowedTo('calendar_edit_any'); |
89 | 92 | |
90 | - if ($context['show_calendar']) |
|
91 | - $context['info_center'][] = array( |
|
93 | + if ($context['show_calendar']) { |
|
94 | + $context['info_center'][] = array( |
|
92 | 95 | 'tpl' => 'calendar', |
93 | 96 | 'txt' => $context['calendar_only_today'] ? 'calendar_today' : 'calendar_upcoming', |
94 | 97 | ); |
98 | + } |
|
95 | 99 | } |
96 | 100 | |
97 | 101 | // And stats. |
98 | 102 | $context['show_stats'] = allowedTo('view_stats') && !empty($modSettings['trackStats']); |
99 | - if ($settings['show_stats_index']) |
|
100 | - $context['info_center'][] = array( |
|
103 | + if ($settings['show_stats_index']) { |
|
104 | + $context['info_center'][] = array( |
|
101 | 105 | 'tpl' => 'stats', |
102 | 106 | 'txt' => 'forum_stats', |
103 | 107 | ); |
108 | + } |
|
104 | 109 | |
105 | 110 | // Now the online stuff |
106 | 111 | require_once($sourcedir . '/Subs-MembersOnline.php'); |
@@ -118,12 +123,14 @@ discard block |
||
118 | 123 | ); |
119 | 124 | |
120 | 125 | // Track most online statistics? (Subs-MembersOnline.php) |
121 | - if (!empty($modSettings['trackStats'])) |
|
122 | - trackStatsUsersOnline($context['num_guests'] + $context['num_spiders'] + $context['num_users_online']); |
|
126 | + if (!empty($modSettings['trackStats'])) { |
|
127 | + trackStatsUsersOnline($context['num_guests'] + $context['num_spiders'] + $context['num_users_online']); |
|
128 | + } |
|
123 | 129 | |
124 | 130 | // Are we showing all membergroups on the board index? |
125 | - if (!empty($settings['show_group_key'])) |
|
126 | - $context['membergroups'] = cache_quick_get('membergroup_list', 'Subs-Membergroups.php', 'cache_getMembergroupList', array()); |
|
131 | + if (!empty($settings['show_group_key'])) { |
|
132 | + $context['membergroups'] = cache_quick_get('membergroup_list', 'Subs-Membergroups.php', 'cache_getMembergroupList', array()); |
|
133 | + } |
|
127 | 134 | |
128 | 135 | // And back to normality. |
129 | 136 | $context['page_title'] = sprintf($txt['forum_index'], $context['forum_name']); |
@@ -14,8 +14,9 @@ discard block |
||
14 | 14 | * @version 2.1 Beta 4 |
15 | 15 | */ |
16 | 16 | |
17 | -if (!defined('SMF')) |
|
17 | +if (!defined('SMF')) { |
|
18 | 18 | die('No direct access...'); |
19 | +} |
|
19 | 20 | |
20 | 21 | /** |
21 | 22 | * Mark a board or multiple boards read. |
@@ -28,14 +29,16 @@ discard block |
||
28 | 29 | global $user_info, $modSettings, $smcFunc; |
29 | 30 | |
30 | 31 | // Force $boards to be an array. |
31 | - if (!is_array($boards)) |
|
32 | - $boards = array($boards); |
|
33 | - else |
|
34 | - $boards = array_unique($boards); |
|
32 | + if (!is_array($boards)) { |
|
33 | + $boards = array($boards); |
|
34 | + } else { |
|
35 | + $boards = array_unique($boards); |
|
36 | + } |
|
35 | 37 | |
36 | 38 | // No boards, nothing to mark as read. |
37 | - if (empty($boards)) |
|
38 | - return; |
|
39 | + if (empty($boards)) { |
|
40 | + return; |
|
41 | + } |
|
39 | 42 | |
40 | 43 | // Allow the user to mark a board as unread. |
41 | 44 | if ($unread) |
@@ -65,8 +68,9 @@ discard block |
||
65 | 68 | else |
66 | 69 | { |
67 | 70 | $markRead = array(); |
68 | - foreach ($boards as $board) |
|
69 | - $markRead[] = array($modSettings['maxMsgID'], $user_info['id'], $board); |
|
71 | + foreach ($boards as $board) { |
|
72 | + $markRead[] = array($modSettings['maxMsgID'], $user_info['id'], $board); |
|
73 | + } |
|
70 | 74 | |
71 | 75 | // Update log_mark_read and log_boards. |
72 | 76 | $smcFunc['db_insert']('replace', |
@@ -99,8 +103,9 @@ discard block |
||
99 | 103 | list ($lowest_topic) = $smcFunc['db_fetch_row']($result); |
100 | 104 | $smcFunc['db_free_result']($result); |
101 | 105 | |
102 | - if (empty($lowest_topic)) |
|
103 | - return; |
|
106 | + if (empty($lowest_topic)) { |
|
107 | + return; |
|
108 | + } |
|
104 | 109 | |
105 | 110 | // @todo SLOW This query seems to eat it sometimes. |
106 | 111 | $result = $smcFunc['db_query']('', ' |
@@ -118,12 +123,13 @@ discard block |
||
118 | 123 | ) |
119 | 124 | ); |
120 | 125 | $topics = array(); |
121 | - while ($row = $smcFunc['db_fetch_assoc']($result)) |
|
122 | - $topics[] = $row['id_topic']; |
|
126 | + while ($row = $smcFunc['db_fetch_assoc']($result)) { |
|
127 | + $topics[] = $row['id_topic']; |
|
128 | + } |
|
123 | 129 | $smcFunc['db_free_result']($result); |
124 | 130 | |
125 | - if (!empty($topics)) |
|
126 | - $smcFunc['db_query']('', ' |
|
131 | + if (!empty($topics)) { |
|
132 | + $smcFunc['db_query']('', ' |
|
127 | 133 | DELETE FROM {db_prefix}log_topics |
128 | 134 | WHERE id_member = {int:current_member} |
129 | 135 | AND id_topic IN ({array_int:topic_list})', |
@@ -132,7 +138,8 @@ discard block |
||
132 | 138 | 'topic_list' => $topics, |
133 | 139 | ) |
134 | 140 | ); |
135 | -} |
|
141 | + } |
|
142 | + } |
|
136 | 143 | |
137 | 144 | /** |
138 | 145 | * Mark one or more boards as read. |
@@ -157,23 +164,26 @@ discard block |
||
157 | 164 | ) |
158 | 165 | ); |
159 | 166 | $boards = array(); |
160 | - while ($row = $smcFunc['db_fetch_assoc']($result)) |
|
161 | - $boards[] = $row['id_board']; |
|
167 | + while ($row = $smcFunc['db_fetch_assoc']($result)) { |
|
168 | + $boards[] = $row['id_board']; |
|
169 | + } |
|
162 | 170 | $smcFunc['db_free_result']($result); |
163 | 171 | |
164 | - if (!empty($boards)) |
|
165 | - markBoardsRead($boards, isset($_REQUEST['unread'])); |
|
172 | + if (!empty($boards)) { |
|
173 | + markBoardsRead($boards, isset($_REQUEST['unread'])); |
|
174 | + } |
|
166 | 175 | |
167 | 176 | $_SESSION['id_msg_last_visit'] = $modSettings['maxMsgID']; |
168 | - if (!empty($_SESSION['old_url']) && strpos($_SESSION['old_url'], 'action=unread') !== false) |
|
169 | - redirectexit('action=unread'); |
|
177 | + if (!empty($_SESSION['old_url']) && strpos($_SESSION['old_url'], 'action=unread') !== false) { |
|
178 | + redirectexit('action=unread'); |
|
179 | + } |
|
170 | 180 | |
171 | - if (isset($_SESSION['topicseen_cache'])) |
|
172 | - $_SESSION['topicseen_cache'] = array(); |
|
181 | + if (isset($_SESSION['topicseen_cache'])) { |
|
182 | + $_SESSION['topicseen_cache'] = array(); |
|
183 | + } |
|
173 | 184 | |
174 | 185 | redirectexit(); |
175 | - } |
|
176 | - elseif (isset($_REQUEST['sa']) && $_REQUEST['sa'] == 'unreadreplies') |
|
186 | + } elseif (isset($_REQUEST['sa']) && $_REQUEST['sa'] == 'unreadreplies') |
|
177 | 187 | { |
178 | 188 | // Make sure all the topics are integers! |
179 | 189 | $topics = array_map('intval', explode('-', $_REQUEST['topics'])); |
@@ -189,13 +199,15 @@ discard block |
||
189 | 199 | ) |
190 | 200 | ); |
191 | 201 | $logged_topics = array(); |
192 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
193 | - $logged_topics[$row['id_topic']] = $row['unwatched']; |
|
202 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
203 | + $logged_topics[$row['id_topic']] = $row['unwatched']; |
|
204 | + } |
|
194 | 205 | $smcFunc['db_free_result']($request); |
195 | 206 | |
196 | 207 | $markRead = array(); |
197 | - foreach ($topics as $id_topic) |
|
198 | - $markRead[] = array($modSettings['maxMsgID'], $user_info['id'], $id_topic, (isset($logged_topics[$topic]) ? $logged_topics[$topic] : 0)); |
|
208 | + foreach ($topics as $id_topic) { |
|
209 | + $markRead[] = array($modSettings['maxMsgID'], $user_info['id'], $id_topic, (isset($logged_topics[$topic]) ? $logged_topics[$topic] : 0)); |
|
210 | + } |
|
199 | 211 | |
200 | 212 | $smcFunc['db_insert']('replace', |
201 | 213 | '{db_prefix}log_topics', |
@@ -204,8 +216,9 @@ discard block |
||
204 | 216 | array('id_member', 'id_topic') |
205 | 217 | ); |
206 | 218 | |
207 | - if (isset($_SESSION['topicseen_cache'])) |
|
208 | - $_SESSION['topicseen_cache'] = array(); |
|
219 | + if (isset($_SESSION['topicseen_cache'])) { |
|
220 | + $_SESSION['topicseen_cache'] = array(); |
|
221 | + } |
|
209 | 222 | |
210 | 223 | redirectexit('action=unreadreplies'); |
211 | 224 | } |
@@ -230,11 +243,13 @@ discard block |
||
230 | 243 | if (!empty($_GET['t'])) |
231 | 244 | { |
232 | 245 | // If they read the whole topic, go back to the beginning. |
233 | - if ($_GET['t'] >= $topicinfo['id_last_msg']) |
|
234 | - $earlyMsg = 0; |
|
246 | + if ($_GET['t'] >= $topicinfo['id_last_msg']) { |
|
247 | + $earlyMsg = 0; |
|
248 | + } |
|
235 | 249 | // If they want to mark the whole thing read, same. |
236 | - elseif ($_GET['t'] <= $topicinfo['id_first_msg']) |
|
237 | - $earlyMsg = 0; |
|
250 | + elseif ($_GET['t'] <= $topicinfo['id_first_msg']) { |
|
251 | + $earlyMsg = 0; |
|
252 | + } |
|
238 | 253 | // Otherwise, get the latest message before the named one. |
239 | 254 | else |
240 | 255 | { |
@@ -255,9 +270,9 @@ discard block |
||
255 | 270 | } |
256 | 271 | } |
257 | 272 | // Marking read from first page? That's the whole topic. |
258 | - elseif ($_REQUEST['start'] == 0) |
|
259 | - $earlyMsg = 0; |
|
260 | - else |
|
273 | + elseif ($_REQUEST['start'] == 0) { |
|
274 | + $earlyMsg = 0; |
|
275 | + } else |
|
261 | 276 | { |
262 | 277 | $result = $smcFunc['db_query']('', ' |
263 | 278 | SELECT id_msg |
@@ -285,8 +300,7 @@ discard block |
||
285 | 300 | ); |
286 | 301 | |
287 | 302 | redirectexit('board=' . $board . '.0'); |
288 | - } |
|
289 | - else |
|
303 | + } else |
|
290 | 304 | { |
291 | 305 | $categories = array(); |
292 | 306 | $boards = array(); |
@@ -294,17 +308,20 @@ discard block |
||
294 | 308 | if (isset($_REQUEST['c'])) |
295 | 309 | { |
296 | 310 | $_REQUEST['c'] = explode(',', $_REQUEST['c']); |
297 | - foreach ($_REQUEST['c'] as $c) |
|
298 | - $categories[] = (int) $c; |
|
311 | + foreach ($_REQUEST['c'] as $c) { |
|
312 | + $categories[] = (int) $c; |
|
313 | + } |
|
299 | 314 | } |
300 | 315 | if (isset($_REQUEST['boards'])) |
301 | 316 | { |
302 | 317 | $_REQUEST['boards'] = explode(',', $_REQUEST['boards']); |
303 | - foreach ($_REQUEST['boards'] as $b) |
|
304 | - $boards[] = (int) $b; |
|
318 | + foreach ($_REQUEST['boards'] as $b) { |
|
319 | + $boards[] = (int) $b; |
|
320 | + } |
|
321 | + } |
|
322 | + if (!empty($board)) { |
|
323 | + $boards[] = (int) $board; |
|
305 | 324 | } |
306 | - if (!empty($board)) |
|
307 | - $boards[] = (int) $board; |
|
308 | 325 | |
309 | 326 | if (isset($_REQUEST['children']) && !empty($boards)) |
310 | 327 | { |
@@ -324,9 +341,10 @@ discard block |
||
324 | 341 | 'board_list' => $boards, |
325 | 342 | ) |
326 | 343 | ); |
327 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
328 | - if (in_array($row['id_parent'], $boards)) |
|
344 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
345 | + if (in_array($row['id_parent'], $boards)) |
|
329 | 346 | $boards[] = $row['id_board']; |
347 | + } |
|
330 | 348 | $smcFunc['db_free_result']($request); |
331 | 349 | } |
332 | 350 | |
@@ -343,8 +361,9 @@ discard block |
||
343 | 361 | $clauseParameters['board_list'] = $boards; |
344 | 362 | } |
345 | 363 | |
346 | - if (empty($clauses)) |
|
347 | - redirectexit(); |
|
364 | + if (empty($clauses)) { |
|
365 | + redirectexit(); |
|
366 | + } |
|
348 | 367 | |
349 | 368 | $request = $smcFunc['db_query']('', ' |
350 | 369 | SELECT b.id_board |
@@ -355,19 +374,22 @@ discard block |
||
355 | 374 | )) |
356 | 375 | ); |
357 | 376 | $boards = array(); |
358 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
359 | - $boards[] = $row['id_board']; |
|
377 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
378 | + $boards[] = $row['id_board']; |
|
379 | + } |
|
360 | 380 | $smcFunc['db_free_result']($request); |
361 | 381 | |
362 | - if (empty($boards)) |
|
363 | - redirectexit(); |
|
382 | + if (empty($boards)) { |
|
383 | + redirectexit(); |
|
384 | + } |
|
364 | 385 | |
365 | 386 | markBoardsRead($boards, isset($_REQUEST['unread'])); |
366 | 387 | |
367 | 388 | foreach ($boards as $b) |
368 | 389 | { |
369 | - if (isset($_SESSION['topicseen_cache'][$b])) |
|
370 | - $_SESSION['topicseen_cache'][$b] = array(); |
|
390 | + if (isset($_SESSION['topicseen_cache'][$b])) { |
|
391 | + $_SESSION['topicseen_cache'][$b] = array(); |
|
392 | + } |
|
371 | 393 | } |
372 | 394 | |
373 | 395 | if (!isset($_REQUEST['unread'])) |
@@ -385,8 +407,9 @@ discard block |
||
385 | 407 | if ($smcFunc['db_num_rows']($result) > 0) |
386 | 408 | { |
387 | 409 | $logBoardInserts = array(); |
388 | - while ($row = $smcFunc['db_fetch_assoc']($result)) |
|
389 | - $logBoardInserts[] = array($modSettings['maxMsgID'], $user_info['id'], $row['id_board']); |
|
410 | + while ($row = $smcFunc['db_fetch_assoc']($result)) { |
|
411 | + $logBoardInserts[] = array($modSettings['maxMsgID'], $user_info['id'], $row['id_board']); |
|
412 | + } |
|
390 | 413 | |
391 | 414 | $smcFunc['db_insert']('replace', |
392 | 415 | '{db_prefix}log_boards', |
@@ -397,17 +420,18 @@ discard block |
||
397 | 420 | } |
398 | 421 | $smcFunc['db_free_result']($result); |
399 | 422 | |
400 | - if (empty($board)) |
|
401 | - redirectexit(); |
|
402 | - else |
|
403 | - redirectexit('board=' . $board . '.0'); |
|
404 | - } |
|
405 | - else |
|
423 | + if (empty($board)) { |
|
424 | + redirectexit(); |
|
425 | + } else { |
|
426 | + redirectexit('board=' . $board . '.0'); |
|
427 | + } |
|
428 | + } else |
|
406 | 429 | { |
407 | - if (empty($board_info['parent'])) |
|
408 | - redirectexit(); |
|
409 | - else |
|
410 | - redirectexit('board=' . $board_info['parent'] . '.0'); |
|
430 | + if (empty($board_info['parent'])) { |
|
431 | + redirectexit(); |
|
432 | + } else { |
|
433 | + redirectexit('board=' . $board_info['parent'] . '.0'); |
|
434 | + } |
|
411 | 435 | } |
412 | 436 | } |
413 | 437 | } |
@@ -432,11 +456,13 @@ discard block |
||
432 | 456 | 'selected_message' => (int) $messageID, |
433 | 457 | ) |
434 | 458 | ); |
435 | - if ($smcFunc['db_num_rows']($result) > 0) |
|
436 | - list ($memberID) = $smcFunc['db_fetch_row']($result); |
|
459 | + if ($smcFunc['db_num_rows']($result) > 0) { |
|
460 | + list ($memberID) = $smcFunc['db_fetch_row']($result); |
|
461 | + } |
|
437 | 462 | // The message doesn't even exist. |
438 | - else |
|
439 | - $memberID = 0; |
|
463 | + else { |
|
464 | + $memberID = 0; |
|
465 | + } |
|
440 | 466 | $smcFunc['db_free_result']($result); |
441 | 467 | |
442 | 468 | return (int) $memberID; |
@@ -457,8 +483,9 @@ discard block |
||
457 | 483 | getBoardTree(); |
458 | 484 | |
459 | 485 | // Make sure given boards and categories exist. |
460 | - if (!isset($boards[$board_id]) || (isset($boardOptions['target_board']) && !isset($boards[$boardOptions['target_board']])) || (isset($boardOptions['target_category']) && !isset($cat_tree[$boardOptions['target_category']]))) |
|
461 | - fatal_lang_error('no_board'); |
|
486 | + if (!isset($boards[$board_id]) || (isset($boardOptions['target_board']) && !isset($boards[$boardOptions['target_board']])) || (isset($boardOptions['target_category']) && !isset($cat_tree[$boardOptions['target_category']]))) { |
|
487 | + fatal_lang_error('no_board'); |
|
488 | + } |
|
462 | 489 | |
463 | 490 | $id = $board_id; |
464 | 491 | call_integration_hook('integrate_pre_modify_board', array($id, &$boardOptions)); |
@@ -486,8 +513,9 @@ discard block |
||
486 | 513 | $child_level = 0; |
487 | 514 | $id_parent = 0; |
488 | 515 | $after = 0; |
489 | - foreach ($cat_tree[$id_cat]['children'] as $id_board => $dummy) |
|
490 | - $after = max($after, $boards[$id_board]['order']); |
|
516 | + foreach ($cat_tree[$id_cat]['children'] as $id_board => $dummy) { |
|
517 | + $after = max($after, $boards[$id_board]['order']); |
|
518 | + } |
|
491 | 519 | } |
492 | 520 | |
493 | 521 | // Make the board a child of a given board. |
@@ -498,17 +526,19 @@ discard block |
||
498 | 526 | $id_parent = $boardOptions['target_board']; |
499 | 527 | |
500 | 528 | // People can be creative, in many ways... |
501 | - if (isChildOf($id_parent, $board_id)) |
|
502 | - fatal_lang_error('mboards_parent_own_child_error', false); |
|
503 | - elseif ($id_parent == $board_id) |
|
504 | - fatal_lang_error('mboards_board_own_child_error', false); |
|
529 | + if (isChildOf($id_parent, $board_id)) { |
|
530 | + fatal_lang_error('mboards_parent_own_child_error', false); |
|
531 | + } elseif ($id_parent == $board_id) { |
|
532 | + fatal_lang_error('mboards_board_own_child_error', false); |
|
533 | + } |
|
505 | 534 | |
506 | 535 | $after = $boards[$boardOptions['target_board']]['order']; |
507 | 536 | |
508 | 537 | // Check if there are already children and (if so) get the max board order. |
509 | - if (!empty($boards[$id_parent]['tree']['children']) && empty($boardOptions['move_first_child'])) |
|
510 | - foreach ($boards[$id_parent]['tree']['children'] as $childBoard_id => $dummy) |
|
538 | + if (!empty($boards[$id_parent]['tree']['children']) && empty($boardOptions['move_first_child'])) { |
|
539 | + foreach ($boards[$id_parent]['tree']['children'] as $childBoard_id => $dummy) |
|
511 | 540 | $after = max($after, $boards[$childBoard_id]['order']); |
541 | + } |
|
512 | 542 | } |
513 | 543 | |
514 | 544 | // Place a board before or after another board, on the same child level. |
@@ -521,8 +551,9 @@ discard block |
||
521 | 551 | } |
522 | 552 | |
523 | 553 | // Oops...? |
524 | - else |
|
525 | - trigger_error('modifyBoard(): The move_to value \'' . $boardOptions['move_to'] . '\' is incorrect', E_USER_ERROR); |
|
554 | + else { |
|
555 | + trigger_error('modifyBoard(): The move_to value \'' . $boardOptions['move_to'] . '\' is incorrect', E_USER_ERROR); |
|
556 | + } |
|
526 | 557 | |
527 | 558 | // Get a list of children of this board. |
528 | 559 | $childList = array(); |
@@ -531,14 +562,16 @@ discard block |
||
531 | 562 | // See if there are changes that affect children. |
532 | 563 | $childUpdates = array(); |
533 | 564 | $levelDiff = $child_level - $boards[$board_id]['level']; |
534 | - if ($levelDiff != 0) |
|
535 | - $childUpdates[] = 'child_level = child_level ' . ($levelDiff > 0 ? '+ ' : '') . '{int:level_diff}'; |
|
536 | - if ($id_cat != $boards[$board_id]['category']) |
|
537 | - $childUpdates[] = 'id_cat = {int:category}'; |
|
565 | + if ($levelDiff != 0) { |
|
566 | + $childUpdates[] = 'child_level = child_level ' . ($levelDiff > 0 ? '+ ' : '') . '{int:level_diff}'; |
|
567 | + } |
|
568 | + if ($id_cat != $boards[$board_id]['category']) { |
|
569 | + $childUpdates[] = 'id_cat = {int:category}'; |
|
570 | + } |
|
538 | 571 | |
539 | 572 | // Fix the children of this board. |
540 | - if (!empty($childList) && !empty($childUpdates)) |
|
541 | - $smcFunc['db_query']('', ' |
|
573 | + if (!empty($childList) && !empty($childUpdates)) { |
|
574 | + $smcFunc['db_query']('', ' |
|
542 | 575 | UPDATE {db_prefix}boards |
543 | 576 | SET ' . implode(', |
544 | 577 | ', $childUpdates) . ' |
@@ -549,6 +582,7 @@ discard block |
||
549 | 582 | 'level_diff' => $levelDiff, |
550 | 583 | ) |
551 | 584 | ); |
585 | + } |
|
552 | 586 | |
553 | 587 | // Make some room for this spot. |
554 | 588 | $smcFunc['db_query']('', ' |
@@ -644,8 +678,8 @@ discard block |
||
644 | 678 | call_integration_hook('integrate_modify_board', array($id, $boardOptions, &$boardUpdates, &$boardUpdateParameters)); |
645 | 679 | |
646 | 680 | // Do the updates (if any). |
647 | - if (!empty($boardUpdates)) |
|
648 | - $smcFunc['db_query']('', ' |
|
681 | + if (!empty($boardUpdates)) { |
|
682 | + $smcFunc['db_query']('', ' |
|
649 | 683 | UPDATE {db_prefix}boards |
650 | 684 | SET |
651 | 685 | ' . implode(', |
@@ -655,6 +689,7 @@ discard block |
||
655 | 689 | 'selected_board' => $board_id, |
656 | 690 | )) |
657 | 691 | ); |
692 | + } |
|
658 | 693 | |
659 | 694 | // Set moderators of this board. |
660 | 695 | if (isset($boardOptions['moderators']) || isset($boardOptions['moderator_string']) || isset($boardOptions['moderator_groups']) || isset($boardOptions['moderator_group_string'])) |
@@ -679,13 +714,15 @@ discard block |
||
679 | 714 | { |
680 | 715 | $moderators[$k] = trim($moderators[$k]); |
681 | 716 | |
682 | - if (strlen($moderators[$k]) == 0) |
|
683 | - unset($moderators[$k]); |
|
717 | + if (strlen($moderators[$k]) == 0) { |
|
718 | + unset($moderators[$k]); |
|
719 | + } |
|
684 | 720 | } |
685 | 721 | |
686 | 722 | // Find all the id_member's for the member_name's in the list. |
687 | - if (empty($boardOptions['moderators'])) |
|
688 | - $boardOptions['moderators'] = array(); |
|
723 | + if (empty($boardOptions['moderators'])) { |
|
724 | + $boardOptions['moderators'] = array(); |
|
725 | + } |
|
689 | 726 | if (!empty($moderators)) |
690 | 727 | { |
691 | 728 | $request = $smcFunc['db_query']('', ' |
@@ -698,8 +735,9 @@ discard block |
||
698 | 735 | 'limit' => count($moderators), |
699 | 736 | ) |
700 | 737 | ); |
701 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
702 | - $boardOptions['moderators'][] = $row['id_member']; |
|
738 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
739 | + $boardOptions['moderators'][] = $row['id_member']; |
|
740 | + } |
|
703 | 741 | $smcFunc['db_free_result']($request); |
704 | 742 | } |
705 | 743 | } |
@@ -708,8 +746,9 @@ discard block |
||
708 | 746 | if (!empty($boardOptions['moderators'])) |
709 | 747 | { |
710 | 748 | $inserts = array(); |
711 | - foreach ($boardOptions['moderators'] as $moderator) |
|
712 | - $inserts[] = array($board_id, $moderator); |
|
749 | + foreach ($boardOptions['moderators'] as $moderator) { |
|
750 | + $inserts[] = array($board_id, $moderator); |
|
751 | + } |
|
713 | 752 | |
714 | 753 | $smcFunc['db_insert']('insert', |
715 | 754 | '{db_prefix}moderators', |
@@ -739,14 +778,16 @@ discard block |
||
739 | 778 | { |
740 | 779 | $moderator_groups[$k] = trim($moderator_groups[$k]); |
741 | 780 | |
742 | - if (strlen($moderator_groups[$k]) == 0) |
|
743 | - unset($moderator_groups[$k]); |
|
781 | + if (strlen($moderator_groups[$k]) == 0) { |
|
782 | + unset($moderator_groups[$k]); |
|
783 | + } |
|
744 | 784 | } |
745 | 785 | |
746 | 786 | /* Find all the id_group's for all the group names in the list |
747 | 787 | But skip any invalid ones (invisible/post groups/Administrator/Moderator) */ |
748 | - if (empty($boardOptions['moderator_groups'])) |
|
749 | - $boardOptions['moderator_groups'] = array(); |
|
788 | + if (empty($boardOptions['moderator_groups'])) { |
|
789 | + $boardOptions['moderator_groups'] = array(); |
|
790 | + } |
|
750 | 791 | if (!empty($moderator_groups)) |
751 | 792 | { |
752 | 793 | $request = $smcFunc['db_query']('', ' |
@@ -777,8 +818,9 @@ discard block |
||
777 | 818 | if (!empty($boardOptions['moderator_groups'])) |
778 | 819 | { |
779 | 820 | $inserts = array(); |
780 | - foreach ($boardOptions['moderator_groups'] as $moderator_group) |
|
781 | - $inserts[] = array($board_id, $moderator_group); |
|
821 | + foreach ($boardOptions['moderator_groups'] as $moderator_group) { |
|
822 | + $inserts[] = array($board_id, $moderator_group); |
|
823 | + } |
|
782 | 824 | |
783 | 825 | $smcFunc['db_insert']('insert', |
784 | 826 | '{db_prefix}moderator_groups', |
@@ -792,14 +834,16 @@ discard block |
||
792 | 834 | updateSettings(array('settings_updated' => time())); |
793 | 835 | } |
794 | 836 | |
795 | - if (isset($boardOptions['move_to'])) |
|
796 | - reorderBoards(); |
|
837 | + if (isset($boardOptions['move_to'])) { |
|
838 | + reorderBoards(); |
|
839 | + } |
|
797 | 840 | |
798 | 841 | clean_cache('data'); |
799 | 842 | |
800 | - if (empty($boardOptions['dont_log'])) |
|
801 | - logAction('edit_board', array('board' => $board_id), 'admin'); |
|
802 | -} |
|
843 | + if (empty($boardOptions['dont_log'])) { |
|
844 | + logAction('edit_board', array('board' => $board_id), 'admin'); |
|
845 | + } |
|
846 | + } |
|
803 | 847 | |
804 | 848 | /** |
805 | 849 | * Create a new board and set its properties and position. |
@@ -815,11 +859,13 @@ discard block |
||
815 | 859 | global $boards, $smcFunc; |
816 | 860 | |
817 | 861 | // Trigger an error if one of the required values is not set. |
818 | - if (!isset($boardOptions['board_name']) || trim($boardOptions['board_name']) == '' || !isset($boardOptions['move_to']) || !isset($boardOptions['target_category'])) |
|
819 | - trigger_error('createBoard(): One or more of the required options is not set', E_USER_ERROR); |
|
862 | + if (!isset($boardOptions['board_name']) || trim($boardOptions['board_name']) == '' || !isset($boardOptions['move_to']) || !isset($boardOptions['target_category'])) { |
|
863 | + trigger_error('createBoard(): One or more of the required options is not set', E_USER_ERROR); |
|
864 | + } |
|
820 | 865 | |
821 | - if (in_array($boardOptions['move_to'], array('child', 'before', 'after')) && !isset($boardOptions['target_board'])) |
|
822 | - trigger_error('createBoard(): Target board is not set', E_USER_ERROR); |
|
866 | + if (in_array($boardOptions['move_to'], array('child', 'before', 'after')) && !isset($boardOptions['target_board'])) { |
|
867 | + trigger_error('createBoard(): Target board is not set', E_USER_ERROR); |
|
868 | + } |
|
823 | 869 | |
824 | 870 | // Set every optional value to its default value. |
825 | 871 | $boardOptions += array( |
@@ -853,8 +899,9 @@ discard block |
||
853 | 899 | 1 |
854 | 900 | ); |
855 | 901 | |
856 | - if (empty($board_id)) |
|
857 | - return 0; |
|
902 | + if (empty($board_id)) { |
|
903 | + return 0; |
|
904 | + } |
|
858 | 905 | |
859 | 906 | // Change the board according to the given specifications. |
860 | 907 | modifyBoard($board_id, $boardOptions); |
@@ -917,8 +964,9 @@ discard block |
||
917 | 964 | global $sourcedir, $boards, $smcFunc; |
918 | 965 | |
919 | 966 | // No boards to delete? Return! |
920 | - if (empty($boards_to_remove)) |
|
921 | - return; |
|
967 | + if (empty($boards_to_remove)) { |
|
968 | + return; |
|
969 | + } |
|
922 | 970 | |
923 | 971 | getBoardTree(); |
924 | 972 | |
@@ -929,12 +977,14 @@ discard block |
||
929 | 977 | { |
930 | 978 | // Get a list of the child boards that will also be removed. |
931 | 979 | $child_boards_to_remove = array(); |
932 | - foreach ($boards_to_remove as $board_to_remove) |
|
933 | - recursiveBoards($child_boards_to_remove, $boards[$board_to_remove]['tree']); |
|
980 | + foreach ($boards_to_remove as $board_to_remove) { |
|
981 | + recursiveBoards($child_boards_to_remove, $boards[$board_to_remove]['tree']); |
|
982 | + } |
|
934 | 983 | |
935 | 984 | // Merge the children with their parents. |
936 | - if (!empty($child_boards_to_remove)) |
|
937 | - $boards_to_remove = array_unique(array_merge($boards_to_remove, $child_boards_to_remove)); |
|
985 | + if (!empty($child_boards_to_remove)) { |
|
986 | + $boards_to_remove = array_unique(array_merge($boards_to_remove, $child_boards_to_remove)); |
|
987 | + } |
|
938 | 988 | } |
939 | 989 | // Move the children to a safe home. |
940 | 990 | else |
@@ -942,10 +992,11 @@ discard block |
||
942 | 992 | foreach ($boards_to_remove as $id_board) |
943 | 993 | { |
944 | 994 | // @todo Separate category? |
945 | - if ($moveChildrenTo === 0) |
|
946 | - fixChildren($id_board, 0, 0); |
|
947 | - else |
|
948 | - fixChildren($id_board, $boards[$moveChildrenTo]['level'] + 1, $moveChildrenTo); |
|
995 | + if ($moveChildrenTo === 0) { |
|
996 | + fixChildren($id_board, 0, 0); |
|
997 | + } else { |
|
998 | + fixChildren($id_board, $boards[$moveChildrenTo]['level'] + 1, $moveChildrenTo); |
|
999 | + } |
|
949 | 1000 | } |
950 | 1001 | } |
951 | 1002 | |
@@ -959,8 +1010,9 @@ discard block |
||
959 | 1010 | ) |
960 | 1011 | ); |
961 | 1012 | $topics = array(); |
962 | - while ($row = $smcFunc['db_fetch_assoc']($request)) |
|
963 | - $topics[] = $row['id_topic']; |
|
1013 | + while ($row = $smcFunc['db_fetch_assoc']($request)) { |
|
1014 | + $topics[] = $row['id_topic']; |
|
1015 | + } |
|
964 | 1016 | $smcFunc['db_free_result']($request); |
965 | 1017 | |
966 | 1018 | require_once($sourcedir . '/RemoveTopic.php'); |
@@ -1048,8 +1100,9 @@ discard block |
||
1048 | 1100 | clean_cache('data'); |
1049 | 1101 | |
1050 | 1102 | // Let's do some serious logging. |
1051 | - foreach ($boards_to_remove as $id_board) |
|
1052 | - logAction('delete_board', array('boardname' => $boards[$id_board]['name']), 'admin'); |
|
1103 | + foreach ($boards_to_remove as $id_board) { |
|
1104 | + logAction('delete_board', array('boardname' => $boards[$id_board]['name']), 'admin'); |
|
1105 | + } |
|
1053 | 1106 | |
1054 | 1107 | reorderBoards(); |
1055 | 1108 | } |
@@ -1068,8 +1121,8 @@ discard block |
||
1068 | 1121 | $board_order = 0; |
1069 | 1122 | foreach ($cat_tree as $catID => $dummy) |
1070 | 1123 | { |
1071 | - foreach ($boardList[$catID] as $boardID) |
|
1072 | - if ($boards[$boardID]['order'] != ++$board_order) |
|
1124 | + foreach ($boardList[$catID] as $boardID) { |
|
1125 | + if ($boards[$boardID]['order'] != ++$board_order) |
|
1073 | 1126 | $smcFunc['db_query']('', ' |
1074 | 1127 | UPDATE {db_prefix}boards |
1075 | 1128 | SET board_order = {int:new_order} |
@@ -1079,6 +1132,7 @@ discard block |
||
1079 | 1132 | 'selected_board' => $boardID, |
1080 | 1133 | ) |
1081 | 1134 | ); |
1135 | + } |
|
1082 | 1136 | } |
1083 | 1137 | |
1084 | 1138 | // Empty the board order cache |
@@ -1107,8 +1161,9 @@ discard block |
||
1107 | 1161 | ) |
1108 | 1162 | ); |
1109 | 1163 | $children = array(); |
1110 | - while ($row = $smcFunc['db_fetch_assoc']($result)) |
|
1111 | - $children[] = $row['id_board']; |
|
1164 | + while ($row = $smcFunc['db_fetch_assoc']($result)) { |
|
1165 | + $children[] = $row['id_board']; |
|
1166 | + } |
|
1112 | 1167 | $smcFunc['db_free_result']($result); |
1113 | 1168 | |
1114 | 1169 | // ...and set it to a new parent and child_level. |
@@ -1124,9 +1179,10 @@ discard block |
||
1124 | 1179 | ); |
1125 | 1180 | |
1126 | 1181 | // Recursively fix the children of the children. |
1127 | - foreach ($children as $child) |
|
1128 | - fixChildren($child, $newLevel + 1, $child); |
|
1129 | -} |
|
1182 | + foreach ($children as $child) { |
|
1183 | + fixChildren($child, $newLevel + 1, $child); |
|
1184 | + } |
|
1185 | + } |
|
1130 | 1186 | |
1131 | 1187 | /** |
1132 | 1188 | * Tries to load up the entire board order and category very very quickly |
@@ -1143,8 +1199,9 @@ discard block |
||
1143 | 1199 | 'boards' => array(), |
1144 | 1200 | ); |
1145 | 1201 | |
1146 | - if (!empty($tree_order['boards'])) |
|
1147 | - return $tree_order; |
|
1202 | + if (!empty($tree_order['boards'])) { |
|
1203 | + return $tree_order; |
|
1204 | + } |
|
1148 | 1205 | |
1149 | 1206 | if (($cached = cache_get_data('board_order', 86400)) !== null) |
1150 | 1207 | { |
@@ -1160,8 +1217,9 @@ discard block |
||
1160 | 1217 | ); |
1161 | 1218 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
1162 | 1219 | { |
1163 | - if (!in_array($row['id_cat'], $tree_order['cats'])) |
|
1164 | - $tree_order['cats'][] = $row['id_cat']; |
|
1220 | + if (!in_array($row['id_cat'], $tree_order['cats'])) { |
|
1221 | + $tree_order['cats'][] = $row['id_cat']; |
|
1222 | + } |
|
1165 | 1223 | $tree_order['boards'][] = $row['id_board']; |
1166 | 1224 | } |
1167 | 1225 | $smcFunc['db_free_result']($request); |
@@ -1181,16 +1239,19 @@ discard block |
||
1181 | 1239 | $tree = getTreeOrder(); |
1182 | 1240 | |
1183 | 1241 | $ordered = array(); |
1184 | - foreach ($tree['boards'] as $board) |
|
1185 | - if (!empty($boards[$board])) |
|
1242 | + foreach ($tree['boards'] as $board) { |
|
1243 | + if (!empty($boards[$board])) |
|
1186 | 1244 | { |
1187 | 1245 | $ordered[$board] = $boards[$board]; |
1246 | + } |
|
1188 | 1247 | |
1189 | - if (is_array($ordered[$board]) && !empty($ordered[$board]['boards'])) |
|
1190 | - sortBoards($ordered[$board]['boards']); |
|
1248 | + if (is_array($ordered[$board]) && !empty($ordered[$board]['boards'])) { |
|
1249 | + sortBoards($ordered[$board]['boards']); |
|
1250 | + } |
|
1191 | 1251 | |
1192 | - if (is_array($ordered[$board]) && !empty($ordered[$board]['children'])) |
|
1193 | - sortBoards($ordered[$board]['children']); |
|
1252 | + if (is_array($ordered[$board]) && !empty($ordered[$board]['children'])) { |
|
1253 | + sortBoards($ordered[$board]['children']); |
|
1254 | + } |
|
1194 | 1255 | } |
1195 | 1256 | |
1196 | 1257 | $boards = $ordered; |
@@ -1206,12 +1267,14 @@ discard block |
||
1206 | 1267 | $tree = getTreeOrder(); |
1207 | 1268 | |
1208 | 1269 | $ordered = array(); |
1209 | - foreach ($tree['cats'] as $cat) |
|
1210 | - if (!empty($categories[$cat])) |
|
1270 | + foreach ($tree['cats'] as $cat) { |
|
1271 | + if (!empty($categories[$cat])) |
|
1211 | 1272 | { |
1212 | 1273 | $ordered[$cat] = $categories[$cat]; |
1213 | - if (!empty($ordered[$cat]['boards'])) |
|
1214 | - sortBoards($ordered[$cat]['boards']); |
|
1274 | + } |
|
1275 | + if (!empty($ordered[$cat]['boards'])) { |
|
1276 | + sortBoards($ordered[$cat]['boards']); |
|
1277 | + } |
|
1215 | 1278 | } |
1216 | 1279 | |
1217 | 1280 | $categories = $ordered; |
@@ -1227,8 +1290,9 @@ discard block |
||
1227 | 1290 | { |
1228 | 1291 | global $smcFunc, $scripturl, $txt; |
1229 | 1292 | |
1230 | - if (empty($boards)) |
|
1231 | - return array(); |
|
1293 | + if (empty($boards)) { |
|
1294 | + return array(); |
|
1295 | + } |
|
1232 | 1296 | |
1233 | 1297 | $request = $smcFunc['db_query']('', ' |
1234 | 1298 | SELECT mem.id_member, mem.real_name, mo.id_board |
@@ -1242,8 +1306,9 @@ discard block |
||
1242 | 1306 | $moderators = array(); |
1243 | 1307 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
1244 | 1308 | { |
1245 | - if (empty($moderators[$row['id_board']])) |
|
1246 | - $moderators[$row['id_board']] = array(); |
|
1309 | + if (empty($moderators[$row['id_board']])) { |
|
1310 | + $moderators[$row['id_board']] = array(); |
|
1311 | + } |
|
1247 | 1312 | |
1248 | 1313 | $moderators[$row['id_board']][] = array( |
1249 | 1314 | 'id' => $row['id_member'], |
@@ -1267,8 +1332,9 @@ discard block |
||
1267 | 1332 | { |
1268 | 1333 | global $smcFunc, $scripturl, $txt; |
1269 | 1334 | |
1270 | - if (empty($boards)) |
|
1271 | - return array(); |
|
1335 | + if (empty($boards)) { |
|
1336 | + return array(); |
|
1337 | + } |
|
1272 | 1338 | |
1273 | 1339 | $request = $smcFunc['db_query']('', ' |
1274 | 1340 | SELECT mg.id_group, mg.group_name, bg.id_board |
@@ -1282,8 +1348,9 @@ discard block |
||
1282 | 1348 | $groups = array(); |
1283 | 1349 | while ($row = $smcFunc['db_fetch_assoc']($request)) |
1284 | 1350 | { |
1285 | - if (empty($groups[$row['id_board']])) |
|
1286 | - $groups[$row['id_board']] = array(); |
|
1351 | + if (empty($groups[$row['id_board']])) { |
|
1352 | + $groups[$row['id_board']] = array(); |
|
1353 | + } |
|
1287 | 1354 | |
1288 | 1355 | $groups[$row['id_board']][] = array( |
1289 | 1356 | 'id' => $row['id_group'], |
@@ -1358,8 +1425,9 @@ discard block |
||
1358 | 1425 | |
1359 | 1426 | if (!empty($row['id_board'])) |
1360 | 1427 | { |
1361 | - if ($row['child_level'] != $curLevel) |
|
1362 | - $prevBoard = 0; |
|
1428 | + if ($row['child_level'] != $curLevel) { |
|
1429 | + $prevBoard = 0; |
|
1430 | + } |
|
1363 | 1431 | |
1364 | 1432 | $boards[$row['id_board']] = array( |
1365 | 1433 | 'id' => $row['id_board'], |
@@ -1391,16 +1459,16 @@ discard block |
||
1391 | 1459 | 'children' => array() |
1392 | 1460 | ); |
1393 | 1461 | $boards[$row['id_board']]['tree'] = &$cat_tree[$row['id_cat']]['children'][$row['id_board']]; |
1394 | - } |
|
1395 | - else |
|
1462 | + } else |
|
1396 | 1463 | { |
1397 | 1464 | // Parent doesn't exist! |
1398 | - if (!isset($boards[$row['id_parent']]['tree'])) |
|
1399 | - fatal_lang_error('no_valid_parent', false, array($row['board_name'])); |
|
1465 | + if (!isset($boards[$row['id_parent']]['tree'])) { |
|
1466 | + fatal_lang_error('no_valid_parent', false, array($row['board_name'])); |
|
1467 | + } |
|
1400 | 1468 | |
1401 | 1469 | // Wrong childlevel...we can silently fix this... |
1402 | - if ($boards[$row['id_parent']]['tree']['node']['level'] != $row['child_level'] - 1) |
|
1403 | - $smcFunc['db_query']('', ' |
|
1470 | + if ($boards[$row['id_parent']]['tree']['node']['level'] != $row['child_level'] - 1) { |
|
1471 | + $smcFunc['db_query']('', ' |
|
1404 | 1472 | UPDATE {db_prefix}boards |
1405 | 1473 | SET child_level = {int:new_child_level} |
1406 | 1474 | WHERE id_board = {int:selected_board}', |
@@ -1409,6 +1477,7 @@ discard block |
||
1409 | 1477 | 'selected_board' => $row['id_board'], |
1410 | 1478 | ) |
1411 | 1479 | ); |
1480 | + } |
|
1412 | 1481 | |
1413 | 1482 | $boards[$row['id_parent']]['tree']['children'][$row['id_board']] = array( |
1414 | 1483 | 'node' => &$boards[$row['id_board']], |
@@ -1442,8 +1511,9 @@ discard block |
||
1442 | 1511 | */ |
1443 | 1512 | function recursiveBoards(&$_boardList, &$_tree) |
1444 | 1513 | { |
1445 | - if (empty($_tree['children'])) |
|
1446 | - return; |
|
1514 | + if (empty($_tree['children'])) { |
|
1515 | + return; |
|
1516 | + } |
|
1447 | 1517 | |
1448 | 1518 | foreach ($_tree['children'] as $id => $node) |
1449 | 1519 | { |
@@ -1462,11 +1532,13 @@ discard block |
||
1462 | 1532 | { |
1463 | 1533 | global $boards; |
1464 | 1534 | |
1465 | - if (empty($boards[$child]['parent'])) |
|
1466 | - return false; |
|
1535 | + if (empty($boards[$child]['parent'])) { |
|
1536 | + return false; |
|
1537 | + } |
|
1467 | 1538 | |
1468 | - if ($boards[$child]['parent'] == $parent) |
|
1469 | - return true; |
|
1539 | + if ($boards[$child]['parent'] == $parent) { |
|
1540 | + return true; |
|
1541 | + } |
|
1470 | 1542 | |
1471 | 1543 | return isChildOf($boards[$child]['parent'], $parent); |
1472 | 1544 | } |