Completed
Push — release-2.1 ( 08aa48...ab4516 )
by Mathias
06:51
created
Sources/Subs.php 2 patches
Spacing   +117 added lines, -117 removed lines patch added patch discarded remove patch
@@ -1097,7 +1097,7 @@  discard block
 block discarded – undo
1097 1097
 					'height' => array('optional' => true, 'match' => '(\d+)'),
1098 1098
 				),
1099 1099
 				'content' => '$1',
1100
-				'validate' => function (&$tag, &$data, $disabled, $params) use ($modSettings, $context, $sourcedir, $txt)
1100
+				'validate' => function(&$tag, &$data, $disabled, $params) use ($modSettings, $context, $sourcedir, $txt)
1101 1101
 				{
1102 1102
 					$returnContext = '';
1103 1103
 
@@ -1132,7 +1132,7 @@  discard block
 block discarded – undo
1132 1132
 						}
1133 1133
 
1134 1134
 						if ($currentAttachment['thumbnail']['has_thumb'] && empty($params['{width}']) && empty($params['{height}']))
1135
-							$returnContext .= '<a href="'. $currentAttachment['href']. ';image" id="link_'. $currentAttachment['id']. '" onclick="'. $currentAttachment['thumbnail']['javascript']. '"><img src="'. $currentAttachment['thumbnail']['href']. '" alt="' . $currentAttachment['name'] . '" id="thumb_'. $currentAttachment['id']. '"></a>';
1135
+							$returnContext .= '<a href="' . $currentAttachment['href'] . ';image" id="link_' . $currentAttachment['id'] . '" onclick="' . $currentAttachment['thumbnail']['javascript'] . '"><img src="' . $currentAttachment['thumbnail']['href'] . '" alt="' . $currentAttachment['name'] . '" id="thumb_' . $currentAttachment['id'] . '"></a>';
1136 1136
 						else
1137 1137
 							$returnContext .= '<img src="' . $currentAttachment['href'] . ';image" alt="' . $currentAttachment['name'] . '"' . $width . $height . '/>';
1138 1138
 					}
@@ -1161,7 +1161,7 @@  discard block
 block discarded – undo
1161 1161
 				'type' => 'unparsed_content',
1162 1162
 				'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>',
1163 1163
 				// @todo Maybe this can be simplified?
1164
-				'validate' => isset($disabled['code']) ? null : function (&$tag, &$data, $disabled) use ($context)
1164
+				'validate' => isset($disabled['code']) ? null : function(&$tag, &$data, $disabled) use ($context)
1165 1165
 				{
1166 1166
 					if (!isset($disabled['code']))
1167 1167
 					{
@@ -1198,7 +1198,7 @@  discard block
 block discarded – undo
1198 1198
 				'type' => 'unparsed_equals_content',
1199 1199
 				'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>',
1200 1200
 				// @todo Maybe this can be simplified?
1201
-				'validate' => isset($disabled['code']) ? null : function (&$tag, &$data, $disabled) use ($context)
1201
+				'validate' => isset($disabled['code']) ? null : function(&$tag, &$data, $disabled) use ($context)
1202 1202
 				{
1203 1203
 					if (!isset($disabled['code']))
1204 1204
 					{
@@ -1242,7 +1242,7 @@  discard block
 block discarded – undo
1242 1242
 				'type' => 'unparsed_content',
1243 1243
 				'content' => '<a href="mailto:$1" class="bbc_email">$1</a>',
1244 1244
 				// @todo Should this respect guest_hideContacts?
1245
-				'validate' => function (&$tag, &$data, $disabled)
1245
+				'validate' => function(&$tag, &$data, $disabled)
1246 1246
 				{
1247 1247
 					$data = strtr($data, array('<br>' => ''));
1248 1248
 				},
@@ -1261,7 +1261,7 @@  discard block
 block discarded – undo
1261 1261
 				'type' => 'unparsed_commas_content',
1262 1262
 				'test' => '\d+,\d+\]',
1263 1263
 				'content' => '<embed type="application/x-shockwave-flash" src="$1" width="$2" height="$3" play="true" loop="true" quality="high" AllowScriptAccess="never">',
1264
-				'validate' => function (&$tag, &$data, $disabled)
1264
+				'validate' => function(&$tag, &$data, $disabled)
1265 1265
 				{
1266 1266
 					if (isset($disabled['url']))
1267 1267
 						$tag['content'] = '$1';
@@ -1306,7 +1306,7 @@  discard block
 block discarded – undo
1306 1306
 					'height' => array('optional' => true, 'value' => ' height="$1"', 'match' => '(\d+)'),
1307 1307
 				),
1308 1308
 				'content' => '<img src="$1" alt="{alt}" title="{title}"{width}{height} class="bbc_img resized">',
1309
-				'validate' => function (&$tag, &$data, $disabled)
1309
+				'validate' => function(&$tag, &$data, $disabled)
1310 1310
 				{
1311 1311
 					global $image_proxy_enabled, $image_proxy_secret, $boardurl;
1312 1312
 
@@ -1329,7 +1329,7 @@  discard block
 block discarded – undo
1329 1329
 				'tag' => 'img',
1330 1330
 				'type' => 'unparsed_content',
1331 1331
 				'content' => '<img src="$1" alt="" class="bbc_img">',
1332
-				'validate' => function (&$tag, &$data, $disabled)
1332
+				'validate' => function(&$tag, &$data, $disabled)
1333 1333
 				{
1334 1334
 					global $image_proxy_enabled, $image_proxy_secret, $boardurl;
1335 1335
 
@@ -1352,7 +1352,7 @@  discard block
 block discarded – undo
1352 1352
 				'tag' => 'iurl',
1353 1353
 				'type' => 'unparsed_content',
1354 1354
 				'content' => '<a href="$1" class="bbc_link">$1</a>',
1355
-				'validate' => function (&$tag, &$data, $disabled)
1355
+				'validate' => function(&$tag, &$data, $disabled)
1356 1356
 				{
1357 1357
 					$data = strtr($data, array('<br>' => ''));
1358 1358
 					$scheme = parse_url($data, PHP_URL_SCHEME);
@@ -1366,7 +1366,7 @@  discard block
 block discarded – undo
1366 1366
 				'quoted' => 'optional',
1367 1367
 				'before' => '<a href="$1" class="bbc_link">',
1368 1368
 				'after' => '</a>',
1369
-				'validate' => function (&$tag, &$data, $disabled)
1369
+				'validate' => function(&$tag, &$data, $disabled)
1370 1370
 				{
1371 1371
 					if (substr($data, 0, 1) == '#')
1372 1372
 						$data = '#post_' . substr($data, 1);
@@ -1446,7 +1446,7 @@  discard block
 block discarded – undo
1446 1446
 				'tag' => 'php',
1447 1447
 				'type' => 'unparsed_content',
1448 1448
 				'content' => '<span class="phpcode">$1</span>',
1449
-				'validate' => isset($disabled['php']) ? null : function (&$tag, &$data, $disabled)
1449
+				'validate' => isset($disabled['php']) ? null : function(&$tag, &$data, $disabled)
1450 1450
 				{
1451 1451
 					if (!isset($disabled['php']))
1452 1452
 					{
@@ -1544,7 +1544,7 @@  discard block
 block discarded – undo
1544 1544
 				'test' => '[1-7]\]',
1545 1545
 				'before' => '<span style="font-size: $1;" class="bbc_size">',
1546 1546
 				'after' => '</span>',
1547
-				'validate' => function (&$tag, &$data, $disabled)
1547
+				'validate' => function(&$tag, &$data, $disabled)
1548 1548
 				{
1549 1549
 					$sizes = array(1 => 0.7, 2 => 1.0, 3 => 1.35, 4 => 1.45, 5 => 2.0, 6 => 2.65, 7 => 3.95);
1550 1550
 					$data = $sizes[$data] . 'em';
@@ -1582,7 +1582,7 @@  discard block
 block discarded – undo
1582 1582
 				'tag' => 'time',
1583 1583
 				'type' => 'unparsed_content',
1584 1584
 				'content' => '$1',
1585
-				'validate' => function (&$tag, &$data, $disabled)
1585
+				'validate' => function(&$tag, &$data, $disabled)
1586 1586
 				{
1587 1587
 					if (is_numeric($data))
1588 1588
 						$data = timeformat($data);
@@ -1610,7 +1610,7 @@  discard block
 block discarded – undo
1610 1610
 				'tag' => 'url',
1611 1611
 				'type' => 'unparsed_content',
1612 1612
 				'content' => '<a href="$1" class="bbc_link" target="_blank">$1</a>',
1613
-				'validate' => function (&$tag, &$data, $disabled)
1613
+				'validate' => function(&$tag, &$data, $disabled)
1614 1614
 				{
1615 1615
 					$data = strtr($data, array('<br>' => ''));
1616 1616
 					$scheme = parse_url($data, PHP_URL_SCHEME);
@@ -1624,7 +1624,7 @@  discard block
 block discarded – undo
1624 1624
 				'quoted' => 'optional',
1625 1625
 				'before' => '<a href="$1" class="bbc_link" target="_blank">',
1626 1626
 				'after' => '</a>',
1627
-				'validate' => function (&$tag, &$data, $disabled)
1627
+				'validate' => function(&$tag, &$data, $disabled)
1628 1628
 				{
1629 1629
 					$scheme = parse_url($data, PHP_URL_SCHEME);
1630 1630
 					if (empty($scheme))
@@ -1650,7 +1650,7 @@  discard block
 block discarded – undo
1650 1650
 		{
1651 1651
 			if (isset($temp_bbc))
1652 1652
 				$bbc_codes = $temp_bbc;
1653
-			usort($codes, function ($a, $b) {
1653
+			usort($codes, function($a, $b) {
1654 1654
 				return strcmp($a['tag'], $b['tag']);
1655 1655
 			});
1656 1656
 			return $codes;
@@ -1890,7 +1890,7 @@  discard block
 block discarded – undo
1890 1890
 										# a run of Unicode domain name characters and a dot
1891 1891
 										[\p{L}\p{M}\p{N}\-.:@]+\.
1892 1892
 										# and then a TLD valid in the DNS or the reserved "local" TLD
1893
-										(?:'. $modSettings['tld_regex'] .'|local)
1893
+										(?:'. $modSettings['tld_regex'] . '|local)
1894 1894
 									)
1895 1895
 									# followed by a non-domain character or end of line
1896 1896
 									(?=[^\p{L}\p{N}\-.]|$)
@@ -1958,7 +1958,7 @@  discard block
 block discarded – undo
1958 1958
 						)?
1959 1959
 						';
1960 1960
 
1961
-						$data = preg_replace_callback('~' . $url_regex . '~xi' . ($context['utf8'] ? 'u' : ''), function ($matches) {
1961
+						$data = preg_replace_callback('~' . $url_regex . '~xi' . ($context['utf8'] ? 'u' : ''), function($matches) {
1962 1962
 							$url = array_shift($matches);
1963 1963
 
1964 1964
 							$scheme = parse_url($url, PHP_URL_SCHEME);
@@ -2687,7 +2687,7 @@  discard block
 block discarded – undo
2687 2687
 		for ($i = 0, $n = count($smileysfrom); $i < $n; $i++)
2688 2688
 		{
2689 2689
 			$specialChars = $smcFunc['htmlspecialchars']($smileysfrom[$i], ENT_QUOTES);
2690
-			$smileyCode = '<img src="' . $smileys_path . $smileysto[$i] . '" alt="' . strtr($specialChars, array(':' => '&#58;', '(' => '&#40;', ')' => '&#41;', '$' => '&#36;', '[' => '&#091;')). '" title="' . strtr($smcFunc['htmlspecialchars']($smileysdescs[$i]), array(':' => '&#58;', '(' => '&#40;', ')' => '&#41;', '$' => '&#36;', '[' => '&#091;')) . '" class="smiley">';
2690
+			$smileyCode = '<img src="' . $smileys_path . $smileysto[$i] . '" alt="' . strtr($specialChars, array(':' => '&#58;', '(' => '&#40;', ')' => '&#41;', '$' => '&#36;', '[' => '&#091;')) . '" title="' . strtr($smcFunc['htmlspecialchars']($smileysdescs[$i]), array(':' => '&#58;', '(' => '&#40;', ')' => '&#41;', '$' => '&#36;', '[' => '&#091;')) . '" class="smiley">';
2691 2691
 
2692 2692
 			$smileyPregReplacements[$smileysfrom[$i]] = $smileyCode;
2693 2693
 
@@ -2704,7 +2704,7 @@  discard block
 block discarded – undo
2704 2704
 
2705 2705
 	// Replace away!
2706 2706
 	$message = preg_replace_callback($smileyPregSearch,
2707
-		function ($matches) use ($smileyPregReplacements)
2707
+		function($matches) use ($smileyPregReplacements)
2708 2708
 		{
2709 2709
 			return $smileyPregReplacements[$matches[1]];
2710 2710
 		}, $message);
@@ -2770,13 +2770,13 @@  discard block
 block discarded – undo
2770 2770
 	{
2771 2771
 		if (defined('SID') && SID != '')
2772 2772
 			$setLocation = preg_replace_callback('~^' . preg_quote($scripturl, '/') . '\?(?:' . SID . '(?:;|&|&amp;))((?:board|topic)=[^#]+?)(#[^"]*?)?$~',
2773
-				function ($m) use ($scripturl)
2773
+				function($m) use ($scripturl)
2774 2774
 				{
2775
-					return $scripturl . '/' . strtr("$m[1]", '&;=', '//,') . '.html?' . SID. (isset($m[2]) ? "$m[2]" : "");
2775
+					return $scripturl . '/' . strtr("$m[1]", '&;=', '//,') . '.html?' . SID . (isset($m[2]) ? "$m[2]" : "");
2776 2776
 				}, $setLocation);
2777 2777
 		else
2778 2778
 			$setLocation = preg_replace_callback('~^' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?$~',
2779
-				function ($m) use ($scripturl)
2779
+				function($m) use ($scripturl)
2780 2780
 				{
2781 2781
 					return $scripturl . '/' . strtr("$m[1]", '&;=', '//,') . '.html' . (isset($m[2]) ? "$m[2]" : "");
2782 2782
 				}, $setLocation);
@@ -3099,7 +3099,7 @@  discard block
 block discarded – undo
3099 3099
 
3100 3100
 	// Add a generic "Are you sure?" confirmation message.
3101 3101
 	addInlineJavaScript('
3102
-	var smf_you_sure =' . JavaScriptEscape($txt['quickmod_confirm']) .';');
3102
+	var smf_you_sure =' . JavaScriptEscape($txt['quickmod_confirm']) . ';');
3103 3103
 
3104 3104
 	// Now add the capping code for avatars.
3105 3105
 	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')
@@ -3463,7 +3463,7 @@  discard block
 block discarded – undo
3463 3463
 
3464 3464
 		else
3465 3465
 			echo '
3466
-	<script src="', $settings['theme_url'] ,'/scripts/minified', ($do_deferred ? '_deferred' : '') ,'.js', $minSeed ,'"></script>';
3466
+	<script src="', $settings['theme_url'], '/scripts/minified', ($do_deferred ? '_deferred' : ''), '.js', $minSeed, '"></script>';
3467 3467
 	}
3468 3468
 
3469 3469
 	// Inline JavaScript - Actually useful some times!
@@ -3541,14 +3541,14 @@  discard block
 block discarded – undo
3541 3541
 
3542 3542
 		else
3543 3543
 			echo '
3544
-	<link rel="stylesheet" href="', $settings['theme_url'] ,'/css/minified.css', $minSeed ,'">';
3544
+	<link rel="stylesheet" href="', $settings['theme_url'], '/css/minified.css', $minSeed, '">';
3545 3545
 	}
3546 3546
 
3547 3547
 	// Print the rest after the minified files.
3548 3548
 	if (!empty($normal))
3549 3549
 		foreach ($normal as $nf)
3550 3550
 			echo '
3551
-	<link rel="stylesheet" href="', $nf ,'">';
3551
+	<link rel="stylesheet" href="', $nf, '">';
3552 3552
 
3553 3553
 	if ($db_show_debug === true)
3554 3554
 	{
@@ -3564,7 +3564,7 @@  discard block
 block discarded – undo
3564 3564
 	<style>';
3565 3565
 
3566 3566
 		foreach ($context['css_header'] as $css)
3567
-			echo $css .'
3567
+			echo $css . '
3568 3568
 	';
3569 3569
 
3570 3570
 		echo'
@@ -3594,7 +3594,7 @@  discard block
 block discarded – undo
3594 3594
 		return false;
3595 3595
 
3596 3596
 	// Did we already did this?
3597
-	$toCache = cache_get_data('minimized_'. $settings['theme_id'] .'_'. $type, 86400);
3597
+	$toCache = cache_get_data('minimized_' . $settings['theme_id'] . '_' . $type, 86400);
3598 3598
 
3599 3599
 	// Already done?
3600 3600
 	if (!empty($toCache))
@@ -3602,25 +3602,25 @@  discard block
 block discarded – undo
3602 3602
 
3603 3603
 	// Yep, need a bunch of files.
3604 3604
 	require_once($sourcedir . '/minify/src/Minify.php');
3605
-	require_once($sourcedir . '/minify/src/'. strtoupper($type) .'.php');
3605
+	require_once($sourcedir . '/minify/src/' . strtoupper($type) . '.php');
3606 3606
 	require_once($sourcedir . '/minify/src/Exception.php');
3607 3607
 	require_once($sourcedir . '/minify/src/Converter.php');
3608 3608
 
3609 3609
 	// No namespaces, sorry!
3610
-	$classType = 'MatthiasMullie\\Minify\\'. strtoupper($type);
3610
+	$classType = 'MatthiasMullie\\Minify\\' . strtoupper($type);
3611 3611
 
3612 3612
 	// Temp path.
3613
-	$cTempPath = $settings['theme_dir'] .'/'. ($type == 'css' ? 'css' : 'scripts') .'/';
3613
+	$cTempPath = $settings['theme_dir'] . '/' . ($type == 'css' ? 'css' : 'scripts') . '/';
3614 3614
 
3615 3615
 	// What kind of file are we going to create?
3616
-	$toCreate = $cTempPath .'minified'. ($do_deferred ? '_deferred' : '') .'.'. $type;
3616
+	$toCreate = $cTempPath . 'minified' . ($do_deferred ? '_deferred' : '') . '.' . $type;
3617 3617
 
3618 3618
 	// File has to exists, if it isn't try to create it.
3619 3619
 	if ((!file_exists($toCreate) && @fopen($toCreate, 'w') === false) || !smf_chmod($toCreate))
3620 3620
 	{
3621 3621
 		loadLanguage('Errors');
3622 3622
 		log_error(sprintf($txt['file_not_created'], $toCreate), 'general');
3623
-		cache_put_data('minimized_'. $settings['theme_id'] .'_'. $type, null);
3623
+		cache_put_data('minimized_' . $settings['theme_id'] . '_' . $type, null);
3624 3624
 
3625 3625
 		// The process failed so roll back to print each individual file.
3626 3626
 		return $data;
@@ -3655,14 +3655,14 @@  discard block
 block discarded – undo
3655 3655
 	{
3656 3656
 		loadLanguage('Errors');
3657 3657
 		log_error(sprintf($txt['file_not_created'], $toCreate), 'general');
3658
-		cache_put_data('minimized_'. $settings['theme_id'] .'_'. $type, null);
3658
+		cache_put_data('minimized_' . $settings['theme_id'] . '_' . $type, null);
3659 3659
 
3660 3660
 		// The process failed so roll back to print each individual file.
3661 3661
 		return $data;
3662 3662
 	}
3663 3663
 
3664 3664
 	// And create a long lived cache entry.
3665
-	cache_put_data('minimized_'. $settings['theme_id'] .'_'. $type, $toCreate, 86400);
3665
+	cache_put_data('minimized_' . $settings['theme_id'] . '_' . $type, $toCreate, 86400);
3666 3666
 
3667 3667
 	return true;
3668 3668
 }
@@ -3719,7 +3719,7 @@  discard block
 block discarded – undo
3719 3719
 	else
3720 3720
 		$path = $modSettings['attachmentUploadDir'];
3721 3721
 
3722
-	return $path . '/' . $attachment_id . '_' . $file_hash .'.dat';
3722
+	return $path . '/' . $attachment_id . '_' . $file_hash . '.dat';
3723 3723
 }
3724 3724
 
3725 3725
 /**
@@ -3763,10 +3763,10 @@  discard block
 block discarded – undo
3763 3763
 		$valid_low = isValidIP($ip_parts[0]);
3764 3764
 		$valid_high = isValidIP($ip_parts[1]);
3765 3765
 		$count = 0;
3766
-		$mode = (preg_match('/:/',$ip_parts[0]) > 0 ? ':' : '.');
3766
+		$mode = (preg_match('/:/', $ip_parts[0]) > 0 ? ':' : '.');
3767 3767
 		$max = ($mode == ':' ? 'ffff' : '255');
3768 3768
 		$min = 0;
3769
-		if(!$valid_low)
3769
+		if (!$valid_low)
3770 3770
 		{
3771 3771
 			$ip_parts[0] = preg_replace('/\*/', '0', $ip_parts[0]);
3772 3772
 			$valid_low = isValidIP($ip_parts[0]);
@@ -3780,7 +3780,7 @@  discard block
 block discarded – undo
3780 3780
 		}
3781 3781
 
3782 3782
 		$count = 0;
3783
-		if(!$valid_high)
3783
+		if (!$valid_high)
3784 3784
 		{
3785 3785
 			$ip_parts[1] = preg_replace('/\*/', $max, $ip_parts[1]);
3786 3786
 			$valid_high = isValidIP($ip_parts[1]);
@@ -3793,7 +3793,7 @@  discard block
 block discarded – undo
3793 3793
 			}
3794 3794
 		}
3795 3795
 
3796
-		if($valid_high && $valid_low)
3796
+		if ($valid_high && $valid_low)
3797 3797
 		{
3798 3798
 			$ip_array['low'] = $ip_parts[0];
3799 3799
 			$ip_array['high'] = $ip_parts[1];
@@ -4066,7 +4066,7 @@  discard block
 block discarded – undo
4066 4066
 		addInlineJavaScript('
4067 4067
 	var user_menus = new smc_PopupMenu();
4068 4068
 	user_menus.add("profile", "' . $scripturl . '?action=profile;area=popup");
4069
-	user_menus.add("alerts", "' . $scripturl . '?action=profile;area=alerts_popup;u='. $context['user']['id'] .'");', true);
4069
+	user_menus.add("alerts", "' . $scripturl . '?action=profile;area=alerts_popup;u=' . $context['user']['id'] . '");', true);
4070 4070
 		if ($context['allow_pm'])
4071 4071
 			addInlineJavaScript('
4072 4072
 	user_menus.add("pm", "' . $scripturl . '?action=pm;sa=popup");', true);
@@ -4694,7 +4694,7 @@  discard block
 block discarded – undo
4694 4694
 		// No? try a fallback to $sourcedir
4695 4695
 		else
4696 4696
 		{
4697
-			$absPath = $sourcedir .'/'. $file;
4697
+			$absPath = $sourcedir . '/' . $file;
4698 4698
 
4699 4699
 			if (file_exists($absPath))
4700 4700
 				require_once($absPath);
@@ -4775,15 +4775,15 @@  discard block
 block discarded – undo
4775 4775
 
4776 4776
 	// UTF-8 occurences of MS special characters
4777 4777
 	$findchars_utf8 = array(
4778
-		"\xe2\80\x9a",	// single low-9 quotation mark
4779
-		"\xe2\80\x9e",	// double low-9 quotation mark
4780
-		"\xe2\80\xa6",	// horizontal ellipsis
4781
-		"\xe2\x80\x98",	// left single curly quote
4782
-		"\xe2\x80\x99",	// right single curly quote
4783
-		"\xe2\x80\x9c",	// left double curly quote
4784
-		"\xe2\x80\x9d",	// right double curly quote
4785
-		"\xe2\x80\x93",	// en dash
4786
-		"\xe2\x80\x94",	// em dash
4778
+		"\xe2\80\x9a", // single low-9 quotation mark
4779
+		"\xe2\80\x9e", // double low-9 quotation mark
4780
+		"\xe2\80\xa6", // horizontal ellipsis
4781
+		"\xe2\x80\x98", // left single curly quote
4782
+		"\xe2\x80\x99", // right single curly quote
4783
+		"\xe2\x80\x9c", // left double curly quote
4784
+		"\xe2\x80\x9d", // right double curly quote
4785
+		"\xe2\x80\x93", // en dash
4786
+		"\xe2\x80\x94", // em dash
4787 4787
 	);
4788 4788
 
4789 4789
 	// windows 1252 / iso equivalents
@@ -4801,15 +4801,15 @@  discard block
 block discarded – undo
4801 4801
 
4802 4802
 	// safe replacements
4803 4803
 	$replacechars = array(
4804
-		',',	// &sbquo;
4805
-		',,',	// &bdquo;
4806
-		'...',	// &hellip;
4807
-		"'",	// &lsquo;
4808
-		"'",	// &rsquo;
4809
-		'"',	// &ldquo;
4810
-		'"',	// &rdquo;
4811
-		'-',	// &ndash;
4812
-		'--',	// &mdash;
4804
+		',', // &sbquo;
4805
+		',,', // &bdquo;
4806
+		'...', // &hellip;
4807
+		"'", // &lsquo;
4808
+		"'", // &rsquo;
4809
+		'"', // &ldquo;
4810
+		'"', // &rdquo;
4811
+		'-', // &ndash;
4812
+		'--', // &mdash;
4813 4813
 	);
4814 4814
 
4815 4815
 	if ($context['utf8'])
@@ -5095,7 +5095,7 @@  discard block
 block discarded – undo
5095 5095
  */
5096 5096
 function inet_dtop($bin)
5097 5097
 {
5098
-	if(empty($bin))
5098
+	if (empty($bin))
5099 5099
 		return '';
5100 5100
 
5101 5101
 	global $db_type;
@@ -5126,28 +5126,28 @@  discard block
 block discarded – undo
5126 5126
  */
5127 5127
 function _safe_serialize($value)
5128 5128
 {
5129
-	if(is_null($value))
5129
+	if (is_null($value))
5130 5130
 		return 'N;';
5131 5131
 
5132
-	if(is_bool($value))
5133
-		return 'b:'. (int) $value .';';
5132
+	if (is_bool($value))
5133
+		return 'b:' . (int) $value . ';';
5134 5134
 
5135
-	if(is_int($value))
5136
-		return 'i:'. $value .';';
5135
+	if (is_int($value))
5136
+		return 'i:' . $value . ';';
5137 5137
 
5138
-	if(is_float($value))
5139
-		return 'd:'. str_replace(',', '.', $value) .';';
5138
+	if (is_float($value))
5139
+		return 'd:' . str_replace(',', '.', $value) . ';';
5140 5140
 
5141
-	if(is_string($value))
5142
-		return 's:'. strlen($value) .':"'. $value .'";';
5141
+	if (is_string($value))
5142
+		return 's:' . strlen($value) . ':"' . $value . '";';
5143 5143
 
5144
-	if(is_array($value))
5144
+	if (is_array($value))
5145 5145
 	{
5146 5146
 		$out = '';
5147
-		foreach($value as $k => $v)
5147
+		foreach ($value as $k => $v)
5148 5148
 			$out .= _safe_serialize($k) . _safe_serialize($v);
5149 5149
 
5150
-		return 'a:'. count($value) .':{'. $out .'}';
5150
+		return 'a:' . count($value) . ':{' . $out . '}';
5151 5151
 	}
5152 5152
 
5153 5153
 	// safe_serialize cannot serialize resources or objects.
@@ -5189,7 +5189,7 @@  discard block
 block discarded – undo
5189 5189
 function _safe_unserialize($str)
5190 5190
 {
5191 5191
 	// Input  is not a string.
5192
-	if(empty($str) || !is_string($str))
5192
+	if (empty($str) || !is_string($str))
5193 5193
 		return false;
5194 5194
 
5195 5195
 	$stack = array();
@@ -5203,40 +5203,40 @@  discard block
 block discarded – undo
5203 5203
 	 *   3 - in array, expecting value or another array
5204 5204
 	 */
5205 5205
 	$state = 0;
5206
-	while($state != 1)
5206
+	while ($state != 1)
5207 5207
 	{
5208 5208
 		$type = isset($str[0]) ? $str[0] : '';
5209
-		if($type == '}')
5209
+		if ($type == '}')
5210 5210
 			$str = substr($str, 1);
5211 5211
 
5212
-		else if($type == 'N' && $str[1] == ';')
5212
+		else if ($type == 'N' && $str[1] == ';')
5213 5213
 		{
5214 5214
 			$value = null;
5215 5215
 			$str = substr($str, 2);
5216 5216
 		}
5217
-		else if($type == 'b' && preg_match('/^b:([01]);/', $str, $matches))
5217
+		else if ($type == 'b' && preg_match('/^b:([01]);/', $str, $matches))
5218 5218
 		{
5219 5219
 			$value = $matches[1] == '1' ? true : false;
5220 5220
 			$str = substr($str, 4);
5221 5221
 		}
5222
-		else if($type == 'i' && preg_match('/^i:(-?[0-9]+);(.*)/s', $str, $matches))
5222
+		else if ($type == 'i' && preg_match('/^i:(-?[0-9]+);(.*)/s', $str, $matches))
5223 5223
 		{
5224
-			$value = (int)$matches[1];
5224
+			$value = (int) $matches[1];
5225 5225
 			$str = $matches[2];
5226 5226
 		}
5227
-		else if($type == 'd' && preg_match('/^d:(-?[0-9]+\.?[0-9]*(E[+-][0-9]+)?);(.*)/s', $str, $matches))
5227
+		else if ($type == 'd' && preg_match('/^d:(-?[0-9]+\.?[0-9]*(E[+-][0-9]+)?);(.*)/s', $str, $matches))
5228 5228
 		{
5229
-			$value = (float)$matches[1];
5229
+			$value = (float) $matches[1];
5230 5230
 			$str = $matches[3];
5231 5231
 		}
5232
-		else if($type == 's' && preg_match('/^s:([0-9]+):"(.*)/s', $str, $matches) && substr($matches[2], (int)$matches[1], 2) == '";')
5232
+		else if ($type == 's' && preg_match('/^s:([0-9]+):"(.*)/s', $str, $matches) && substr($matches[2], (int) $matches[1], 2) == '";')
5233 5233
 		{
5234
-			$value = substr($matches[2], 0, (int)$matches[1]);
5235
-			$str = substr($matches[2], (int)$matches[1] + 2);
5234
+			$value = substr($matches[2], 0, (int) $matches[1]);
5235
+			$str = substr($matches[2], (int) $matches[1] + 2);
5236 5236
 		}
5237
-		else if($type == 'a' && preg_match('/^a:([0-9]+):{(.*)/s', $str, $matches))
5237
+		else if ($type == 'a' && preg_match('/^a:([0-9]+):{(.*)/s', $str, $matches))
5238 5238
 		{
5239
-			$expectedLength = (int)$matches[1];
5239
+			$expectedLength = (int) $matches[1];
5240 5240
 			$str = $matches[2];
5241 5241
 		}
5242 5242
 
@@ -5244,10 +5244,10 @@  discard block
 block discarded – undo
5244 5244
 		else
5245 5245
 			return false;
5246 5246
 
5247
-		switch($state)
5247
+		switch ($state)
5248 5248
 		{
5249 5249
 			case 3: // In array, expecting value or another array.
5250
-				if($type == 'a')
5250
+				if ($type == 'a')
5251 5251
 				{
5252 5252
 					$stack[] = &$list;
5253 5253
 					$list[$key] = array();
@@ -5256,7 +5256,7 @@  discard block
 block discarded – undo
5256 5256
 					$state = 2;
5257 5257
 					break;
5258 5258
 				}
5259
-				if($type != '}')
5259
+				if ($type != '}')
5260 5260
 				{
5261 5261
 					$list[$key] = $value;
5262 5262
 					$state = 2;
@@ -5267,29 +5267,29 @@  discard block
 block discarded – undo
5267 5267
 				return false;
5268 5268
 
5269 5269
 			case 2: // in array, expecting end of array or a key
5270
-				if($type == '}')
5270
+				if ($type == '}')
5271 5271
 				{
5272 5272
 					// Array size is less than expected.
5273
-					if(count($list) < end($expected))
5273
+					if (count($list) < end($expected))
5274 5274
 						return false;
5275 5275
 
5276 5276
 					unset($list);
5277
-					$list = &$stack[count($stack)-1];
5277
+					$list = &$stack[count($stack) - 1];
5278 5278
 					array_pop($stack);
5279 5279
 
5280 5280
 					// Go to terminal state if we're at the end of the root array.
5281 5281
 					array_pop($expected);
5282 5282
 
5283
-					if(count($expected) == 0)
5283
+					if (count($expected) == 0)
5284 5284
 						$state = 1;
5285 5285
 
5286 5286
 					break;
5287 5287
 				}
5288 5288
 
5289
-				if($type == 'i' || $type == 's')
5289
+				if ($type == 'i' || $type == 's')
5290 5290
 				{
5291 5291
 					// Array size exceeds expected length.
5292
-					if(count($list) >= end($expected))
5292
+					if (count($list) >= end($expected))
5293 5293
 						return false;
5294 5294
 
5295 5295
 					$key = $value;
@@ -5302,7 +5302,7 @@  discard block
 block discarded – undo
5302 5302
 
5303 5303
 			// Expecting array or value.
5304 5304
 			case 0:
5305
-				if($type == 'a')
5305
+				if ($type == 'a')
5306 5306
 				{
5307 5307
 					$data = array();
5308 5308
 					$list = &$data;
@@ -5311,7 +5311,7 @@  discard block
 block discarded – undo
5311 5311
 					break;
5312 5312
 				}
5313 5313
 
5314
-				if($type != '}')
5314
+				if ($type != '}')
5315 5315
 				{
5316 5316
 					$data = $value;
5317 5317
 					$state = 1;
@@ -5324,7 +5324,7 @@  discard block
 block discarded – undo
5324 5324
 	}
5325 5325
 
5326 5326
 	// Trailing data in input.
5327
-	if(!empty($str))
5327
+	if (!empty($str))
5328 5328
 		return false;
5329 5329
 
5330 5330
 	return $data;
@@ -5378,7 +5378,7 @@  discard block
 block discarded – undo
5378 5378
 	// Set different modes.
5379 5379
 	$chmodValues = $isDir ? array(0750, 0755, 0775, 0777) : array(0644, 0664, 0666);
5380 5380
 
5381
-	foreach($chmodValues as $val)
5381
+	foreach ($chmodValues as $val)
5382 5382
 	{
5383 5383
 		// If it's writable, break out of the loop.
5384 5384
 		if (is_writable($file))
@@ -5416,13 +5416,13 @@  discard block
 block discarded – undo
5416 5416
 	$returnArray = @json_decode($json, $returnAsArray);
5417 5417
 
5418 5418
 	// PHP 5.3 so no json_last_error_msg()
5419
-	switch(json_last_error())
5419
+	switch (json_last_error())
5420 5420
 	{
5421 5421
 		case JSON_ERROR_NONE:
5422 5422
 			$jsonError = false;
5423 5423
 			break;
5424 5424
 		case JSON_ERROR_DEPTH:
5425
-			$jsonError =  'JSON_ERROR_DEPTH';
5425
+			$jsonError = 'JSON_ERROR_DEPTH';
5426 5426
 			break;
5427 5427
 		case JSON_ERROR_STATE_MISMATCH:
5428 5428
 			$jsonError = 'JSON_ERROR_STATE_MISMATCH';
@@ -5450,10 +5450,10 @@  discard block
 block discarded – undo
5450 5450
 		loadLanguage('Errors');
5451 5451
 
5452 5452
 		if (!empty($jsonDebug))
5453
-			log_error($txt['json_'. $jsonError], 'critical', $jsonDebug['file'], $jsonDebug['line']);
5453
+			log_error($txt['json_' . $jsonError], 'critical', $jsonDebug['file'], $jsonDebug['line']);
5454 5454
 
5455 5455
 		else
5456
-			log_error($txt['json_'. $jsonError], 'critical');
5456
+			log_error($txt['json_' . $jsonError], 'critical');
5457 5457
 
5458 5458
 		// Everyone expects an array.
5459 5459
 		return array();
@@ -5557,7 +5557,7 @@  discard block
 block discarded – undo
5557 5557
 		});
5558 5558
 
5559 5559
 		// Convert Punycode to Unicode
5560
-		$tlds = array_map(function ($input) {
5560
+		$tlds = array_map(function($input) {
5561 5561
 			$prefix = 'xn--';
5562 5562
 			$safe_char = 0xFFFC;
5563 5563
 			$base = 36;
@@ -5573,7 +5573,7 @@  discard block
 block discarded – undo
5573 5573
 
5574 5574
 			foreach ($enco_parts as $encoded)
5575 5575
 			{
5576
-				if (strpos($encoded,$prefix) !== 0 || strlen(trim(str_replace($prefix,'',$encoded))) == 0)
5576
+				if (strpos($encoded, $prefix) !== 0 || strlen(trim(str_replace($prefix, '', $encoded))) == 0)
5577 5577
 				{
5578 5578
 					$output_parts[] = $encoded;
5579 5579
 					continue;
@@ -5584,7 +5584,7 @@  discard block
 block discarded – undo
5584 5584
 				$idx = 0;
5585 5585
 				$char = 0x80;
5586 5586
 				$decoded = array();
5587
-				$output='';
5587
+				$output = '';
5588 5588
 				$delim_pos = strrpos($encoded, '-');
5589 5589
 
5590 5590
 				if ($delim_pos > strlen($prefix))
@@ -5600,7 +5600,7 @@  discard block
 block discarded – undo
5600 5600
 
5601 5601
 				for ($enco_idx = $delim_pos ? ($delim_pos + 1) : 0; $enco_idx < $enco_len; ++$deco_len)
5602 5602
 				{
5603
-					for ($old_idx = $idx, $w = 1, $k = $base; 1 ; $k += $base)
5603
+					for ($old_idx = $idx, $w = 1, $k = $base; 1; $k += $base)
5604 5604
 					{
5605 5605
 						$cp = ord($encoded{$enco_idx++});
5606 5606
 						$digit = ($cp - 48 < 10) ? $cp - 22 : (($cp - 65 < 26) ? $cp - 65 : (($cp - 97 < 26) ? $cp - 97 : $base));
@@ -5641,15 +5641,15 @@  discard block
 block discarded – undo
5641 5641
 
5642 5642
 					// 2 bytes
5643 5643
 					elseif ($v < (1 << 11))
5644
-						$output .= chr(192+($v >> 6)) . chr(128+($v & 63));
5644
+						$output .= chr(192 + ($v >> 6)) . chr(128 + ($v & 63));
5645 5645
 
5646 5646
 					// 3 bytes
5647 5647
 					elseif ($v < (1 << 16))
5648
-						$output .= chr(224+($v >> 12)) . chr(128+(($v >> 6) & 63)) . chr(128+($v & 63));
5648
+						$output .= chr(224 + ($v >> 12)) . chr(128 + (($v >> 6) & 63)) . chr(128 + ($v & 63));
5649 5649
 
5650 5650
 					// 4 bytes
5651 5651
 					elseif ($v < (1 << 21))
5652
-						$output .= chr(240+($v >> 18)) . chr(128+(($v >> 12) & 63)) . chr(128+(($v >> 6) & 63)) . chr(128+($v & 63));
5652
+						$output .= chr(240 + ($v >> 18)) . chr(128 + (($v >> 12) & 63)) . chr(128 + (($v >> 6) & 63)) . chr(128 + ($v & 63));
5653 5653
 
5654 5654
 					//  'Conversion from UCS-4 to UTF-8 failed: malformed input at byte '.$k
5655 5655
 					else
@@ -5756,7 +5756,7 @@  discard block
 block discarded – undo
5756 5756
 	}
5757 5757
 
5758 5758
 	// This recursive function creates the index array from the strings
5759
-	$add_string_to_index = function ($string, $index) use (&$strlen, &$substr, &$add_string_to_index)
5759
+	$add_string_to_index = function($string, $index) use (&$strlen, &$substr, &$add_string_to_index)
5760 5760
 	{
5761 5761
 		static $depth = 0;
5762 5762
 		$depth++;
@@ -5783,7 +5783,7 @@  discard block
 block discarded – undo
5783 5783
 	};
5784 5784
 
5785 5785
 	// This recursive function turns the index array into a regular expression
5786
-	$index_to_regex = function (&$index, $delim) use (&$strlen, &$index_to_regex)
5786
+	$index_to_regex = function(&$index, $delim) use (&$strlen, &$index_to_regex)
5787 5787
 	{
5788 5788
 		static $depth = 0;
5789 5789
 		$depth++;
@@ -5807,11 +5807,11 @@  discard block
 block discarded – undo
5807 5807
 
5808 5808
 				if (count(array_keys($value)) == 1)
5809 5809
 				{
5810
-					$new_key_array = explode('(?'.'>', $sub_regex);
5810
+					$new_key_array = explode('(?' . '>', $sub_regex);
5811 5811
 					$new_key .= $new_key_array[0];
5812 5812
 				}
5813 5813
 				else
5814
-					$sub_regex = '(?'.'>' . $sub_regex . ')';
5814
+					$sub_regex = '(?' . '>' . $sub_regex . ')';
5815 5815
 			}
5816 5816
 
5817 5817
 			if ($depth > 1)
@@ -5851,7 +5851,7 @@  discard block
 block discarded – undo
5851 5851
 		$index = $add_string_to_index($string, $index);
5852 5852
 
5853 5853
 	while (!empty($index))
5854
-		$regexes[] = '(?'.'>' . $index_to_regex($index, $delim) . ')';
5854
+		$regexes[] = '(?' . '>' . $index_to_regex($index, $delim) . ')';
5855 5855
 
5856 5856
 	// Restore PHP's internal character encoding to whatever it was originally
5857 5857
 	if (!empty($current_encoding))
Please login to merge, or discard this patch.
Braces   +1266 added lines, -941 removed lines patch added patch discarded remove patch
@@ -13,8 +13,9 @@  discard block
 block discarded – undo
13 13
  * @version 2.1 Beta 3
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
 block discarded – undo
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
 block discarded – undo
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
 block discarded – undo
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
 block discarded – undo
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
 block discarded – undo
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
 block discarded – undo
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
 block discarded – undo
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
 block discarded – undo
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
 block discarded – undo
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
 block discarded – undo
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 ($type == 'int' && ($val === '+' || $val === '-'))
@@ -390,8 +399,9 @@  discard block
 block discarded – undo
390 399
 		{
391 400
 			if (preg_match('~^' . $var . ' (\+ |- |\+ -)([\d]+)~', $val, $match))
392 401
 			{
393
-				if ($match[1] != '+ ')
394
-					$val = 'CASE WHEN ' . $var . ' <= ' . abs($match[2]) . ' THEN 0 ELSE ' . $val . ' END';
402
+				if ($match[1] != '+ ') {
403
+									$val = 'CASE WHEN ' . $var . ' <= ' . abs($match[2]) . ' THEN 0 ELSE ' . $val . ' END';
404
+				}
395 405
 				$type = 'raw';
396 406
 			}
397 407
 		}
@@ -412,8 +422,9 @@  discard block
 block discarded – undo
412 422
 	// Clear any caching?
413 423
 	if (!empty($modSettings['cache_enable']) && $modSettings['cache_enable'] >= 2 && !empty($members))
414 424
 	{
415
-		if (!is_array($members))
416
-			$members = array($members);
425
+		if (!is_array($members)) {
426
+					$members = array($members);
427
+		}
417 428
 
418 429
 		foreach ($members as $member)
419 430
 		{
@@ -446,29 +457,32 @@  discard block
 block discarded – undo
446 457
 {
447 458
 	global $modSettings, $smcFunc;
448 459
 
449
-	if (empty($changeArray) || !is_array($changeArray))
450
-		return;
460
+	if (empty($changeArray) || !is_array($changeArray)) {
461
+			return;
462
+	}
451 463
 
452 464
 	$toRemove = array();
453 465
 
454 466
 	// Go check if there is any setting to be removed.
455
-	foreach ($changeArray as $k => $v)
456
-		if ($v === null)
467
+	foreach ($changeArray as $k => $v) {
468
+			if ($v === null)
457 469
 		{
458 470
 			// Found some, remove them from the original array and add them to ours.
459 471
 			unset($changeArray[$k]);
472
+	}
460 473
 			$toRemove[] = $k;
461 474
 		}
462 475
 
463 476
 	// Proceed with the deletion.
464
-	if (!empty($toRemove))
465
-		$smcFunc['db_query']('', '
477
+	if (!empty($toRemove)) {
478
+			$smcFunc['db_query']('', '
466 479
 			DELETE FROM {db_prefix}settings
467 480
 			WHERE variable IN ({array_string:remove})',
468 481
 			array(
469 482
 				'remove' => $toRemove,
470 483
 			)
471 484
 		);
485
+	}
472 486
 
473 487
 	// In some cases, this may be better and faster, but for large sets we don't want so many UPDATEs.
474 488
 	if ($update)
@@ -497,19 +511,22 @@  discard block
 block discarded – undo
497 511
 	foreach ($changeArray as $variable => $value)
498 512
 	{
499 513
 		// Don't bother if it's already like that ;).
500
-		if (isset($modSettings[$variable]) && $modSettings[$variable] == $value)
501
-			continue;
514
+		if (isset($modSettings[$variable]) && $modSettings[$variable] == $value) {
515
+					continue;
516
+		}
502 517
 		// If the variable isn't set, but would only be set to nothing'ness, then don't bother setting it.
503
-		elseif (!isset($modSettings[$variable]) && empty($value))
504
-			continue;
518
+		elseif (!isset($modSettings[$variable]) && empty($value)) {
519
+					continue;
520
+		}
505 521
 
506 522
 		$replaceArray[] = array($variable, $value);
507 523
 
508 524
 		$modSettings[$variable] = $value;
509 525
 	}
510 526
 
511
-	if (empty($replaceArray))
512
-		return;
527
+	if (empty($replaceArray)) {
528
+			return;
529
+	}
513 530
 
514 531
 	$smcFunc['db_insert']('replace',
515 532
 		'{db_prefix}settings',
@@ -555,14 +572,17 @@  discard block
 block discarded – undo
555 572
 	$start_invalid = $start < 0;
556 573
 
557 574
 	// Make sure $start is a proper variable - not less than 0.
558
-	if ($start_invalid)
559
-		$start = 0;
575
+	if ($start_invalid) {
576
+			$start = 0;
577
+	}
560 578
 	// Not greater than the upper bound.
561
-	elseif ($start >= $max_value)
562
-		$start = max(0, (int) $max_value - (((int) $max_value % (int) $num_per_page) == 0 ? $num_per_page : ((int) $max_value % (int) $num_per_page)));
579
+	elseif ($start >= $max_value) {
580
+			$start = max(0, (int) $max_value - (((int) $max_value % (int) $num_per_page) == 0 ? $num_per_page : ((int) $max_value % (int) $num_per_page)));
581
+	}
563 582
 	// And it has to be a multiple of $num_per_page!
564
-	else
565
-		$start = max(0, (int) $start - ((int) $start % (int) $num_per_page));
583
+	else {
584
+			$start = max(0, (int) $start - ((int) $start % (int) $num_per_page));
585
+	}
566 586
 
567 587
 	$context['current_page'] = $start / $num_per_page;
568 588
 
@@ -592,77 +612,87 @@  discard block
 block discarded – undo
592 612
 
593 613
 		// Show all the pages.
594 614
 		$display_page = 1;
595
-		for ($counter = 0; $counter < $max_value; $counter += $num_per_page)
596
-			$pageindex .= $start == $counter && !$start_invalid ? sprintf($settings['page_index']['current_page'], $display_page++) : sprintf($base_link, $counter, $display_page++);
615
+		for ($counter = 0; $counter < $max_value; $counter += $num_per_page) {
616
+					$pageindex .= $start == $counter && !$start_invalid ? sprintf($settings['page_index']['current_page'], $display_page++) : sprintf($base_link, $counter, $display_page++);
617
+		}
597 618
 
598 619
 		// Show the right arrow.
599 620
 		$display_page = ($start + $num_per_page) > $max_value ? $max_value : ($start + $num_per_page);
600
-		if ($start != $counter - $max_value && !$start_invalid)
601
-			$pageindex .= $display_page > $counter - $num_per_page ? ' ' : sprintf($base_link, $display_page, $settings['page_index']['next_page']);
602
-	}
603
-	else
621
+		if ($start != $counter - $max_value && !$start_invalid) {
622
+					$pageindex .= $display_page > $counter - $num_per_page ? ' ' : sprintf($base_link, $display_page, $settings['page_index']['next_page']);
623
+		}
624
+	} else
604 625
 	{
605 626
 		// If they didn't enter an odd value, pretend they did.
606 627
 		$PageContiguous = (int) ($modSettings['compactTopicPagesContiguous'] - ($modSettings['compactTopicPagesContiguous'] % 2)) / 2;
607 628
 
608 629
 		// Show the "prev page" link. (>prev page< 1 ... 6 7 [8] 9 10 ... 15 next page)
609
-		if (!empty($start) && $show_prevnext)
610
-			$pageindex .= sprintf($base_link, $start - $num_per_page, $settings['page_index']['previous_page']);
611
-		else
612
-			$pageindex .= '';
630
+		if (!empty($start) && $show_prevnext) {
631
+					$pageindex .= sprintf($base_link, $start - $num_per_page, $settings['page_index']['previous_page']);
632
+		} else {
633
+					$pageindex .= '';
634
+		}
613 635
 
614 636
 		// Show the first page. (prev page >1< ... 6 7 [8] 9 10 ... 15)
615
-		if ($start > $num_per_page * $PageContiguous)
616
-			$pageindex .= sprintf($base_link, 0, '1');
637
+		if ($start > $num_per_page * $PageContiguous) {
638
+					$pageindex .= sprintf($base_link, 0, '1');
639
+		}
617 640
 
618 641
 		// Show the ... after the first page.  (prev page 1 >...< 6 7 [8] 9 10 ... 15 next page)
619
-		if ($start > $num_per_page * ($PageContiguous + 1))
620
-			$pageindex .= strtr($settings['page_index']['expand_pages'], array(
642
+		if ($start > $num_per_page * ($PageContiguous + 1)) {
643
+					$pageindex .= strtr($settings['page_index']['expand_pages'], array(
621 644
 				'{LINK}' => JavaScriptEscape($smcFunc['htmlspecialchars']($base_link)),
622 645
 				'{FIRST_PAGE}' => $num_per_page,
623 646
 				'{LAST_PAGE}' => $start - $num_per_page * $PageContiguous,
624 647
 				'{PER_PAGE}' => $num_per_page,
625 648
 			));
649
+		}
626 650
 
627 651
 		// Show the pages before the current one. (prev page 1 ... >6 7< [8] 9 10 ... 15 next page)
628
-		for ($nCont = $PageContiguous; $nCont >= 1; $nCont--)
629
-			if ($start >= $num_per_page * $nCont)
652
+		for ($nCont = $PageContiguous; $nCont >= 1; $nCont--) {
653
+					if ($start >= $num_per_page * $nCont)
630 654
 			{
631 655
 				$tmpStart = $start - $num_per_page * $nCont;
656
+		}
632 657
 				$pageindex .= sprintf($base_link, $tmpStart, $tmpStart / $num_per_page + 1);
633 658
 			}
634 659
 
635 660
 		// Show the current page. (prev page 1 ... 6 7 >[8]< 9 10 ... 15 next page)
636
-		if (!$start_invalid)
637
-			$pageindex .= sprintf($settings['page_index']['current_page'], $start / $num_per_page + 1);
638
-		else
639
-			$pageindex .= sprintf($base_link, $start, $start / $num_per_page + 1);
661
+		if (!$start_invalid) {
662
+					$pageindex .= sprintf($settings['page_index']['current_page'], $start / $num_per_page + 1);
663
+		} else {
664
+					$pageindex .= sprintf($base_link, $start, $start / $num_per_page + 1);
665
+		}
640 666
 
641 667
 		// Show the pages after the current one... (prev page 1 ... 6 7 [8] >9 10< ... 15 next page)
642 668
 		$tmpMaxPages = (int) (($max_value - 1) / $num_per_page) * $num_per_page;
643
-		for ($nCont = 1; $nCont <= $PageContiguous; $nCont++)
644
-			if ($start + $num_per_page * $nCont <= $tmpMaxPages)
669
+		for ($nCont = 1; $nCont <= $PageContiguous; $nCont++) {
670
+					if ($start + $num_per_page * $nCont <= $tmpMaxPages)
645 671
 			{
646 672
 				$tmpStart = $start + $num_per_page * $nCont;
673
+		}
647 674
 				$pageindex .= sprintf($base_link, $tmpStart, $tmpStart / $num_per_page + 1);
648 675
 			}
649 676
 
650 677
 		// Show the '...' part near the end. (prev page 1 ... 6 7 [8] 9 10 >...< 15 next page)
651
-		if ($start + $num_per_page * ($PageContiguous + 1) < $tmpMaxPages)
652
-			$pageindex .= strtr($settings['page_index']['expand_pages'], array(
678
+		if ($start + $num_per_page * ($PageContiguous + 1) < $tmpMaxPages) {
679
+					$pageindex .= strtr($settings['page_index']['expand_pages'], array(
653 680
 				'{LINK}' => JavaScriptEscape($smcFunc['htmlspecialchars']($base_link)),
654 681
 				'{FIRST_PAGE}' => $start + $num_per_page * ($PageContiguous + 1),
655 682
 				'{LAST_PAGE}' => $tmpMaxPages,
656 683
 				'{PER_PAGE}' => $num_per_page,
657 684
 			));
685
+		}
658 686
 
659 687
 		// Show the last number in the list. (prev page 1 ... 6 7 [8] 9 10 ... >15<  next page)
660
-		if ($start + $num_per_page * $PageContiguous < $tmpMaxPages)
661
-			$pageindex .= sprintf($base_link, $tmpMaxPages, $tmpMaxPages / $num_per_page + 1);
688
+		if ($start + $num_per_page * $PageContiguous < $tmpMaxPages) {
689
+					$pageindex .= sprintf($base_link, $tmpMaxPages, $tmpMaxPages / $num_per_page + 1);
690
+		}
662 691
 
663 692
 		// Show the "next page" link. (prev page 1 ... 6 7 [8] 9 10 ... 15 >next page<)
664
-		if ($start != $tmpMaxPages && $show_prevnext)
665
-			$pageindex .= sprintf($base_link, $start + $num_per_page, $settings['page_index']['next_page']);
693
+		if ($start != $tmpMaxPages && $show_prevnext) {
694
+					$pageindex .= sprintf($base_link, $start + $num_per_page, $settings['page_index']['next_page']);
695
+		}
666 696
 	}
667 697
 	$pageindex .= $settings['page_index']['extra_after'];
668 698
 
@@ -688,8 +718,9 @@  discard block
 block discarded – undo
688 718
 	if ($decimal_separator === null)
689 719
 	{
690 720
 		// Not set for whatever reason?
691
-		if (empty($txt['number_format']) || preg_match('~^1([^\d]*)?234([^\d]*)(0*?)$~', $txt['number_format'], $matches) != 1)
692
-			return $number;
721
+		if (empty($txt['number_format']) || preg_match('~^1([^\d]*)?234([^\d]*)(0*?)$~', $txt['number_format'], $matches) != 1) {
722
+					return $number;
723
+		}
693 724
 
694 725
 		// Cache these each load...
695 726
 		$thousands_separator = $matches[1];
@@ -721,17 +752,20 @@  discard block
 block discarded – undo
721 752
 	static $non_twelve_hour;
722 753
 
723 754
 	// Offset the time.
724
-	if (!$offset_type)
725
-		$time = $log_time + ($user_info['time_offset'] + $modSettings['time_offset']) * 3600;
755
+	if (!$offset_type) {
756
+			$time = $log_time + ($user_info['time_offset'] + $modSettings['time_offset']) * 3600;
757
+	}
726 758
 	// Just the forum offset?
727
-	elseif ($offset_type == 'forum')
728
-		$time = $log_time + $modSettings['time_offset'] * 3600;
729
-	else
730
-		$time = $log_time;
759
+	elseif ($offset_type == 'forum') {
760
+			$time = $log_time + $modSettings['time_offset'] * 3600;
761
+	} else {
762
+			$time = $log_time;
763
+	}
731 764
 
732 765
 	// We can't have a negative date (on Windows, at least.)
733
-	if ($log_time < 0)
734
-		$log_time = 0;
766
+	if ($log_time < 0) {
767
+			$log_time = 0;
768
+	}
735 769
 
736 770
 	// Today and Yesterday?
737 771
 	if ($modSettings['todayMod'] >= 1 && $show_today === true)
@@ -748,46 +782,53 @@  discard block
 block discarded – undo
748 782
 		{
749 783
 			$h = strpos($user_info['time_format'], '%l') === false ? '%I' : '%l';
750 784
 			$today_fmt = $h . ':%M' . $s . ' %p';
785
+		} else {
786
+					$today_fmt = '%H:%M' . $s;
751 787
 		}
752
-		else
753
-			$today_fmt = '%H:%M' . $s;
754 788
 
755 789
 		// Same day of the year, same year.... Today!
756
-		if ($then['yday'] == $now['yday'] && $then['year'] == $now['year'])
757
-			return $txt['today'] . timeformat($log_time, $today_fmt, $offset_type);
790
+		if ($then['yday'] == $now['yday'] && $then['year'] == $now['year']) {
791
+					return $txt['today'] . timeformat($log_time, $today_fmt, $offset_type);
792
+		}
758 793
 
759 794
 		// 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...
760
-		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))
761
-			return $txt['yesterday'] . timeformat($log_time, $today_fmt, $offset_type);
795
+		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)) {
796
+					return $txt['yesterday'] . timeformat($log_time, $today_fmt, $offset_type);
797
+		}
762 798
 	}
763 799
 
764 800
 	$str = !is_bool($show_today) ? $show_today : $user_info['time_format'];
765 801
 
766 802
 	if (setlocale(LC_TIME, $txt['lang_locale']))
767 803
 	{
768
-		if (!isset($non_twelve_hour))
769
-			$non_twelve_hour = trim(strftime('%p')) === '';
770
-		if ($non_twelve_hour && strpos($str, '%p') !== false)
771
-			$str = str_replace('%p', (strftime('%H', $time) < 12 ? $txt['time_am'] : $txt['time_pm']), $str);
804
+		if (!isset($non_twelve_hour)) {
805
+					$non_twelve_hour = trim(strftime('%p')) === '';
806
+		}
807
+		if ($non_twelve_hour && strpos($str, '%p') !== false) {
808
+					$str = str_replace('%p', (strftime('%H', $time) < 12 ? $txt['time_am'] : $txt['time_pm']), $str);
809
+		}
772 810
 
773
-		foreach (array('%a', '%A', '%b', '%B') as $token)
774
-			if (strpos($str, $token) !== false)
811
+		foreach (array('%a', '%A', '%b', '%B') as $token) {
812
+					if (strpos($str, $token) !== false)
775 813
 				$str = str_replace($token, strftime($token, $time), $str);
776
-	}
777
-	else
814
+		}
815
+	} else
778 816
 	{
779 817
 		// Do-it-yourself time localization.  Fun.
780
-		foreach (array('%a' => 'days_short', '%A' => 'days', '%b' => 'months_short', '%B' => 'months') as $token => $text_label)
781
-			if (strpos($str, $token) !== false)
818
+		foreach (array('%a' => 'days_short', '%A' => 'days', '%b' => 'months_short', '%B' => 'months') as $token => $text_label) {
819
+					if (strpos($str, $token) !== false)
782 820
 				$str = str_replace($token, $txt[$text_label][(int) strftime($token === '%a' || $token === '%A' ? '%w' : '%m', $time)], $str);
821
+		}
783 822
 
784
-		if (strpos($str, '%p') !== false)
785
-			$str = str_replace('%p', (strftime('%H', $time) < 12 ? $txt['time_am'] : $txt['time_pm']), $str);
823
+		if (strpos($str, '%p') !== false) {
824
+					$str = str_replace('%p', (strftime('%H', $time) < 12 ? $txt['time_am'] : $txt['time_pm']), $str);
825
+		}
786 826
 	}
787 827
 
788 828
 	// Windows doesn't support %e; on some versions, strftime fails altogether if used, so let's prevent that.
789
-	if ($context['server']['is_windows'] && strpos($str, '%e') !== false)
790
-		$str = str_replace('%e', ltrim(strftime('%d', $time), '0'), $str);
829
+	if ($context['server']['is_windows'] && strpos($str, '%e') !== false) {
830
+			$str = str_replace('%e', ltrim(strftime('%d', $time), '0'), $str);
831
+	}
791 832
 
792 833
 	// Format any other characters..
793 834
 	return strftime($str, $time);
@@ -809,16 +850,19 @@  discard block
 block discarded – undo
809 850
 	static $translation = array();
810 851
 
811 852
 	// Determine the character set... Default to UTF-8
812
-	if (empty($context['character_set']))
813
-		$charset = 'UTF-8';
853
+	if (empty($context['character_set'])) {
854
+			$charset = 'UTF-8';
855
+	}
814 856
 	// Use ISO-8859-1 in place of non-supported ISO-8859 charsets...
815
-	elseif (strpos($context['character_set'], 'ISO-8859-') !== false && !in_array($context['character_set'], array('ISO-8859-5', 'ISO-8859-15')))
816
-		$charset = 'ISO-8859-1';
817
-	else
818
-		$charset = $context['character_set'];
857
+	elseif (strpos($context['character_set'], 'ISO-8859-') !== false && !in_array($context['character_set'], array('ISO-8859-5', 'ISO-8859-15'))) {
858
+			$charset = 'ISO-8859-1';
859
+	} else {
860
+			$charset = $context['character_set'];
861
+	}
819 862
 
820
-	if (empty($translation))
821
-		$translation = array_flip(get_html_translation_table(HTML_SPECIALCHARS, ENT_QUOTES, $charset)) + array('&#039;' => '\'', '&#39;' => '\'', '&nbsp;' => ' ');
863
+	if (empty($translation)) {
864
+			$translation = array_flip(get_html_translation_table(HTML_SPECIALCHARS, ENT_QUOTES, $charset)) + array('&#039;' => '\'', '&#39;' => '\'', '&nbsp;' => ' ');
865
+	}
822 866
 
823 867
 	return strtr($string, $translation);
824 868
 }
@@ -840,8 +884,9 @@  discard block
 block discarded – undo
840 884
 	global $smcFunc;
841 885
 
842 886
 	// It was already short enough!
843
-	if ($smcFunc['strlen']($subject) <= $len)
844
-		return $subject;
887
+	if ($smcFunc['strlen']($subject) <= $len) {
888
+			return $subject;
889
+	}
845 890
 
846 891
 	// Shorten it by the length it was too long, and strip off junk from the end.
847 892
 	return $smcFunc['substr']($subject, 0, $len) . '...';
@@ -860,10 +905,11 @@  discard block
 block discarded – undo
860 905
 {
861 906
 	global $user_info, $modSettings;
862 907
 
863
-	if ($timestamp === null)
864
-		$timestamp = time();
865
-	elseif ($timestamp == 0)
866
-		return 0;
908
+	if ($timestamp === null) {
909
+			$timestamp = time();
910
+	} elseif ($timestamp == 0) {
911
+			return 0;
912
+	}
867 913
 
868 914
 	return $timestamp + ($modSettings['time_offset'] + ($use_user_offset ? $user_info['time_offset'] : 0)) * 3600;
869 915
 }
@@ -892,8 +938,9 @@  discard block
 block discarded – undo
892 938
 		$array[$i] = $array[$j];
893 939
 		$array[$j] = $temp;
894 940
 
895
-		for ($i = 1; $p[$i] == 0; $i++)
896
-			$p[$i] = 1;
941
+		for ($i = 1; $p[$i] == 0; $i++) {
942
+					$p[$i] = 1;
943
+		}
897 944
 
898 945
 		$orders[] = $array;
899 946
 	}
@@ -925,12 +972,14 @@  discard block
 block discarded – undo
925 972
 	static $disabled;
926 973
 
927 974
 	// Don't waste cycles
928
-	if ($message === '')
929
-		return '';
975
+	if ($message === '') {
976
+			return '';
977
+	}
930 978
 
931 979
 	// Just in case it wasn't determined yet whether UTF-8 is enabled.
932
-	if (!isset($context['utf8']))
933
-		$context['utf8'] = (empty($modSettings['global_character_set']) ? $txt['lang_character_set'] : $modSettings['global_character_set']) === 'UTF-8';
980
+	if (!isset($context['utf8'])) {
981
+			$context['utf8'] = (empty($modSettings['global_character_set']) ? $txt['lang_character_set'] : $modSettings['global_character_set']) === 'UTF-8';
982
+	}
934 983
 
935 984
 	// Clean up any cut/paste issues we may have
936 985
 	$message = sanitizeMSCutPaste($message);
@@ -942,13 +991,15 @@  discard block
 block discarded – undo
942 991
 		return $message;
943 992
 	}
944 993
 
945
-	if ($smileys !== null && ($smileys == '1' || $smileys == '0'))
946
-		$smileys = (bool) $smileys;
994
+	if ($smileys !== null && ($smileys == '1' || $smileys == '0')) {
995
+			$smileys = (bool) $smileys;
996
+	}
947 997
 
948 998
 	if (empty($modSettings['enableBBC']) && $message !== false)
949 999
 	{
950
-		if ($smileys === true)
951
-			parsesmileys($message);
1000
+		if ($smileys === true) {
1001
+					parsesmileys($message);
1002
+		}
952 1003
 
953 1004
 		return $message;
954 1005
 	}
@@ -961,8 +1012,9 @@  discard block
 block discarded – undo
961 1012
 	}
962 1013
 
963 1014
 	// Ensure $modSettings['tld_regex'] contains a valid regex for the autolinker
964
-	if (!empty($modSettings['autoLinkUrls']))
965
-		set_tld_regex();
1015
+	if (!empty($modSettings['autoLinkUrls'])) {
1016
+			set_tld_regex();
1017
+	}
966 1018
 
967 1019
 	// Allow mods access before entering the main parse_bbc loop
968 1020
 	call_integration_hook('integrate_pre_parsebbc', array(&$message, &$smileys, &$cache_id, &$parse_tags));
@@ -976,12 +1028,14 @@  discard block
 block discarded – undo
976 1028
 
977 1029
 			$temp = explode(',', strtolower($modSettings['disabledBBC']));
978 1030
 
979
-			foreach ($temp as $tag)
980
-				$disabled[trim($tag)] = true;
1031
+			foreach ($temp as $tag) {
1032
+							$disabled[trim($tag)] = true;
1033
+			}
981 1034
 		}
982 1035
 
983
-		if (empty($modSettings['enableEmbeddedFlash']))
984
-			$disabled['flash'] = true;
1036
+		if (empty($modSettings['enableEmbeddedFlash'])) {
1037
+					$disabled['flash'] = true;
1038
+		}
985 1039
 
986 1040
 		/* The following bbc are formatted as an array, with keys as follows:
987 1041
 
@@ -1102,8 +1156,9 @@  discard block
 block discarded – undo
1102 1156
 					$returnContext = '';
1103 1157
 
1104 1158
 					// BBC or the entire attachments feature is disabled
1105
-					if (empty($modSettings['attachmentEnable']) || !empty($disabled['attach']))
1106
-						return $data;
1159
+					if (empty($modSettings['attachmentEnable']) || !empty($disabled['attach'])) {
1160
+											return $data;
1161
+					}
1107 1162
 
1108 1163
 					// Save the attach ID.
1109 1164
 					$attachID = $data;
@@ -1114,8 +1169,9 @@  discard block
 block discarded – undo
1114 1169
 					$currentAttachment = parseAttachBBC($attachID);
1115 1170
 
1116 1171
 					// parseAttachBBC will return a string ($txt key) rather than diying with a fatal_error. Up to you to decide what to do.
1117
-					if (is_string($currentAttachment))
1118
-						return $data = !empty($txt[$currentAttachment]) ? $txt[$currentAttachment] : $currentAttachment;
1172
+					if (is_string($currentAttachment)) {
1173
+											return $data = !empty($txt[$currentAttachment]) ? $txt[$currentAttachment] : $currentAttachment;
1174
+					}
1119 1175
 
1120 1176
 					if (!empty($currentAttachment['is_image']))
1121 1177
 					{
@@ -1131,15 +1187,17 @@  discard block
 block discarded – undo
1131 1187
 							$height = ' height="' . $currentAttachment['height'] . '"';
1132 1188
 						}
1133 1189
 
1134
-						if ($currentAttachment['thumbnail']['has_thumb'] && empty($params['{width}']) && empty($params['{height}']))
1135
-							$returnContext .= '<a href="'. $currentAttachment['href']. ';image" id="link_'. $currentAttachment['id']. '" onclick="'. $currentAttachment['thumbnail']['javascript']. '"><img src="'. $currentAttachment['thumbnail']['href']. '" alt="' . $currentAttachment['name'] . '" id="thumb_'. $currentAttachment['id']. '"></a>';
1136
-						else
1137
-							$returnContext .= '<img src="' . $currentAttachment['href'] . ';image" alt="' . $currentAttachment['name'] . '"' . $width . $height . '/>';
1190
+						if ($currentAttachment['thumbnail']['has_thumb'] && empty($params['{width}']) && empty($params['{height}'])) {
1191
+													$returnContext .= '<a href="'. $currentAttachment['href']. ';image" id="link_'. $currentAttachment['id']. '" onclick="'. $currentAttachment['thumbnail']['javascript']. '"><img src="'. $currentAttachment['thumbnail']['href']. '" alt="' . $currentAttachment['name'] . '" id="thumb_'. $currentAttachment['id']. '"></a>';
1192
+						} else {
1193
+													$returnContext .= '<img src="' . $currentAttachment['href'] . ';image" alt="' . $currentAttachment['name'] . '"' . $width . $height . '/>';
1194
+						}
1138 1195
 					}
1139 1196
 
1140 1197
 					// No image. Show a link.
1141
-					else
1142
-						$returnContext .= $currentAttachment['link'];
1198
+					else {
1199
+											$returnContext .= $currentAttachment['link'];
1200
+					}
1143 1201
 
1144 1202
 					// Gotta append what we just did.
1145 1203
 					$data = $returnContext;
@@ -1170,8 +1228,9 @@  discard block
 block discarded – undo
1170 1228
 						for ($php_i = 0, $php_n = count($php_parts); $php_i < $php_n; $php_i++)
1171 1229
 						{
1172 1230
 							// Do PHP code coloring?
1173
-							if ($php_parts[$php_i] != '&lt;?php')
1174
-								continue;
1231
+							if ($php_parts[$php_i] != '&lt;?php') {
1232
+															continue;
1233
+							}
1175 1234
 
1176 1235
 							$php_string = '';
1177 1236
 							while ($php_i + 1 < count($php_parts) && $php_parts[$php_i] != '?&gt;')
@@ -1187,8 +1246,9 @@  discard block
 block discarded – undo
1187 1246
 						$data = str_replace("\t", "<span style=\"white-space: pre;\">\t</span>", $data);
1188 1247
 
1189 1248
 						// Recent Opera bug requiring temporary fix. &nsbp; is needed before </code> to avoid broken selection.
1190
-						if ($context['browser']['is_opera'])
1191
-							$data .= '&nbsp;';
1249
+						if ($context['browser']['is_opera']) {
1250
+													$data .= '&nbsp;';
1251
+						}
1192 1252
 					}
1193 1253
 				},
1194 1254
 				'block_level' => true,
@@ -1207,8 +1267,9 @@  discard block
 block discarded – undo
1207 1267
 						for ($php_i = 0, $php_n = count($php_parts); $php_i < $php_n; $php_i++)
1208 1268
 						{
1209 1269
 							// Do PHP code coloring?
1210
-							if ($php_parts[$php_i] != '&lt;?php')
1211
-								continue;
1270
+							if ($php_parts[$php_i] != '&lt;?php') {
1271
+															continue;
1272
+							}
1212 1273
 
1213 1274
 							$php_string = '';
1214 1275
 							while ($php_i + 1 < count($php_parts) && $php_parts[$php_i] != '?&gt;')
@@ -1224,8 +1285,9 @@  discard block
 block discarded – undo
1224 1285
 						$data[0] = str_replace("\t", "<span style=\"white-space: pre;\">\t</span>", $data[0]);
1225 1286
 
1226 1287
 						// Recent Opera bug requiring temporary fix. &nsbp; is needed before </code> to avoid broken selection.
1227
-						if ($context['browser']['is_opera'])
1228
-							$data[0] .= '&nbsp;';
1288
+						if ($context['browser']['is_opera']) {
1289
+													$data[0] .= '&nbsp;';
1290
+						}
1229 1291
 					}
1230 1292
 				},
1231 1293
 				'block_level' => true,
@@ -1263,11 +1325,13 @@  discard block
 block discarded – undo
1263 1325
 				'content' => '<embed type="application/x-shockwave-flash" src="$1" width="$2" height="$3" play="true" loop="true" quality="high" AllowScriptAccess="never">',
1264 1326
 				'validate' => function (&$tag, &$data, $disabled)
1265 1327
 				{
1266
-					if (isset($disabled['url']))
1267
-						$tag['content'] = '$1';
1328
+					if (isset($disabled['url'])) {
1329
+											$tag['content'] = '$1';
1330
+					}
1268 1331
 					$scheme = parse_url($data[0], PHP_URL_SCHEME);
1269
-					if (empty($scheme))
1270
-						$data[0] = '//' . ltrim($data[0], ':/');
1332
+					if (empty($scheme)) {
1333
+											$data[0] = '//' . ltrim($data[0], ':/');
1334
+					}
1271 1335
 				},
1272 1336
 				'disabled_content' => '<a href="$1" target="_blank" class="new_win">$1</a>',
1273 1337
 			),
@@ -1314,14 +1378,16 @@  discard block
 block discarded – undo
1314 1378
 					$scheme = parse_url($data, PHP_URL_SCHEME);
1315 1379
 					if ($image_proxy_enabled)
1316 1380
 					{
1317
-						if (empty($scheme))
1318
-							$data = 'http://' . ltrim($data, ':/');
1381
+						if (empty($scheme)) {
1382
+													$data = 'http://' . ltrim($data, ':/');
1383
+						}
1319 1384
 
1320
-						if ($scheme != 'https')
1321
-							$data = $boardurl . '/proxy.php?request=' . urlencode($data) . '&hash=' . md5($data . $image_proxy_secret);
1385
+						if ($scheme != 'https') {
1386
+													$data = $boardurl . '/proxy.php?request=' . urlencode($data) . '&hash=' . md5($data . $image_proxy_secret);
1387
+						}
1388
+					} elseif (empty($scheme)) {
1389
+											$data = '//' . ltrim($data, ':/');
1322 1390
 					}
1323
-					elseif (empty($scheme))
1324
-						$data = '//' . ltrim($data, ':/');
1325 1391
 				},
1326 1392
 				'disabled_content' => '($1)',
1327 1393
 			),
@@ -1337,14 +1403,16 @@  discard block
 block discarded – undo
1337 1403
 					$scheme = parse_url($data, PHP_URL_SCHEME);
1338 1404
 					if ($image_proxy_enabled)
1339 1405
 					{
1340
-						if (empty($scheme))
1341
-							$data = 'http://' . ltrim($data, ':/');
1406
+						if (empty($scheme)) {
1407
+													$data = 'http://' . ltrim($data, ':/');
1408
+						}
1342 1409
 
1343
-						if ($scheme != 'https')
1344
-							$data = $boardurl . '/proxy.php?request=' . urlencode($data) . '&hash=' . md5($data . $image_proxy_secret);
1410
+						if ($scheme != 'https') {
1411
+													$data = $boardurl . '/proxy.php?request=' . urlencode($data) . '&hash=' . md5($data . $image_proxy_secret);
1412
+						}
1413
+					} elseif (empty($scheme)) {
1414
+											$data = '//' . ltrim($data, ':/');
1345 1415
 					}
1346
-					elseif (empty($scheme))
1347
-						$data = '//' . ltrim($data, ':/');
1348 1416
 				},
1349 1417
 				'disabled_content' => '($1)',
1350 1418
 			),
@@ -1356,8 +1424,9 @@  discard block
 block discarded – undo
1356 1424
 				{
1357 1425
 					$data = strtr($data, array('<br>' => ''));
1358 1426
 					$scheme = parse_url($data, PHP_URL_SCHEME);
1359
-					if (empty($scheme))
1360
-						$data = '//' . ltrim($data, ':/');
1427
+					if (empty($scheme)) {
1428
+											$data = '//' . ltrim($data, ':/');
1429
+					}
1361 1430
 				},
1362 1431
 			),
1363 1432
 			array(
@@ -1368,13 +1437,14 @@  discard block
 block discarded – undo
1368 1437
 				'after' => '</a>',
1369 1438
 				'validate' => function (&$tag, &$data, $disabled)
1370 1439
 				{
1371
-					if (substr($data, 0, 1) == '#')
1372
-						$data = '#post_' . substr($data, 1);
1373
-					else
1440
+					if (substr($data, 0, 1) == '#') {
1441
+											$data = '#post_' . substr($data, 1);
1442
+					} else
1374 1443
 					{
1375 1444
 						$scheme = parse_url($data, PHP_URL_SCHEME);
1376
-						if (empty($scheme))
1377
-							$data = '//' . ltrim($data, ':/');
1445
+						if (empty($scheme)) {
1446
+													$data = '//' . ltrim($data, ':/');
1447
+						}
1378 1448
 					}
1379 1449
 				},
1380 1450
 				'disallow_children' => array('email', 'ftp', 'url', 'iurl'),
@@ -1452,8 +1522,9 @@  discard block
 block discarded – undo
1452 1522
 					{
1453 1523
 						$add_begin = substr(trim($data), 0, 5) != '&lt;?';
1454 1524
 						$data = highlight_php_code($add_begin ? '&lt;?php ' . $data . '?&gt;' : $data);
1455
-						if ($add_begin)
1456
-							$data = preg_replace(array('~^(.+?)&lt;\?.{0,40}?php(?:&nbsp;|\s)~', '~\?&gt;((?:</(font|span)>)*)$~'), '$1', $data, 2);
1525
+						if ($add_begin) {
1526
+													$data = preg_replace(array('~^(.+?)&lt;\?.{0,40}?php(?:&nbsp;|\s)~', '~\?&gt;((?:</(font|span)>)*)$~'), '$1', $data, 2);
1527
+						}
1457 1528
 					}
1458 1529
 				},
1459 1530
 				'block_level' => false,
@@ -1584,10 +1655,11 @@  discard block
 block discarded – undo
1584 1655
 				'content' => '$1',
1585 1656
 				'validate' => function (&$tag, &$data, $disabled)
1586 1657
 				{
1587
-					if (is_numeric($data))
1588
-						$data = timeformat($data);
1589
-					else
1590
-						$tag['content'] = '[time]$1[/time]';
1658
+					if (is_numeric($data)) {
1659
+											$data = timeformat($data);
1660
+					} else {
1661
+											$tag['content'] = '[time]$1[/time]';
1662
+					}
1591 1663
 				},
1592 1664
 			),
1593 1665
 			array(
@@ -1614,8 +1686,9 @@  discard block
 block discarded – undo
1614 1686
 				{
1615 1687
 					$data = strtr($data, array('<br>' => ''));
1616 1688
 					$scheme = parse_url($data, PHP_URL_SCHEME);
1617
-					if (empty($scheme))
1618
-						$data = '//' . ltrim($data, ':/');
1689
+					if (empty($scheme)) {
1690
+											$data = '//' . ltrim($data, ':/');
1691
+					}
1619 1692
 				},
1620 1693
 			),
1621 1694
 			array(
@@ -1627,8 +1700,9 @@  discard block
 block discarded – undo
1627 1700
 				'validate' => function (&$tag, &$data, $disabled)
1628 1701
 				{
1629 1702
 					$scheme = parse_url($data, PHP_URL_SCHEME);
1630
-					if (empty($scheme))
1631
-						$data = '//' . ltrim($data, ':/');
1703
+					if (empty($scheme)) {
1704
+											$data = '//' . ltrim($data, ':/');
1705
+					}
1632 1706
 				},
1633 1707
 				'disallow_children' => array('email', 'ftp', 'url', 'iurl'),
1634 1708
 				'disabled_after' => ' ($1)',
@@ -1648,8 +1722,9 @@  discard block
 block discarded – undo
1648 1722
 		// This is mainly for the bbc manager, so it's easy to add tags above.  Custom BBC should be added above this line.
1649 1723
 		if ($message === false)
1650 1724
 		{
1651
-			if (isset($temp_bbc))
1652
-				$bbc_codes = $temp_bbc;
1725
+			if (isset($temp_bbc)) {
1726
+							$bbc_codes = $temp_bbc;
1727
+			}
1653 1728
 			usort($codes, function ($a, $b) {
1654 1729
 				return strcmp($a['tag'], $b['tag']);
1655 1730
 			});
@@ -1669,8 +1744,9 @@  discard block
 block discarded – undo
1669 1744
 		);
1670 1745
 		if (!isset($disabled['li']) && !isset($disabled['list']))
1671 1746
 		{
1672
-			foreach ($itemcodes as $c => $dummy)
1673
-				$bbc_codes[$c] = array();
1747
+			foreach ($itemcodes as $c => $dummy) {
1748
+							$bbc_codes[$c] = array();
1749
+			}
1674 1750
 		}
1675 1751
 
1676 1752
 		// Shhhh!
@@ -1691,12 +1767,14 @@  discard block
 block discarded – undo
1691 1767
 		foreach ($codes as $code)
1692 1768
 		{
1693 1769
 			// Make it easier to process parameters later
1694
-			if (!empty($code['parameters']))
1695
-				ksort($code['parameters'], SORT_STRING);
1770
+			if (!empty($code['parameters'])) {
1771
+							ksort($code['parameters'], SORT_STRING);
1772
+			}
1696 1773
 
1697 1774
 			// If we are not doing every tag only do ones we are interested in.
1698
-			if (empty($parse_tags) || in_array($code['tag'], $parse_tags))
1699
-				$bbc_codes[substr($code['tag'], 0, 1)][] = $code;
1775
+			if (empty($parse_tags) || in_array($code['tag'], $parse_tags)) {
1776
+							$bbc_codes[substr($code['tag'], 0, 1)][] = $code;
1777
+			}
1700 1778
 		}
1701 1779
 		$codes = null;
1702 1780
 	}
@@ -1707,8 +1785,9 @@  discard block
 block discarded – undo
1707 1785
 		// It's likely this will change if the message is modified.
1708 1786
 		$cache_key = 'parse:' . $cache_id . '-' . md5(md5($message) . '-' . $smileys . (empty($disabled) ? '' : implode(',', array_keys($disabled))) . json_encode($context['browser']) . $txt['lang_locale'] . $user_info['time_offset'] . $user_info['time_format']);
1709 1787
 
1710
-		if (($temp = cache_get_data($cache_key, 240)) != null)
1711
-			return $temp;
1788
+		if (($temp = cache_get_data($cache_key, 240)) != null) {
1789
+					return $temp;
1790
+		}
1712 1791
 
1713 1792
 		$cache_t = microtime();
1714 1793
 	}
@@ -1740,8 +1819,9 @@  discard block
 block discarded – undo
1740 1819
 		$disabled['flash'] = true;
1741 1820
 
1742 1821
 		// @todo Change maybe?
1743
-		if (!isset($_GET['images']))
1744
-			$disabled['img'] = true;
1822
+		if (!isset($_GET['images'])) {
1823
+					$disabled['img'] = true;
1824
+		}
1745 1825
 
1746 1826
 		// @todo Interface/setting to add more?
1747 1827
 	}
@@ -1767,8 +1847,9 @@  discard block
 block discarded – undo
1767 1847
 		$pos = isset($matches[0][1]) ? $matches[0][1] : false;
1768 1848
 
1769 1849
 		// Failsafe.
1770
-		if ($pos === false || $last_pos > $pos)
1771
-			$pos = strlen($message) + 1;
1850
+		if ($pos === false || $last_pos > $pos) {
1851
+					$pos = strlen($message) + 1;
1852
+		}
1772 1853
 
1773 1854
 		// Can't have a one letter smiley, URL, or email! (sorry.)
1774 1855
 		if ($last_pos < $pos - 1)
@@ -1787,8 +1868,9 @@  discard block
 block discarded – undo
1787 1868
 
1788 1869
 				// <br> should be empty.
1789 1870
 				$empty_tags = array('br', 'hr');
1790
-				foreach ($empty_tags as $tag)
1791
-					$data = str_replace(array('&lt;' . $tag . '&gt;', '&lt;' . $tag . '/&gt;', '&lt;' . $tag . ' /&gt;'), '[' . $tag . ' /]', $data);
1871
+				foreach ($empty_tags as $tag) {
1872
+									$data = str_replace(array('&lt;' . $tag . '&gt;', '&lt;' . $tag . '/&gt;', '&lt;' . $tag . ' /&gt;'), '[' . $tag . ' /]', $data);
1873
+				}
1792 1874
 
1793 1875
 				// b, u, i, s, pre... basic tags.
1794 1876
 				$closable_tags = array('b', 'u', 'i', 's', 'em', 'ins', 'del', 'pre', 'blockquote');
@@ -1797,8 +1879,9 @@  discard block
 block discarded – undo
1797 1879
 					$diff = substr_count($data, '&lt;' . $tag . '&gt;') - substr_count($data, '&lt;/' . $tag . '&gt;');
1798 1880
 					$data = strtr($data, array('&lt;' . $tag . '&gt;' => '<' . $tag . '>', '&lt;/' . $tag . '&gt;' => '</' . $tag . '>'));
1799 1881
 
1800
-					if ($diff > 0)
1801
-						$data = substr($data, 0, -1) . str_repeat('</' . $tag . '>', $diff) . substr($data, -1);
1882
+					if ($diff > 0) {
1883
+											$data = substr($data, 0, -1) . str_repeat('</' . $tag . '>', $diff) . substr($data, -1);
1884
+					}
1802 1885
 				}
1803 1886
 
1804 1887
 				// Do <img ...> - with security... action= -> action-.
@@ -1811,8 +1894,9 @@  discard block
 block discarded – undo
1811 1894
 						$alt = empty($matches[3][$match]) ? '' : ' alt=' . preg_replace('~^&quot;|&quot;$~', '', $matches[3][$match]);
1812 1895
 
1813 1896
 						// Remove action= from the URL - no funny business, now.
1814
-						if (preg_match('~action(=|%3d)(?!dlattach)~i', $imgtag) != 0)
1815
-							$imgtag = preg_replace('~action(?:=|%3d)(?!dlattach)~i', 'action-', $imgtag);
1897
+						if (preg_match('~action(=|%3d)(?!dlattach)~i', $imgtag) != 0) {
1898
+													$imgtag = preg_replace('~action(?:=|%3d)(?!dlattach)~i', 'action-', $imgtag);
1899
+						}
1816 1900
 
1817 1901
 						// Check if the image is larger than allowed.
1818 1902
 						if (!empty($modSettings['max_image_width']) && !empty($modSettings['max_image_height']))
@@ -1833,9 +1917,9 @@  discard block
 block discarded – undo
1833 1917
 
1834 1918
 							// Set the new image tag.
1835 1919
 							$replaces[$matches[0][$match]] = '[img width=' . $width . ' height=' . $height . $alt . ']' . $imgtag . '[/img]';
1920
+						} else {
1921
+													$replaces[$matches[0][$match]] = '[img' . $alt . ']' . $imgtag . '[/img]';
1836 1922
 						}
1837
-						else
1838
-							$replaces[$matches[0][$match]] = '[img' . $alt . ']' . $imgtag . '[/img]';
1839 1923
 					}
1840 1924
 
1841 1925
 					$data = strtr($data, $replaces);
@@ -1848,16 +1932,18 @@  discard block
 block discarded – undo
1848 1932
 				$no_autolink_area = false;
1849 1933
 				if (!empty($open_tags))
1850 1934
 				{
1851
-					foreach ($open_tags as $open_tag)
1852
-						if (in_array($open_tag['tag'], $no_autolink_tags))
1935
+					foreach ($open_tags as $open_tag) {
1936
+											if (in_array($open_tag['tag'], $no_autolink_tags))
1853 1937
 							$no_autolink_area = true;
1938
+					}
1854 1939
 				}
1855 1940
 
1856 1941
 				// Don't go backwards.
1857 1942
 				// @todo Don't think is the real solution....
1858 1943
 				$lastAutoPos = isset($lastAutoPos) ? $lastAutoPos : 0;
1859
-				if ($pos < $lastAutoPos)
1860
-					$no_autolink_area = true;
1944
+				if ($pos < $lastAutoPos) {
1945
+									$no_autolink_area = true;
1946
+				}
1861 1947
 				$lastAutoPos = $pos;
1862 1948
 
1863 1949
 				if (!$no_autolink_area)
@@ -1966,17 +2052,19 @@  discard block
 block discarded – undo
1966 2052
 							if ($scheme == 'mailto')
1967 2053
 							{
1968 2054
 								$email_address = str_replace('mailto:', '', $url);
1969
-								if (!isset($disabled['email']) && filter_var($email_address, FILTER_VALIDATE_EMAIL) !== false)
1970
-									return '[email=' . $email_address . ']' . $url . '[/email]';
1971
-								else
1972
-									return $url;
2055
+								if (!isset($disabled['email']) && filter_var($email_address, FILTER_VALIDATE_EMAIL) !== false) {
2056
+																	return '[email=' . $email_address . ']' . $url . '[/email]';
2057
+								} else {
2058
+																	return $url;
2059
+								}
1973 2060
 							}
1974 2061
 
1975 2062
 							// Are we linking a schemeless URL or naked domain name (e.g. "example.com")?
1976
-							if (empty($scheme))
1977
-								$fullUrl = '//' . ltrim($url, ':/');
1978
-							else
1979
-								$fullUrl = $url;
2063
+							if (empty($scheme)) {
2064
+															$fullUrl = '//' . ltrim($url, ':/');
2065
+							} else {
2066
+															$fullUrl = $url;
2067
+							}
1980 2068
 
1981 2069
 							return '[url=&quot;' . str_replace(array('[', ']'), array('&#91;', '&#93;'), $fullUrl) . '&quot;]' . $url . '[/url]';
1982 2070
 						}, $data);
@@ -2025,16 +2113,18 @@  discard block
 block discarded – undo
2025 2113
 		}
2026 2114
 
2027 2115
 		// Are we there yet?  Are we there yet?
2028
-		if ($pos >= strlen($message) - 1)
2029
-			break;
2116
+		if ($pos >= strlen($message) - 1) {
2117
+					break;
2118
+		}
2030 2119
 
2031 2120
 		$tags = strtolower($message[$pos + 1]);
2032 2121
 
2033 2122
 		if ($tags == '/' && !empty($open_tags))
2034 2123
 		{
2035 2124
 			$pos2 = strpos($message, ']', $pos + 1);
2036
-			if ($pos2 == $pos + 2)
2037
-				continue;
2125
+			if ($pos2 == $pos + 2) {
2126
+							continue;
2127
+			}
2038 2128
 
2039 2129
 			$look_for = strtolower(substr($message, $pos + 2, $pos2 - $pos - 2));
2040 2130
 
@@ -2044,8 +2134,9 @@  discard block
 block discarded – undo
2044 2134
 			do
2045 2135
 			{
2046 2136
 				$tag = array_pop($open_tags);
2047
-				if (!$tag)
2048
-					break;
2137
+				if (!$tag) {
2138
+									break;
2139
+				}
2049 2140
 
2050 2141
 				if (!empty($tag['block_level']))
2051 2142
 				{
@@ -2059,10 +2150,11 @@  discard block
 block discarded – undo
2059 2150
 					// The idea is, if we are LOOKING for a block level tag, we can close them on the way.
2060 2151
 					if (strlen($look_for) > 0 && isset($bbc_codes[$look_for[0]]))
2061 2152
 					{
2062
-						foreach ($bbc_codes[$look_for[0]] as $temp)
2063
-							if ($temp['tag'] == $look_for)
2153
+						foreach ($bbc_codes[$look_for[0]] as $temp) {
2154
+													if ($temp['tag'] == $look_for)
2064 2155
 							{
2065 2156
 								$block_level = !empty($temp['block_level']);
2157
+						}
2066 2158
 								break;
2067 2159
 							}
2068 2160
 					}
@@ -2084,15 +2176,15 @@  discard block
 block discarded – undo
2084 2176
 			{
2085 2177
 				$open_tags = $to_close;
2086 2178
 				continue;
2087
-			}
2088
-			elseif (!empty($to_close) && $tag['tag'] != $look_for)
2179
+			} elseif (!empty($to_close) && $tag['tag'] != $look_for)
2089 2180
 			{
2090 2181
 				if ($block_level === null && isset($look_for[0], $bbc_codes[$look_for[0]]))
2091 2182
 				{
2092
-					foreach ($bbc_codes[$look_for[0]] as $temp)
2093
-						if ($temp['tag'] == $look_for)
2183
+					foreach ($bbc_codes[$look_for[0]] as $temp) {
2184
+											if ($temp['tag'] == $look_for)
2094 2185
 						{
2095 2186
 							$block_level = !empty($temp['block_level']);
2187
+					}
2096 2188
 							break;
2097 2189
 						}
2098 2190
 				}
@@ -2100,8 +2192,9 @@  discard block
 block discarded – undo
2100 2192
 				// We're not looking for a block level tag (or maybe even a tag that exists...)
2101 2193
 				if (!$block_level)
2102 2194
 				{
2103
-					foreach ($to_close as $tag)
2104
-						array_push($open_tags, $tag);
2195
+					foreach ($to_close as $tag) {
2196
+											array_push($open_tags, $tag);
2197
+					}
2105 2198
 					continue;
2106 2199
 				}
2107 2200
 			}
@@ -2113,10 +2206,12 @@  discard block
 block discarded – undo
2113 2206
 				$pos2 = $pos - 1;
2114 2207
 
2115 2208
 				// See the comment at the end of the big loop - just eating whitespace ;).
2116
-				if (!empty($tag['block_level']) && substr($message, $pos, 4) == '<br>')
2117
-					$message = substr($message, 0, $pos) . substr($message, $pos + 4);
2118
-				if (!empty($tag['trim']) && $tag['trim'] != 'inside' && preg_match('~(<br>|&nbsp;|\s)*~', substr($message, $pos), $matches) != 0)
2119
-					$message = substr($message, 0, $pos) . substr($message, $pos + strlen($matches[0]));
2209
+				if (!empty($tag['block_level']) && substr($message, $pos, 4) == '<br>') {
2210
+									$message = substr($message, 0, $pos) . substr($message, $pos + 4);
2211
+				}
2212
+				if (!empty($tag['trim']) && $tag['trim'] != 'inside' && preg_match('~(<br>|&nbsp;|\s)*~', substr($message, $pos), $matches) != 0) {
2213
+									$message = substr($message, 0, $pos) . substr($message, $pos + strlen($matches[0]));
2214
+				}
2120 2215
 			}
2121 2216
 
2122 2217
 			if (!empty($to_close))
@@ -2129,8 +2224,9 @@  discard block
 block discarded – undo
2129 2224
 		}
2130 2225
 
2131 2226
 		// No tags for this character, so just keep going (fastest possible course.)
2132
-		if (!isset($bbc_codes[$tags]))
2133
-			continue;
2227
+		if (!isset($bbc_codes[$tags])) {
2228
+					continue;
2229
+		}
2134 2230
 
2135 2231
 		$inside = empty($open_tags) ? null : $open_tags[count($open_tags) - 1];
2136 2232
 		$tag = null;
@@ -2139,44 +2235,52 @@  discard block
 block discarded – undo
2139 2235
 			$pt_strlen = strlen($possible['tag']);
2140 2236
 
2141 2237
 			// Not a match?
2142
-			if (strtolower(substr($message, $pos + 1, $pt_strlen)) != $possible['tag'])
2143
-				continue;
2238
+			if (strtolower(substr($message, $pos + 1, $pt_strlen)) != $possible['tag']) {
2239
+							continue;
2240
+			}
2144 2241
 
2145 2242
 			$next_c = $message[$pos + 1 + $pt_strlen];
2146 2243
 
2147 2244
 			// A test validation?
2148
-			if (isset($possible['test']) && preg_match('~^' . $possible['test'] . '~', substr($message, $pos + 1 + $pt_strlen + 1)) === 0)
2149
-				continue;
2245
+			if (isset($possible['test']) && preg_match('~^' . $possible['test'] . '~', substr($message, $pos + 1 + $pt_strlen + 1)) === 0) {
2246
+							continue;
2247
+			}
2150 2248
 			// Do we want parameters?
2151 2249
 			elseif (!empty($possible['parameters']))
2152 2250
 			{
2153
-				if ($next_c != ' ')
2154
-					continue;
2155
-			}
2156
-			elseif (isset($possible['type']))
2251
+				if ($next_c != ' ') {
2252
+									continue;
2253
+				}
2254
+			} elseif (isset($possible['type']))
2157 2255
 			{
2158 2256
 				// Do we need an equal sign?
2159
-				if (in_array($possible['type'], array('unparsed_equals', 'unparsed_commas', 'unparsed_commas_content', 'unparsed_equals_content', 'parsed_equals')) && $next_c != '=')
2160
-					continue;
2257
+				if (in_array($possible['type'], array('unparsed_equals', 'unparsed_commas', 'unparsed_commas_content', 'unparsed_equals_content', 'parsed_equals')) && $next_c != '=') {
2258
+									continue;
2259
+				}
2161 2260
 				// Maybe we just want a /...
2162
-				if ($possible['type'] == 'closed' && $next_c != ']' && substr($message, $pos + 1 + $pt_strlen, 2) != '/]' && substr($message, $pos + 1 + $pt_strlen, 3) != ' /]')
2163
-					continue;
2261
+				if ($possible['type'] == 'closed' && $next_c != ']' && substr($message, $pos + 1 + $pt_strlen, 2) != '/]' && substr($message, $pos + 1 + $pt_strlen, 3) != ' /]') {
2262
+									continue;
2263
+				}
2164 2264
 				// An immediate ]?
2165
-				if ($possible['type'] == 'unparsed_content' && $next_c != ']')
2166
-					continue;
2265
+				if ($possible['type'] == 'unparsed_content' && $next_c != ']') {
2266
+									continue;
2267
+				}
2167 2268
 			}
2168 2269
 			// No type means 'parsed_content', which demands an immediate ] without parameters!
2169
-			elseif ($next_c != ']')
2170
-				continue;
2270
+			elseif ($next_c != ']') {
2271
+							continue;
2272
+			}
2171 2273
 
2172 2274
 			// Check allowed tree?
2173
-			if (isset($possible['require_parents']) && ($inside === null || !in_array($inside['tag'], $possible['require_parents'])))
2174
-				continue;
2175
-			elseif (isset($inside['require_children']) && !in_array($possible['tag'], $inside['require_children']))
2176
-				continue;
2275
+			if (isset($possible['require_parents']) && ($inside === null || !in_array($inside['tag'], $possible['require_parents']))) {
2276
+							continue;
2277
+			} elseif (isset($inside['require_children']) && !in_array($possible['tag'], $inside['require_children'])) {
2278
+							continue;
2279
+			}
2177 2280
 			// If this is in the list of disallowed child tags, don't parse it.
2178
-			elseif (isset($inside['disallow_children']) && in_array($possible['tag'], $inside['disallow_children']))
2179
-				continue;
2281
+			elseif (isset($inside['disallow_children']) && in_array($possible['tag'], $inside['disallow_children'])) {
2282
+							continue;
2283
+			}
2180 2284
 
2181 2285
 			$pos1 = $pos + 1 + $pt_strlen + 1;
2182 2286
 
@@ -2188,8 +2292,9 @@  discard block
 block discarded – undo
2188 2292
 				foreach ($open_tags as $open_quote)
2189 2293
 				{
2190 2294
 					// Every parent quote this quote has flips the styling
2191
-					if ($open_quote['tag'] == 'quote')
2192
-						$quote_alt = !$quote_alt;
2295
+					if ($open_quote['tag'] == 'quote') {
2296
+											$quote_alt = !$quote_alt;
2297
+					}
2193 2298
 				}
2194 2299
 				// Add a class to the quote to style alternating blockquotes
2195 2300
 				$possible['before'] = strtr($possible['before'], array('<blockquote>' => '<blockquote class="bbc_' . ($quote_alt ? 'alternate' : 'standard') . '_quote">'));
@@ -2200,8 +2305,9 @@  discard block
 block discarded – undo
2200 2305
 			{
2201 2306
 				// Build a regular expression for each parameter for the current tag.
2202 2307
 				$preg = array();
2203
-				foreach ($possible['parameters'] as $p => $info)
2204
-					$preg[] = '(\s+' . $p . '=' . (empty($info['quoted']) ? '' : '&quot;') . (isset($info['match']) ? $info['match'] : '(.+?)') . (empty($info['quoted']) ? '' : '&quot;') . '\s*)' . (empty($info['optional']) ? '' : '?');
2308
+				foreach ($possible['parameters'] as $p => $info) {
2309
+									$preg[] = '(\s+' . $p . '=' . (empty($info['quoted']) ? '' : '&quot;') . (isset($info['match']) ? $info['match'] : '(.+?)') . (empty($info['quoted']) ? '' : '&quot;') . '\s*)' . (empty($info['optional']) ? '' : '?');
2310
+				}
2205 2311
 
2206 2312
 				// Extract the string that potentially holds our parameters.
2207 2313
 				$blob = preg_split('~\[/?(?:' . $alltags_regex . ')~i', substr($message, $pos));
@@ -2221,24 +2327,27 @@  discard block
 block discarded – undo
2221 2327
 
2222 2328
 					$match = preg_match('~^' . implode('', $preg) . '$~i', implode(' ', $given_params), $matches) !== 0;
2223 2329
 
2224
-					if ($match)
2225
-						$blob_counter = count($blobs) + 1;
2330
+					if ($match) {
2331
+											$blob_counter = count($blobs) + 1;
2332
+					}
2226 2333
 				}
2227 2334
 
2228 2335
 				// Didn't match our parameter list, try the next possible.
2229
-				if (!$match)
2230
-					continue;
2336
+				if (!$match) {
2337
+									continue;
2338
+				}
2231 2339
 
2232 2340
 				$params = array();
2233 2341
 				for ($i = 1, $n = count($matches); $i < $n; $i += 2)
2234 2342
 				{
2235 2343
 					$key = strtok(ltrim($matches[$i]), '=');
2236
-					if (isset($possible['parameters'][$key]['value']))
2237
-						$params['{' . $key . '}'] = strtr($possible['parameters'][$key]['value'], array('$1' => $matches[$i + 1]));
2238
-					elseif (isset($possible['parameters'][$key]['validate']))
2239
-						$params['{' . $key . '}'] = $possible['parameters'][$key]['validate']($matches[$i + 1]);
2240
-					else
2241
-						$params['{' . $key . '}'] = $matches[$i + 1];
2344
+					if (isset($possible['parameters'][$key]['value'])) {
2345
+											$params['{' . $key . '}'] = strtr($possible['parameters'][$key]['value'], array('$1' => $matches[$i + 1]));
2346
+					} elseif (isset($possible['parameters'][$key]['validate'])) {
2347
+											$params['{' . $key . '}'] = $possible['parameters'][$key]['validate']($matches[$i + 1]);
2348
+					} else {
2349
+											$params['{' . $key . '}'] = $matches[$i + 1];
2350
+					}
2242 2351
 
2243 2352
 					// Just to make sure: replace any $ or { so they can't interpolate wrongly.
2244 2353
 					$params['{' . $key . '}'] = strtr($params['{' . $key . '}'], array('$' => '&#036;', '{' => '&#123;'));
@@ -2246,23 +2355,26 @@  discard block
 block discarded – undo
2246 2355
 
2247 2356
 				foreach ($possible['parameters'] as $p => $info)
2248 2357
 				{
2249
-					if (!isset($params['{' . $p . '}']))
2250
-						$params['{' . $p . '}'] = '';
2358
+					if (!isset($params['{' . $p . '}'])) {
2359
+											$params['{' . $p . '}'] = '';
2360
+					}
2251 2361
 				}
2252 2362
 
2253 2363
 				$tag = $possible;
2254 2364
 
2255 2365
 				// Put the parameters into the string.
2256
-				if (isset($tag['before']))
2257
-					$tag['before'] = strtr($tag['before'], $params);
2258
-				if (isset($tag['after']))
2259
-					$tag['after'] = strtr($tag['after'], $params);
2260
-				if (isset($tag['content']))
2261
-					$tag['content'] = strtr($tag['content'], $params);
2366
+				if (isset($tag['before'])) {
2367
+									$tag['before'] = strtr($tag['before'], $params);
2368
+				}
2369
+				if (isset($tag['after'])) {
2370
+									$tag['after'] = strtr($tag['after'], $params);
2371
+				}
2372
+				if (isset($tag['content'])) {
2373
+									$tag['content'] = strtr($tag['content'], $params);
2374
+				}
2262 2375
 
2263 2376
 				$pos1 += strlen($given_param_string);
2264
-			}
2265
-			else
2377
+			} else
2266 2378
 			{
2267 2379
 				$tag = $possible;
2268 2380
 				$params = array();
@@ -2273,8 +2385,9 @@  discard block
 block discarded – undo
2273 2385
 		// Item codes are complicated buggers... they are implicit [li]s and can make [list]s!
2274 2386
 		if ($smileys !== false && $tag === null && isset($itemcodes[$message[$pos + 1]]) && $message[$pos + 2] == ']' && !isset($disabled['list']) && !isset($disabled['li']))
2275 2387
 		{
2276
-			if ($message[$pos + 1] == '0' && !in_array($message[$pos - 1], array(';', ' ', "\t", "\n", '>')))
2277
-				continue;
2388
+			if ($message[$pos + 1] == '0' && !in_array($message[$pos - 1], array(';', ' ', "\t", "\n", '>'))) {
2389
+							continue;
2390
+			}
2278 2391
 
2279 2392
 			$tag = $itemcodes[$message[$pos + 1]];
2280 2393
 
@@ -2295,9 +2408,9 @@  discard block
 block discarded – undo
2295 2408
 			{
2296 2409
 				array_pop($open_tags);
2297 2410
 				$code = '</li>';
2411
+			} else {
2412
+							$code = '';
2298 2413
 			}
2299
-			else
2300
-				$code = '';
2301 2414
 
2302 2415
 			// Now we open a new tag.
2303 2416
 			$open_tags[] = array(
@@ -2344,12 +2457,14 @@  discard block
 block discarded – undo
2344 2457
 		}
2345 2458
 
2346 2459
 		// No tag?  Keep looking, then.  Silly people using brackets without actual tags.
2347
-		if ($tag === null)
2348
-			continue;
2460
+		if ($tag === null) {
2461
+					continue;
2462
+		}
2349 2463
 
2350 2464
 		// Propagate the list to the child (so wrapping the disallowed tag won't work either.)
2351
-		if (isset($inside['disallow_children']))
2352
-			$tag['disallow_children'] = isset($tag['disallow_children']) ? array_unique(array_merge($tag['disallow_children'], $inside['disallow_children'])) : $inside['disallow_children'];
2465
+		if (isset($inside['disallow_children'])) {
2466
+					$tag['disallow_children'] = isset($tag['disallow_children']) ? array_unique(array_merge($tag['disallow_children'], $inside['disallow_children'])) : $inside['disallow_children'];
2467
+		}
2353 2468
 
2354 2469
 		// Is this tag disabled?
2355 2470
 		if (isset($disabled[$tag['tag']]))
@@ -2359,14 +2474,13 @@  discard block
 block discarded – undo
2359 2474
 				$tag['before'] = !empty($tag['block_level']) ? '<div>' : '';
2360 2475
 				$tag['after'] = !empty($tag['block_level']) ? '</div>' : '';
2361 2476
 				$tag['content'] = isset($tag['type']) && $tag['type'] == 'closed' ? '' : (!empty($tag['block_level']) ? '<div>$1</div>' : '$1');
2362
-			}
2363
-			elseif (isset($tag['disabled_before']) || isset($tag['disabled_after']))
2477
+			} elseif (isset($tag['disabled_before']) || isset($tag['disabled_after']))
2364 2478
 			{
2365 2479
 				$tag['before'] = isset($tag['disabled_before']) ? $tag['disabled_before'] : (!empty($tag['block_level']) ? '<div>' : '');
2366 2480
 				$tag['after'] = isset($tag['disabled_after']) ? $tag['disabled_after'] : (!empty($tag['block_level']) ? '</div>' : '');
2481
+			} else {
2482
+							$tag['content'] = $tag['disabled_content'];
2367 2483
 			}
2368
-			else
2369
-				$tag['content'] = $tag['disabled_content'];
2370 2484
 		}
2371 2485
 
2372 2486
 		// we use this a lot
@@ -2376,8 +2490,9 @@  discard block
 block discarded – undo
2376 2490
 		if (!empty($tag['block_level']) && $tag['tag'] != 'html' && empty($inside['block_level']))
2377 2491
 		{
2378 2492
 			$n = count($open_tags) - 1;
2379
-			while (empty($open_tags[$n]['block_level']) && $n >= 0)
2380
-				$n--;
2493
+			while (empty($open_tags[$n]['block_level']) && $n >= 0) {
2494
+							$n--;
2495
+			}
2381 2496
 
2382 2497
 			// Close all the non block level tags so this tag isn't surrounded by them.
2383 2498
 			for ($i = count($open_tags) - 1; $i > $n; $i--)
@@ -2388,10 +2503,12 @@  discard block
 block discarded – undo
2388 2503
 				$pos1 += $ot_strlen + 2;
2389 2504
 
2390 2505
 				// Trim or eat trailing stuff... see comment at the end of the big loop.
2391
-				if (!empty($open_tags[$i]['block_level']) && substr($message, $pos, 4) == '<br>')
2392
-					$message = substr($message, 0, $pos) . substr($message, $pos + 4);
2393
-				if (!empty($open_tags[$i]['trim']) && $tag['trim'] != 'inside' && preg_match('~(<br>|&nbsp;|\s)*~', substr($message, $pos), $matches) != 0)
2394
-					$message = substr($message, 0, $pos) . substr($message, $pos + strlen($matches[0]));
2506
+				if (!empty($open_tags[$i]['block_level']) && substr($message, $pos, 4) == '<br>') {
2507
+									$message = substr($message, 0, $pos) . substr($message, $pos + 4);
2508
+				}
2509
+				if (!empty($open_tags[$i]['trim']) && $tag['trim'] != 'inside' && preg_match('~(<br>|&nbsp;|\s)*~', substr($message, $pos), $matches) != 0) {
2510
+									$message = substr($message, 0, $pos) . substr($message, $pos + strlen($matches[0]));
2511
+				}
2395 2512
 
2396 2513
 				array_pop($open_tags);
2397 2514
 			}
@@ -2409,16 +2526,19 @@  discard block
 block discarded – undo
2409 2526
 		elseif ($tag['type'] == 'unparsed_content')
2410 2527
 		{
2411 2528
 			$pos2 = stripos($message, '[/' . substr($message, $pos + 1, $tag_strlen) . ']', $pos1);
2412
-			if ($pos2 === false)
2413
-				continue;
2529
+			if ($pos2 === false) {
2530
+							continue;
2531
+			}
2414 2532
 
2415 2533
 			$data = substr($message, $pos1, $pos2 - $pos1);
2416 2534
 
2417
-			if (!empty($tag['block_level']) && substr($data, 0, 4) == '<br>')
2418
-				$data = substr($data, 4);
2535
+			if (!empty($tag['block_level']) && substr($data, 0, 4) == '<br>') {
2536
+							$data = substr($data, 4);
2537
+			}
2419 2538
 
2420
-			if (isset($tag['validate']))
2421
-				$tag['validate']($tag, $data, $disabled, $params);
2539
+			if (isset($tag['validate'])) {
2540
+							$tag['validate']($tag, $data, $disabled, $params);
2541
+			}
2422 2542
 
2423 2543
 			$code = strtr($tag['content'], array('$1' => $data));
2424 2544
 			$message = substr($message, 0, $pos) . "\n" . $code . "\n" . substr($message, $pos2 + 3 + $tag_strlen);
@@ -2434,34 +2554,40 @@  discard block
 block discarded – undo
2434 2554
 			if (isset($tag['quoted']))
2435 2555
 			{
2436 2556
 				$quoted = substr($message, $pos1, 6) == '&quot;';
2437
-				if ($tag['quoted'] != 'optional' && !$quoted)
2438
-					continue;
2557
+				if ($tag['quoted'] != 'optional' && !$quoted) {
2558
+									continue;
2559
+				}
2439 2560
 
2440
-				if ($quoted)
2441
-					$pos1 += 6;
2561
+				if ($quoted) {
2562
+									$pos1 += 6;
2563
+				}
2564
+			} else {
2565
+							$quoted = false;
2442 2566
 			}
2443
-			else
2444
-				$quoted = false;
2445 2567
 
2446 2568
 			$pos2 = strpos($message, $quoted == false ? ']' : '&quot;]', $pos1);
2447
-			if ($pos2 === false)
2448
-				continue;
2569
+			if ($pos2 === false) {
2570
+							continue;
2571
+			}
2449 2572
 
2450 2573
 			$pos3 = stripos($message, '[/' . substr($message, $pos + 1, $tag_strlen) . ']', $pos2);
2451
-			if ($pos3 === false)
2452
-				continue;
2574
+			if ($pos3 === false) {
2575
+							continue;
2576
+			}
2453 2577
 
2454 2578
 			$data = array(
2455 2579
 				substr($message, $pos2 + ($quoted == false ? 1 : 7), $pos3 - ($pos2 + ($quoted == false ? 1 : 7))),
2456 2580
 				substr($message, $pos1, $pos2 - $pos1)
2457 2581
 			);
2458 2582
 
2459
-			if (!empty($tag['block_level']) && substr($data[0], 0, 4) == '<br>')
2460
-				$data[0] = substr($data[0], 4);
2583
+			if (!empty($tag['block_level']) && substr($data[0], 0, 4) == '<br>') {
2584
+							$data[0] = substr($data[0], 4);
2585
+			}
2461 2586
 
2462 2587
 			// Validation for my parking, please!
2463
-			if (isset($tag['validate']))
2464
-				$tag['validate']($tag, $data, $disabled, $params);
2588
+			if (isset($tag['validate'])) {
2589
+							$tag['validate']($tag, $data, $disabled, $params);
2590
+			}
2465 2591
 
2466 2592
 			$code = strtr($tag['content'], array('$1' => $data[0], '$2' => $data[1]));
2467 2593
 			$message = substr($message, 0, $pos) . "\n" . $code . "\n" . substr($message, $pos3 + 3 + $tag_strlen);
@@ -2478,23 +2604,27 @@  discard block
 block discarded – undo
2478 2604
 		elseif ($tag['type'] == 'unparsed_commas_content')
2479 2605
 		{
2480 2606
 			$pos2 = strpos($message, ']', $pos1);
2481
-			if ($pos2 === false)
2482
-				continue;
2607
+			if ($pos2 === false) {
2608
+							continue;
2609
+			}
2483 2610
 
2484 2611
 			$pos3 = stripos($message, '[/' . substr($message, $pos + 1, $tag_strlen) . ']', $pos2);
2485
-			if ($pos3 === false)
2486
-				continue;
2612
+			if ($pos3 === false) {
2613
+							continue;
2614
+			}
2487 2615
 
2488 2616
 			// We want $1 to be the content, and the rest to be csv.
2489 2617
 			$data = explode(',', ',' . substr($message, $pos1, $pos2 - $pos1));
2490 2618
 			$data[0] = substr($message, $pos2 + 1, $pos3 - $pos2 - 1);
2491 2619
 
2492
-			if (isset($tag['validate']))
2493
-				$tag['validate']($tag, $data, $disabled, $params);
2620
+			if (isset($tag['validate'])) {
2621
+							$tag['validate']($tag, $data, $disabled, $params);
2622
+			}
2494 2623
 
2495 2624
 			$code = $tag['content'];
2496
-			foreach ($data as $k => $d)
2497
-				$code = strtr($code, array('$' . ($k + 1) => trim($d)));
2625
+			foreach ($data as $k => $d) {
2626
+							$code = strtr($code, array('$' . ($k + 1) => trim($d)));
2627
+			}
2498 2628
 			$message = substr($message, 0, $pos) . "\n" . $code . "\n" . substr($message, $pos3 + 3 + $tag_strlen);
2499 2629
 			$pos += strlen($code) - 1 + 2;
2500 2630
 		}
@@ -2502,24 +2632,28 @@  discard block
 block discarded – undo
2502 2632
 		elseif ($tag['type'] == 'unparsed_commas')
2503 2633
 		{
2504 2634
 			$pos2 = strpos($message, ']', $pos1);
2505
-			if ($pos2 === false)
2506
-				continue;
2635
+			if ($pos2 === false) {
2636
+							continue;
2637
+			}
2507 2638
 
2508 2639
 			$data = explode(',', substr($message, $pos1, $pos2 - $pos1));
2509 2640
 
2510
-			if (isset($tag['validate']))
2511
-				$tag['validate']($tag, $data, $disabled, $params);
2641
+			if (isset($tag['validate'])) {
2642
+							$tag['validate']($tag, $data, $disabled, $params);
2643
+			}
2512 2644
 
2513 2645
 			// Fix after, for disabled code mainly.
2514
-			foreach ($data as $k => $d)
2515
-				$tag['after'] = strtr($tag['after'], array('$' . ($k + 1) => trim($d)));
2646
+			foreach ($data as $k => $d) {
2647
+							$tag['after'] = strtr($tag['after'], array('$' . ($k + 1) => trim($d)));
2648
+			}
2516 2649
 
2517 2650
 			$open_tags[] = $tag;
2518 2651
 
2519 2652
 			// Replace them out, $1, $2, $3, $4, etc.
2520 2653
 			$code = $tag['before'];
2521
-			foreach ($data as $k => $d)
2522
-				$code = strtr($code, array('$' . ($k + 1) => trim($d)));
2654
+			foreach ($data as $k => $d) {
2655
+							$code = strtr($code, array('$' . ($k + 1) => trim($d)));
2656
+			}
2523 2657
 			$message = substr($message, 0, $pos) . "\n" . $code . "\n" . substr($message, $pos2 + 1);
2524 2658
 			$pos += strlen($code) - 1 + 2;
2525 2659
 		}
@@ -2530,28 +2664,33 @@  discard block
 block discarded – undo
2530 2664
 			if (isset($tag['quoted']))
2531 2665
 			{
2532 2666
 				$quoted = substr($message, $pos1, 6) == '&quot;';
2533
-				if ($tag['quoted'] != 'optional' && !$quoted)
2534
-					continue;
2667
+				if ($tag['quoted'] != 'optional' && !$quoted) {
2668
+									continue;
2669
+				}
2535 2670
 
2536
-				if ($quoted)
2537
-					$pos1 += 6;
2671
+				if ($quoted) {
2672
+									$pos1 += 6;
2673
+				}
2674
+			} else {
2675
+							$quoted = false;
2538 2676
 			}
2539
-			else
2540
-				$quoted = false;
2541 2677
 
2542 2678
 			$pos2 = strpos($message, $quoted == false ? ']' : '&quot;]', $pos1);
2543
-			if ($pos2 === false)
2544
-				continue;
2679
+			if ($pos2 === false) {
2680
+							continue;
2681
+			}
2545 2682
 
2546 2683
 			$data = substr($message, $pos1, $pos2 - $pos1);
2547 2684
 
2548 2685
 			// Validation for my parking, please!
2549
-			if (isset($tag['validate']))
2550
-				$tag['validate']($tag, $data, $disabled, $params);
2686
+			if (isset($tag['validate'])) {
2687
+							$tag['validate']($tag, $data, $disabled, $params);
2688
+			}
2551 2689
 
2552 2690
 			// For parsed content, we must recurse to avoid security problems.
2553
-			if ($tag['type'] != 'unparsed_equals')
2554
-				$data = parse_bbc($data, !empty($tag['parsed_tags_allowed']) ? false : true, '', !empty($tag['parsed_tags_allowed']) ? $tag['parsed_tags_allowed'] : array());
2691
+			if ($tag['type'] != 'unparsed_equals') {
2692
+							$data = parse_bbc($data, !empty($tag['parsed_tags_allowed']) ? false : true, '', !empty($tag['parsed_tags_allowed']) ? $tag['parsed_tags_allowed'] : array());
2693
+			}
2555 2694
 
2556 2695
 			$tag['after'] = strtr($tag['after'], array('$1' => $data));
2557 2696
 
@@ -2563,34 +2702,40 @@  discard block
 block discarded – undo
2563 2702
 		}
2564 2703
 
2565 2704
 		// If this is block level, eat any breaks after it.
2566
-		if (!empty($tag['block_level']) && substr($message, $pos + 1, 4) == '<br>')
2567
-			$message = substr($message, 0, $pos + 1) . substr($message, $pos + 5);
2705
+		if (!empty($tag['block_level']) && substr($message, $pos + 1, 4) == '<br>') {
2706
+					$message = substr($message, 0, $pos + 1) . substr($message, $pos + 5);
2707
+		}
2568 2708
 
2569 2709
 		// Are we trimming outside this tag?
2570
-		if (!empty($tag['trim']) && $tag['trim'] != 'outside' && preg_match('~(<br>|&nbsp;|\s)*~', substr($message, $pos + 1), $matches) != 0)
2571
-			$message = substr($message, 0, $pos + 1) . substr($message, $pos + 1 + strlen($matches[0]));
2710
+		if (!empty($tag['trim']) && $tag['trim'] != 'outside' && preg_match('~(<br>|&nbsp;|\s)*~', substr($message, $pos + 1), $matches) != 0) {
2711
+					$message = substr($message, 0, $pos + 1) . substr($message, $pos + 1 + strlen($matches[0]));
2712
+		}
2572 2713
 	}
2573 2714
 
2574 2715
 	// Close any remaining tags.
2575
-	while ($tag = array_pop($open_tags))
2576
-		$message .= "\n" . $tag['after'] . "\n";
2716
+	while ($tag = array_pop($open_tags)) {
2717
+			$message .= "\n" . $tag['after'] . "\n";
2718
+	}
2577 2719
 
2578 2720
 	// Parse the smileys within the parts where it can be done safely.
2579 2721
 	if ($smileys === true)
2580 2722
 	{
2581 2723
 		$message_parts = explode("\n", $message);
2582
-		for ($i = 0, $n = count($message_parts); $i < $n; $i += 2)
2583
-			parsesmileys($message_parts[$i]);
2724
+		for ($i = 0, $n = count($message_parts); $i < $n; $i += 2) {
2725
+					parsesmileys($message_parts[$i]);
2726
+		}
2584 2727
 
2585 2728
 		$message = implode('', $message_parts);
2586 2729
 	}
2587 2730
 
2588 2731
 	// No smileys, just get rid of the markers.
2589
-	else
2590
-		$message = strtr($message, array("\n" => ''));
2732
+	else {
2733
+			$message = strtr($message, array("\n" => ''));
2734
+	}
2591 2735
 
2592
-	if ($message !== '' && $message[0] === ' ')
2593
-		$message = '&nbsp;' . substr($message, 1);
2736
+	if ($message !== '' && $message[0] === ' ') {
2737
+			$message = '&nbsp;' . substr($message, 1);
2738
+	}
2594 2739
 
2595 2740
 	// Cleanup whitespace.
2596 2741
 	$message = strtr($message, array('  ' => ' &nbsp;', "\r" => '', "\n" => '<br>', '<br> ' => '<br>&nbsp;', '&#13;' => "\n"));
@@ -2599,15 +2744,16 @@  discard block
 block discarded – undo
2599 2744
 	call_integration_hook('integrate_post_parsebbc', array(&$message, &$smileys, &$cache_id, &$parse_tags));
2600 2745
 
2601 2746
 	// Cache the output if it took some time...
2602
-	if (isset($cache_key, $cache_t) && array_sum(explode(' ', microtime())) - array_sum(explode(' ', $cache_t)) > 0.05)
2603
-		cache_put_data($cache_key, $message, 240);
2747
+	if (isset($cache_key, $cache_t) && array_sum(explode(' ', microtime())) - array_sum(explode(' ', $cache_t)) > 0.05) {
2748
+			cache_put_data($cache_key, $message, 240);
2749
+	}
2604 2750
 
2605 2751
 	// If this was a force parse revert if needed.
2606 2752
 	if (!empty($parse_tags))
2607 2753
 	{
2608
-		if (empty($temp_bbc))
2609
-			$bbc_codes = array();
2610
-		else
2754
+		if (empty($temp_bbc)) {
2755
+					$bbc_codes = array();
2756
+		} else
2611 2757
 		{
2612 2758
 			$bbc_codes = $temp_bbc;
2613 2759
 			unset($temp_bbc);
@@ -2634,8 +2780,9 @@  discard block
 block discarded – undo
2634 2780
 	static $smileyPregSearch = null, $smileyPregReplacements = array();
2635 2781
 
2636 2782
 	// No smiley set at all?!
2637
-	if ($user_info['smiley_set'] == 'none' || trim($message) == '')
2638
-		return;
2783
+	if ($user_info['smiley_set'] == 'none' || trim($message) == '') {
2784
+			return;
2785
+	}
2639 2786
 
2640 2787
 	// If smileyPregSearch hasn't been set, do it now.
2641 2788
 	if (empty($smileyPregSearch))
@@ -2646,8 +2793,7 @@  discard block
 block discarded – undo
2646 2793
 			$smileysfrom = array('>:D', ':D', '::)', '>:(', ':))', ':)', ';)', ';D', ':(', ':o', '8)', ':P', '???', ':-[', ':-X', ':-*', ':\'(', ':-\\', '^-^', 'O0', 'C:-)', '0:)');
2647 2794
 			$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');
2648 2795
 			$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'], '', '', '', '');
2649
-		}
2650
-		else
2796
+		} else
2651 2797
 		{
2652 2798
 			// Load the smileys in reverse order by length so they don't get parsed wrong.
2653 2799
 			if (($temp = cache_get_data('parsing_smileys', 480)) == null)
@@ -2671,9 +2817,9 @@  discard block
 block discarded – undo
2671 2817
 				$smcFunc['db_free_result']($result);
2672 2818
 
2673 2819
 				cache_put_data('parsing_smileys', array($smileysfrom, $smileysto, $smileysdescs), 480);
2820
+			} else {
2821
+							list ($smileysfrom, $smileysto, $smileysdescs) = $temp;
2674 2822
 			}
2675
-			else
2676
-				list ($smileysfrom, $smileysto, $smileysdescs) = $temp;
2677 2823
 		}
2678 2824
 
2679 2825
 		// The non-breaking-space is a complex thing...
@@ -2750,35 +2896,41 @@  discard block
 block discarded – undo
2750 2896
 	global $scripturl, $context, $modSettings, $db_show_debug, $db_cache;
2751 2897
 
2752 2898
 	// In case we have mail to send, better do that - as obExit doesn't always quite make it...
2753
-	if (!empty($context['flush_mail']))
2754
-		// @todo this relies on 'flush_mail' being only set in AddMailQueue itself... :\
2899
+	if (!empty($context['flush_mail'])) {
2900
+			// @todo this relies on 'flush_mail' being only set in AddMailQueue itself... :\
2755 2901
 		AddMailQueue(true);
2902
+	}
2756 2903
 
2757 2904
 	$add = preg_match('~^(ftp|http)[s]?://~', $setLocation) == 0 && substr($setLocation, 0, 6) != 'about:';
2758 2905
 
2759
-	if ($add)
2760
-		$setLocation = $scripturl . ($setLocation != '' ? '?' . $setLocation : '');
2906
+	if ($add) {
2907
+			$setLocation = $scripturl . ($setLocation != '' ? '?' . $setLocation : '');
2908
+	}
2761 2909
 
2762 2910
 	// Put the session ID in.
2763
-	if (defined('SID') && SID != '')
2764
-		$setLocation = preg_replace('/^' . preg_quote($scripturl, '/') . '(?!\?' . preg_quote(SID, '/') . ')\\??/', $scripturl . '?' . SID . ';', $setLocation);
2911
+	if (defined('SID') && SID != '') {
2912
+			$setLocation = preg_replace('/^' . preg_quote($scripturl, '/') . '(?!\?' . preg_quote(SID, '/') . ')\\??/', $scripturl . '?' . SID . ';', $setLocation);
2913
+	}
2765 2914
 	// Keep that debug in their for template debugging!
2766
-	elseif (isset($_GET['debug']))
2767
-		$setLocation = preg_replace('/^' . preg_quote($scripturl, '/') . '\\??/', $scripturl . '?debug;', $setLocation);
2915
+	elseif (isset($_GET['debug'])) {
2916
+			$setLocation = preg_replace('/^' . preg_quote($scripturl, '/') . '\\??/', $scripturl . '?debug;', $setLocation);
2917
+	}
2768 2918
 
2769 2919
 	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'])))
2770 2920
 	{
2771
-		if (defined('SID') && SID != '')
2772
-			$setLocation = preg_replace_callback('~^' . preg_quote($scripturl, '/') . '\?(?:' . SID . '(?:;|&|&amp;))((?:board|topic)=[^#]+?)(#[^"]*?)?$~',
2921
+		if (defined('SID') && SID != '') {
2922
+					$setLocation = preg_replace_callback('~^' . preg_quote($scripturl, '/') . '\?(?:' . SID . '(?:;|&|&amp;))((?:board|topic)=[^#]+?)(#[^"]*?)?$~',
2773 2923
 				function ($m) use ($scripturl)
2774 2924
 				{
2775 2925
 					return $scripturl . '/' . strtr("$m[1]", '&;=', '//,') . '.html?' . SID. (isset($m[2]) ? "$m[2]" : "");
2926
+		}
2776 2927
 				}, $setLocation);
2777
-		else
2778
-			$setLocation = preg_replace_callback('~^' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?$~',
2928
+		else {
2929
+					$setLocation = preg_replace_callback('~^' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?$~',
2779 2930
 				function ($m) use ($scripturl)
2780 2931
 				{
2781 2932
 					return $scripturl . '/' . strtr("$m[1]", '&;=', '//,') . '.html' . (isset($m[2]) ? "$m[2]" : "");
2933
+		}
2782 2934
 				}, $setLocation);
2783 2935
 	}
2784 2936
 
@@ -2789,8 +2941,9 @@  discard block
 block discarded – undo
2789 2941
 	header('Location: ' . str_replace(' ', '%20', $setLocation), true, $permanent ? 301 : 302);
2790 2942
 
2791 2943
 	// Debugging.
2792
-	if (isset($db_show_debug) && $db_show_debug === true)
2793
-		$_SESSION['debug_redirect'] = $db_cache;
2944
+	if (isset($db_show_debug) && $db_show_debug === true) {
2945
+			$_SESSION['debug_redirect'] = $db_cache;
2946
+	}
2794 2947
 
2795 2948
 	obExit(false);
2796 2949
 }
@@ -2809,51 +2962,60 @@  discard block
 block discarded – undo
2809 2962
 
2810 2963
 	// Attempt to prevent a recursive loop.
2811 2964
 	++$level;
2812
-	if ($level > 1 && !$from_fatal_error && !$has_fatal_error)
2813
-		exit;
2814
-	if ($from_fatal_error)
2815
-		$has_fatal_error = true;
2965
+	if ($level > 1 && !$from_fatal_error && !$has_fatal_error) {
2966
+			exit;
2967
+	}
2968
+	if ($from_fatal_error) {
2969
+			$has_fatal_error = true;
2970
+	}
2816 2971
 
2817 2972
 	// Clear out the stat cache.
2818 2973
 	trackStats();
2819 2974
 
2820 2975
 	// If we have mail to send, send it.
2821
-	if (!empty($context['flush_mail']))
2822
-		// @todo this relies on 'flush_mail' being only set in AddMailQueue itself... :\
2976
+	if (!empty($context['flush_mail'])) {
2977
+			// @todo this relies on 'flush_mail' being only set in AddMailQueue itself... :\
2823 2978
 		AddMailQueue(true);
2979
+	}
2824 2980
 
2825 2981
 	$do_header = $header === null ? !$header_done : $header;
2826
-	if ($do_footer === null)
2827
-		$do_footer = $do_header;
2982
+	if ($do_footer === null) {
2983
+			$do_footer = $do_header;
2984
+	}
2828 2985
 
2829 2986
 	// Has the template/header been done yet?
2830 2987
 	if ($do_header)
2831 2988
 	{
2832 2989
 		// Was the page title set last minute? Also update the HTML safe one.
2833
-		if (!empty($context['page_title']) && empty($context['page_title_html_safe']))
2834
-			$context['page_title_html_safe'] = $smcFunc['htmlspecialchars'](un_htmlspecialchars($context['page_title'])) . (!empty($context['current_page']) ? ' - ' . $txt['page'] . ' ' . ($context['current_page'] + 1) : '');
2990
+		if (!empty($context['page_title']) && empty($context['page_title_html_safe'])) {
2991
+					$context['page_title_html_safe'] = $smcFunc['htmlspecialchars'](un_htmlspecialchars($context['page_title'])) . (!empty($context['current_page']) ? ' - ' . $txt['page'] . ' ' . ($context['current_page'] + 1) : '');
2992
+		}
2835 2993
 
2836 2994
 		// Start up the session URL fixer.
2837 2995
 		ob_start('ob_sessrewrite');
2838 2996
 
2839
-		if (!empty($settings['output_buffers']) && is_string($settings['output_buffers']))
2840
-			$buffers = explode(',', $settings['output_buffers']);
2841
-		elseif (!empty($settings['output_buffers']))
2842
-			$buffers = $settings['output_buffers'];
2843
-		else
2844
-			$buffers = array();
2997
+		if (!empty($settings['output_buffers']) && is_string($settings['output_buffers'])) {
2998
+					$buffers = explode(',', $settings['output_buffers']);
2999
+		} elseif (!empty($settings['output_buffers'])) {
3000
+					$buffers = $settings['output_buffers'];
3001
+		} else {
3002
+					$buffers = array();
3003
+		}
2845 3004
 
2846
-		if (isset($modSettings['integrate_buffer']))
2847
-			$buffers = array_merge(explode(',', $modSettings['integrate_buffer']), $buffers);
3005
+		if (isset($modSettings['integrate_buffer'])) {
3006
+					$buffers = array_merge(explode(',', $modSettings['integrate_buffer']), $buffers);
3007
+		}
2848 3008
 
2849
-		if (!empty($buffers))
2850
-			foreach ($buffers as $function)
3009
+		if (!empty($buffers)) {
3010
+					foreach ($buffers as $function)
2851 3011
 			{
2852 3012
 				$call = call_helper($function, true);
3013
+		}
2853 3014
 
2854 3015
 				// Is it valid?
2855
-				if (!empty($call))
2856
-					ob_start($call);
3016
+				if (!empty($call)) {
3017
+									ob_start($call);
3018
+				}
2857 3019
 			}
2858 3020
 
2859 3021
 		// Display the screen in the logical order.
@@ -2865,8 +3027,9 @@  discard block
 block discarded – undo
2865 3027
 		loadSubTemplate(isset($context['sub_template']) ? $context['sub_template'] : 'main');
2866 3028
 
2867 3029
 		// Anything special to put out?
2868
-		if (!empty($context['insert_after_template']) && !isset($_REQUEST['xml']))
2869
-			echo $context['insert_after_template'];
3030
+		if (!empty($context['insert_after_template']) && !isset($_REQUEST['xml'])) {
3031
+					echo $context['insert_after_template'];
3032
+		}
2870 3033
 
2871 3034
 		// Just so we don't get caught in an endless loop of errors from the footer...
2872 3035
 		if (!$footer_done)
@@ -2875,14 +3038,16 @@  discard block
 block discarded – undo
2875 3038
 			template_footer();
2876 3039
 
2877 3040
 			// (since this is just debugging... it's okay that it's after </html>.)
2878
-			if (!isset($_REQUEST['xml']))
2879
-				displayDebug();
3041
+			if (!isset($_REQUEST['xml'])) {
3042
+							displayDebug();
3043
+			}
2880 3044
 		}
2881 3045
 	}
2882 3046
 
2883 3047
 	// Remember this URL in case someone doesn't like sending HTTP_REFERER.
2884
-	if (strpos($_SERVER['REQUEST_URL'], 'action=dlattach') === false && strpos($_SERVER['REQUEST_URL'], 'action=viewsmfile') === false)
2885
-		$_SESSION['old_url'] = $_SERVER['REQUEST_URL'];
3048
+	if (strpos($_SERVER['REQUEST_URL'], 'action=dlattach') === false && strpos($_SERVER['REQUEST_URL'], 'action=viewsmfile') === false) {
3049
+			$_SESSION['old_url'] = $_SERVER['REQUEST_URL'];
3050
+	}
2886 3051
 
2887 3052
 	// For session check verification.... don't switch browsers...
2888 3053
 	$_SESSION['USER_AGENT'] = empty($_SERVER['HTTP_USER_AGENT']) ? '' : $_SERVER['HTTP_USER_AGENT'];
@@ -2891,9 +3056,10 @@  discard block
 block discarded – undo
2891 3056
 	call_integration_hook('integrate_exit', array($do_footer));
2892 3057
 
2893 3058
 	// Don't exit if we're coming from index.php; that will pass through normally.
2894
-	if (!$from_index)
2895
-		exit;
2896
-}
3059
+	if (!$from_index) {
3060
+			exit;
3061
+	}
3062
+	}
2897 3063
 
2898 3064
 /**
2899 3065
  * Get the size of a specified image with better error handling.
@@ -2912,8 +3078,9 @@  discard block
 block discarded – undo
2912 3078
 	$url = str_replace(' ', '%20', $url);
2913 3079
 
2914 3080
 	// Can we pull this from the cache... please please?
2915
-	if (($temp = cache_get_data('url_image_size-' . md5($url), 240)) !== null)
2916
-		return $temp;
3081
+	if (($temp = cache_get_data('url_image_size-' . md5($url), 240)) !== null) {
3082
+			return $temp;
3083
+	}
2917 3084
 	$t = microtime();
2918 3085
 
2919 3086
 	// Get the host to pester...
@@ -2923,12 +3090,10 @@  discard block
 block discarded – undo
2923 3090
 	if ($url == '' || $url == 'http://' || $url == 'https://')
2924 3091
 	{
2925 3092
 		return false;
2926
-	}
2927
-	elseif (!isset($match[1]))
3093
+	} elseif (!isset($match[1]))
2928 3094
 	{
2929 3095
 		$size = @getimagesize($url);
2930
-	}
2931
-	else
3096
+	} else
2932 3097
 	{
2933 3098
 		// Try to connect to the server... give it half a second.
2934 3099
 		$temp = 0;
@@ -2967,12 +3132,14 @@  discard block
 block discarded – undo
2967 3132
 	}
2968 3133
 
2969 3134
 	// If we didn't get it, we failed.
2970
-	if (!isset($size))
2971
-		$size = false;
3135
+	if (!isset($size)) {
3136
+			$size = false;
3137
+	}
2972 3138
 
2973 3139
 	// If this took a long time, we may never have to do it again, but then again we might...
2974
-	if (array_sum(explode(' ', microtime())) - array_sum(explode(' ', $t)) > 0.8)
2975
-		cache_put_data('url_image_size-' . md5($url), $size, 240);
3140
+	if (array_sum(explode(' ', microtime())) - array_sum(explode(' ', $t)) > 0.8) {
3141
+			cache_put_data('url_image_size-' . md5($url), $size, 240);
3142
+	}
2976 3143
 
2977 3144
 	// Didn't work.
2978 3145
 	return $size;
@@ -2990,8 +3157,9 @@  discard block
 block discarded – undo
2990 3157
 
2991 3158
 	// Under SSI this function can be called more then once.  That can cause some problems.
2992 3159
 	//   So only run the function once unless we are forced to run it again.
2993
-	if ($loaded && !$forceload)
2994
-		return;
3160
+	if ($loaded && !$forceload) {
3161
+			return;
3162
+	}
2995 3163
 
2996 3164
 	$loaded = true;
2997 3165
 
@@ -3003,14 +3171,16 @@  discard block
 block discarded – undo
3003 3171
 	$context['news_lines'] = array_filter(explode("\n", str_replace("\r", '', trim(addslashes($modSettings['news'])))));
3004 3172
 	for ($i = 0, $n = count($context['news_lines']); $i < $n; $i++)
3005 3173
 	{
3006
-		if (trim($context['news_lines'][$i]) == '')
3007
-			continue;
3174
+		if (trim($context['news_lines'][$i]) == '') {
3175
+					continue;
3176
+		}
3008 3177
 
3009 3178
 		// Clean it up for presentation ;).
3010 3179
 		$context['news_lines'][$i] = parse_bbc(stripslashes(trim($context['news_lines'][$i])), true, 'news' . $i);
3011 3180
 	}
3012
-	if (!empty($context['news_lines']))
3013
-		$context['random_news_line'] = $context['news_lines'][mt_rand(0, count($context['news_lines']) - 1)];
3181
+	if (!empty($context['news_lines'])) {
3182
+			$context['random_news_line'] = $context['news_lines'][mt_rand(0, count($context['news_lines']) - 1)];
3183
+	}
3014 3184
 
3015 3185
 	if (!$user_info['is_guest'])
3016 3186
 	{
@@ -3019,40 +3189,48 @@  discard block
 block discarded – undo
3019 3189
 		$context['user']['alerts'] = &$user_info['alerts'];
3020 3190
 
3021 3191
 		// Personal message popup...
3022
-		if ($user_info['unread_messages'] > (isset($_SESSION['unread_messages']) ? $_SESSION['unread_messages'] : 0))
3023
-			$context['user']['popup_messages'] = true;
3024
-		else
3025
-			$context['user']['popup_messages'] = false;
3192
+		if ($user_info['unread_messages'] > (isset($_SESSION['unread_messages']) ? $_SESSION['unread_messages'] : 0)) {
3193
+					$context['user']['popup_messages'] = true;
3194
+		} else {
3195
+					$context['user']['popup_messages'] = false;
3196
+		}
3026 3197
 		$_SESSION['unread_messages'] = $user_info['unread_messages'];
3027 3198
 
3028
-		if (allowedTo('moderate_forum'))
3029
-			$context['unapproved_members'] = (!empty($modSettings['registration_method']) && ($modSettings['registration_method'] == 2 || (!empty($modSettings['coppaType']) && $modSettings['coppaType'] == 2))) || !empty($modSettings['approveAccountDeletion']) ? $modSettings['unapprovedMembers'] : 0;
3199
+		if (allowedTo('moderate_forum')) {
3200
+					$context['unapproved_members'] = (!empty($modSettings['registration_method']) && ($modSettings['registration_method'] == 2 || (!empty($modSettings['coppaType']) && $modSettings['coppaType'] == 2))) || !empty($modSettings['approveAccountDeletion']) ? $modSettings['unapprovedMembers'] : 0;
3201
+		}
3030 3202
 
3031 3203
 		$context['user']['avatar'] = array();
3032 3204
 
3033 3205
 		// Check for gravatar first since we might be forcing them...
3034 3206
 		if (($modSettings['gravatarEnabled'] && substr($user_info['avatar']['url'], 0, 11) == 'gravatar://') || !empty($modSettings['gravatarOverride']))
3035 3207
 		{
3036
-			if (!empty($modSettings['gravatarAllowExtraEmail']) && stristr($user_info['avatar']['url'], 'gravatar://') && strlen($user_info['avatar']['url']) > 11)
3037
-				$context['user']['avatar']['href'] = get_gravatar_url($smcFunc['substr']($user_info['avatar']['url'], 11));
3038
-			else
3039
-				$context['user']['avatar']['href'] = get_gravatar_url($user_info['email']);
3208
+			if (!empty($modSettings['gravatarAllowExtraEmail']) && stristr($user_info['avatar']['url'], 'gravatar://') && strlen($user_info['avatar']['url']) > 11) {
3209
+							$context['user']['avatar']['href'] = get_gravatar_url($smcFunc['substr']($user_info['avatar']['url'], 11));
3210
+			} else {
3211
+							$context['user']['avatar']['href'] = get_gravatar_url($user_info['email']);
3212
+			}
3040 3213
 		}
3041 3214
 		// Uploaded?
3042
-		elseif ($user_info['avatar']['url'] == '' && !empty($user_info['avatar']['id_attach']))
3043
-			$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';
3215
+		elseif ($user_info['avatar']['url'] == '' && !empty($user_info['avatar']['id_attach'])) {
3216
+					$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';
3217
+		}
3044 3218
 		// Full URL?
3045
-		elseif (strpos($user_info['avatar']['url'], 'http://') === 0 || strpos($user_info['avatar']['url'], 'https://') === 0)
3046
-			$context['user']['avatar']['href'] = $user_info['avatar']['url'];
3219
+		elseif (strpos($user_info['avatar']['url'], 'http://') === 0 || strpos($user_info['avatar']['url'], 'https://') === 0) {
3220
+					$context['user']['avatar']['href'] = $user_info['avatar']['url'];
3221
+		}
3047 3222
 		// Otherwise we assume it's server stored.
3048
-		elseif ($user_info['avatar']['url'] != '')
3049
-			$context['user']['avatar']['href'] = $modSettings['avatar_url'] . '/' . $smcFunc['htmlspecialchars']($user_info['avatar']['url']);
3223
+		elseif ($user_info['avatar']['url'] != '') {
3224
+					$context['user']['avatar']['href'] = $modSettings['avatar_url'] . '/' . $smcFunc['htmlspecialchars']($user_info['avatar']['url']);
3225
+		}
3050 3226
 		// No avatar at all? Fine, we have a big fat default avatar ;)
3051
-		else
3052
-			$context['user']['avatar']['href'] = $modSettings['avatar_url'] . '/default.png';
3227
+		else {
3228
+					$context['user']['avatar']['href'] = $modSettings['avatar_url'] . '/default.png';
3229
+		}
3053 3230
 
3054
-		if (!empty($context['user']['avatar']))
3055
-			$context['user']['avatar']['image'] = '<img src="' . $context['user']['avatar']['href'] . '" alt="" class="avatar">';
3231
+		if (!empty($context['user']['avatar'])) {
3232
+					$context['user']['avatar']['image'] = '<img src="' . $context['user']['avatar']['href'] . '" alt="" class="avatar">';
3233
+		}
3056 3234
 
3057 3235
 		// Figure out how long they've been logged in.
3058 3236
 		$context['user']['total_time_logged_in'] = array(
@@ -3060,8 +3238,7 @@  discard block
 block discarded – undo
3060 3238
 			'hours' => floor(($user_info['total_time_logged_in'] % 86400) / 3600),
3061 3239
 			'minutes' => floor(($user_info['total_time_logged_in'] % 3600) / 60)
3062 3240
 		);
3063
-	}
3064
-	else
3241
+	} else
3065 3242
 	{
3066 3243
 		$context['user']['messages'] = 0;
3067 3244
 		$context['user']['unread_messages'] = 0;
@@ -3069,12 +3246,14 @@  discard block
 block discarded – undo
3069 3246
 		$context['user']['total_time_logged_in'] = array('days' => 0, 'hours' => 0, 'minutes' => 0);
3070 3247
 		$context['user']['popup_messages'] = false;
3071 3248
 
3072
-		if (!empty($modSettings['registration_method']) && $modSettings['registration_method'] == 1)
3073
-			$txt['welcome_guest'] .= $txt['welcome_guest_activate'];
3249
+		if (!empty($modSettings['registration_method']) && $modSettings['registration_method'] == 1) {
3250
+					$txt['welcome_guest'] .= $txt['welcome_guest_activate'];
3251
+		}
3074 3252
 
3075 3253
 		// If we've upgraded recently, go easy on the passwords.
3076
-		if (!empty($modSettings['disableHashTime']) && ($modSettings['disableHashTime'] == 1 || time() < $modSettings['disableHashTime']))
3077
-			$context['disable_login_hashing'] = true;
3254
+		if (!empty($modSettings['disableHashTime']) && ($modSettings['disableHashTime'] == 1 || time() < $modSettings['disableHashTime'])) {
3255
+					$context['disable_login_hashing'] = true;
3256
+		}
3078 3257
 	}
3079 3258
 
3080 3259
 	// Setup the main menu items.
@@ -3087,8 +3266,8 @@  discard block
 block discarded – undo
3087 3266
 	$context['show_pm_popup'] = $context['user']['popup_messages'] && !empty($options['popup_messages']) && (!isset($_REQUEST['action']) || $_REQUEST['action'] != 'pm');
3088 3267
 
3089 3268
 	// 2.1+: Add the PM popup here instead. Theme authors can still override it simply by editing/removing the 'fPmPopup' in the array.
3090
-	if ($context['show_pm_popup'])
3091
-		addInlineJavaScript('
3269
+	if ($context['show_pm_popup']) {
3270
+			addInlineJavaScript('
3092 3271
 		jQuery(document).ready(function($) {
3093 3272
 			new smc_Popup({
3094 3273
 				heading: ' . JavaScriptEscape($txt['show_personal_messages_heading']) . ',
@@ -3096,15 +3275,17 @@  discard block
 block discarded – undo
3096 3275
 				icon_class: \'generic_icons mail_new\'
3097 3276
 			});
3098 3277
 		});');
3278
+	}
3099 3279
 
3100 3280
 	// Add a generic "Are you sure?" confirmation message.
3101 3281
 	addInlineJavaScript('
3102 3282
 	var smf_you_sure =' . JavaScriptEscape($txt['quickmod_confirm']) .';');
3103 3283
 
3104 3284
 	// Now add the capping code for avatars.
3105
-	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')
3106
-		addInlineCss('
3285
+	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') {
3286
+			addInlineCss('
3107 3287
 img.avatar { max-width: ' . $modSettings['avatar_max_width_external'] . 'px; max-height: ' . $modSettings['avatar_max_height_external'] . 'px; }');
3288
+	}
3108 3289
 
3109 3290
 	// This looks weird, but it's because BoardIndex.php references the variable.
3110 3291
 	$context['common_stats']['latest_member'] = array(
@@ -3121,11 +3302,13 @@  discard block
 block discarded – undo
3121 3302
 	);
3122 3303
 	$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']);
3123 3304
 
3124
-	if (empty($settings['theme_version']))
3125
-		addJavaScriptVar('smf_scripturl', $scripturl);
3305
+	if (empty($settings['theme_version'])) {
3306
+			addJavaScriptVar('smf_scripturl', $scripturl);
3307
+	}
3126 3308
 
3127
-	if (!isset($context['page_title']))
3128
-		$context['page_title'] = '';
3309
+	if (!isset($context['page_title'])) {
3310
+			$context['page_title'] = '';
3311
+	}
3129 3312
 
3130 3313
 	// Set some specific vars.
3131 3314
 	$context['page_title_html_safe'] = $smcFunc['htmlspecialchars'](un_htmlspecialchars($context['page_title'])) . (!empty($context['current_page']) ? ' - ' . $txt['page'] . ' ' . ($context['current_page'] + 1) : '');
@@ -3135,21 +3318,23 @@  discard block
 block discarded – undo
3135 3318
 	$context['meta_tags'][] = array('property' => 'og:site_name', 'content' => $context['forum_name']);
3136 3319
 	$context['meta_tags'][] = array('property' => 'og:title', 'content' => $context['page_title_html_safe']);
3137 3320
 
3138
-	if (!empty($context['meta_keywords']))
3139
-		$context['meta_tags'][] = array('name' => 'keywords', 'content' => $context['meta_keywords']);
3321
+	if (!empty($context['meta_keywords'])) {
3322
+			$context['meta_tags'][] = array('name' => 'keywords', 'content' => $context['meta_keywords']);
3323
+	}
3140 3324
 
3141
-	if (!empty($context['canonical_url']))
3142
-		$context['meta_tags'][] = array('property' => 'og:url', 'content' => $context['canonical_url']);
3325
+	if (!empty($context['canonical_url'])) {
3326
+			$context['meta_tags'][] = array('property' => 'og:url', 'content' => $context['canonical_url']);
3327
+	}
3143 3328
 
3144
-	if (!empty($settings['og_image']))
3145
-		$context['meta_tags'][] = array('property' => 'og:image', 'content' => $settings['og_image']);
3329
+	if (!empty($settings['og_image'])) {
3330
+			$context['meta_tags'][] = array('property' => 'og:image', 'content' => $settings['og_image']);
3331
+	}
3146 3332
 
3147 3333
 	if (!empty($context['meta_description']))
3148 3334
 	{
3149 3335
 		$context['meta_tags'][] = array('property' => 'og:description', 'content' => $context['meta_description']);
3150 3336
 		$context['meta_tags'][] = array('name' => 'description', 'content' => $context['meta_description']);
3151
-	}
3152
-	else
3337
+	} else
3153 3338
 	{
3154 3339
 		$context['meta_tags'][] = array('property' => 'og:description', 'content' => $context['page_title_html_safe']);
3155 3340
 		$context['meta_tags'][] = array('name' => 'description', 'content' => $context['page_title_html_safe']);
@@ -3175,8 +3360,9 @@  discard block
 block discarded – undo
3175 3360
 	$memory_needed = memoryReturnBytes($needed);
3176 3361
 
3177 3362
 	// should we account for how much is currently being used?
3178
-	if ($in_use)
3179
-		$memory_needed += function_exists('memory_get_usage') ? memory_get_usage() : (2 * 1048576);
3363
+	if ($in_use) {
3364
+			$memory_needed += function_exists('memory_get_usage') ? memory_get_usage() : (2 * 1048576);
3365
+	}
3180 3366
 
3181 3367
 	// if more is needed, request it
3182 3368
 	if ($memory_current < $memory_needed)
@@ -3199,8 +3385,9 @@  discard block
 block discarded – undo
3199 3385
  */
3200 3386
 function memoryReturnBytes($val)
3201 3387
 {
3202
-	if (is_integer($val))
3203
-		return $val;
3388
+	if (is_integer($val)) {
3389
+			return $val;
3390
+	}
3204 3391
 
3205 3392
 	// Separate the number from the designator
3206 3393
 	$val = trim($val);
@@ -3236,10 +3423,11 @@  discard block
 block discarded – undo
3236 3423
 		header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
3237 3424
 
3238 3425
 		// Are we debugging the template/html content?
3239
-		if (!isset($_REQUEST['xml']) && isset($_GET['debug']) && !isBrowser('ie'))
3240
-			header('Content-Type: application/xhtml+xml');
3241
-		elseif (!isset($_REQUEST['xml']))
3242
-			header('Content-Type: text/html; charset=' . (empty($context['character_set']) ? 'ISO-8859-1' : $context['character_set']));
3426
+		if (!isset($_REQUEST['xml']) && isset($_GET['debug']) && !isBrowser('ie')) {
3427
+					header('Content-Type: application/xhtml+xml');
3428
+		} elseif (!isset($_REQUEST['xml'])) {
3429
+					header('Content-Type: text/html; charset=' . (empty($context['character_set']) ? 'ISO-8859-1' : $context['character_set']));
3430
+		}
3243 3431
 	}
3244 3432
 
3245 3433
 	header('Content-Type: text/' . (isset($_REQUEST['xml']) ? 'xml' : 'html') . '; charset=' . (empty($context['character_set']) ? 'ISO-8859-1' : $context['character_set']));
@@ -3248,8 +3436,9 @@  discard block
 block discarded – undo
3248 3436
 	if ($context['in_maintenance'] && $context['user']['is_admin'])
3249 3437
 	{
3250 3438
 		$position = array_search('body', $context['template_layers']);
3251
-		if ($position === false)
3252
-			$position = array_search('main', $context['template_layers']);
3439
+		if ($position === false) {
3440
+					$position = array_search('main', $context['template_layers']);
3441
+		}
3253 3442
 
3254 3443
 		if ($position !== false)
3255 3444
 		{
@@ -3277,15 +3466,15 @@  discard block
 block discarded – undo
3277 3466
 
3278 3467
 			foreach ($securityFiles as $i => $securityFile)
3279 3468
 			{
3280
-				if (!file_exists($boarddir . '/' . $securityFile))
3281
-					unset($securityFiles[$i]);
3469
+				if (!file_exists($boarddir . '/' . $securityFile)) {
3470
+									unset($securityFiles[$i]);
3471
+				}
3282 3472
 			}
3283 3473
 
3284 3474
 			// We are already checking so many files...just few more doesn't make any difference! :P
3285
-			if (!empty($modSettings['currentAttachmentUploadDir']))
3286
-				$path = $modSettings['attachmentUploadDir'][$modSettings['currentAttachmentUploadDir']];
3287
-
3288
-			else
3475
+			if (!empty($modSettings['currentAttachmentUploadDir'])) {
3476
+							$path = $modSettings['attachmentUploadDir'][$modSettings['currentAttachmentUploadDir']];
3477
+			} else
3289 3478
 			{
3290 3479
 				$path = $modSettings['attachmentUploadDir'];
3291 3480
 				$id_folder_thumb = 1;
@@ -3294,8 +3483,9 @@  discard block
 block discarded – undo
3294 3483
 			secureDirectory($cachedir);
3295 3484
 
3296 3485
 			// If agreement is enabled, at least the english version shall exists
3297
-			if ($modSettings['requireAgreement'])
3298
-				$agreement = !file_exists($boarddir . '/agreement.txt');
3486
+			if ($modSettings['requireAgreement']) {
3487
+							$agreement = !file_exists($boarddir . '/agreement.txt');
3488
+			}
3299 3489
 
3300 3490
 			if (!empty($securityFiles) || (!empty($modSettings['cache_enable']) && !is_writable($cachedir)) || !empty($agreement))
3301 3491
 			{
@@ -3310,18 +3500,21 @@  discard block
 block discarded – undo
3310 3500
 					echo '
3311 3501
 				', $txt['not_removed'], '<strong>', $securityFile, '</strong>!<br>';
3312 3502
 
3313
-					if ($securityFile == 'Settings.php~' || $securityFile == 'Settings_bak.php~')
3314
-						echo '
3503
+					if ($securityFile == 'Settings.php~' || $securityFile == 'Settings_bak.php~') {
3504
+											echo '
3315 3505
 				', sprintf($txt['not_removed_extra'], $securityFile, substr($securityFile, 0, -1)), '<br>';
3506
+					}
3316 3507
 				}
3317 3508
 
3318
-				if (!empty($modSettings['cache_enable']) && !is_writable($cachedir))
3319
-					echo '
3509
+				if (!empty($modSettings['cache_enable']) && !is_writable($cachedir)) {
3510
+									echo '
3320 3511
 				<strong>', $txt['cache_writable'], '</strong><br>';
3512
+				}
3321 3513
 
3322
-				if (!empty($agreement))
3323
-					echo '
3514
+				if (!empty($agreement)) {
3515
+									echo '
3324 3516
 				<strong>', $txt['agreement_missing'], '</strong><br>';
3517
+				}
3325 3518
 
3326 3519
 				echo '
3327 3520
 			</p>
@@ -3336,16 +3529,18 @@  discard block
 block discarded – undo
3336 3529
 				<div class="windowbg alert" style="margin: 2ex; padding: 2ex; border: 2px dashed red;">
3337 3530
 					', sprintf($txt['you_are_post_banned'], $user_info['is_guest'] ? $txt['guest_title'] : $user_info['name']);
3338 3531
 
3339
-			if (!empty($_SESSION['ban']['cannot_post']['reason']))
3340
-				echo '
3532
+			if (!empty($_SESSION['ban']['cannot_post']['reason'])) {
3533
+							echo '
3341 3534
 					<div style="padding-left: 4ex; padding-top: 1ex;">', $_SESSION['ban']['cannot_post']['reason'], '</div>';
3535
+			}
3342 3536
 
3343
-			if (!empty($_SESSION['ban']['expire_time']))
3344
-				echo '
3537
+			if (!empty($_SESSION['ban']['expire_time'])) {
3538
+							echo '
3345 3539
 					<div>', sprintf($txt['your_ban_expires'], timeformat($_SESSION['ban']['expire_time'], false)), '</div>';
3346
-			else
3347
-				echo '
3540
+			} else {
3541
+							echo '
3348 3542
 					<div>', $txt['your_ban_expires_never'], '</div>';
3543
+			}
3349 3544
 
3350 3545
 			echo '
3351 3546
 				</div>';
@@ -3361,8 +3556,9 @@  discard block
 block discarded – undo
3361 3556
 	global $forum_copyright, $software_year, $forum_version;
3362 3557
 
3363 3558
 	// Don't display copyright for things like SSI.
3364
-	if (!isset($forum_version) || !isset($software_year))
3365
-		return;
3559
+	if (!isset($forum_version) || !isset($software_year)) {
3560
+			return;
3561
+	}
3366 3562
 
3367 3563
 	// Put in the version...
3368 3564
 	printf($forum_copyright, $forum_version, $software_year);
@@ -3380,9 +3576,10 @@  discard block
 block discarded – undo
3380 3576
 	$context['load_time'] = comma_format(round(array_sum(explode(' ', microtime())) - array_sum(explode(' ', $time_start)), 3));
3381 3577
 	$context['load_queries'] = $db_count;
3382 3578
 
3383
-	foreach (array_reverse($context['template_layers']) as $layer)
3384
-		loadSubTemplate($layer . '_below', true);
3385
-}
3579
+	foreach (array_reverse($context['template_layers']) as $layer) {
3580
+			loadSubTemplate($layer . '_below', true);
3581
+	}
3582
+	}
3386 3583
 
3387 3584
 /**
3388 3585
  * Output the Javascript files
@@ -3413,8 +3610,7 @@  discard block
 block discarded – undo
3413 3610
 			{
3414 3611
 				echo '
3415 3612
 		var ', $key, ';';
3416
-			}
3417
-			else
3613
+			} else
3418 3614
 			{
3419 3615
 				echo '
3420 3616
 		var ', $key, ' = ', $value, ';';
@@ -3429,26 +3625,27 @@  discard block
 block discarded – undo
3429 3625
 	foreach ($context['javascript_files'] as $id => $js_file)
3430 3626
 	{
3431 3627
 		// Last minute call! allow theme authors to disable single files.
3432
-		if (!empty($settings['disable_files']) && in_array($id, $settings['disable_files']))
3433
-			continue;
3628
+		if (!empty($settings['disable_files']) && in_array($id, $settings['disable_files'])) {
3629
+					continue;
3630
+		}
3434 3631
 
3435 3632
 		// By default all files don't get minimized unless the file explicitly says so!
3436 3633
 		if (!empty($js_file['options']['minimize']) && !empty($modSettings['minimize_files']))
3437 3634
 		{
3438
-			if ($do_deferred && !empty($js_file['options']['defer']))
3439
-				$toMinifyDefer[] = $js_file;
3440
-
3441
-			elseif (!$do_deferred && empty($js_file['options']['defer']))
3442
-				$toMinify[] = $js_file;
3635
+			if ($do_deferred && !empty($js_file['options']['defer'])) {
3636
+							$toMinifyDefer[] = $js_file;
3637
+			} elseif (!$do_deferred && empty($js_file['options']['defer'])) {
3638
+							$toMinify[] = $js_file;
3639
+			}
3443 3640
 
3444 3641
 			// Grab a random seed.
3445
-			if (!isset($minSeed))
3446
-				$minSeed = $js_file['options']['seed'];
3447
-		}
3448
-
3449
-		elseif ((!$do_deferred && empty($js_file['options']['defer'])) || ($do_deferred && !empty($js_file['options']['defer'])))
3450
-			echo '
3642
+			if (!isset($minSeed)) {
3643
+							$minSeed = $js_file['options']['seed'];
3644
+			}
3645
+		} elseif ((!$do_deferred && empty($js_file['options']['defer'])) || ($do_deferred && !empty($js_file['options']['defer']))) {
3646
+					echo '
3451 3647
 	<script src="', $js_file['fileUrl'], '"', !empty($js_file['options']['async']) ? ' async="async"' : '', '></script>';
3648
+		}
3452 3649
 	}
3453 3650
 
3454 3651
 	if ((!$do_deferred && !empty($toMinify)) || ($do_deferred && !empty($toMinifyDefer)))
@@ -3456,14 +3653,14 @@  discard block
 block discarded – undo
3456 3653
 		$result = custMinify(($do_deferred ? $toMinifyDefer : $toMinify), 'js', $do_deferred);
3457 3654
 
3458 3655
 		// Minify process couldn't work, print each individual files.
3459
-		if (!empty($result) && is_array($result))
3460
-			foreach ($result as $minFailedFile)
3656
+		if (!empty($result) && is_array($result)) {
3657
+					foreach ($result as $minFailedFile)
3461 3658
 				echo '
3462 3659
 	<script src="', $minFailedFile['fileUrl'], '"', !empty($minFailedFile['options']['async']) ? ' async="async"' : '', '></script>';
3463
-
3464
-		else
3465
-			echo '
3660
+		} else {
3661
+					echo '
3466 3662
 	<script src="', $settings['theme_url'] ,'/scripts/minified', ($do_deferred ? '_deferred' : '') ,'.js', $minSeed ,'"></script>';
3663
+		}
3467 3664
 	}
3468 3665
 
3469 3666
 	// Inline JavaScript - Actually useful some times!
@@ -3474,8 +3671,9 @@  discard block
 block discarded – undo
3474 3671
 			echo '
3475 3672
 <script>';
3476 3673
 
3477
-			foreach ($context['javascript_inline']['defer'] as $js_code)
3478
-				echo $js_code;
3674
+			foreach ($context['javascript_inline']['defer'] as $js_code) {
3675
+							echo $js_code;
3676
+			}
3479 3677
 
3480 3678
 			echo '
3481 3679
 </script>';
@@ -3486,8 +3684,9 @@  discard block
 block discarded – undo
3486 3684
 			echo '
3487 3685
 	<script>';
3488 3686
 
3489
-			foreach ($context['javascript_inline']['standard'] as $js_code)
3490
-				echo $js_code;
3687
+			foreach ($context['javascript_inline']['standard'] as $js_code) {
3688
+							echo $js_code;
3689
+			}
3491 3690
 
3492 3691
 			echo '
3493 3692
 	</script>';
@@ -3512,8 +3711,9 @@  discard block
 block discarded – undo
3512 3711
 	foreach ($context['css_files'] as $id => $file)
3513 3712
 	{
3514 3713
 		// Last minute call! allow theme authors to disable single files.
3515
-		if (!empty($settings['disable_files']) && in_array($id, $settings['disable_files']))
3516
-			continue;
3714
+		if (!empty($settings['disable_files']) && in_array($id, $settings['disable_files'])) {
3715
+					continue;
3716
+		}
3517 3717
 
3518 3718
 		// By default all files don't get minimized unless the file explicitly says so!
3519 3719
 		if (!empty($file['options']['minimize']) && !empty($modSettings['minimize_files']))
@@ -3521,12 +3721,12 @@  discard block
 block discarded – undo
3521 3721
 			$toMinify[] = $file;
3522 3722
 
3523 3723
 			// Grab a random seed.
3524
-			if (!isset($minSeed))
3525
-				$minSeed = $file['options']['seed'];
3724
+			if (!isset($minSeed)) {
3725
+							$minSeed = $file['options']['seed'];
3726
+			}
3727
+		} else {
3728
+					$normal[] = $file['fileUrl'];
3526 3729
 		}
3527
-
3528
-		else
3529
-			$normal[] = $file['fileUrl'];
3530 3730
 	}
3531 3731
 
3532 3732
 	if (!empty($toMinify))
@@ -3534,28 +3734,30 @@  discard block
 block discarded – undo
3534 3734
 		$result = custMinify($toMinify, 'css');
3535 3735
 
3536 3736
 		// Minify process couldn't work, print each individual files.
3537
-		if (!empty($result) && is_array($result))
3538
-			foreach ($result as $minFailedFile)
3737
+		if (!empty($result) && is_array($result)) {
3738
+					foreach ($result as $minFailedFile)
3539 3739
 				echo '
3540 3740
 	<link rel="stylesheet" href="', $minFailedFile['fileUrl'], '">';
3541
-
3542
-		else
3543
-			echo '
3741
+		} else {
3742
+					echo '
3544 3743
 	<link rel="stylesheet" href="', $settings['theme_url'] ,'/css/minified.css', $minSeed ,'">';
3744
+		}
3545 3745
 	}
3546 3746
 
3547 3747
 	// Print the rest after the minified files.
3548
-	if (!empty($normal))
3549
-		foreach ($normal as $nf)
3748
+	if (!empty($normal)) {
3749
+			foreach ($normal as $nf)
3550 3750
 			echo '
3551 3751
 	<link rel="stylesheet" href="', $nf ,'">';
3752
+	}
3552 3753
 
3553 3754
 	if ($db_show_debug === true)
3554 3755
 	{
3555 3756
 		// Try to keep only what's useful.
3556 3757
 		$repl = array($boardurl . '/Themes/' => '', $boardurl . '/' => '');
3557
-		foreach ($context['css_files'] as $file)
3558
-			$context['debug']['sheets'][] = strtr($file['fileName'], $repl);
3758
+		foreach ($context['css_files'] as $file) {
3759
+					$context['debug']['sheets'][] = strtr($file['fileName'], $repl);
3760
+		}
3559 3761
 	}
3560 3762
 
3561 3763
 	if (!empty($context['css_header']))
@@ -3563,9 +3765,10 @@  discard block
 block discarded – undo
3563 3765
 		echo '
3564 3766
 	<style>';
3565 3767
 
3566
-		foreach ($context['css_header'] as $css)
3567
-			echo $css .'
3768
+		foreach ($context['css_header'] as $css) {
3769
+					echo $css .'
3568 3770
 	';
3771
+		}
3569 3772
 
3570 3773
 		echo'
3571 3774
 	</style>';
@@ -3590,15 +3793,17 @@  discard block
 block discarded – undo
3590 3793
 	$data = !empty($data) ? $data : false;
3591 3794
 	$minFailed = array();
3592 3795
 
3593
-	if (empty($type) || empty($data))
3594
-		return false;
3796
+	if (empty($type) || empty($data)) {
3797
+			return false;
3798
+	}
3595 3799
 
3596 3800
 	// Did we already did this?
3597 3801
 	$toCache = cache_get_data('minimized_'. $settings['theme_id'] .'_'. $type, 86400);
3598 3802
 
3599 3803
 	// Already done?
3600
-	if (!empty($toCache))
3601
-		return true;
3804
+	if (!empty($toCache)) {
3805
+			return true;
3806
+	}
3602 3807
 
3603 3808
 	// Yep, need a bunch of files.
3604 3809
 	require_once($sourcedir . '/minify/src/Minify.php');
@@ -3686,8 +3891,9 @@  discard block
 block discarded – undo
3686 3891
 	global $modSettings, $smcFunc;
3687 3892
 
3688 3893
 	// Just make up a nice hash...
3689
-	if ($new)
3690
-		return sha1(md5($filename . time()) . mt_rand());
3894
+	if ($new) {
3895
+			return sha1(md5($filename . time()) . mt_rand());
3896
+	}
3691 3897
 
3692 3898
 	// Grab the file hash if it wasn't added.
3693 3899
 	// Left this for legacy.
@@ -3701,23 +3907,25 @@  discard block
 block discarded – undo
3701 3907
 				'id_attach' => $attachment_id,
3702 3908
 			));
3703 3909
 
3704
-		if ($smcFunc['db_num_rows']($request) === 0)
3705
-			return false;
3910
+		if ($smcFunc['db_num_rows']($request) === 0) {
3911
+					return false;
3912
+		}
3706 3913
 
3707 3914
 		list ($file_hash) = $smcFunc['db_fetch_row']($request);
3708 3915
 		$smcFunc['db_free_result']($request);
3709 3916
 	}
3710 3917
 
3711 3918
 	// Still no hash? mmm...
3712
-	if (empty($file_hash))
3713
-		$file_hash = sha1(md5($filename . time()) . mt_rand());
3919
+	if (empty($file_hash)) {
3920
+			$file_hash = sha1(md5($filename . time()) . mt_rand());
3921
+	}
3714 3922
 
3715 3923
 	// Are we using multiple directories?
3716
-	if (!empty($modSettings['currentAttachmentUploadDir']))
3717
-		$path = $modSettings['attachmentUploadDir'][$dir];
3718
-
3719
-	else
3720
-		$path = $modSettings['attachmentUploadDir'];
3924
+	if (!empty($modSettings['currentAttachmentUploadDir'])) {
3925
+			$path = $modSettings['attachmentUploadDir'][$dir];
3926
+	} else {
3927
+			$path = $modSettings['attachmentUploadDir'];
3928
+	}
3721 3929
 
3722 3930
 	return $path . '/' . $attachment_id . '_' . $file_hash .'.dat';
3723 3931
 }
@@ -3732,8 +3940,9 @@  discard block
 block discarded – undo
3732 3940
 function ip2range($fullip)
3733 3941
 {
3734 3942
 	// Pretend that 'unknown' is 255.255.255.255. (since that can't be an IP anyway.)
3735
-	if ($fullip == 'unknown')
3736
-		$fullip = '255.255.255.255';
3943
+	if ($fullip == 'unknown') {
3944
+			$fullip = '255.255.255.255';
3945
+	}
3737 3946
 
3738 3947
 	$ip_parts = explode('-', $fullip);
3739 3948
 	$ip_array = array();
@@ -3757,10 +3966,11 @@  discard block
 block discarded – undo
3757 3966
 		$ip_array['low'] = $ip_parts[0];
3758 3967
 		$ip_array['high'] = $ip_parts[1];
3759 3968
 		return $ip_array;
3760
-	}
3761
-	elseif (count($ip_parts) == 2) // if ip 22.22.*-22.22.*
3969
+	} elseif (count($ip_parts) == 2) {
3970
+		// if ip 22.22.*-22.22.*
3762 3971
 	{
3763 3972
 		$valid_low = isValidIP($ip_parts[0]);
3973
+	}
3764 3974
 		$valid_high = isValidIP($ip_parts[1]);
3765 3975
 		$count = 0;
3766 3976
 		$mode = (preg_match('/:/',$ip_parts[0]) > 0 ? ':' : '.');
@@ -3775,7 +3985,9 @@  discard block
 block discarded – undo
3775 3985
 				$ip_parts[0] .= $mode . $min;
3776 3986
 				$valid_low = isValidIP($ip_parts[0]);
3777 3987
 				$count++;
3778
-				if ($count > 9) break;
3988
+				if ($count > 9) {
3989
+					break;
3990
+				}
3779 3991
 			}
3780 3992
 		}
3781 3993
 
@@ -3789,7 +4001,9 @@  discard block
 block discarded – undo
3789 4001
 				$ip_parts[1] .= $mode . $max;
3790 4002
 				$valid_high = isValidIP($ip_parts[1]);
3791 4003
 				$count++;
3792
-				if ($count > 9) break;
4004
+				if ($count > 9) {
4005
+					break;
4006
+				}
3793 4007
 			}
3794 4008
 		}
3795 4009
 
@@ -3814,46 +4028,54 @@  discard block
 block discarded – undo
3814 4028
 {
3815 4029
 	global $modSettings;
3816 4030
 
3817
-	if (($host = cache_get_data('hostlookup-' . $ip, 600)) !== null)
3818
-		return $host;
4031
+	if (($host = cache_get_data('hostlookup-' . $ip, 600)) !== null) {
4032
+			return $host;
4033
+	}
3819 4034
 	$t = microtime();
3820 4035
 
3821 4036
 	// Try the Linux host command, perhaps?
3822 4037
 	if (!isset($host) && (strpos(strtolower(PHP_OS), 'win') === false || strpos(strtolower(PHP_OS), 'darwin') !== false) && mt_rand(0, 1) == 1)
3823 4038
 	{
3824
-		if (!isset($modSettings['host_to_dis']))
3825
-			$test = @shell_exec('host -W 1 ' . @escapeshellarg($ip));
3826
-		else
3827
-			$test = @shell_exec('host ' . @escapeshellarg($ip));
4039
+		if (!isset($modSettings['host_to_dis'])) {
4040
+					$test = @shell_exec('host -W 1 ' . @escapeshellarg($ip));
4041
+		} else {
4042
+					$test = @shell_exec('host ' . @escapeshellarg($ip));
4043
+		}
3828 4044
 
3829 4045
 		// Did host say it didn't find anything?
3830
-		if (strpos($test, 'not found') !== false)
3831
-			$host = '';
4046
+		if (strpos($test, 'not found') !== false) {
4047
+					$host = '';
4048
+		}
3832 4049
 		// Invalid server option?
3833
-		elseif ((strpos($test, 'invalid option') || strpos($test, 'Invalid query name 1')) && !isset($modSettings['host_to_dis']))
3834
-			updateSettings(array('host_to_dis' => 1));
4050
+		elseif ((strpos($test, 'invalid option') || strpos($test, 'Invalid query name 1')) && !isset($modSettings['host_to_dis'])) {
4051
+					updateSettings(array('host_to_dis' => 1));
4052
+		}
3835 4053
 		// Maybe it found something, after all?
3836
-		elseif (preg_match('~\s([^\s]+?)\.\s~', $test, $match) == 1)
3837
-			$host = $match[1];
4054
+		elseif (preg_match('~\s([^\s]+?)\.\s~', $test, $match) == 1) {
4055
+					$host = $match[1];
4056
+		}
3838 4057
 	}
3839 4058
 
3840 4059
 	// This is nslookup; usually only Windows, but possibly some Unix?
3841 4060
 	if (!isset($host) && stripos(PHP_OS, 'win') !== false && strpos(strtolower(PHP_OS), 'darwin') === false && mt_rand(0, 1) == 1)
3842 4061
 	{
3843 4062
 		$test = @shell_exec('nslookup -timeout=1 ' . @escapeshellarg($ip));
3844
-		if (strpos($test, 'Non-existent domain') !== false)
3845
-			$host = '';
3846
-		elseif (preg_match('~Name:\s+([^\s]+)~', $test, $match) == 1)
3847
-			$host = $match[1];
4063
+		if (strpos($test, 'Non-existent domain') !== false) {
4064
+					$host = '';
4065
+		} elseif (preg_match('~Name:\s+([^\s]+)~', $test, $match) == 1) {
4066
+					$host = $match[1];
4067
+		}
3848 4068
 	}
3849 4069
 
3850 4070
 	// This is the last try :/.
3851
-	if (!isset($host) || $host === false)
3852
-		$host = @gethostbyaddr($ip);
4071
+	if (!isset($host) || $host === false) {
4072
+			$host = @gethostbyaddr($ip);
4073
+	}
3853 4074
 
3854 4075
 	// It took a long time, so let's cache it!
3855
-	if (array_sum(explode(' ', microtime())) - array_sum(explode(' ', $t)) > 0.5)
3856
-		cache_put_data('hostlookup-' . $ip, $host, 600);
4076
+	if (array_sum(explode(' ', microtime())) - array_sum(explode(' ', $t)) > 0.5) {
4077
+			cache_put_data('hostlookup-' . $ip, $host, 600);
4078
+	}
3857 4079
 
3858 4080
 	return $host;
3859 4081
 }
@@ -3889,20 +4111,21 @@  discard block
 block discarded – undo
3889 4111
 			{
3890 4112
 				$encrypted = substr(crypt($word, 'uk'), 2, $max_chars);
3891 4113
 				$total = 0;
3892
-				for ($i = 0; $i < $max_chars; $i++)
3893
-					$total += $possible_chars[ord($encrypted{$i})] * pow(63, $i);
4114
+				for ($i = 0; $i < $max_chars; $i++) {
4115
+									$total += $possible_chars[ord($encrypted{$i})] * pow(63, $i);
4116
+				}
3894 4117
 				$returned_ints[] = $max_chars == 4 ? min($total, 16777215) : $total;
3895 4118
 			}
3896 4119
 		}
3897 4120
 		return array_unique($returned_ints);
3898
-	}
3899
-	else
4121
+	} else
3900 4122
 	{
3901 4123
 		// Trim characters before and after and add slashes for database insertion.
3902 4124
 		$returned_words = array();
3903
-		foreach ($words as $word)
3904
-			if (($word = trim($word, '-_\'')) !== '')
4125
+		foreach ($words as $word) {
4126
+					if (($word = trim($word, '-_\'')) !== '')
3905 4127
 				$returned_words[] = $max_chars === null ? $word : substr($word, 0, $max_chars);
4128
+		}
3906 4129
 
3907 4130
 		// Filter out all words that occur more than once.
3908 4131
 		return array_unique($returned_words);
@@ -3924,16 +4147,18 @@  discard block
 block discarded – undo
3924 4147
 	global $settings, $txt;
3925 4148
 
3926 4149
 	// Does the current loaded theme have this and we are not forcing the usage of this function?
3927
-	if (function_exists('template_create_button') && !$force_use)
3928
-		return template_create_button($name, $alt, $label = '', $custom = '');
4150
+	if (function_exists('template_create_button') && !$force_use) {
4151
+			return template_create_button($name, $alt, $label = '', $custom = '');
4152
+	}
3929 4153
 
3930
-	if (!$settings['use_image_buttons'])
3931
-		return $txt[$alt];
3932
-	elseif (!empty($settings['use_buttons']))
3933
-		return '<span class="generic_icons ' . $name . '" alt="' . $txt[$alt] . '"></span>' . ($label != '' ? '&nbsp;<strong>' . $txt[$label] . '</strong>' : '');
3934
-	else
3935
-		return '<img src="' . $settings['lang_images_url'] . '/' . $name . '" alt="' . $txt[$alt] . '" ' . $custom . '>';
3936
-}
4154
+	if (!$settings['use_image_buttons']) {
4155
+			return $txt[$alt];
4156
+	} elseif (!empty($settings['use_buttons'])) {
4157
+			return '<span class="generic_icons ' . $name . '" alt="' . $txt[$alt] . '"></span>' . ($label != '' ? '&nbsp;<strong>' . $txt[$label] . '</strong>' : '');
4158
+	} else {
4159
+			return '<img src="' . $settings['lang_images_url'] . '/' . $name . '" alt="' . $txt[$alt] . '" ' . $custom . '>';
4160
+	}
4161
+	}
3937 4162
 
3938 4163
 /**
3939 4164
  * Empty out the cache in use as best it can
@@ -3957,16 +4182,19 @@  discard block
 block discarded – undo
3957 4182
 			if (function_exists('memcache_flush') || function_exists('memcached_flush') && isset($modSettings['cache_memcached']) && trim($modSettings['cache_memcached']) != '')
3958 4183
 			{
3959 4184
 				// Not connected yet?
3960
-				if (empty($memcached))
3961
-					get_memcached_server();
3962
-				if (!$memcached)
3963
-					return;
4185
+				if (empty($memcached)) {
4186
+									get_memcached_server();
4187
+				}
4188
+				if (!$memcached) {
4189
+									return;
4190
+				}
3964 4191
 
3965 4192
 				// clear it out
3966
-				if (function_exists('memcache_flush'))
3967
-					memcache_flush($memcached);
3968
-				else
3969
-					memcached_flush($memcached);
4193
+				if (function_exists('memcache_flush')) {
4194
+									memcache_flush($memcached);
4195
+				} else {
4196
+									memcached_flush($memcached);
4197
+				}
3970 4198
 			}
3971 4199
 			break;
3972 4200
 		case 'apc':
@@ -3977,14 +4205,15 @@  discard block
 block discarded – undo
3977 4205
 				{
3978 4206
 					apc_clear_cache('user');
3979 4207
 					apc_clear_cache('system');
4208
+				} elseif ($type === 'user') {
4209
+									apc_clear_cache('user');
3980 4210
 				}
3981
-				elseif ($type === 'user')
3982
-					apc_clear_cache('user');
3983 4211
 			}
3984 4212
 			break;
3985 4213
 		case 'zend':
3986
-			if (function_exists('zend_shm_cache_clear'))
3987
-				zend_shm_cache_clear('SMF');
4214
+			if (function_exists('zend_shm_cache_clear')) {
4215
+							zend_shm_cache_clear('SMF');
4216
+			}
3988 4217
 			break;
3989 4218
 		case 'xcache':
3990 4219
 			if (function_exists('xcache_clear_cache'))
@@ -3995,23 +4224,27 @@  discard block
 block discarded – undo
3995 4224
 					xcache_clear_cache(XC_TYPE_VAR, 0);
3996 4225
 					xcache_clear_cache(XC_TYPE_PHP, 0);
3997 4226
 				}
3998
-				if ($type === 'user')
3999
-					xcache_clear_cache(XC_TYPE_VAR, 0);
4000
-				if ($type === 'data')
4001
-					xcache_clear_cache(XC_TYPE_PHP, 0);
4227
+				if ($type === 'user') {
4228
+									xcache_clear_cache(XC_TYPE_VAR, 0);
4229
+				}
4230
+				if ($type === 'data') {
4231
+									xcache_clear_cache(XC_TYPE_PHP, 0);
4232
+				}
4002 4233
 			}
4003 4234
 			break;
4004 4235
 		default:
4005 4236
 			// No directory = no game.
4006
-			if (!is_dir($cachedir))
4007
-				return;
4237
+			if (!is_dir($cachedir)) {
4238
+							return;
4239
+			}
4008 4240
 
4009 4241
 			// Remove the files in SMF's own disk cache, if any
4010 4242
 			$dh = opendir($cachedir);
4011 4243
 			while ($file = readdir($dh))
4012 4244
 			{
4013
-				if ($file != '.' && $file != '..' && $file != 'index.php' && $file != '.htaccess' && (!$type || substr($file, 0, strlen($type)) == $type))
4014
-					@unlink($cachedir . '/' . $file);
4245
+				if ($file != '.' && $file != '..' && $file != 'index.php' && $file != '.htaccess' && (!$type || substr($file, 0, strlen($type)) == $type)) {
4246
+									@unlink($cachedir . '/' . $file);
4247
+				}
4015 4248
 			}
4016 4249
 			closedir($dh);
4017 4250
 			break;
@@ -4019,8 +4252,9 @@  discard block
 block discarded – undo
4019 4252
 
4020 4253
 	// Invalidate cache, to be sure!
4021 4254
 	// ... as long as index.php can be modified, anyway.
4022
-	if (empty($type))
4023
-		@touch($cachedir . '/' . 'index.php');
4255
+	if (empty($type)) {
4256
+			@touch($cachedir . '/' . 'index.php');
4257
+	}
4024 4258
 
4025 4259
 	call_integration_hook('integrate_clean_cache');
4026 4260
 	clearstatcache();
@@ -4067,9 +4301,10 @@  discard block
 block discarded – undo
4067 4301
 	var user_menus = new smc_PopupMenu();
4068 4302
 	user_menus.add("profile", "' . $scripturl . '?action=profile;area=popup");
4069 4303
 	user_menus.add("alerts", "' . $scripturl . '?action=profile;area=alerts_popup;u='. $context['user']['id'] .'");', true);
4070
-		if ($context['allow_pm'])
4071
-			addInlineJavaScript('
4304
+		if ($context['allow_pm']) {
4305
+					addInlineJavaScript('
4072 4306
 	user_menus.add("pm", "' . $scripturl . '?action=pm;sa=popup");', true);
4307
+		}
4073 4308
 
4074 4309
 		if (!empty($modSettings['enable_ajax_alerts']))
4075 4310
 		{
@@ -4229,88 +4464,96 @@  discard block
 block discarded – undo
4229 4464
 
4230 4465
 		// Now we put the buttons in the context so the theme can use them.
4231 4466
 		$menu_buttons = array();
4232
-		foreach ($buttons as $act => $button)
4233
-			if (!empty($button['show']))
4467
+		foreach ($buttons as $act => $button) {
4468
+					if (!empty($button['show']))
4234 4469
 			{
4235 4470
 				$button['active_button'] = false;
4471
+		}
4236 4472
 
4237 4473
 				// This button needs some action.
4238
-				if (isset($button['action_hook']))
4239
-					$needs_action_hook = true;
4474
+				if (isset($button['action_hook'])) {
4475
+									$needs_action_hook = true;
4476
+				}
4240 4477
 
4241 4478
 				// Make sure the last button truly is the last button.
4242 4479
 				if (!empty($button['is_last']))
4243 4480
 				{
4244
-					if (isset($last_button))
4245
-						unset($menu_buttons[$last_button]['is_last']);
4481
+					if (isset($last_button)) {
4482
+											unset($menu_buttons[$last_button]['is_last']);
4483
+					}
4246 4484
 					$last_button = $act;
4247 4485
 				}
4248 4486
 
4249 4487
 				// Go through the sub buttons if there are any.
4250
-				if (!empty($button['sub_buttons']))
4251
-					foreach ($button['sub_buttons'] as $key => $subbutton)
4488
+				if (!empty($button['sub_buttons'])) {
4489
+									foreach ($button['sub_buttons'] as $key => $subbutton)
4252 4490
 					{
4253 4491
 						if (empty($subbutton['show']))
4254 4492
 							unset($button['sub_buttons'][$key]);
4493
+				}
4255 4494
 
4256 4495
 						// 2nd level sub buttons next...
4257 4496
 						if (!empty($subbutton['sub_buttons']))
4258 4497
 						{
4259 4498
 							foreach ($subbutton['sub_buttons'] as $key2 => $sub_button2)
4260 4499
 							{
4261
-								if (empty($sub_button2['show']))
4262
-									unset($button['sub_buttons'][$key]['sub_buttons'][$key2]);
4500
+								if (empty($sub_button2['show'])) {
4501
+																	unset($button['sub_buttons'][$key]['sub_buttons'][$key2]);
4502
+								}
4263 4503
 							}
4264 4504
 						}
4265 4505
 					}
4266 4506
 
4267 4507
 				// Does this button have its own icon?
4268
-				if (isset($button['icon']) && file_exists($settings['theme_dir'] . '/images/' . $button['icon']))
4269
-					$button['icon'] = '<img src="' . $settings['images_url'] . '/' . $button['icon'] . '" alt="">';
4270
-				elseif (isset($button['icon']) && file_exists($settings['default_theme_dir'] . '/images/' . $button['icon']))
4271
-					$button['icon'] = '<img src="' . $settings['default_images_url'] . '/' . $button['icon'] . '" alt="">';
4272
-				elseif (isset($button['icon']))
4273
-					$button['icon'] = '<span class="generic_icons ' . $button['icon'] . '"></span>';
4274
-				else
4275
-					$button['icon'] = '<span class="generic_icons ' . $act . '"></span>';
4508
+				if (isset($button['icon']) && file_exists($settings['theme_dir'] . '/images/' . $button['icon'])) {
4509
+									$button['icon'] = '<img src="' . $settings['images_url'] . '/' . $button['icon'] . '" alt="">';
4510
+				} elseif (isset($button['icon']) && file_exists($settings['default_theme_dir'] . '/images/' . $button['icon'])) {
4511
+									$button['icon'] = '<img src="' . $settings['default_images_url'] . '/' . $button['icon'] . '" alt="">';
4512
+				} elseif (isset($button['icon'])) {
4513
+									$button['icon'] = '<span class="generic_icons ' . $button['icon'] . '"></span>';
4514
+				} else {
4515
+									$button['icon'] = '<span class="generic_icons ' . $act . '"></span>';
4516
+				}
4276 4517
 
4277 4518
 				$menu_buttons[$act] = $button;
4278 4519
 			}
4279 4520
 
4280
-		if (!empty($modSettings['cache_enable']) && $modSettings['cache_enable'] >= 2)
4281
-			cache_put_data('menu_buttons-' . implode('_', $user_info['groups']) . '-' . $user_info['language'], $menu_buttons, $cacheTime);
4521
+		if (!empty($modSettings['cache_enable']) && $modSettings['cache_enable'] >= 2) {
4522
+					cache_put_data('menu_buttons-' . implode('_', $user_info['groups']) . '-' . $user_info['language'], $menu_buttons, $cacheTime);
4523
+		}
4282 4524
 	}
4283 4525
 
4284 4526
 	$context['menu_buttons'] = $menu_buttons;
4285 4527
 
4286 4528
 	// Logging out requires the session id in the url.
4287
-	if (isset($context['menu_buttons']['logout']))
4288
-		$context['menu_buttons']['logout']['href'] = sprintf($context['menu_buttons']['logout']['href'], $context['session_var'], $context['session_id']);
4529
+	if (isset($context['menu_buttons']['logout'])) {
4530
+			$context['menu_buttons']['logout']['href'] = sprintf($context['menu_buttons']['logout']['href'], $context['session_var'], $context['session_id']);
4531
+	}
4289 4532
 
4290 4533
 	// Figure out which action we are doing so we can set the active tab.
4291 4534
 	// Default to home.
4292 4535
 	$current_action = 'home';
4293 4536
 
4294
-	if (isset($context['menu_buttons'][$context['current_action']]))
4295
-		$current_action = $context['current_action'];
4296
-	elseif ($context['current_action'] == 'search2')
4297
-		$current_action = 'search';
4298
-	elseif ($context['current_action'] == 'theme')
4299
-		$current_action = isset($_REQUEST['sa']) && $_REQUEST['sa'] == 'pick' ? 'profile' : 'admin';
4300
-	elseif ($context['current_action'] == 'register2')
4301
-		$current_action = 'register';
4302
-	elseif ($context['current_action'] == 'login2' || ($user_info['is_guest'] && $context['current_action'] == 'reminder'))
4303
-		$current_action = 'login';
4304
-	elseif ($context['current_action'] == 'groups' && $context['allow_moderation_center'])
4305
-		$current_action = 'moderate';
4537
+	if (isset($context['menu_buttons'][$context['current_action']])) {
4538
+			$current_action = $context['current_action'];
4539
+	} elseif ($context['current_action'] == 'search2') {
4540
+			$current_action = 'search';
4541
+	} elseif ($context['current_action'] == 'theme') {
4542
+			$current_action = isset($_REQUEST['sa']) && $_REQUEST['sa'] == 'pick' ? 'profile' : 'admin';
4543
+	} elseif ($context['current_action'] == 'register2') {
4544
+			$current_action = 'register';
4545
+	} elseif ($context['current_action'] == 'login2' || ($user_info['is_guest'] && $context['current_action'] == 'reminder')) {
4546
+			$current_action = 'login';
4547
+	} elseif ($context['current_action'] == 'groups' && $context['allow_moderation_center']) {
4548
+			$current_action = 'moderate';
4549
+	}
4306 4550
 
4307 4551
 	// There are certain exceptions to the above where we don't want anything on the menu highlighted.
4308 4552
 	if ($context['current_action'] == 'profile' && !empty($context['user']['is_owner']))
4309 4553
 	{
4310 4554
 		$current_action = !empty($_GET['area']) && $_GET['area'] == 'showalerts' ? 'self_alerts' : 'self_profile';
4311 4555
 		$context[$current_action] = true;
4312
-	}
4313
-	elseif ($context['current_action'] == 'pm')
4556
+	} elseif ($context['current_action'] == 'pm')
4314 4557
 	{
4315 4558
 		$current_action = 'self_pm';
4316 4559
 		$context['self_pm'] = true;
@@ -4353,12 +4596,14 @@  discard block
 block discarded – undo
4353 4596
 	}
4354 4597
 
4355 4598
 	// Not all actions are simple.
4356
-	if (!empty($needs_action_hook))
4357
-		call_integration_hook('integrate_current_action', array(&$current_action));
4599
+	if (!empty($needs_action_hook)) {
4600
+			call_integration_hook('integrate_current_action', array(&$current_action));
4601
+	}
4358 4602
 
4359
-	if (isset($context['menu_buttons'][$current_action]))
4360
-		$context['menu_buttons'][$current_action]['active_button'] = true;
4361
-}
4603
+	if (isset($context['menu_buttons'][$current_action])) {
4604
+			$context['menu_buttons'][$current_action]['active_button'] = true;
4605
+	}
4606
+	}
4362 4607
 
4363 4608
 /**
4364 4609
  * Generate a random seed and ensure it's stored in settings.
@@ -4382,16 +4627,19 @@  discard block
 block discarded – undo
4382 4627
 	global $modSettings, $settings, $boarddir, $sourcedir, $db_show_debug;
4383 4628
 	global $context, $txt;
4384 4629
 
4385
-	if ($db_show_debug === true)
4386
-		$context['debug']['hooks'][] = $hook;
4630
+	if ($db_show_debug === true) {
4631
+			$context['debug']['hooks'][] = $hook;
4632
+	}
4387 4633
 
4388 4634
 	// Need to have some control.
4389
-	if (!isset($context['instances']))
4390
-		$context['instances'] = array();
4635
+	if (!isset($context['instances'])) {
4636
+			$context['instances'] = array();
4637
+	}
4391 4638
 
4392 4639
 	$results = array();
4393
-	if (empty($modSettings[$hook]))
4394
-		return $results;
4640
+	if (empty($modSettings[$hook])) {
4641
+			return $results;
4642
+	}
4395 4643
 
4396 4644
 	// Define some needed vars.
4397 4645
 	$function = false;
@@ -4401,14 +4649,16 @@  discard block
 block discarded – undo
4401 4649
 	foreach ($functions as $function)
4402 4650
 	{
4403 4651
 		// Hook has been marked as "disabled". Skip it!
4404
-		if (strpos($function, '!') !== false)
4405
-			continue;
4652
+		if (strpos($function, '!') !== false) {
4653
+					continue;
4654
+		}
4406 4655
 
4407 4656
 		$call = call_helper($function, true);
4408 4657
 
4409 4658
 		// Is it valid?
4410
-		if (!empty($call))
4411
-			$results[$function] = call_user_func_array($call, $parameters);
4659
+		if (!empty($call)) {
4660
+					$results[$function] = call_user_func_array($call, $parameters);
4661
+		}
4412 4662
 
4413 4663
 		// Whatever it was suppose to call, it failed :(
4414 4664
 		elseif (!empty($function))
@@ -4424,8 +4674,9 @@  discard block
 block discarded – undo
4424 4674
 			}
4425 4675
 
4426 4676
 			// "Assume" the file resides on $boarddir somewhere...
4427
-			else
4428
-				log_error(sprintf($txt['hook_fail_call_to'], $function, $boarddir), 'general');
4677
+			else {
4678
+							log_error(sprintf($txt['hook_fail_call_to'], $function, $boarddir), 'general');
4679
+			}
4429 4680
 		}
4430 4681
 	}
4431 4682
 
@@ -4447,12 +4698,14 @@  discard block
 block discarded – undo
4447 4698
 	global $smcFunc, $modSettings;
4448 4699
 
4449 4700
 	// Any objects?
4450
-	if ($object)
4451
-		$function = $function . '#';
4701
+	if ($object) {
4702
+			$function = $function . '#';
4703
+	}
4452 4704
 
4453 4705
 	// Any files  to load?
4454
-	if (!empty($file) && is_string($file))
4455
-		$function = $file . (!empty($function) ? '|' . $function : '');
4706
+	if (!empty($file) && is_string($file)) {
4707
+			$function = $file . (!empty($function) ? '|' . $function : '');
4708
+	}
4456 4709
 
4457 4710
 	// Get the correct string.
4458 4711
 	$integration_call = $function;
@@ -4474,13 +4727,14 @@  discard block
 block discarded – undo
4474 4727
 		if (!empty($current_functions))
4475 4728
 		{
4476 4729
 			$current_functions = explode(',', $current_functions);
4477
-			if (in_array($integration_call, $current_functions))
4478
-				return;
4730
+			if (in_array($integration_call, $current_functions)) {
4731
+							return;
4732
+			}
4479 4733
 
4480 4734
 			$permanent_functions = array_merge($current_functions, array($integration_call));
4735
+		} else {
4736
+					$permanent_functions = array($integration_call);
4481 4737
 		}
4482
-		else
4483
-			$permanent_functions = array($integration_call);
4484 4738
 
4485 4739
 		updateSettings(array($hook => implode(',', $permanent_functions)));
4486 4740
 	}
@@ -4489,8 +4743,9 @@  discard block
 block discarded – undo
4489 4743
 	$functions = empty($modSettings[$hook]) ? array() : explode(',', $modSettings[$hook]);
4490 4744
 
4491 4745
 	// Do nothing, if it's already there.
4492
-	if (in_array($integration_call, $functions))
4493
-		return;
4746
+	if (in_array($integration_call, $functions)) {
4747
+			return;
4748
+	}
4494 4749
 
4495 4750
 	$functions[] = $integration_call;
4496 4751
 	$modSettings[$hook] = implode(',', $functions);
@@ -4513,12 +4768,14 @@  discard block
 block discarded – undo
4513 4768
 	global $smcFunc, $modSettings;
4514 4769
 
4515 4770
 	// Any objects?
4516
-	if ($object)
4517
-		$function = $function . '#';
4771
+	if ($object) {
4772
+			$function = $function . '#';
4773
+	}
4518 4774
 
4519 4775
 	// Any files  to load?
4520
-	if (!empty($file) && is_string($file))
4521
-		$function = $file . '|' . $function;
4776
+	if (!empty($file) && is_string($file)) {
4777
+			$function = $file . '|' . $function;
4778
+	}
4522 4779
 
4523 4780
 	// Get the correct string.
4524 4781
 	$integration_call = $function;
@@ -4539,16 +4796,18 @@  discard block
 block discarded – undo
4539 4796
 	{
4540 4797
 		$current_functions = explode(',', $current_functions);
4541 4798
 
4542
-		if (in_array($integration_call, $current_functions))
4543
-			updateSettings(array($hook => implode(',', array_diff($current_functions, array($integration_call)))));
4799
+		if (in_array($integration_call, $current_functions)) {
4800
+					updateSettings(array($hook => implode(',', array_diff($current_functions, array($integration_call)))));
4801
+		}
4544 4802
 	}
4545 4803
 
4546 4804
 	// Turn the function list into something usable.
4547 4805
 	$functions = empty($modSettings[$hook]) ? array() : explode(',', $modSettings[$hook]);
4548 4806
 
4549 4807
 	// You can only remove it if it's available.
4550
-	if (!in_array($integration_call, $functions))
4551
-		return;
4808
+	if (!in_array($integration_call, $functions)) {
4809
+			return;
4810
+	}
4552 4811
 
4553 4812
 	$functions = array_diff($functions, array($integration_call));
4554 4813
 	$modSettings[$hook] = implode(',', $functions);
@@ -4569,17 +4828,20 @@  discard block
 block discarded – undo
4569 4828
 	global $context, $smcFunc, $txt, $db_show_debug;
4570 4829
 
4571 4830
 	// Really?
4572
-	if (empty($string))
4573
-		return false;
4831
+	if (empty($string)) {
4832
+			return false;
4833
+	}
4574 4834
 
4575 4835
 	// An array? should be a "callable" array IE array(object/class, valid_callable).
4576 4836
 	// A closure? should be a callable one.
4577
-	if (is_array($string) || $string instanceof Closure)
4578
-		return $return ? $string : (is_callable($string) ? call_user_func($string) : false);
4837
+	if (is_array($string) || $string instanceof Closure) {
4838
+			return $return ? $string : (is_callable($string) ? call_user_func($string) : false);
4839
+	}
4579 4840
 
4580 4841
 	// No full objects, sorry! pass a method or a property instead!
4581
-	if (is_object($string))
4582
-		return false;
4842
+	if (is_object($string)) {
4843
+			return false;
4844
+	}
4583 4845
 
4584 4846
 	// Stay vitaminized my friends...
4585 4847
 	$string = $smcFunc['htmlspecialchars']($smcFunc['htmltrim']($string));
@@ -4591,8 +4853,9 @@  discard block
 block discarded – undo
4591 4853
 	$string = load_file($string);
4592 4854
 
4593 4855
 	// Loaded file failed
4594
-	if (empty($string))
4595
-		return false;
4856
+	if (empty($string)) {
4857
+			return false;
4858
+	}
4596 4859
 
4597 4860
 	// Found a method.
4598 4861
 	if (strpos($string, '::') !== false)
@@ -4613,8 +4876,9 @@  discard block
 block discarded – undo
4613 4876
 				// Add another one to the list.
4614 4877
 				if ($db_show_debug === true)
4615 4878
 				{
4616
-					if (!isset($context['debug']['instances']))
4617
-						$context['debug']['instances'] = array();
4879
+					if (!isset($context['debug']['instances'])) {
4880
+											$context['debug']['instances'] = array();
4881
+					}
4618 4882
 
4619 4883
 					$context['debug']['instances'][$class] = $class;
4620 4884
 				}
@@ -4624,13 +4888,15 @@  discard block
 block discarded – undo
4624 4888
 		}
4625 4889
 
4626 4890
 		// Right then. This is a call to a static method.
4627
-		else
4628
-			$func = array($class, $method);
4891
+		else {
4892
+					$func = array($class, $method);
4893
+		}
4629 4894
 	}
4630 4895
 
4631 4896
 	// Nope! just a plain regular function.
4632
-	else
4633
-		$func = $string;
4897
+	else {
4898
+			$func = $string;
4899
+	}
4634 4900
 
4635 4901
 	// Right, we got what we need, time to do some checks.
4636 4902
 	if (!is_callable($func, false, $callable_name))
@@ -4646,17 +4912,18 @@  discard block
 block discarded – undo
4646 4912
 	else
4647 4913
 	{
4648 4914
 		// What are we gonna do about it?
4649
-		if ($return)
4650
-			return $func;
4915
+		if ($return) {
4916
+					return $func;
4917
+		}
4651 4918
 
4652 4919
 		// If this is a plain function, avoid the heat of calling call_user_func().
4653 4920
 		else
4654 4921
 		{
4655
-			if (is_array($func))
4656
-				call_user_func($func);
4657
-
4658
-			else
4659
-				$func();
4922
+			if (is_array($func)) {
4923
+							call_user_func($func);
4924
+			} else {
4925
+							$func();
4926
+			}
4660 4927
 		}
4661 4928
 	}
4662 4929
 }
@@ -4673,31 +4940,34 @@  discard block
 block discarded – undo
4673 4940
 {
4674 4941
 	global $sourcedir, $txt, $boarddir, $settings;
4675 4942
 
4676
-	if (empty($string))
4677
-		return false;
4943
+	if (empty($string)) {
4944
+			return false;
4945
+	}
4678 4946
 
4679 4947
 	if (strpos($string, '|') !== false)
4680 4948
 	{
4681 4949
 		list ($file, $string) = explode('|', $string);
4682 4950
 
4683 4951
 		// Match the wildcards to their regular vars.
4684
-		if (empty($settings['theme_dir']))
4685
-			$absPath = strtr(trim($file), array('$boarddir' => $boarddir, '$sourcedir' => $sourcedir));
4686
-
4687
-		else
4688
-			$absPath = strtr(trim($file), array('$boarddir' => $boarddir, '$sourcedir' => $sourcedir, '$themedir' => $settings['theme_dir']));
4952
+		if (empty($settings['theme_dir'])) {
4953
+					$absPath = strtr(trim($file), array('$boarddir' => $boarddir, '$sourcedir' => $sourcedir));
4954
+		} else {
4955
+					$absPath = strtr(trim($file), array('$boarddir' => $boarddir, '$sourcedir' => $sourcedir, '$themedir' => $settings['theme_dir']));
4956
+		}
4689 4957
 
4690 4958
 		// Load the file if it can be loaded.
4691
-		if (file_exists($absPath))
4692
-			require_once($absPath);
4959
+		if (file_exists($absPath)) {
4960
+					require_once($absPath);
4961
+		}
4693 4962
 
4694 4963
 		// No? try a fallback to $sourcedir
4695 4964
 		else
4696 4965
 		{
4697 4966
 			$absPath = $sourcedir .'/'. $file;
4698 4967
 
4699
-			if (file_exists($absPath))
4700
-				require_once($absPath);
4968
+			if (file_exists($absPath)) {
4969
+							require_once($absPath);
4970
+			}
4701 4971
 
4702 4972
 			// Sorry, can't do much for you at this point.
4703 4973
 			else
@@ -4724,8 +4994,9 @@  discard block
 block discarded – undo
4724 4994
 	global $user_info, $smcFunc;
4725 4995
 
4726 4996
 	// Make sure we have something to work with.
4727
-	if (empty($topic))
4728
-		return array();
4997
+	if (empty($topic)) {
4998
+			return array();
4999
+	}
4729 5000
 
4730 5001
 
4731 5002
 	// We already know the number of likes per message, we just want to know whether the current user liked it or not.
@@ -4748,8 +5019,9 @@  discard block
 block discarded – undo
4748 5019
 				'topic' => $topic,
4749 5020
 			)
4750 5021
 		);
4751
-		while ($row = $smcFunc['db_fetch_assoc']($request))
4752
-			$temp[] = (int) $row['content_id'];
5022
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
5023
+					$temp[] = (int) $row['content_id'];
5024
+		}
4753 5025
 
4754 5026
 		cache_put_data($cache_key, $temp, $ttl);
4755 5027
 	}
@@ -4770,8 +5042,9 @@  discard block
 block discarded – undo
4770 5042
 {
4771 5043
 	global $context;
4772 5044
 
4773
-	if (empty($string))
4774
-		return $string;
5045
+	if (empty($string)) {
5046
+			return $string;
5047
+	}
4775 5048
 
4776 5049
 	// UTF-8 occurences of MS special characters
4777 5050
 	$findchars_utf8 = array(
@@ -4812,10 +5085,11 @@  discard block
 block discarded – undo
4812 5085
 		'--',	// &mdash;
4813 5086
 	);
4814 5087
 
4815
-	if ($context['utf8'])
4816
-		$string = str_replace($findchars_utf8, $replacechars, $string);
4817
-	else
4818
-		$string = str_replace($findchars_iso, $replacechars, $string);
5088
+	if ($context['utf8']) {
5089
+			$string = str_replace($findchars_utf8, $replacechars, $string);
5090
+	} else {
5091
+			$string = str_replace($findchars_iso, $replacechars, $string);
5092
+	}
4819 5093
 
4820 5094
 	return $string;
4821 5095
 }
@@ -4834,49 +5108,59 @@  discard block
 block discarded – undo
4834 5108
 {
4835 5109
 	global $context;
4836 5110
 
4837
-	if (!isset($matches[2]))
4838
-		return '';
5111
+	if (!isset($matches[2])) {
5112
+			return '';
5113
+	}
4839 5114
 
4840 5115
 	$num = $matches[2][0] === 'x' ? hexdec(substr($matches[2], 1)) : (int) $matches[2];
4841 5116
 
4842 5117
 	// remove left to right / right to left overrides
4843
-	if ($num === 0x202D || $num === 0x202E)
4844
-		return '';
5118
+	if ($num === 0x202D || $num === 0x202E) {
5119
+			return '';
5120
+	}
4845 5121
 
4846 5122
 	// Quote, Ampersand, Apostrophe, Less/Greater Than get html replaced
4847
-	if (in_array($num, array(0x22, 0x26, 0x27, 0x3C, 0x3E)))
4848
-		return '&#' . $num . ';';
5123
+	if (in_array($num, array(0x22, 0x26, 0x27, 0x3C, 0x3E))) {
5124
+			return '&#' . $num . ';';
5125
+	}
4849 5126
 
4850 5127
 	if (empty($context['utf8']))
4851 5128
 	{
4852 5129
 		// no control characters
4853
-		if ($num < 0x20)
4854
-			return '';
5130
+		if ($num < 0x20) {
5131
+					return '';
5132
+		}
4855 5133
 		// text is text
4856
-		elseif ($num < 0x80)
4857
-			return chr($num);
5134
+		elseif ($num < 0x80) {
5135
+					return chr($num);
5136
+		}
4858 5137
 		// all others get html-ised
4859
-		else
4860
-			return '&#' . $matches[2] . ';';
4861
-	}
4862
-	else
5138
+		else {
5139
+					return '&#' . $matches[2] . ';';
5140
+		}
5141
+	} else
4863 5142
 	{
4864 5143
 		// <0x20 are control characters, 0x20 is a space, > 0x10FFFF is past the end of the utf8 character set
4865 5144
 		// 0xD800 >= $num <= 0xDFFF are surrogate markers (not valid for utf8 text)
4866
-		if ($num < 0x20 || $num > 0x10FFFF || ($num >= 0xD800 && $num <= 0xDFFF))
4867
-			return '';
5145
+		if ($num < 0x20 || $num > 0x10FFFF || ($num >= 0xD800 && $num <= 0xDFFF)) {
5146
+					return '';
5147
+		}
4868 5148
 		// <0x80 (or less than 128) are standard ascii characters a-z A-Z 0-9 and punctuation
4869
-		elseif ($num < 0x80)
4870
-			return chr($num);
5149
+		elseif ($num < 0x80) {
5150
+					return chr($num);
5151
+		}
4871 5152
 		// <0x800 (2048)
4872
-		elseif ($num < 0x800)
4873
-			return chr(($num >> 6) + 192) . chr(($num & 63) + 128);
5153
+		elseif ($num < 0x800) {
5154
+					return chr(($num >> 6) + 192) . chr(($num & 63) + 128);
5155
+		}
4874 5156
 		// < 0x10000 (65536)
4875
-		elseif ($num < 0x10000)
4876
-			return chr(($num >> 12) + 224) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128);
5157
+		elseif ($num < 0x10000) {
5158
+					return chr(($num >> 12) + 224) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128);
5159
+		}
4877 5160
 		// <= 0x10FFFF (1114111)
4878
-		else
4879
-			return chr(($num >> 18) + 240) . chr((($num >> 12) & 63) + 128) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128);
5161
+		else {
5162
+					return chr(($num >> 18) + 240) . chr((($num >> 12) & 63) + 128) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128);
5163
+		}
4880 5164
 	}
4881 5165
 }
4882 5166
 
@@ -4892,28 +5176,34 @@  discard block
 block discarded – undo
4892 5176
  */
4893 5177
 function fixchar__callback($matches)
4894 5178
 {
4895
-	if (!isset($matches[1]))
4896
-		return '';
5179
+	if (!isset($matches[1])) {
5180
+			return '';
5181
+	}
4897 5182
 
4898 5183
 	$num = $matches[1][0] === 'x' ? hexdec(substr($matches[1], 1)) : (int) $matches[1];
4899 5184
 
4900 5185
 	// <0x20 are control characters, > 0x10FFFF is past the end of the utf8 character set
4901 5186
 	// 0xD800 >= $num <= 0xDFFF are surrogate markers (not valid for utf8 text), 0x202D-E are left to right overrides
4902
-	if ($num < 0x20 || $num > 0x10FFFF || ($num >= 0xD800 && $num <= 0xDFFF) || $num === 0x202D || $num === 0x202E)
4903
-		return '';
5187
+	if ($num < 0x20 || $num > 0x10FFFF || ($num >= 0xD800 && $num <= 0xDFFF) || $num === 0x202D || $num === 0x202E) {
5188
+			return '';
5189
+	}
4904 5190
 	// <0x80 (or less than 128) are standard ascii characters a-z A-Z 0-9 and punctuation
4905
-	elseif ($num < 0x80)
4906
-		return chr($num);
5191
+	elseif ($num < 0x80) {
5192
+			return chr($num);
5193
+	}
4907 5194
 	// <0x800 (2048)
4908
-	elseif ($num < 0x800)
4909
-		return chr(($num >> 6) + 192) . chr(($num & 63) + 128);
5195
+	elseif ($num < 0x800) {
5196
+			return chr(($num >> 6) + 192) . chr(($num & 63) + 128);
5197
+	}
4910 5198
 	// < 0x10000 (65536)
4911
-	elseif ($num < 0x10000)
4912
-		return chr(($num >> 12) + 224) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128);
5199
+	elseif ($num < 0x10000) {
5200
+			return chr(($num >> 12) + 224) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128);
5201
+	}
4913 5202
 	// <= 0x10FFFF (1114111)
4914
-	else
4915
-		return chr(($num >> 18) + 240) . chr((($num >> 12) & 63) + 128) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128);
4916
-}
5203
+	else {
5204
+			return chr(($num >> 18) + 240) . chr((($num >> 12) & 63) + 128) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128);
5205
+	}
5206
+	}
4917 5207
 
4918 5208
 /**
4919 5209
  * Strips out invalid html entities, replaces others with html style &#123; codes
@@ -4926,17 +5216,19 @@  discard block
 block discarded – undo
4926 5216
  */
4927 5217
 function entity_fix__callback($matches)
4928 5218
 {
4929
-	if (!isset($matches[2]))
4930
-		return '';
5219
+	if (!isset($matches[2])) {
5220
+			return '';
5221
+	}
4931 5222
 
4932 5223
 	$num = $matches[2][0] === 'x' ? hexdec(substr($matches[2], 1)) : (int) $matches[2];
4933 5224
 
4934 5225
 	// we don't allow control characters, characters out of range, byte markers, etc
4935
-	if ($num < 0x20 || $num > 0x10FFFF || ($num >= 0xD800 && $num <= 0xDFFF) || $num == 0x202D || $num == 0x202E)
4936
-		return '';
4937
-	else
4938
-		return '&#' . $num . ';';
4939
-}
5226
+	if ($num < 0x20 || $num > 0x10FFFF || ($num >= 0xD800 && $num <= 0xDFFF) || $num == 0x202D || $num == 0x202E) {
5227
+			return '';
5228
+	} else {
5229
+			return '&#' . $num . ';';
5230
+	}
5231
+	}
4940 5232
 
4941 5233
 /**
4942 5234
  * Return a Gravatar URL based on
@@ -4960,18 +5252,23 @@  discard block
 block discarded – undo
4960 5252
 		$ratings = array('G', 'PG', 'R', 'X');
4961 5253
 		$defaults = array('mm', 'identicon', 'monsterid', 'wavatar', 'retro', 'blank');
4962 5254
 		$url_params = array();
4963
-		if (!empty($modSettings['gravatarMaxRating']) && in_array($modSettings['gravatarMaxRating'], $ratings))
4964
-			$url_params[] = 'rating=' . $modSettings['gravatarMaxRating'];
4965
-		if (!empty($modSettings['gravatarDefault']) && in_array($modSettings['gravatarDefault'], $defaults))
4966
-			$url_params[] = 'default=' . $modSettings['gravatarDefault'];
4967
-		if (!empty($modSettings['avatar_max_width_external']))
4968
-			$size_string = (int) $modSettings['avatar_max_width_external'];
4969
-		if (!empty($modSettings['avatar_max_height_external']) && !empty($size_string))
4970
-			if ((int) $modSettings['avatar_max_height_external'] < $size_string)
5255
+		if (!empty($modSettings['gravatarMaxRating']) && in_array($modSettings['gravatarMaxRating'], $ratings)) {
5256
+					$url_params[] = 'rating=' . $modSettings['gravatarMaxRating'];
5257
+		}
5258
+		if (!empty($modSettings['gravatarDefault']) && in_array($modSettings['gravatarDefault'], $defaults)) {
5259
+					$url_params[] = 'default=' . $modSettings['gravatarDefault'];
5260
+		}
5261
+		if (!empty($modSettings['avatar_max_width_external'])) {
5262
+					$size_string = (int) $modSettings['avatar_max_width_external'];
5263
+		}
5264
+		if (!empty($modSettings['avatar_max_height_external']) && !empty($size_string)) {
5265
+					if ((int) $modSettings['avatar_max_height_external'] < $size_string)
4971 5266
 				$size_string = $modSettings['avatar_max_height_external'];
5267
+		}
4972 5268
 
4973
-		if (!empty($size_string))
4974
-			$url_params[] = 's=' . $size_string;
5269
+		if (!empty($size_string)) {
5270
+					$url_params[] = 's=' . $size_string;
5271
+		}
4975 5272
 	}
4976 5273
 	$http_method = !empty($modSettings['force_ssl']) && $modSettings['force_ssl'] == 2 ? 'https://secure' : 'http://www';
4977 5274
 
@@ -5082,8 +5379,9 @@  discard block
 block discarded – undo
5082 5379
  */
5083 5380
 function inet_ptod($ip_address)
5084 5381
 {
5085
-	if (!isValidIP($ip_address))
5086
-		return $ip_address;
5382
+	if (!isValidIP($ip_address)) {
5383
+			return $ip_address;
5384
+	}
5087 5385
 
5088 5386
 	$bin = inet_pton($ip_address);
5089 5387
 	return $bin;
@@ -5095,13 +5393,15 @@  discard block
 block discarded – undo
5095 5393
  */
5096 5394
 function inet_dtop($bin)
5097 5395
 {
5098
-	if(empty($bin))
5099
-		return '';
5396
+	if(empty($bin)) {
5397
+			return '';
5398
+	}
5100 5399
 
5101 5400
 	global $db_type;
5102 5401
 
5103
-	if ($db_type == 'postgresql')
5104
-		return $bin;
5402
+	if ($db_type == 'postgresql') {
5403
+			return $bin;
5404
+	}
5105 5405
 
5106 5406
 	$ip_address = inet_ntop($bin);
5107 5407
 
@@ -5126,26 +5426,32 @@  discard block
 block discarded – undo
5126 5426
  */
5127 5427
 function _safe_serialize($value)
5128 5428
 {
5129
-	if(is_null($value))
5130
-		return 'N;';
5429
+	if(is_null($value)) {
5430
+			return 'N;';
5431
+	}
5131 5432
 
5132
-	if(is_bool($value))
5133
-		return 'b:'. (int) $value .';';
5433
+	if(is_bool($value)) {
5434
+			return 'b:'. (int) $value .';';
5435
+	}
5134 5436
 
5135
-	if(is_int($value))
5136
-		return 'i:'. $value .';';
5437
+	if(is_int($value)) {
5438
+			return 'i:'. $value .';';
5439
+	}
5137 5440
 
5138
-	if(is_float($value))
5139
-		return 'd:'. str_replace(',', '.', $value) .';';
5441
+	if(is_float($value)) {
5442
+			return 'd:'. str_replace(',', '.', $value) .';';
5443
+	}
5140 5444
 
5141
-	if(is_string($value))
5142
-		return 's:'. strlen($value) .':"'. $value .'";';
5445
+	if(is_string($value)) {
5446
+			return 's:'. strlen($value) .':"'. $value .'";';
5447
+	}
5143 5448
 
5144 5449
 	if(is_array($value))
5145 5450
 	{
5146 5451
 		$out = '';
5147
-		foreach($value as $k => $v)
5148
-			$out .= _safe_serialize($k) . _safe_serialize($v);
5452
+		foreach($value as $k => $v) {
5453
+					$out .= _safe_serialize($k) . _safe_serialize($v);
5454
+		}
5149 5455
 
5150 5456
 		return 'a:'. count($value) .':{'. $out .'}';
5151 5457
 	}
@@ -5171,8 +5477,9 @@  discard block
 block discarded – undo
5171 5477
 
5172 5478
 	$out = _safe_serialize($value);
5173 5479
 
5174
-	if (isset($mbIntEnc))
5175
-		mb_internal_encoding($mbIntEnc);
5480
+	if (isset($mbIntEnc)) {
5481
+			mb_internal_encoding($mbIntEnc);
5482
+	}
5176 5483
 
5177 5484
 	return $out;
5178 5485
 }
@@ -5189,8 +5496,9 @@  discard block
 block discarded – undo
5189 5496
 function _safe_unserialize($str)
5190 5497
 {
5191 5498
 	// Input  is not a string.
5192
-	if(empty($str) || !is_string($str))
5193
-		return false;
5499
+	if(empty($str) || !is_string($str)) {
5500
+			return false;
5501
+	}
5194 5502
 
5195 5503
 	$stack = array();
5196 5504
 	$expected = array();
@@ -5206,43 +5514,38 @@  discard block
 block discarded – undo
5206 5514
 	while($state != 1)
5207 5515
 	{
5208 5516
 		$type = isset($str[0]) ? $str[0] : '';
5209
-		if($type == '}')
5210
-			$str = substr($str, 1);
5211
-
5212
-		else if($type == 'N' && $str[1] == ';')
5517
+		if($type == '}') {
5518
+					$str = substr($str, 1);
5519
+		} else if($type == 'N' && $str[1] == ';')
5213 5520
 		{
5214 5521
 			$value = null;
5215 5522
 			$str = substr($str, 2);
5216
-		}
5217
-		else if($type == 'b' && preg_match('/^b:([01]);/', $str, $matches))
5523
+		} else if($type == 'b' && preg_match('/^b:([01]);/', $str, $matches))
5218 5524
 		{
5219 5525
 			$value = $matches[1] == '1' ? true : false;
5220 5526
 			$str = substr($str, 4);
5221
-		}
5222
-		else if($type == 'i' && preg_match('/^i:(-?[0-9]+);(.*)/s', $str, $matches))
5527
+		} else if($type == 'i' && preg_match('/^i:(-?[0-9]+);(.*)/s', $str, $matches))
5223 5528
 		{
5224 5529
 			$value = (int)$matches[1];
5225 5530
 			$str = $matches[2];
5226
-		}
5227
-		else if($type == 'd' && preg_match('/^d:(-?[0-9]+\.?[0-9]*(E[+-][0-9]+)?);(.*)/s', $str, $matches))
5531
+		} else if($type == 'd' && preg_match('/^d:(-?[0-9]+\.?[0-9]*(E[+-][0-9]+)?);(.*)/s', $str, $matches))
5228 5532
 		{
5229 5533
 			$value = (float)$matches[1];
5230 5534
 			$str = $matches[3];
5231
-		}
5232
-		else if($type == 's' && preg_match('/^s:([0-9]+):"(.*)/s', $str, $matches) && substr($matches[2], (int)$matches[1], 2) == '";')
5535
+		} else if($type == 's' && preg_match('/^s:([0-9]+):"(.*)/s', $str, $matches) && substr($matches[2], (int)$matches[1], 2) == '";')
5233 5536
 		{
5234 5537
 			$value = substr($matches[2], 0, (int)$matches[1]);
5235 5538
 			$str = substr($matches[2], (int)$matches[1] + 2);
5236
-		}
5237
-		else if($type == 'a' && preg_match('/^a:([0-9]+):{(.*)/s', $str, $matches))
5539
+		} else if($type == 'a' && preg_match('/^a:([0-9]+):{(.*)/s', $str, $matches))
5238 5540
 		{
5239 5541
 			$expectedLength = (int)$matches[1];
5240 5542
 			$str = $matches[2];
5241 5543
 		}
5242 5544
 
5243 5545
 		// Object or unknown/malformed type.
5244
-		else
5245
-			return false;
5546
+		else {
5547
+					return false;
5548
+		}
5246 5549
 
5247 5550
 		switch($state)
5248 5551
 		{
@@ -5270,8 +5573,9 @@  discard block
 block discarded – undo
5270 5573
 				if($type == '}')
5271 5574
 				{
5272 5575
 					// Array size is less than expected.
5273
-					if(count($list) < end($expected))
5274
-						return false;
5576
+					if(count($list) < end($expected)) {
5577
+											return false;
5578
+					}
5275 5579
 
5276 5580
 					unset($list);
5277 5581
 					$list = &$stack[count($stack)-1];
@@ -5280,8 +5584,9 @@  discard block
 block discarded – undo
5280 5584
 					// Go to terminal state if we're at the end of the root array.
5281 5585
 					array_pop($expected);
5282 5586
 
5283
-					if(count($expected) == 0)
5284
-						$state = 1;
5587
+					if(count($expected) == 0) {
5588
+											$state = 1;
5589
+					}
5285 5590
 
5286 5591
 					break;
5287 5592
 				}
@@ -5289,8 +5594,9 @@  discard block
 block discarded – undo
5289 5594
 				if($type == 'i' || $type == 's')
5290 5595
 				{
5291 5596
 					// Array size exceeds expected length.
5292
-					if(count($list) >= end($expected))
5293
-						return false;
5597
+					if(count($list) >= end($expected)) {
5598
+											return false;
5599
+					}
5294 5600
 
5295 5601
 					$key = $value;
5296 5602
 					$state = 3;
@@ -5324,8 +5630,9 @@  discard block
 block discarded – undo
5324 5630
 	}
5325 5631
 
5326 5632
 	// Trailing data in input.
5327
-	if(!empty($str))
5328
-		return false;
5633
+	if(!empty($str)) {
5634
+			return false;
5635
+	}
5329 5636
 
5330 5637
 	return $data;
5331 5638
 }
@@ -5348,8 +5655,9 @@  discard block
 block discarded – undo
5348 5655
 
5349 5656
 	$out = _safe_unserialize($str);
5350 5657
 
5351
-	if (isset($mbIntEnc))
5352
-		mb_internal_encoding($mbIntEnc);
5658
+	if (isset($mbIntEnc)) {
5659
+			mb_internal_encoding($mbIntEnc);
5660
+	}
5353 5661
 
5354 5662
 	return $out;
5355 5663
 }
@@ -5364,12 +5672,14 @@  discard block
 block discarded – undo
5364 5672
 function smf_chmod($file, $value = 0)
5365 5673
 {
5366 5674
 	// No file? no checks!
5367
-	if (empty($file))
5368
-		return false;
5675
+	if (empty($file)) {
5676
+			return false;
5677
+	}
5369 5678
 
5370 5679
 	// Already writable?
5371
-	if (is_writable($file))
5372
-		return true;
5680
+	if (is_writable($file)) {
5681
+			return true;
5682
+	}
5373 5683
 
5374 5684
 	// Do we have a file or a dir?
5375 5685
 	$isDir = is_dir($file);
@@ -5385,10 +5695,9 @@  discard block
 block discarded – undo
5385 5695
 		{
5386 5696
 			$isWritable = true;
5387 5697
 			break;
5698
+		} else {
5699
+					@chmod($file, $val);
5388 5700
 		}
5389
-
5390
-		else
5391
-			@chmod($file, $val);
5392 5701
 	}
5393 5702
 
5394 5703
 	return $isWritable;
@@ -5407,8 +5716,9 @@  discard block
 block discarded – undo
5407 5716
 	global $txt;
5408 5717
 
5409 5718
 	// Come on...
5410
-	if (empty($json) || !is_string($json))
5411
-		return array();
5719
+	if (empty($json) || !is_string($json)) {
5720
+			return array();
5721
+	}
5412 5722
 
5413 5723
 	$returnArray = array();
5414 5724
 	$jsonError = false;
@@ -5449,11 +5759,11 @@  discard block
 block discarded – undo
5449 5759
 		$jsonDebug = $jsonDebug[0];
5450 5760
 		loadLanguage('Errors');
5451 5761
 
5452
-		if (!empty($jsonDebug))
5453
-			log_error($txt['json_'. $jsonError], 'critical', $jsonDebug['file'], $jsonDebug['line']);
5454
-
5455
-		else
5456
-			log_error($txt['json_'. $jsonError], 'critical');
5762
+		if (!empty($jsonDebug)) {
5763
+					log_error($txt['json_'. $jsonError], 'critical', $jsonDebug['file'], $jsonDebug['line']);
5764
+		} else {
5765
+					log_error($txt['json_'. $jsonError], 'critical');
5766
+		}
5457 5767
 
5458 5768
 		// Everyone expects an array.
5459 5769
 		return array();
@@ -5483,8 +5793,9 @@  discard block
 block discarded – undo
5483 5793
 	global $db_show_debug, $modSettings;
5484 5794
 
5485 5795
 	// Defensive programming anyone?
5486
-	if (empty($data))
5487
-		return false;
5796
+	if (empty($data)) {
5797
+			return false;
5798
+	}
5488 5799
 
5489 5800
 	// Don't need extra stuff...
5490 5801
 	$db_show_debug = false;
@@ -5492,11 +5803,11 @@  discard block
 block discarded – undo
5492 5803
 	// Kill anything else.
5493 5804
 	ob_end_clean();
5494 5805
 
5495
-	if (!empty($modSettings['CompressedOutput']))
5496
-		@ob_start('ob_gzhandler');
5497
-
5498
-	else
5499
-		ob_start();
5806
+	if (!empty($modSettings['CompressedOutput'])) {
5807
+			@ob_start('ob_gzhandler');
5808
+	} else {
5809
+			ob_start();
5810
+	}
5500 5811
 
5501 5812
 	// Set the header.
5502 5813
 	header($type);
@@ -5528,8 +5839,9 @@  discard block
 block discarded – undo
5528 5839
 	static $done = false;
5529 5840
 
5530 5841
 	// If we don't need to do anything, don't
5531
-	if (!$update && $done)
5532
-		return;
5842
+	if (!$update && $done) {
5843
+			return;
5844
+	}
5533 5845
 
5534 5846
 	// Should we get a new copy of the official list of TLDs?
5535 5847
 	if ($update)
@@ -5550,10 +5862,11 @@  discard block
 block discarded – undo
5550 5862
 		// Clean $tlds and convert it to an array
5551 5863
 		$tlds = array_filter(explode("\n", strtolower($tlds)), function($line) {
5552 5864
 			$line = trim($line);
5553
-			if (empty($line) || strpos($line, '#') !== false || strpos($line, ' ') !== false)
5554
-				return false;
5555
-			else
5556
-				return true;
5865
+			if (empty($line) || strpos($line, '#') !== false || strpos($line, ' ') !== false) {
5866
+							return false;
5867
+			} else {
5868
+							return true;
5869
+			}
5557 5870
 		});
5558 5871
 
5559 5872
 		// Convert Punycode to Unicode
@@ -5607,8 +5920,9 @@  discard block
 block discarded – undo
5607 5920
 						$idx += $digit * $w;
5608 5921
 						$t = ($k <= $bias) ? $tmin : (($k >= $bias + $tmax) ? $tmax : ($k - $bias));
5609 5922
 
5610
-						if ($digit < $t)
5611
-							break;
5923
+						if ($digit < $t) {
5924
+													break;
5925
+						}
5612 5926
 
5613 5927
 						$w = (int) ($w * ($base - $t));
5614 5928
 					}
@@ -5617,8 +5931,9 @@  discard block
 block discarded – undo
5617 5931
 					$delta = intval($is_first ? ($delta / $damp) : ($delta / 2));
5618 5932
 					$delta += intval($delta / ($deco_len + 1));
5619 5933
 
5620
-					for ($k = 0; $delta > (($base - $tmin) * $tmax) / 2; $k += $base)
5621
-						$delta = intval($delta / ($base - $tmin));
5934
+					for ($k = 0; $delta > (($base - $tmin) * $tmax) / 2; $k += $base) {
5935
+											$delta = intval($delta / ($base - $tmin));
5936
+					}
5622 5937
 
5623 5938
 					$bias = intval($k + ($base - $tmin + 1) * $delta / ($delta + $skew));
5624 5939
 					$is_first = false;
@@ -5627,8 +5942,9 @@  discard block
 block discarded – undo
5627 5942
 
5628 5943
 					if ($deco_len > 0)
5629 5944
 					{
5630
-						for ($i = $deco_len; $i > $idx; $i--)
5631
-							$decoded[$i] = $decoded[($i - 1)];
5945
+						for ($i = $deco_len; $i > $idx; $i--) {
5946
+													$decoded[$i] = $decoded[($i - 1)];
5947
+						}
5632 5948
 					}
5633 5949
 					$decoded[$idx++] = $char;
5634 5950
 				}
@@ -5636,24 +5952,29 @@  discard block
 block discarded – undo
5636 5952
 				foreach ($decoded as $k => $v)
5637 5953
 				{
5638 5954
 					// 7bit are transferred literally
5639
-					if ($v < 128)
5640
-						$output .= chr($v);
5955
+					if ($v < 128) {
5956
+											$output .= chr($v);
5957
+					}
5641 5958
 
5642 5959
 					// 2 bytes
5643
-					elseif ($v < (1 << 11))
5644
-						$output .= chr(192+($v >> 6)) . chr(128+($v & 63));
5960
+					elseif ($v < (1 << 11)) {
5961
+											$output .= chr(192+($v >> 6)) . chr(128+($v & 63));
5962
+					}
5645 5963
 
5646 5964
 					// 3 bytes
5647
-					elseif ($v < (1 << 16))
5648
-						$output .= chr(224+($v >> 12)) . chr(128+(($v >> 6) & 63)) . chr(128+($v & 63));
5965
+					elseif ($v < (1 << 16)) {
5966
+											$output .= chr(224+($v >> 12)) . chr(128+(($v >> 6) & 63)) . chr(128+($v & 63));
5967
+					}
5649 5968
 
5650 5969
 					// 4 bytes
5651
-					elseif ($v < (1 << 21))
5652
-						$output .= chr(240+($v >> 18)) . chr(128+(($v >> 12) & 63)) . chr(128+(($v >> 6) & 63)) . chr(128+($v & 63));
5970
+					elseif ($v < (1 << 21)) {
5971
+											$output .= chr(240+($v >> 18)) . chr(128+(($v >> 12) & 63)) . chr(128+(($v >> 6) & 63)) . chr(128+($v & 63));
5972
+					}
5653 5973
 
5654 5974
 					//  'Conversion from UCS-4 to UTF-8 failed: malformed input at byte '.$k
5655
-					else
5656
-						$output .= $safe_char;
5975
+					else {
5976
+											$output .= $safe_char;
5977
+					}
5657 5978
 				}
5658 5979
 
5659 5980
 				$output_parts[] = $output;
@@ -5748,8 +6069,7 @@  discard block
 block discarded – undo
5748 6069
 
5749 6070
 		$strlen = 'mb_strlen';
5750 6071
 		$substr = 'mb_substr';
5751
-	}
5752
-	else
6072
+	} else
5753 6073
 	{
5754 6074
 		$strlen = $smcFunc['strlen'];
5755 6075
 		$substr = $smcFunc['substr'];
@@ -5763,20 +6083,21 @@  discard block
 block discarded – undo
5763 6083
 
5764 6084
 		$first = $substr($string, 0, 1);
5765 6085
 
5766
-		if (empty($index[$first]))
5767
-			$index[$first] = array();
6086
+		if (empty($index[$first])) {
6087
+					$index[$first] = array();
6088
+		}
5768 6089
 
5769 6090
 		if ($strlen($string) > 1)
5770 6091
 		{
5771 6092
 			// Sanity check on recursion
5772
-			if ($depth > 99)
5773
-				$index[$first][$substr($string, 1)] = '';
5774
-
5775
-			else
5776
-				$index[$first] = $add_string_to_index($substr($string, 1), $index[$first]);
6093
+			if ($depth > 99) {
6094
+							$index[$first][$substr($string, 1)] = '';
6095
+			} else {
6096
+							$index[$first] = $add_string_to_index($substr($string, 1), $index[$first]);
6097
+			}
6098
+		} else {
6099
+					$index[$first][''] = '';
5777 6100
 		}
5778
-		else
5779
-			$index[$first][''] = '';
5780 6101
 
5781 6102
 		$depth--;
5782 6103
 		return $index;
@@ -5799,9 +6120,9 @@  discard block
 block discarded – undo
5799 6120
 			$key_regex = preg_quote($key, $delim);
5800 6121
 			$new_key = $key;
5801 6122
 
5802
-			if (empty($value))
5803
-				$sub_regex = '';
5804
-			else
6123
+			if (empty($value)) {
6124
+							$sub_regex = '';
6125
+			} else
5805 6126
 			{
5806 6127
 				$sub_regex = $index_to_regex($value, $delim);
5807 6128
 
@@ -5809,22 +6130,22 @@  discard block
 block discarded – undo
5809 6130
 				{
5810 6131
 					$new_key_array = explode('(?'.'>', $sub_regex);
5811 6132
 					$new_key .= $new_key_array[0];
6133
+				} else {
6134
+									$sub_regex = '(?'.'>' . $sub_regex . ')';
5812 6135
 				}
5813
-				else
5814
-					$sub_regex = '(?'.'>' . $sub_regex . ')';
5815 6136
 			}
5816 6137
 
5817
-			if ($depth > 1)
5818
-				$regex[$new_key] = $key_regex . $sub_regex;
5819
-			else
6138
+			if ($depth > 1) {
6139
+							$regex[$new_key] = $key_regex . $sub_regex;
6140
+			} else
5820 6141
 			{
5821 6142
 				if (($length += strlen($key_regex) + 1) < $max_length || empty($regex))
5822 6143
 				{
5823 6144
 					$regex[$new_key] = $key_regex . $sub_regex;
5824 6145
 					unset($index[$key]);
6146
+				} else {
6147
+									break;
5825 6148
 				}
5826
-				else
5827
-					break;
5828 6149
 			}
5829 6150
 		}
5830 6151
 
@@ -5833,10 +6154,11 @@  discard block
 block discarded – undo
5833 6154
 			$l1 = $strlen($k1);
5834 6155
 			$l2 = $strlen($k2);
5835 6156
 
5836
-			if ($l1 == $l2)
5837
-				return strcmp($k1, $k2) > 0 ? 1 : -1;
5838
-			else
5839
-				return $l1 > $l2 ? -1 : 1;
6157
+			if ($l1 == $l2) {
6158
+							return strcmp($k1, $k2) > 0 ? 1 : -1;
6159
+			} else {
6160
+							return $l1 > $l2 ? -1 : 1;
6161
+			}
5840 6162
 		});
5841 6163
 
5842 6164
 		$depth--;
@@ -5847,15 +6169,18 @@  discard block
 block discarded – undo
5847 6169
 	$index = array();
5848 6170
 	$regexes = array();
5849 6171
 
5850
-	foreach ($strings as $string)
5851
-		$index = $add_string_to_index($string, $index);
6172
+	foreach ($strings as $string) {
6173
+			$index = $add_string_to_index($string, $index);
6174
+	}
5852 6175
 
5853
-	while (!empty($index))
5854
-		$regexes[] = '(?'.'>' . $index_to_regex($index, $delim) . ')';
6176
+	while (!empty($index)) {
6177
+			$regexes[] = '(?'.'>' . $index_to_regex($index, $delim) . ')';
6178
+	}
5855 6179
 
5856 6180
 	// Restore PHP's internal character encoding to whatever it was originally
5857
-	if (!empty($current_encoding))
5858
-		mb_internal_encoding($current_encoding);
6181
+	if (!empty($current_encoding)) {
6182
+			mb_internal_encoding($current_encoding);
6183
+	}
5859 6184
 
5860 6185
 	return $regexes;
5861 6186
 }
Please login to merge, or discard this patch.
Sources/Subs-Post.php 1 patch
Braces   +528 added lines, -393 removed lines patch added patch discarded remove patch
@@ -15,8 +15,9 @@  discard block
 block discarded – undo
15 15
  * @version 2.1 Beta 3
16 16
  */
17 17
 
18
-if (!defined('SMF'))
18
+if (!defined('SMF')) {
19 19
 	die('No direct access...');
20
+}
20 21
 
21 22
 /**
22 23
  * Takes a message and parses it, returning nothing.
@@ -46,17 +47,19 @@  discard block
 block discarded – undo
46 47
 	$message = preg_replace('~\.{100,}~', '...', $message);
47 48
 
48 49
 	// Trim off trailing quotes - these often happen by accident.
49
-	while (substr($message, -7) == '[quote]')
50
-		$message = substr($message, 0, -7);
51
-	while (substr($message, 0, 8) == '[/quote]')
52
-		$message = substr($message, 8);
50
+	while (substr($message, -7) == '[quote]') {
51
+			$message = substr($message, 0, -7);
52
+	}
53
+	while (substr($message, 0, 8) == '[/quote]') {
54
+			$message = substr($message, 8);
55
+	}
53 56
 
54 57
 	// Find all code blocks, work out whether we'd be parsing them, then ensure they are all closed.
55 58
 	$in_tag = false;
56 59
 	$had_tag = false;
57 60
 	$codeopen = 0;
58
-	if (preg_match_all('~(\[(/)*code(?:=[^\]]+)?\])~is', $message, $matches))
59
-		foreach ($matches[0] as $index => $dummy)
61
+	if (preg_match_all('~(\[(/)*code(?:=[^\]]+)?\])~is', $message, $matches)) {
62
+			foreach ($matches[0] as $index => $dummy)
60 63
 		{
61 64
 			// Closing?
62 65
 			if (!empty($matches[2][$index]))
@@ -64,6 +67,7 @@  discard block
 block discarded – undo
64 67
 				// If it's closing and we're not in a tag we need to open it...
65 68
 				if (!$in_tag)
66 69
 					$codeopen = true;
70
+	}
67 71
 				// Either way we ain't in one any more.
68 72
 				$in_tag = false;
69 73
 			}
@@ -72,17 +76,20 @@  discard block
 block discarded – undo
72 76
 			{
73 77
 				$had_tag = true;
74 78
 				// If we're in a tag don't do nought!
75
-				if (!$in_tag)
76
-					$in_tag = true;
79
+				if (!$in_tag) {
80
+									$in_tag = true;
81
+				}
77 82
 			}
78 83
 		}
79 84
 
80 85
 	// If we have an open tag, close it.
81
-	if ($in_tag)
82
-		$message .= '[/code]';
86
+	if ($in_tag) {
87
+			$message .= '[/code]';
88
+	}
83 89
 	// Open any ones that need to be open, only if we've never had a tag.
84
-	if ($codeopen && !$had_tag)
85
-		$message = '[code]' . $message;
90
+	if ($codeopen && !$had_tag) {
91
+			$message = '[code]' . $message;
92
+	}
86 93
 
87 94
 	// Now that we've fixed all the code tags, let's fix the img and url tags...
88 95
 	$parts = preg_split('~(\[/code\]|\[code(?:=[^\]]+)?\])~i', $message, -1, PREG_SPLIT_DELIM_CAPTURE);
@@ -108,23 +115,26 @@  discard block
 block discarded – undo
108 115
 	fixTags($message);
109 116
 
110 117
 	// Replace /me.+?\n with [me=name]dsf[/me]\n.
111
-	if (strpos($user_info['name'], '[') !== false || strpos($user_info['name'], ']') !== false || strpos($user_info['name'], '\'') !== false || strpos($user_info['name'], '"') !== false)
112
-		$message = preg_replace('~(\A|\n)/me(?: |&nbsp;)([^\n]*)(?:\z)?~i', '$1[me=&quot;' . $user_info['name'] . '&quot;]$2[/me]', $message);
113
-	else
114
-		$message = preg_replace('~(\A|\n)/me(?: |&nbsp;)([^\n]*)(?:\z)?~i', '$1[me=' . $user_info['name'] . ']$2[/me]', $message);
118
+	if (strpos($user_info['name'], '[') !== false || strpos($user_info['name'], ']') !== false || strpos($user_info['name'], '\'') !== false || strpos($user_info['name'], '"') !== false) {
119
+			$message = preg_replace('~(\A|\n)/me(?: |&nbsp;)([^\n]*)(?:\z)?~i', '$1[me=&quot;' . $user_info['name'] . '&quot;]$2[/me]', $message);
120
+	} else {
121
+			$message = preg_replace('~(\A|\n)/me(?: |&nbsp;)([^\n]*)(?:\z)?~i', '$1[me=' . $user_info['name'] . ']$2[/me]', $message);
122
+	}
115 123
 
116 124
 	if (!$previewing && strpos($message, '[html]') !== false)
117 125
 	{
118
-		if (allowedTo('admin_forum'))
119
-			$message = preg_replace_callback('~\[html\](.+?)\[/html\]~is', function ($m) {
126
+		if (allowedTo('admin_forum')) {
127
+					$message = preg_replace_callback('~\[html\](.+?)\[/html\]~is', function ($m) {
120 128
 				return '[html]' . strtr(un_htmlspecialchars($m), array("\n" => '&#13;', '  ' => ' &#32;', '[' => '&#91;', ']' => '&#93;')) . '[/html]';
129
+		}
121 130
 			}, $message);
122 131
 
123 132
 		// We should edit them out, or else if an admin edits the message they will get shown...
124 133
 		else
125 134
 		{
126
-			while (strpos($message, '[html]') !== false)
127
-				$message = preg_replace('~\[[/]?html\]~i', '', $message);
135
+			while (strpos($message, '[html]') !== false) {
136
+							$message = preg_replace('~\[[/]?html\]~i', '', $message);
137
+			}
128 138
 		}
129 139
 	}
130 140
 
@@ -146,10 +156,12 @@  discard block
 block discarded – undo
146 156
 
147 157
 	$list_open = substr_count($message, '[list]') + substr_count($message, '[list ');
148 158
 	$list_close = substr_count($message, '[/list]');
149
-	if ($list_close - $list_open > 0)
150
-		$message = str_repeat('[list]', $list_close - $list_open) . $message;
151
-	if ($list_open - $list_close > 0)
152
-		$message = $message . str_repeat('[/list]', $list_open - $list_close);
159
+	if ($list_close - $list_open > 0) {
160
+			$message = str_repeat('[list]', $list_close - $list_open) . $message;
161
+	}
162
+	if ($list_open - $list_close > 0) {
163
+			$message = $message . str_repeat('[/list]', $list_open - $list_close);
164
+	}
153 165
 
154 166
 	$mistake_fixes = array(
155 167
 		// Find [table]s not followed by [tr].
@@ -198,8 +210,9 @@  discard block
 block discarded – undo
198 210
 	);
199 211
 
200 212
 	// Fix up some use of tables without [tr]s, etc. (it has to be done more than once to catch it all.)
201
-	for ($j = 0; $j < 3; $j++)
202
-		$message = preg_replace(array_keys($mistake_fixes), $mistake_fixes, $message);
213
+	for ($j = 0; $j < 3; $j++) {
214
+			$message = preg_replace(array_keys($mistake_fixes), $mistake_fixes, $message);
215
+	}
203 216
 
204 217
 	// Remove empty bbc from the sections outside the code tags
205 218
 	$allowedEmpty = array(
@@ -209,24 +222,28 @@  discard block
 block discarded – undo
209 222
 
210 223
 	require_once($sourcedir . '/Subs.php');
211 224
 
212
-	foreach (($codes = parse_bbc(false)) as $code)
213
-		if (!in_array($code['tag'], $allowedEmpty))
225
+	foreach (($codes = parse_bbc(false)) as $code) {
226
+			if (!in_array($code['tag'], $allowedEmpty))
214 227
 			$alltags[] = $code['tag'];
228
+	}
215 229
 
216 230
 	$alltags_regex = '\b' . implode("\b|\b", array_unique($alltags)) . '\b';
217 231
 
218
-	while (preg_match('~\[(' . $alltags_regex . ')[^\]]*\]\s*\[/\1\]\s?~i', $message))
219
-		$message = preg_replace('~\[(' . $alltags_regex . ')[^\]]*\]\s*\[/\1\]\s?~i', '', $message);
232
+	while (preg_match('~\[(' . $alltags_regex . ')[^\]]*\]\s*\[/\1\]\s?~i', $message)) {
233
+			$message = preg_replace('~\[(' . $alltags_regex . ')[^\]]*\]\s*\[/\1\]\s?~i', '', $message);
234
+	}
220 235
 
221 236
 	// Restore code blocks
222
-	if (!empty($code_tags))
223
-		$message = str_replace(array_keys($code_tags), array_values($code_tags), $message);
237
+	if (!empty($code_tags)) {
238
+			$message = str_replace(array_keys($code_tags), array_values($code_tags), $message);
239
+	}
224 240
 
225 241
 	// Restore white space entities
226
-	if (!$previewing)
227
-		$message = strtr($message, array('  ' => '&nbsp; ', "\n" => '<br>', $context['utf8'] ? "\xC2\xA0" : "\xA0" => '&nbsp;'));
228
-	else
229
-		$message = strtr($message, array('  ' => '&nbsp; ', $context['utf8'] ? "\xC2\xA0" : "\xA0" => '&nbsp;'));
242
+	if (!$previewing) {
243
+			$message = strtr($message, array('  ' => '&nbsp; ', "\n" => '<br>', $context['utf8'] ? "\xC2\xA0" : "\xA0" => '&nbsp;'));
244
+	} else {
245
+			$message = strtr($message, array('  ' => '&nbsp; ', $context['utf8'] ? "\xC2\xA0" : "\xA0" => '&nbsp;'));
246
+	}
230 247
 
231 248
 	// Now let's quickly clean up things that will slow our parser (which are common in posted code.)
232 249
 	$message = strtr($message, array('[]' => '&#91;]', '[&#039;' => '&#91;&#039;'));
@@ -269,8 +286,9 @@  discard block
 block discarded – undo
269 286
 		return "[time]" . timeformat("$m[1]", false) . "[/time]";
270 287
 	}, $message);
271 288
 
272
-	if (!empty($code_tags))
273
-		$message = str_replace(array_keys($code_tags), array_values($code_tags), $message);
289
+	if (!empty($code_tags)) {
290
+			$message = str_replace(array_keys($code_tags), array_values($code_tags), $message);
291
+	}
274 292
 
275 293
 	// Change breaks back to \n's and &nsbp; back to spaces.
276 294
 	return preg_replace('~<br( /)?' . '>~', "\n", str_replace('&nbsp;', ' ', $message));
@@ -351,8 +369,9 @@  discard block
 block discarded – undo
351 369
 	);
352 370
 
353 371
 	// Fix each type of tag.
354
-	foreach ($fixArray as $param)
355
-		fixTag($message, $param['tag'], $param['protocols'], $param['embeddedUrl'], $param['hasEqualSign'], !empty($param['hasExtra']));
372
+	foreach ($fixArray as $param) {
373
+			fixTag($message, $param['tag'], $param['protocols'], $param['embeddedUrl'], $param['hasEqualSign'], !empty($param['hasExtra']));
374
+	}
356 375
 
357 376
 	// Now fix possible security problems with images loading links automatically...
358 377
 	$message = preg_replace_callback('~(\[img.*?\])(.+?)\[/img\]~is', function ($m)
@@ -388,16 +407,19 @@  discard block
 block discarded – undo
388 407
 					$desired_height = $height;
389 408
 				}
390 409
 				// Scale it to the width...
391
-				elseif (empty($desired_width) && !empty($height))
392
-					$desired_width = (int) (($desired_height * $width) / $height);
410
+				elseif (empty($desired_width) && !empty($height)) {
411
+									$desired_width = (int) (($desired_height * $width) / $height);
412
+				}
393 413
 				// Scale if to the height.
394
-				elseif (!empty($width))
395
-					$desired_height = (int) (($desired_width * $height) / $width);
414
+				elseif (!empty($width)) {
415
+									$desired_height = (int) (($desired_width * $height) / $width);
416
+				}
396 417
 			}
397 418
 
398 419
 			// If the width and height are fine, just continue along...
399
-			if ($desired_width <= $modSettings['max_image_width'] && $desired_height <= $modSettings['max_image_height'])
400
-				continue;
420
+			if ($desired_width <= $modSettings['max_image_width'] && $desired_height <= $modSettings['max_image_height']) {
421
+							continue;
422
+			}
401 423
 
402 424
 			// Too bad, it's too wide.  Make it as wide as the maximum.
403 425
 			if ($desired_width > $modSettings['max_image_width'] && !empty($modSettings['max_image_width']))
@@ -417,8 +439,9 @@  discard block
 block discarded – undo
417 439
 		}
418 440
 
419 441
 		// If any img tags were actually changed...
420
-		if (!empty($replaces))
421
-			$message = strtr($message, $replaces);
442
+		if (!empty($replaces)) {
443
+					$message = strtr($message, $replaces);
444
+		}
422 445
 	}
423 446
 }
424 447
 
@@ -437,10 +460,11 @@  discard block
 block discarded – undo
437 460
 {
438 461
 	global $boardurl, $scripturl;
439 462
 
440
-	if (preg_match('~^([^:]+://[^/]+)~', $boardurl, $match) != 0)
441
-		$domain_url = $match[1];
442
-	else
443
-		$domain_url = $boardurl . '/';
463
+	if (preg_match('~^([^:]+://[^/]+)~', $boardurl, $match) != 0) {
464
+			$domain_url = $match[1];
465
+	} else {
466
+			$domain_url = $boardurl . '/';
467
+	}
444 468
 
445 469
 	$replaces = array();
446 470
 
@@ -448,11 +472,11 @@  discard block
 block discarded – undo
448 472
 	{
449 473
 		$quoted = preg_match('~\[(' . $myTag . ')=&quot;~', $message);
450 474
 		preg_match_all('~\[(' . $myTag . ')=' . ($quoted ? '&quot;(.*?)&quot;' : '([^\]]*?)') . '\](?:(.+?)\[/(' . $myTag . ')\])?~is', $message, $matches);
475
+	} elseif ($hasEqualSign) {
476
+			preg_match_all('~\[(' . $myTag . ')=([^\]]*?)\](?:(.+?)\[/(' . $myTag . ')\])?~is', $message, $matches);
477
+	} else {
478
+			preg_match_all('~\[(' . $myTag . ($hasExtra ? '(?:[^\]]*?)' : '') . ')\](.+?)\[/(' . $myTag . ')\]~is', $message, $matches);
451 479
 	}
452
-	elseif ($hasEqualSign)
453
-		preg_match_all('~\[(' . $myTag . ')=([^\]]*?)\](?:(.+?)\[/(' . $myTag . ')\])?~is', $message, $matches);
454
-	else
455
-		preg_match_all('~\[(' . $myTag . ($hasExtra ? '(?:[^\]]*?)' : '') . ')\](.+?)\[/(' . $myTag . ')\]~is', $message, $matches);
456 480
 
457 481
 	foreach ($matches[0] as $k => $dummy)
458 482
 	{
@@ -465,49 +489,53 @@  discard block
 block discarded – undo
465 489
 		foreach ($protocols as $protocol)
466 490
 		{
467 491
 			$found = strncasecmp($replace, $protocol . '://', strlen($protocol) + 3) === 0;
468
-			if ($found)
469
-				break;
492
+			if ($found) {
493
+							break;
494
+			}
470 495
 		}
471 496
 
472 497
 		if (!$found && $protocols[0] == 'http')
473 498
 		{
474
-			if (substr($replace, 0, 1) == '/' && substr($replace, 0, 2) != '//')
475
-				$replace = $domain_url . $replace;
476
-			elseif (substr($replace, 0, 1) == '?')
477
-				$replace = $scripturl . $replace;
478
-			elseif (substr($replace, 0, 1) == '#' && $embeddedUrl)
499
+			if (substr($replace, 0, 1) == '/' && substr($replace, 0, 2) != '//') {
500
+							$replace = $domain_url . $replace;
501
+			} elseif (substr($replace, 0, 1) == '?') {
502
+							$replace = $scripturl . $replace;
503
+			} elseif (substr($replace, 0, 1) == '#' && $embeddedUrl)
479 504
 			{
480 505
 				$replace = '#' . preg_replace('~[^A-Za-z0-9_\-#]~', '', substr($replace, 1));
481 506
 				$this_tag = 'iurl';
482 507
 				$this_close = 'iurl';
508
+			} elseif (substr($replace, 0, 2) != '//') {
509
+							$replace = $protocols[0] . '://' . $replace;
483 510
 			}
484
-			elseif (substr($replace, 0, 2) != '//')
485
-				$replace = $protocols[0] . '://' . $replace;
486
-		}
487
-		elseif (!$found && $protocols[0] == 'ftp')
488
-			$replace = $protocols[0] . '://' . preg_replace('~^(?!ftps?)[^:]+://~', '', $replace);
489
-		elseif (!$found)
490
-			$replace = $protocols[0] . '://' . $replace;
491
-
492
-		if ($hasEqualSign && $embeddedUrl)
493
-			$replaces[$matches[0][$k]] = '[' . $this_tag . '=&quot;' . $replace . '&quot;]' . (empty($matches[4][$k]) ? '' : $matches[3][$k] . '[/' . $this_close . ']');
494
-		elseif ($hasEqualSign)
495
-			$replaces['[' . $matches[1][$k] . '=' . $matches[2][$k] . ']'] = '[' . $this_tag . '=' . $replace . ']';
496
-		elseif ($embeddedUrl)
497
-			$replaces['[' . $matches[1][$k] . ']' . $matches[2][$k] . '[/' . $matches[3][$k] . ']'] = '[' . $this_tag . '=' . $replace . ']' . $matches[2][$k] . '[/' . $this_close . ']';
498
-		else
499
-			$replaces['[' . $matches[1][$k] . ']' . $matches[2][$k] . '[/' . $matches[3][$k] . ']'] = '[' . $this_tag . ']' . $replace . '[/' . $this_close . ']';
511
+		} elseif (!$found && $protocols[0] == 'ftp') {
512
+					$replace = $protocols[0] . '://' . preg_replace('~^(?!ftps?)[^:]+://~', '', $replace);
513
+		} elseif (!$found) {
514
+					$replace = $protocols[0] . '://' . $replace;
515
+		}
516
+
517
+		if ($hasEqualSign && $embeddedUrl) {
518
+					$replaces[$matches[0][$k]] = '[' . $this_tag . '=&quot;' . $replace . '&quot;]' . (empty($matches[4][$k]) ? '' : $matches[3][$k] . '[/' . $this_close . ']');
519
+		} elseif ($hasEqualSign) {
520
+					$replaces['[' . $matches[1][$k] . '=' . $matches[2][$k] . ']'] = '[' . $this_tag . '=' . $replace . ']';
521
+		} elseif ($embeddedUrl) {
522
+					$replaces['[' . $matches[1][$k] . ']' . $matches[2][$k] . '[/' . $matches[3][$k] . ']'] = '[' . $this_tag . '=' . $replace . ']' . $matches[2][$k] . '[/' . $this_close . ']';
523
+		} else {
524
+					$replaces['[' . $matches[1][$k] . ']' . $matches[2][$k] . '[/' . $matches[3][$k] . ']'] = '[' . $this_tag . ']' . $replace . '[/' . $this_close . ']';
525
+		}
500 526
 	}
501 527
 
502 528
 	foreach ($replaces as $k => $v)
503 529
 	{
504
-		if ($k == $v)
505
-			unset($replaces[$k]);
530
+		if ($k == $v) {
531
+					unset($replaces[$k]);
532
+		}
506 533
 	}
507 534
 
508
-	if (!empty($replaces))
509
-		$message = strtr($message, $replaces);
510
-}
535
+	if (!empty($replaces)) {
536
+			$message = strtr($message, $replaces);
537
+	}
538
+	}
511 539
 
512 540
 /**
513 541
  * This function sends an email to the specified recipient(s).
@@ -551,8 +579,9 @@  discard block
 block discarded – undo
551 579
 	}
552 580
 
553 581
 	// Nothing left? Nothing else to do
554
-	if (empty($to_array))
555
-		return true;
582
+	if (empty($to_array)) {
583
+			return true;
584
+	}
556 585
 
557 586
 	// Once upon a time, Hotmail could not interpret non-ASCII mails.
558 587
 	// In honour of those days, it's still called the 'hotmail fix'.
@@ -569,15 +598,17 @@  discard block
 block discarded – undo
569 598
 		}
570 599
 
571 600
 		// Call this function recursively for the hotmail addresses.
572
-		if (!empty($hotmail_to))
573
-			$mail_result = sendmail($hotmail_to, $subject, $message, $from, $message_id, $send_html, $priority, true, $is_private);
601
+		if (!empty($hotmail_to)) {
602
+					$mail_result = sendmail($hotmail_to, $subject, $message, $from, $message_id, $send_html, $priority, true, $is_private);
603
+		}
574 604
 
575 605
 		// The remaining addresses no longer need the fix.
576 606
 		$hotmail_fix = false;
577 607
 
578 608
 		// No other addresses left? Return instantly.
579
-		if (empty($to_array))
580
-			return $mail_result;
609
+		if (empty($to_array)) {
610
+					return $mail_result;
611
+		}
581 612
 	}
582 613
 
583 614
 	// Get rid of entities.
@@ -602,13 +633,15 @@  discard block
 block discarded – undo
602 633
 	$headers .= 'Return-Path: ' . (empty($modSettings['mail_from']) ? $webmaster_email : $modSettings['mail_from']) . $line_break;
603 634
 	$headers .= 'Date: ' . gmdate('D, d M Y H:i:s') . ' -0000' . $line_break;
604 635
 
605
-	if ($message_id !== null && empty($modSettings['mail_no_message_id']))
606
-		$headers .= 'Message-ID: <' . md5($scripturl . microtime()) . '-' . $message_id . strstr(empty($modSettings['mail_from']) ? $webmaster_email : $modSettings['mail_from'], '@') . '>' . $line_break;
636
+	if ($message_id !== null && empty($modSettings['mail_no_message_id'])) {
637
+			$headers .= 'Message-ID: <' . md5($scripturl . microtime()) . '-' . $message_id . strstr(empty($modSettings['mail_from']) ? $webmaster_email : $modSettings['mail_from'], '@') . '>' . $line_break;
638
+	}
607 639
 	$headers .= 'X-Mailer: SMF' . $line_break;
608 640
 
609 641
 	// Pass this to the integration before we start modifying the output -- it'll make it easier later.
610
-	if (in_array(false, call_integration_hook('integrate_outgoing_email', array(&$subject, &$message, &$headers, &$to_array)), true))
611
-		return false;
642
+	if (in_array(false, call_integration_hook('integrate_outgoing_email', array(&$subject, &$message, &$headers, &$to_array)), true)) {
643
+			return false;
644
+	}
612 645
 
613 646
 	// Save the original message...
614 647
 	$orig_message = $message;
@@ -657,17 +690,19 @@  discard block
 block discarded – undo
657 690
 	}
658 691
 
659 692
 	// Are we using the mail queue, if so this is where we butt in...
660
-	if ($priority != 0)
661
-		return AddMailQueue(false, $to_array, $subject, $message, $headers, $send_html, $priority, $is_private);
693
+	if ($priority != 0) {
694
+			return AddMailQueue(false, $to_array, $subject, $message, $headers, $send_html, $priority, $is_private);
695
+	}
662 696
 
663 697
 	// If it's a priority mail, send it now - note though that this should NOT be used for sending many at once.
664 698
 	elseif (!empty($modSettings['mail_limit']))
665 699
 	{
666 700
 		list ($last_mail_time, $mails_this_minute) = @explode('|', $modSettings['mail_recent']);
667
-		if (empty($mails_this_minute) || time() > $last_mail_time + 60)
668
-			$new_queue_stat = time() . '|' . 1;
669
-		else
670
-			$new_queue_stat = $last_mail_time . '|' . ((int) $mails_this_minute + 1);
701
+		if (empty($mails_this_minute) || time() > $last_mail_time + 60) {
702
+					$new_queue_stat = time() . '|' . 1;
703
+		} else {
704
+					$new_queue_stat = $last_mail_time . '|' . ((int) $mails_this_minute + 1);
705
+		}
671 706
 
672 707
 		updateSettings(array('mail_recent' => $new_queue_stat));
673 708
 	}
@@ -692,12 +727,13 @@  discard block
 block discarded – undo
692 727
 
693 728
 			// Wait, wait, I'm still sending here!
694 729
 			@set_time_limit(300);
695
-			if (function_exists('apache_reset_timeout'))
696
-				@apache_reset_timeout();
730
+			if (function_exists('apache_reset_timeout')) {
731
+							@apache_reset_timeout();
732
+			}
697 733
 		}
734
+	} else {
735
+			$mail_result = $mail_result && smtp_mail($to_array, $subject, $message, $headers);
698 736
 	}
699
-	else
700
-		$mail_result = $mail_result && smtp_mail($to_array, $subject, $message, $headers);
701 737
 
702 738
 	// Everything go smoothly?
703 739
 	return $mail_result;
@@ -723,8 +759,9 @@  discard block
 block discarded – undo
723 759
 	static $cur_insert = array();
724 760
 	static $cur_insert_len = 0;
725 761
 
726
-	if ($cur_insert_len == 0)
727
-		$cur_insert = array();
762
+	if ($cur_insert_len == 0) {
763
+			$cur_insert = array();
764
+	}
728 765
 
729 766
 	// If we're flushing, make the final inserts - also if we're near the MySQL length limit!
730 767
 	if (($flush || $cur_insert_len > 800000) && !empty($cur_insert))
@@ -799,8 +836,9 @@  discard block
 block discarded – undo
799 836
 	}
800 837
 
801 838
 	// If they are using SSI there is a good chance obExit will never be called.  So lets be nice and flush it for them.
802
-	if (SMF === 'SSI' || SMF === 'BACKGROUND')
803
-		return AddMailQueue(true);
839
+	if (SMF === 'SSI' || SMF === 'BACKGROUND') {
840
+			return AddMailQueue(true);
841
+	}
804 842
 
805 843
 	return true;
806 844
 }
@@ -833,23 +871,26 @@  discard block
 block discarded – undo
833 871
 		'sent' => array()
834 872
 	);
835 873
 
836
-	if ($from === null)
837
-		$from = array(
874
+	if ($from === null) {
875
+			$from = array(
838 876
 			'id' => $user_info['id'],
839 877
 			'name' => $user_info['name'],
840 878
 			'username' => $user_info['username']
841 879
 		);
880
+	}
842 881
 
843 882
 	// This is the one that will go in their inbox.
844 883
 	$htmlmessage = $smcFunc['htmlspecialchars']($message, ENT_QUOTES);
845 884
 	preparsecode($htmlmessage);
846 885
 	$htmlsubject = strtr($smcFunc['htmlspecialchars']($subject), array("\r" => '', "\n" => '', "\t" => ''));
847
-	if ($smcFunc['strlen']($htmlsubject) > 100)
848
-		$htmlsubject = $smcFunc['substr']($htmlsubject, 0, 100);
886
+	if ($smcFunc['strlen']($htmlsubject) > 100) {
887
+			$htmlsubject = $smcFunc['substr']($htmlsubject, 0, 100);
888
+	}
849 889
 
850 890
 	// Make sure is an array
851
-	if (!is_array($recipients))
852
-		$recipients = array($recipients);
891
+	if (!is_array($recipients)) {
892
+			$recipients = array($recipients);
893
+	}
853 894
 
854 895
 	// Integrated PMs
855 896
 	call_integration_hook('integrate_personal_message', array(&$recipients, &$from, &$subject, &$message));
@@ -877,21 +918,23 @@  discard block
 block discarded – undo
877 918
 				'usernames' => array_keys($usernames),
878 919
 			)
879 920
 		);
880
-		while ($row = $smcFunc['db_fetch_assoc']($request))
881
-			if (isset($usernames[$smcFunc['strtolower']($row['member_name'])]))
921
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
922
+					if (isset($usernames[$smcFunc['strtolower']($row['member_name'])]))
882 923
 				$usernames[$smcFunc['strtolower']($row['member_name'])] = $row['id_member'];
924
+		}
883 925
 		$smcFunc['db_free_result']($request);
884 926
 
885 927
 		// Replace the usernames with IDs. Drop usernames that couldn't be found.
886
-		foreach ($recipients as $rec_type => $rec)
887
-			foreach ($rec as $id => $member)
928
+		foreach ($recipients as $rec_type => $rec) {
929
+					foreach ($rec as $id => $member)
888 930
 			{
889 931
 				if (is_numeric($recipients[$rec_type][$id]))
890 932
 					continue;
933
+		}
891 934
 
892
-				if (!empty($usernames[$member]))
893
-					$recipients[$rec_type][$id] = $usernames[$member];
894
-				else
935
+				if (!empty($usernames[$member])) {
936
+									$recipients[$rec_type][$id] = $usernames[$member];
937
+				} else
895 938
 				{
896 939
 					$log['failed'][$id] = sprintf($txt['pm_error_user_not_found'], $recipients[$rec_type][$id]);
897 940
 					unset($recipients[$rec_type][$id]);
@@ -930,8 +973,9 @@  discard block
 block discarded – undo
930 973
 		foreach ($criteria as $criterium)
931 974
 		{
932 975
 			$match = false;
933
-			if (($criterium['t'] == 'mid' && $criterium['v'] == $from['id']) || ($criterium['t'] == 'gid' && in_array($criterium['v'], $user_info['groups'])) || ($criterium['t'] == 'sub' && strpos($subject, $criterium['v']) !== false) || ($criterium['t'] == 'msg' && strpos($message, $criterium['v']) !== false))
934
-				$delete = true;
976
+			if (($criterium['t'] == 'mid' && $criterium['v'] == $from['id']) || ($criterium['t'] == 'gid' && in_array($criterium['v'], $user_info['groups'])) || ($criterium['t'] == 'sub' && strpos($subject, $criterium['v']) !== false) || ($criterium['t'] == 'msg' && strpos($message, $criterium['v']) !== false)) {
977
+							$delete = true;
978
+			}
935 979
 			// If we're adding and one criteria don't match then we stop!
936 980
 			elseif (!$row['is_or'])
937 981
 			{
@@ -939,8 +983,9 @@  discard block
 block discarded – undo
939 983
 				break;
940 984
 			}
941 985
 		}
942
-		if ($delete)
943
-			$deletes[$row['id_member']] = 1;
986
+		if ($delete) {
987
+					$deletes[$row['id_member']] = 1;
988
+		}
944 989
 	}
945 990
 	$smcFunc['db_free_result']($request);
946 991
 
@@ -955,8 +1000,9 @@  discard block
 block discarded – undo
955 1000
 			array(
956 1001
 			)
957 1002
 		);
958
-		while ($row = $smcFunc['db_fetch_assoc']($request))
959
-			$message_limit_cache[$row['id_group']] = $row['max_messages'];
1003
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
1004
+					$message_limit_cache[$row['id_group']] = $row['max_messages'];
1005
+		}
960 1006
 		$smcFunc['db_free_result']($request);
961 1007
 	}
962 1008
 
@@ -964,8 +1010,9 @@  discard block
 block discarded – undo
964 1010
 	require_once($sourcedir . '/Subs-Members.php');
965 1011
 	$pmReadGroups = groupsAllowedTo('pm_read');
966 1012
 
967
-	if (empty($modSettings['permission_enable_deny']))
968
-		$pmReadGroups['denied'] = array();
1013
+	if (empty($modSettings['permission_enable_deny'])) {
1014
+			$pmReadGroups['denied'] = array();
1015
+	}
969 1016
 
970 1017
 	// Load their alert preferences
971 1018
 	require_once($sourcedir . '/Subs-Notify.php');
@@ -997,8 +1044,9 @@  discard block
 block discarded – undo
997 1044
 	while ($row = $smcFunc['db_fetch_assoc']($request))
998 1045
 	{
999 1046
 		// Don't do anything for members to be deleted!
1000
-		if (isset($deletes[$row['id_member']]))
1001
-			continue;
1047
+		if (isset($deletes[$row['id_member']])) {
1048
+					continue;
1049
+		}
1002 1050
 
1003 1051
 		// Load the preferences for this member (if any)
1004 1052
 		$prefs = !empty($notifyPrefs[$row['id_member']]) ? $notifyPrefs[$row['id_member']] : array();
@@ -1019,8 +1067,9 @@  discard block
 block discarded – undo
1019 1067
 		{
1020 1068
 			foreach ($groups as $id)
1021 1069
 			{
1022
-				if (isset($message_limit_cache[$id]) && $message_limit != 0 && $message_limit < $message_limit_cache[$id])
1023
-					$message_limit = $message_limit_cache[$id];
1070
+				if (isset($message_limit_cache[$id]) && $message_limit != 0 && $message_limit < $message_limit_cache[$id]) {
1071
+									$message_limit = $message_limit_cache[$id];
1072
+				}
1024 1073
 			}
1025 1074
 
1026 1075
 			if ($message_limit > 0 && $message_limit <= $row['instant_messages'])
@@ -1068,8 +1117,9 @@  discard block
 block discarded – undo
1068 1117
 	$smcFunc['db_free_result']($request);
1069 1118
 
1070 1119
 	// Only 'send' the message if there are any recipients left.
1071
-	if (empty($all_to))
1072
-		return $log;
1120
+	if (empty($all_to)) {
1121
+			return $log;
1122
+	}
1073 1123
 
1074 1124
 	// Insert the message itself and then grab the last insert id.
1075 1125
 	$smcFunc['db_insert']('',
@@ -1090,8 +1140,8 @@  discard block
 block discarded – undo
1090 1140
 	if (!empty($id_pm))
1091 1141
 	{
1092 1142
 		// If this is new we need to set it part of it's own conversation.
1093
-		if (empty($pm_head))
1094
-			$smcFunc['db_query']('', '
1143
+		if (empty($pm_head)) {
1144
+					$smcFunc['db_query']('', '
1095 1145
 				UPDATE {db_prefix}personal_messages
1096 1146
 				SET id_pm_head = {int:id_pm_head}
1097 1147
 				WHERE id_pm = {int:id_pm_head}',
@@ -1099,6 +1149,7 @@  discard block
 block discarded – undo
1099 1149
 					'id_pm_head' => $id_pm,
1100 1150
 				)
1101 1151
 			);
1152
+		}
1102 1153
 
1103 1154
 		// Some people think manually deleting personal_messages is fun... it's not. We protect against it though :)
1104 1155
 		$smcFunc['db_query']('', '
@@ -1114,8 +1165,9 @@  discard block
 block discarded – undo
1114 1165
 		foreach ($all_to as $to)
1115 1166
 		{
1116 1167
 			$insertRows[] = array($id_pm, $to, in_array($to, $recipients['bcc']) ? 1 : 0, isset($deletes[$to]) ? 1 : 0, 1);
1117
-			if (!in_array($to, $recipients['bcc']))
1118
-				$to_list[] = $to;
1168
+			if (!in_array($to, $recipients['bcc'])) {
1169
+							$to_list[] = $to;
1170
+			}
1119 1171
 		}
1120 1172
 
1121 1173
 		$smcFunc['db_insert']('insert',
@@ -1133,9 +1185,9 @@  discard block
 block discarded – undo
1133 1185
 	{
1134 1186
 		censorText($message);
1135 1187
 		$message = trim(un_htmlspecialchars(strip_tags(strtr(parse_bbc($smcFunc['htmlspecialchars']($message), false), array('<br>' => "\n", '</div>' => "\n", '</li>' => "\n", '&#91;' => '[', '&#93;' => ']')))));
1188
+	} else {
1189
+			$message = '';
1136 1190
 	}
1137
-	else
1138
-		$message = '';
1139 1191
 
1140 1192
 	$to_names = array();
1141 1193
 	if (count($to_list) > 1)
@@ -1148,8 +1200,9 @@  discard block
 block discarded – undo
1148 1200
 				'to_members' => $to_list,
1149 1201
 			)
1150 1202
 		);
1151
-		while ($row = $smcFunc['db_fetch_assoc']($request))
1152
-			$to_names[] = un_htmlspecialchars($row['real_name']);
1203
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
1204
+					$to_names[] = un_htmlspecialchars($row['real_name']);
1205
+		}
1153 1206
 		$smcFunc['db_free_result']($request);
1154 1207
 	}
1155 1208
 	$replacements = array(
@@ -1177,11 +1230,13 @@  discard block
 block discarded – undo
1177 1230
 	loadLanguage('index+PersonalMessage');
1178 1231
 
1179 1232
 	// Add one to their unread and read message counts.
1180
-	foreach ($all_to as $k => $id)
1181
-		if (isset($deletes[$id]))
1233
+	foreach ($all_to as $k => $id) {
1234
+			if (isset($deletes[$id]))
1182 1235
 			unset($all_to[$k]);
1183
-	if (!empty($all_to))
1184
-		updateMemberData($all_to, array('instant_messages' => '+', 'unread_messages' => '+', 'new_pm' => 1));
1236
+	}
1237
+	if (!empty($all_to)) {
1238
+			updateMemberData($all_to, array('instant_messages' => '+', 'unread_messages' => '+', 'new_pm' => 1));
1239
+	}
1185 1240
 
1186 1241
 	return $log;
1187 1242
 }
@@ -1211,15 +1266,17 @@  discard block
 block discarded – undo
1211 1266
 		// Let's, for now, assume there are only &#021;'ish characters.
1212 1267
 		$simple = true;
1213 1268
 
1214
-		foreach ($matches[1] as $entity)
1215
-			if ($entity > 128)
1269
+		foreach ($matches[1] as $entity) {
1270
+					if ($entity > 128)
1216 1271
 				$simple = false;
1272
+		}
1217 1273
 		unset($matches);
1218 1274
 
1219
-		if ($simple)
1220
-			$string = preg_replace_callback('~&#(\d{3,8});~', function ($m)
1275
+		if ($simple) {
1276
+					$string = preg_replace_callback('~&#(\d{3,8});~', function ($m)
1221 1277
 			{
1222 1278
 				return chr("$m[1]");
1279
+		}
1223 1280
 			}, $string);
1224 1281
 		else
1225 1282
 		{
@@ -1227,8 +1284,9 @@  discard block
 block discarded – undo
1227 1284
 			if (!$context['utf8'] && function_exists('iconv'))
1228 1285
 			{
1229 1286
 				$newstring = @iconv($context['character_set'], 'UTF-8', $string);
1230
-				if ($newstring)
1231
-					$string = $newstring;
1287
+				if ($newstring) {
1288
+									$string = $newstring;
1289
+				}
1232 1290
 			}
1233 1291
 
1234 1292
 			$string = preg_replace_callback('~&#(\d{3,8});~', 'fixchar__callback', $string);
@@ -1244,23 +1302,25 @@  discard block
 block discarded – undo
1244 1302
 		if (!$context['utf8'] && function_exists('iconv'))
1245 1303
 		{
1246 1304
 			$newstring = @iconv($context['character_set'], 'UTF-8', $string);
1247
-			if ($newstring)
1248
-				$string = $newstring;
1305
+			if ($newstring) {
1306
+							$string = $newstring;
1307
+			}
1249 1308
 		}
1250 1309
 
1251 1310
 		$entityConvert = function ($m)
1252 1311
 		{
1253 1312
 			$c = $m[1];
1254
-			if (strlen($c) === 1 && ord($c[0]) <= 0x7F)
1255
-				return $c;
1256
-			elseif (strlen($c) === 2 && ord($c[0]) >= 0xC0 && ord($c[0]) <= 0xDF)
1257
-				return "&#" . (((ord($c[0]) ^ 0xC0) << 6) + (ord($c[1]) ^ 0x80)) . ";";
1258
-			elseif (strlen($c) === 3 && ord($c[0]) >= 0xE0 && ord($c[0]) <= 0xEF)
1259
-				return "&#" . (((ord($c[0]) ^ 0xE0) << 12) + ((ord($c[1]) ^ 0x80) << 6) + (ord($c[2]) ^ 0x80)) . ";";
1260
-			elseif (strlen($c) === 4 && ord($c[0]) >= 0xF0 && ord($c[0]) <= 0xF7)
1261
-				return "&#" . (((ord($c[0]) ^ 0xF0) << 18) + ((ord($c[1]) ^ 0x80) << 12) + ((ord($c[2]) ^ 0x80) << 6) + (ord($c[3]) ^ 0x80)) . ";";
1262
-			else
1263
-				return "";
1313
+			if (strlen($c) === 1 && ord($c[0]) <= 0x7F) {
1314
+							return $c;
1315
+			} elseif (strlen($c) === 2 && ord($c[0]) >= 0xC0 && ord($c[0]) <= 0xDF) {
1316
+							return "&#" . (((ord($c[0]) ^ 0xC0) << 6) + (ord($c[1]) ^ 0x80)) . ";";
1317
+			} elseif (strlen($c) === 3 && ord($c[0]) >= 0xE0 && ord($c[0]) <= 0xEF) {
1318
+							return "&#" . (((ord($c[0]) ^ 0xE0) << 12) + ((ord($c[1]) ^ 0x80) << 6) + (ord($c[2]) ^ 0x80)) . ";";
1319
+			} elseif (strlen($c) === 4 && ord($c[0]) >= 0xF0 && ord($c[0]) <= 0xF7) {
1320
+							return "&#" . (((ord($c[0]) ^ 0xF0) << 18) + ((ord($c[1]) ^ 0x80) << 12) + ((ord($c[2]) ^ 0x80) << 6) + (ord($c[3]) ^ 0x80)) . ";";
1321
+			} else {
1322
+							return "";
1323
+			}
1264 1324
 		};
1265 1325
 
1266 1326
 		// Convert all 'special' characters to HTML entities.
@@ -1274,19 +1334,20 @@  discard block
 block discarded – undo
1274 1334
 		$string = base64_encode($string);
1275 1335
 
1276 1336
 		// Show the characterset and the transfer-encoding for header strings.
1277
-		if ($with_charset)
1278
-			$string = '=?' . $charset . '?B?' . $string . '?=';
1337
+		if ($with_charset) {
1338
+					$string = '=?' . $charset . '?B?' . $string . '?=';
1339
+		}
1279 1340
 
1280 1341
 		// Break it up in lines (mail body).
1281
-		else
1282
-			$string = chunk_split($string, 76, $line_break);
1342
+		else {
1343
+					$string = chunk_split($string, 76, $line_break);
1344
+		}
1283 1345
 
1284 1346
 		return array($charset, $string, 'base64');
1347
+	} else {
1348
+			return array($charset, $string, '7bit');
1349
+	}
1285 1350
 	}
1286
-
1287
-	else
1288
-		return array($charset, $string, '7bit');
1289
-}
1290 1351
 
1291 1352
 /**
1292 1353
  * Sends mail, like mail() but over SMTP.
@@ -1310,8 +1371,9 @@  discard block
 block discarded – undo
1310 1371
 	if ($modSettings['mail_type'] == 3 && $modSettings['smtp_username'] != '' && $modSettings['smtp_password'] != '')
1311 1372
 	{
1312 1373
 		$socket = fsockopen($modSettings['smtp_host'], 110, $errno, $errstr, 2);
1313
-		if (!$socket && (substr($modSettings['smtp_host'], 0, 5) == 'smtp.' || substr($modSettings['smtp_host'], 0, 11) == 'ssl://smtp.'))
1314
-			$socket = fsockopen(strtr($modSettings['smtp_host'], array('smtp.' => 'pop.')), 110, $errno, $errstr, 2);
1374
+		if (!$socket && (substr($modSettings['smtp_host'], 0, 5) == 'smtp.' || substr($modSettings['smtp_host'], 0, 11) == 'ssl://smtp.')) {
1375
+					$socket = fsockopen(strtr($modSettings['smtp_host'], array('smtp.' => 'pop.')), 110, $errno, $errstr, 2);
1376
+		}
1315 1377
 
1316 1378
 		if ($socket)
1317 1379
 		{
@@ -1332,8 +1394,9 @@  discard block
 block discarded – undo
1332 1394
 		// Maybe we can still save this?  The port might be wrong.
1333 1395
 		if (substr($modSettings['smtp_host'], 0, 4) == 'ssl:' && (empty($modSettings['smtp_port']) || $modSettings['smtp_port'] == 25))
1334 1396
 		{
1335
-			if ($socket = fsockopen($modSettings['smtp_host'], 465, $errno, $errstr, 3))
1336
-				log_error($txt['smtp_port_ssl']);
1397
+			if ($socket = fsockopen($modSettings['smtp_host'], 465, $errno, $errstr, 3)) {
1398
+							log_error($txt['smtp_port_ssl']);
1399
+			}
1337 1400
 		}
1338 1401
 
1339 1402
 		// Unable to connect!  Don't show any error message, but just log one and try to continue anyway.
@@ -1345,20 +1408,23 @@  discard block
 block discarded – undo
1345 1408
 	}
1346 1409
 
1347 1410
 	// Wait for a response of 220, without "-" continuer.
1348
-	if (!server_parse(null, $socket, '220'))
1349
-		return false;
1411
+	if (!server_parse(null, $socket, '220')) {
1412
+			return false;
1413
+	}
1350 1414
 
1351 1415
 	// Try and determine the servers name, fall back to the mail servers if not found
1352 1416
 	$helo = false;
1353
-	if (function_exists('gethostname') && gethostname() !== false)
1354
-		$helo = gethostname();
1355
-	elseif (function_exists('php_uname'))
1356
-		$helo = php_uname('n');
1357
-	elseif (array_key_exists('SERVER_NAME',$_SERVER) && !empty($_SERVER['SERVER_NAME']))
1358
-		$helo = $_SERVER['SERVER_NAME'];
1417
+	if (function_exists('gethostname') && gethostname() !== false) {
1418
+			$helo = gethostname();
1419
+	} elseif (function_exists('php_uname')) {
1420
+			$helo = php_uname('n');
1421
+	} elseif (array_key_exists('SERVER_NAME',$_SERVER) && !empty($_SERVER['SERVER_NAME'])) {
1422
+			$helo = $_SERVER['SERVER_NAME'];
1423
+	}
1359 1424
 
1360
-	if (empty($helo))
1361
-		$helo = $modSettings['smtp_host'];
1425
+	if (empty($helo)) {
1426
+			$helo = $modSettings['smtp_host'];
1427
+	}
1362 1428
 
1363 1429
 	// SMTP = 1, SMTP - STARTTLS = 2
1364 1430
 	if (in_array($modSettings['mail_type'], array(1,2)) && $modSettings['smtp_username'] != '' && $modSettings['smtp_password'] != '')
@@ -1370,33 +1436,39 @@  discard block
 block discarded – undo
1370 1436
 			if ($modSettings['mail_type'] == 2 && preg_match("~250( |-)STARTTLS~mi", $response))
1371 1437
 			{
1372 1438
 				// Send STARTTLS to enable encryption
1373
-				if (!server_parse('STARTTLS', $socket, '220'))
1374
-					return false;
1439
+				if (!server_parse('STARTTLS', $socket, '220')) {
1440
+									return false;
1441
+				}
1375 1442
 				// Enable the encryption
1376
-				if (!@stream_socket_enable_crypto($socket, true, STREAM_CRYPTO_METHOD_TLS_CLIENT))
1377
-					return false;
1443
+				if (!@stream_socket_enable_crypto($socket, true, STREAM_CRYPTO_METHOD_TLS_CLIENT)) {
1444
+									return false;
1445
+				}
1378 1446
 				// Send the EHLO command again
1379
-				if (!server_parse('EHLO ' . $helo, $socket, null) == '250')
1380
-					return false;
1447
+				if (!server_parse('EHLO ' . $helo, $socket, null) == '250') {
1448
+									return false;
1449
+				}
1381 1450
 			}
1382 1451
 
1383
-			if (!server_parse('AUTH LOGIN', $socket, '334'))
1384
-				return false;
1452
+			if (!server_parse('AUTH LOGIN', $socket, '334')) {
1453
+							return false;
1454
+			}
1385 1455
 			// Send the username and password, encoded.
1386
-			if (!server_parse(base64_encode($modSettings['smtp_username']), $socket, '334'))
1387
-				return false;
1456
+			if (!server_parse(base64_encode($modSettings['smtp_username']), $socket, '334')) {
1457
+							return false;
1458
+			}
1388 1459
 			// The password is already encoded ;)
1389
-			if (!server_parse($modSettings['smtp_password'], $socket, '235'))
1390
-				return false;
1460
+			if (!server_parse($modSettings['smtp_password'], $socket, '235')) {
1461
+							return false;
1462
+			}
1463
+		} elseif (!server_parse('HELO ' . $helo, $socket, '250')) {
1464
+					return false;
1391 1465
 		}
1392
-		elseif (!server_parse('HELO ' . $helo, $socket, '250'))
1393
-			return false;
1394
-	}
1395
-	else
1466
+	} else
1396 1467
 	{
1397 1468
 		// Just say "helo".
1398
-		if (!server_parse('HELO ' . $helo, $socket, '250'))
1399
-			return false;
1469
+		if (!server_parse('HELO ' . $helo, $socket, '250')) {
1470
+					return false;
1471
+		}
1400 1472
 	}
1401 1473
 
1402 1474
 	// Fix the message for any lines beginning with a period! (the first is ignored, you see.)
@@ -1409,31 +1481,38 @@  discard block
 block discarded – undo
1409 1481
 		// Reset the connection to send another email.
1410 1482
 		if ($i != 0)
1411 1483
 		{
1412
-			if (!server_parse('RSET', $socket, '250'))
1413
-				return false;
1484
+			if (!server_parse('RSET', $socket, '250')) {
1485
+							return false;
1486
+			}
1414 1487
 		}
1415 1488
 
1416 1489
 		// From, to, and then start the data...
1417
-		if (!server_parse('MAIL FROM: <' . (empty($modSettings['mail_from']) ? $webmaster_email : $modSettings['mail_from']) . '>', $socket, '250'))
1418
-			return false;
1419
-		if (!server_parse('RCPT TO: <' . $mail_to . '>', $socket, '250'))
1420
-			return false;
1421
-		if (!server_parse('DATA', $socket, '354'))
1422
-			return false;
1490
+		if (!server_parse('MAIL FROM: <' . (empty($modSettings['mail_from']) ? $webmaster_email : $modSettings['mail_from']) . '>', $socket, '250')) {
1491
+					return false;
1492
+		}
1493
+		if (!server_parse('RCPT TO: <' . $mail_to . '>', $socket, '250')) {
1494
+					return false;
1495
+		}
1496
+		if (!server_parse('DATA', $socket, '354')) {
1497
+					return false;
1498
+		}
1423 1499
 		fputs($socket, 'Subject: ' . $subject . "\r\n");
1424
-		if (strlen($mail_to) > 0)
1425
-			fputs($socket, 'To: <' . $mail_to . '>' . "\r\n");
1500
+		if (strlen($mail_to) > 0) {
1501
+					fputs($socket, 'To: <' . $mail_to . '>' . "\r\n");
1502
+		}
1426 1503
 		fputs($socket, $headers . "\r\n\r\n");
1427 1504
 		fputs($socket, $message . "\r\n");
1428 1505
 
1429 1506
 		// Send a ., or in other words "end of data".
1430
-		if (!server_parse('.', $socket, '250'))
1431
-			return false;
1507
+		if (!server_parse('.', $socket, '250')) {
1508
+					return false;
1509
+		}
1432 1510
 
1433 1511
 		// Almost done, almost done... don't stop me just yet!
1434 1512
 		@set_time_limit(300);
1435
-		if (function_exists('apache_reset_timeout'))
1436
-			@apache_reset_timeout();
1513
+		if (function_exists('apache_reset_timeout')) {
1514
+					@apache_reset_timeout();
1515
+		}
1437 1516
 	}
1438 1517
 	fputs($socket, 'QUIT' . "\r\n");
1439 1518
 	fclose($socket);
@@ -1457,8 +1536,9 @@  discard block
 block discarded – undo
1457 1536
 {
1458 1537
 	global $txt;
1459 1538
 
1460
-	if ($message !== null)
1461
-		fputs($socket, $message . "\r\n");
1539
+	if ($message !== null) {
1540
+			fputs($socket, $message . "\r\n");
1541
+	}
1462 1542
 
1463 1543
 	// No response yet.
1464 1544
 	$server_response = '';
@@ -1474,8 +1554,9 @@  discard block
 block discarded – undo
1474 1554
 		$response .= $server_response;
1475 1555
 	}
1476 1556
 
1477
-	if ($code === null)
1478
-		return substr($server_response, 0, 3);
1557
+	if ($code === null) {
1558
+			return substr($server_response, 0, 3);
1559
+	}
1479 1560
 
1480 1561
 	if (substr($server_response, 0, 3) != $code)
1481 1562
 	{
@@ -1505,8 +1586,9 @@  discard block
 block discarded – undo
1505 1586
 	// Create a pspell or enchant dictionary resource
1506 1587
 	$dict = spell_init();
1507 1588
 
1508
-	if (!isset($_POST['spellstring']) || !$dict)
1509
-		die;
1589
+	if (!isset($_POST['spellstring']) || !$dict) {
1590
+			die;
1591
+	}
1510 1592
 
1511 1593
 	// Construct a bit of Javascript code.
1512 1594
 	$context['spell_js'] = '
@@ -1524,8 +1606,9 @@  discard block
 block discarded – undo
1524 1606
 		$check_word = explode('|', $alphas[$i]);
1525 1607
 
1526 1608
 		// If the word is a known word, or spelled right...
1527
-		if (in_array($smcFunc['strtolower']($check_word[0]), $known_words) || spell_check($dict, $check_word[0]) || !isset($check_word[2]))
1528
-			continue;
1609
+		if (in_array($smcFunc['strtolower']($check_word[0]), $known_words) || spell_check($dict, $check_word[0]) || !isset($check_word[2])) {
1610
+					continue;
1611
+		}
1529 1612
 
1530 1613
 		// Find the word, and move up the "last occurrence" to here.
1531 1614
 		$found_words = true;
@@ -1539,20 +1622,23 @@  discard block
 block discarded – undo
1539 1622
 		if (!empty($suggestions))
1540 1623
 		{
1541 1624
 			// But first check they aren't going to be censored - no naughty words!
1542
-			foreach ($suggestions as $k => $word)
1543
-				if ($suggestions[$k] != censorText($word))
1625
+			foreach ($suggestions as $k => $word) {
1626
+							if ($suggestions[$k] != censorText($word))
1544 1627
 					unset($suggestions[$k]);
1628
+			}
1545 1629
 
1546
-			if (!empty($suggestions))
1547
-				$context['spell_js'] .= '"' . implode('", "', $suggestions) . '"';
1630
+			if (!empty($suggestions)) {
1631
+							$context['spell_js'] .= '"' . implode('", "', $suggestions) . '"';
1632
+			}
1548 1633
 		}
1549 1634
 
1550 1635
 		$context['spell_js'] .= ']),';
1551 1636
 	}
1552 1637
 
1553 1638
 	// If words were found, take off the last comma.
1554
-	if ($found_words)
1555
-		$context['spell_js'] = substr($context['spell_js'], 0, -1);
1639
+	if ($found_words) {
1640
+			$context['spell_js'] = substr($context['spell_js'], 0, -1);
1641
+	}
1556 1642
 
1557 1643
 	$context['spell_js'] .= '
1558 1644
 		);';
@@ -1587,11 +1673,13 @@  discard block
 block discarded – undo
1587 1673
 	global $user_info, $smcFunc;
1588 1674
 
1589 1675
 	// Can't do it if there's no topics.
1590
-	if (empty($topics))
1591
-		return;
1676
+	if (empty($topics)) {
1677
+			return;
1678
+	}
1592 1679
 	// It must be an array - it must!
1593
-	if (!is_array($topics))
1594
-		$topics = array($topics);
1680
+	if (!is_array($topics)) {
1681
+			$topics = array($topics);
1682
+	}
1595 1683
 
1596 1684
 	// Get the subject and body...
1597 1685
 	$result = $smcFunc['db_query']('', '
@@ -1639,14 +1727,15 @@  discard block
 block discarded – undo
1639 1727
 	}
1640 1728
 	$smcFunc['db_free_result']($result);
1641 1729
 
1642
-	if (!empty($task_rows))
1643
-		$smcFunc['db_insert']('',
1730
+	if (!empty($task_rows)) {
1731
+			$smcFunc['db_insert']('',
1644 1732
 			'{db_prefix}background_tasks',
1645 1733
 			array('task_file' => 'string', 'task_class' => 'string', 'task_data' => 'string', 'claimed_time' => 'int'),
1646 1734
 			$task_rows,
1647 1735
 			array('id_task')
1648 1736
 		);
1649
-}
1737
+	}
1738
+	}
1650 1739
 
1651 1740
 /**
1652 1741
  * Create a post, either as new topic (id_topic = 0) or in an existing one.
@@ -1684,9 +1773,9 @@  discard block
 block discarded – undo
1684 1773
 	$msgOptions['send_notifications'] = isset($msgOptions['send_notifications']) ? (bool) $msgOptions['send_notifications'] : true;
1685 1774
 
1686 1775
 	// We need to know if the topic is approved. If we're told that's great - if not find out.
1687
-	if (!$modSettings['postmod_active'])
1688
-		$topicOptions['is_approved'] = true;
1689
-	elseif (!empty($topicOptions['id']) && !isset($topicOptions['is_approved']))
1776
+	if (!$modSettings['postmod_active']) {
1777
+			$topicOptions['is_approved'] = true;
1778
+	} elseif (!empty($topicOptions['id']) && !isset($topicOptions['is_approved']))
1690 1779
 	{
1691 1780
 		$request = $smcFunc['db_query']('', '
1692 1781
 			SELECT approved
@@ -1709,8 +1798,7 @@  discard block
 block discarded – undo
1709 1798
 			$posterOptions['id'] = 0;
1710 1799
 			$posterOptions['name'] = $txt['guest_title'];
1711 1800
 			$posterOptions['email'] = '';
1712
-		}
1713
-		elseif ($posterOptions['id'] != $user_info['id'])
1801
+		} elseif ($posterOptions['id'] != $user_info['id'])
1714 1802
 		{
1715 1803
 			$request = $smcFunc['db_query']('', '
1716 1804
 				SELECT member_name, email_address
@@ -1728,12 +1816,11 @@  discard block
 block discarded – undo
1728 1816
 				$posterOptions['id'] = 0;
1729 1817
 				$posterOptions['name'] = $txt['guest_title'];
1730 1818
 				$posterOptions['email'] = '';
1819
+			} else {
1820
+							list ($posterOptions['name'], $posterOptions['email']) = $smcFunc['db_fetch_row']($request);
1731 1821
 			}
1732
-			else
1733
-				list ($posterOptions['name'], $posterOptions['email']) = $smcFunc['db_fetch_row']($request);
1734 1822
 			$smcFunc['db_free_result']($request);
1735
-		}
1736
-		else
1823
+		} else
1737 1824
 		{
1738 1825
 			$posterOptions['name'] = $user_info['name'];
1739 1826
 			$posterOptions['email'] = $user_info['email'];
@@ -1743,8 +1830,9 @@  discard block
 block discarded – undo
1743 1830
 	if (!empty($modSettings['enable_mentions']))
1744 1831
 	{
1745 1832
 		$msgOptions['mentioned_members'] = Mentions::getMentionedMembers($msgOptions['body']);
1746
-		if (!empty($msgOptions['mentioned_members']))
1747
-			$msgOptions['body'] = Mentions::getBody($msgOptions['body'], $msgOptions['mentioned_members']);
1833
+		if (!empty($msgOptions['mentioned_members'])) {
1834
+					$msgOptions['body'] = Mentions::getBody($msgOptions['body'], $msgOptions['mentioned_members']);
1835
+		}
1748 1836
 	}
1749 1837
 
1750 1838
 	// It's do or die time: forget any user aborts!
@@ -1777,12 +1865,13 @@  discard block
 block discarded – undo
1777 1865
 	$msgOptions['id'] = $smcFunc['db_insert_id']('{db_prefix}messages', 'id_msg');
1778 1866
 
1779 1867
 	// Something went wrong creating the message...
1780
-	if (empty($msgOptions['id']))
1781
-		return false;
1868
+	if (empty($msgOptions['id'])) {
1869
+			return false;
1870
+	}
1782 1871
 
1783 1872
 	// Fix the attachments.
1784
-	if (!empty($msgOptions['attachments']))
1785
-		$smcFunc['db_query']('', '
1873
+	if (!empty($msgOptions['attachments'])) {
1874
+			$smcFunc['db_query']('', '
1786 1875
 			UPDATE {db_prefix}attachments
1787 1876
 			SET id_msg = {int:id_msg}
1788 1877
 			WHERE id_attach IN ({array_int:attachment_list})',
@@ -1791,6 +1880,7 @@  discard block
 block discarded – undo
1791 1880
 				'id_msg' => $msgOptions['id'],
1792 1881
 			)
1793 1882
 		);
1883
+	}
1794 1884
 
1795 1885
 	// What if we want to export new posts out to a CMS?
1796 1886
 	call_integration_hook('integrate_after_create_post', array($msgOptions, $topicOptions, $posterOptions, $message_columns, $message_parameters));
@@ -1868,20 +1958,23 @@  discard block
 block discarded – undo
1868 1958
 			'counter_increment' => 1,
1869 1959
 		);
1870 1960
 		$topics_columns = array();
1871
-		if ($msgOptions['approved'])
1872
-			$topics_columns = array(
1961
+		if ($msgOptions['approved']) {
1962
+					$topics_columns = array(
1873 1963
 				'id_member_updated = {int:poster_id}',
1874 1964
 				'id_last_msg = {int:id_msg}',
1875 1965
 				'num_replies = num_replies + {int:counter_increment}',
1876 1966
 			);
1877
-		else
1878
-			$topics_columns = array(
1967
+		} else {
1968
+					$topics_columns = array(
1879 1969
 				'unapproved_posts = unapproved_posts + {int:counter_increment}',
1880 1970
 			);
1881
-		if ($topicOptions['lock_mode'] !== null)
1882
-			$topics_columns[] = 'locked = {int:locked}';
1883
-		if ($topicOptions['sticky_mode'] !== null)
1884
-			$topics_columns[] = 'is_sticky = {int:is_sticky}';
1971
+		}
1972
+		if ($topicOptions['lock_mode'] !== null) {
1973
+					$topics_columns[] = 'locked = {int:locked}';
1974
+		}
1975
+		if ($topicOptions['sticky_mode'] !== null) {
1976
+					$topics_columns[] = 'is_sticky = {int:is_sticky}';
1977
+		}
1885 1978
 
1886 1979
 		call_integration_hook('integrate_modify_topic', array(&$topics_columns, &$update_parameters, &$msgOptions, &$topicOptions, &$posterOptions));
1887 1980
 
@@ -1910,8 +2003,8 @@  discard block
 block discarded – undo
1910 2003
 	);
1911 2004
 
1912 2005
 	// Increase the number of posts and topics on the board.
1913
-	if ($msgOptions['approved'])
1914
-		$smcFunc['db_query']('', '
2006
+	if ($msgOptions['approved']) {
2007
+			$smcFunc['db_query']('', '
1915 2008
 			UPDATE {db_prefix}boards
1916 2009
 			SET num_posts = num_posts + 1' . ($new_topic ? ', num_topics = num_topics + 1' : '') . '
1917 2010
 			WHERE id_board = {int:id_board}',
@@ -1919,7 +2012,7 @@  discard block
 block discarded – undo
1919 2012
 				'id_board' => $topicOptions['board'],
1920 2013
 			)
1921 2014
 		);
1922
-	else
2015
+	} else
1923 2016
 	{
1924 2017
 		$smcFunc['db_query']('', '
1925 2018
 			UPDATE {db_prefix}boards
@@ -1989,8 +2082,8 @@  discard block
 block discarded – undo
1989 2082
 		}
1990 2083
 	}
1991 2084
 
1992
-	if ($msgOptions['approved'] && empty($topicOptions['is_approved']))
1993
-		$smcFunc['db_insert']('',
2085
+	if ($msgOptions['approved'] && empty($topicOptions['is_approved'])) {
2086
+			$smcFunc['db_insert']('',
1994 2087
 			'{db_prefix}background_tasks',
1995 2088
 			array('task_file' => 'string', 'task_class' => 'string', 'task_data' => 'string', 'claimed_time' => 'int'),
1996 2089
 			array(
@@ -2002,19 +2095,22 @@  discard block
 block discarded – undo
2002 2095
 			),
2003 2096
 			array('id_task')
2004 2097
 		);
2098
+	}
2005 2099
 
2006 2100
 	// If there's a custom search index, it may need updating...
2007 2101
 	require_once($sourcedir . '/Search.php');
2008 2102
 	$searchAPI = findSearchAPI();
2009
-	if (is_callable(array($searchAPI, 'postCreated')))
2010
-		$searchAPI->postCreated($msgOptions, $topicOptions, $posterOptions);
2103
+	if (is_callable(array($searchAPI, 'postCreated'))) {
2104
+			$searchAPI->postCreated($msgOptions, $topicOptions, $posterOptions);
2105
+	}
2011 2106
 
2012 2107
 	// Increase the post counter for the user that created the post.
2013 2108
 	if (!empty($posterOptions['update_post_count']) && !empty($posterOptions['id']) && $msgOptions['approved'])
2014 2109
 	{
2015 2110
 		// Are you the one that happened to create this post?
2016
-		if ($user_info['id'] == $posterOptions['id'])
2017
-			$user_info['posts']++;
2111
+		if ($user_info['id'] == $posterOptions['id']) {
2112
+					$user_info['posts']++;
2113
+		}
2018 2114
 		updateMemberData($posterOptions['id'], array('posts' => '+'));
2019 2115
 	}
2020 2116
 
@@ -2022,19 +2118,21 @@  discard block
 block discarded – undo
2022 2118
 	$_SESSION['last_read_topic'] = 0;
2023 2119
 
2024 2120
 	// Better safe than sorry.
2025
-	if (isset($_SESSION['topicseen_cache'][$topicOptions['board']]))
2026
-		$_SESSION['topicseen_cache'][$topicOptions['board']]--;
2121
+	if (isset($_SESSION['topicseen_cache'][$topicOptions['board']])) {
2122
+			$_SESSION['topicseen_cache'][$topicOptions['board']]--;
2123
+	}
2027 2124
 
2028 2125
 	// Update all the stats so everyone knows about this new topic and message.
2029 2126
 	updateStats('message', true, $msgOptions['id']);
2030 2127
 
2031 2128
 	// Update the last message on the board assuming it's approved AND the topic is.
2032
-	if ($msgOptions['approved'])
2033
-		updateLastMessages($topicOptions['board'], $new_topic || !empty($topicOptions['is_approved']) ? $msgOptions['id'] : 0);
2129
+	if ($msgOptions['approved']) {
2130
+			updateLastMessages($topicOptions['board'], $new_topic || !empty($topicOptions['is_approved']) ? $msgOptions['id'] : 0);
2131
+	}
2034 2132
 
2035 2133
 	// Queue createPost background notification
2036
-	if ($msgOptions['send_notifications'] && $msgOptions['approved'])
2037
-		$smcFunc['db_insert']('',
2134
+	if ($msgOptions['send_notifications'] && $msgOptions['approved']) {
2135
+			$smcFunc['db_insert']('',
2038 2136
 			'{db_prefix}background_tasks',
2039 2137
 			array('task_file' => 'string', 'task_class' => 'string', 'task_data' => 'string', 'claimed_time' => 'int'),
2040 2138
 			array('$sourcedir/tasks/CreatePost-Notify.php', 'CreatePost_Notify_Background', json_encode(array(
@@ -2045,6 +2143,7 @@  discard block
 block discarded – undo
2045 2143
 			)), 0),
2046 2144
 			array('id_task')
2047 2145
 		);
2146
+	}
2048 2147
 
2049 2148
 	// Alright, done now... we can abort now, I guess... at least this much is done.
2050 2149
 	ignore_user_abort($previous_ignore_user_abort);
@@ -2071,14 +2170,18 @@  discard block
 block discarded – undo
2071 2170
 
2072 2171
 	// This is longer than it has to be, but makes it so we only set/change what we have to.
2073 2172
 	$messages_columns = array();
2074
-	if (isset($posterOptions['name']))
2075
-		$messages_columns['poster_name'] = $posterOptions['name'];
2076
-	if (isset($posterOptions['email']))
2077
-		$messages_columns['poster_email'] = $posterOptions['email'];
2078
-	if (isset($msgOptions['icon']))
2079
-		$messages_columns['icon'] = $msgOptions['icon'];
2080
-	if (isset($msgOptions['subject']))
2081
-		$messages_columns['subject'] = $msgOptions['subject'];
2173
+	if (isset($posterOptions['name'])) {
2174
+			$messages_columns['poster_name'] = $posterOptions['name'];
2175
+	}
2176
+	if (isset($posterOptions['email'])) {
2177
+			$messages_columns['poster_email'] = $posterOptions['email'];
2178
+	}
2179
+	if (isset($msgOptions['icon'])) {
2180
+			$messages_columns['icon'] = $msgOptions['icon'];
2181
+	}
2182
+	if (isset($msgOptions['subject'])) {
2183
+			$messages_columns['subject'] = $msgOptions['subject'];
2184
+	}
2082 2185
 	if (isset($msgOptions['body']))
2083 2186
 	{
2084 2187
 		$messages_columns['body'] = $msgOptions['body'];
@@ -2105,8 +2208,9 @@  discard block
 block discarded – undo
2105 2208
 		$messages_columns['modified_reason'] = $msgOptions['modify_reason'];
2106 2209
 		$messages_columns['id_msg_modified'] = $modSettings['maxMsgID'];
2107 2210
 	}
2108
-	if (isset($msgOptions['smileys_enabled']))
2109
-		$messages_columns['smileys_enabled'] = empty($msgOptions['smileys_enabled']) ? 0 : 1;
2211
+	if (isset($msgOptions['smileys_enabled'])) {
2212
+			$messages_columns['smileys_enabled'] = empty($msgOptions['smileys_enabled']) ? 0 : 1;
2213
+	}
2110 2214
 
2111 2215
 	// Which columns need to be ints?
2112 2216
 	$messageInts = array('modified_time', 'id_msg_modified', 'smileys_enabled');
@@ -2124,23 +2228,27 @@  discard block
 block discarded – undo
2124 2228
 		{
2125 2229
 			preg_match_all('/\[member\=([0-9]+)\]([^\[]*)\[\/member\]/U', $msgOptions['old_body'], $match);
2126 2230
 
2127
-			if (isset($match[1]) && isset($match[2]) && is_array($match[1]) && is_array($match[2]))
2128
-				foreach($match[1] as $i => $oldID)
2231
+			if (isset($match[1]) && isset($match[2]) && is_array($match[1]) && is_array($match[2])) {
2232
+							foreach($match[1] as $i => $oldID)
2129 2233
 					$oldmentions[$oldID] = array('id' => $oldID, 'real_name' => $match[2][$i]);
2234
+			}
2130 2235
 
2131
-			if (empty($modSettings['search_custom_index_config']))
2132
-				unset($msgOptions['old_body']);
2236
+			if (empty($modSettings['search_custom_index_config'])) {
2237
+							unset($msgOptions['old_body']);
2238
+			}
2133 2239
 		}
2134 2240
 
2135 2241
 		$mentions = Mentions::getMentionedMembers($msgOptions['body']);
2136 2242
 		$messages_columns['body'] = $msgOptions['body'] = Mentions::getBody($msgOptions['body'], $mentions);
2137 2243
 
2138 2244
 		// Remove the poster.
2139
-		if(isset($mentions[$user_info['id']]))
2140
-			unset($mentions[$user_info['id']]);
2245
+		if(isset($mentions[$user_info['id']])) {
2246
+					unset($mentions[$user_info['id']]);
2247
+		}
2141 2248
 
2142
-		if(isset($oldmentions[$user_info['id']]))
2143
-			unset($oldmentions[$user_info['id']]);
2249
+		if(isset($oldmentions[$user_info['id']])) {
2250
+					unset($oldmentions[$user_info['id']]);
2251
+		}
2144 2252
 
2145 2253
 		if (is_array($mentions) && is_array($oldmentions) && count(array_diff_key($mentions, $oldmentions)) > 0 && count($mentions) > count($oldmentions))
2146 2254
 		{
@@ -2170,8 +2278,9 @@  discard block
 block discarded – undo
2170 2278
 	}
2171 2279
 
2172 2280
 	// Nothing to do?
2173
-	if (empty($messages_columns))
2174
-		return true;
2281
+	if (empty($messages_columns)) {
2282
+			return true;
2283
+	}
2175 2284
 
2176 2285
 	// Change the post.
2177 2286
 	$smcFunc['db_query']('', '
@@ -2232,8 +2341,9 @@  discard block
 block discarded – undo
2232 2341
 	// If there's a custom search index, it needs to be modified...
2233 2342
 	require_once($sourcedir . '/Search.php');
2234 2343
 	$searchAPI = findSearchAPI();
2235
-	if (is_callable(array($searchAPI, 'postModified')))
2236
-		$searchAPI->postModified($msgOptions, $topicOptions, $posterOptions);
2344
+	if (is_callable(array($searchAPI, 'postModified'))) {
2345
+			$searchAPI->postModified($msgOptions, $topicOptions, $posterOptions);
2346
+	}
2237 2347
 
2238 2348
 	if (isset($msgOptions['subject']))
2239 2349
 	{
@@ -2247,14 +2357,16 @@  discard block
 block discarded – undo
2247 2357
 				'id_first_msg' => $msgOptions['id'],
2248 2358
 			)
2249 2359
 		);
2250
-		if ($smcFunc['db_num_rows']($request) == 1)
2251
-			updateStats('subject', $topicOptions['id'], $msgOptions['subject']);
2360
+		if ($smcFunc['db_num_rows']($request) == 1) {
2361
+					updateStats('subject', $topicOptions['id'], $msgOptions['subject']);
2362
+		}
2252 2363
 		$smcFunc['db_free_result']($request);
2253 2364
 	}
2254 2365
 
2255 2366
 	// Finally, if we are setting the approved state we need to do much more work :(
2256
-	if ($modSettings['postmod_active'] && isset($msgOptions['approved']))
2257
-		approvePosts($msgOptions['id'], $msgOptions['approved']);
2367
+	if ($modSettings['postmod_active'] && isset($msgOptions['approved'])) {
2368
+			approvePosts($msgOptions['id'], $msgOptions['approved']);
2369
+	}
2258 2370
 
2259 2371
 	return true;
2260 2372
 }
@@ -2271,11 +2383,13 @@  discard block
 block discarded – undo
2271 2383
 {
2272 2384
 	global $smcFunc;
2273 2385
 
2274
-	if (!is_array($msgs))
2275
-		$msgs = array($msgs);
2386
+	if (!is_array($msgs)) {
2387
+			$msgs = array($msgs);
2388
+	}
2276 2389
 
2277
-	if (empty($msgs))
2278
-		return false;
2390
+	if (empty($msgs)) {
2391
+			return false;
2392
+	}
2279 2393
 
2280 2394
 	// May as well start at the beginning, working out *what* we need to change.
2281 2395
 	$request = $smcFunc['db_query']('', '
@@ -2307,20 +2421,22 @@  discard block
 block discarded – undo
2307 2421
 		$topics[] = $row['id_topic'];
2308 2422
 
2309 2423
 		// Ensure our change array exists already.
2310
-		if (!isset($topic_changes[$row['id_topic']]))
2311
-			$topic_changes[$row['id_topic']] = array(
2424
+		if (!isset($topic_changes[$row['id_topic']])) {
2425
+					$topic_changes[$row['id_topic']] = array(
2312 2426
 				'id_last_msg' => $row['id_last_msg'],
2313 2427
 				'approved' => $row['topic_approved'],
2314 2428
 				'replies' => 0,
2315 2429
 				'unapproved_posts' => 0,
2316 2430
 			);
2317
-		if (!isset($board_changes[$row['id_board']]))
2318
-			$board_changes[$row['id_board']] = array(
2431
+		}
2432
+		if (!isset($board_changes[$row['id_board']])) {
2433
+					$board_changes[$row['id_board']] = array(
2319 2434
 				'posts' => 0,
2320 2435
 				'topics' => 0,
2321 2436
 				'unapproved_posts' => 0,
2322 2437
 				'unapproved_topics' => 0,
2323 2438
 			);
2439
+		}
2324 2440
 
2325 2441
 		// If it's the first message then the topic state changes!
2326 2442
 		if ($row['id_msg'] == $row['id_first_msg'])
@@ -2341,14 +2457,13 @@  discard block
 block discarded – undo
2341 2457
 				'poster' => $row['id_member'],
2342 2458
 				'new_topic' => true,
2343 2459
 			);
2344
-		}
2345
-		else
2460
+		} else
2346 2461
 		{
2347 2462
 			$topic_changes[$row['id_topic']]['replies'] += $approve ? 1 : -1;
2348 2463
 
2349 2464
 			// This will be a post... but don't notify unless it's not followed by approved ones.
2350
-			if ($row['id_msg'] > $row['id_last_msg'])
2351
-				$notification_posts[$row['id_topic']] = array(
2465
+			if ($row['id_msg'] > $row['id_last_msg']) {
2466
+							$notification_posts[$row['id_topic']] = array(
2352 2467
 					'id' => $row['id_msg'],
2353 2468
 					'body' => $row['body'],
2354 2469
 					'subject' => $row['subject'],
@@ -2359,28 +2474,33 @@  discard block
 block discarded – undo
2359 2474
 					'new_topic' => false,
2360 2475
 					'msg' => $row['id_msg'],
2361 2476
 				);
2477
+			}
2362 2478
 		}
2363 2479
 
2364 2480
 		// If this is being approved and id_msg is higher than the current id_last_msg then it changes.
2365
-		if ($approve && $row['id_msg'] > $topic_changes[$row['id_topic']]['id_last_msg'])
2366
-			$topic_changes[$row['id_topic']]['id_last_msg'] = $row['id_msg'];
2481
+		if ($approve && $row['id_msg'] > $topic_changes[$row['id_topic']]['id_last_msg']) {
2482
+					$topic_changes[$row['id_topic']]['id_last_msg'] = $row['id_msg'];
2483
+		}
2367 2484
 		// If this is being unapproved, and it's equal to the id_last_msg we need to find a new one!
2368
-		elseif (!$approve)
2369
-			// Default to the first message and then we'll override in a bit ;)
2485
+		elseif (!$approve) {
2486
+					// Default to the first message and then we'll override in a bit ;)
2370 2487
 			$topic_changes[$row['id_topic']]['id_last_msg'] = $row['id_first_msg'];
2488
+		}
2371 2489
 
2372 2490
 		$topic_changes[$row['id_topic']]['unapproved_posts'] += $approve ? -1 : 1;
2373 2491
 		$board_changes[$row['id_board']]['unapproved_posts'] += $approve ? -1 : 1;
2374 2492
 		$board_changes[$row['id_board']]['posts'] += $approve ? 1 : -1;
2375 2493
 
2376 2494
 		// Post count for the user?
2377
-		if ($row['id_member'] && empty($row['count_posts']))
2378
-			$member_post_changes[$row['id_member']] = isset($member_post_changes[$row['id_member']]) ? $member_post_changes[$row['id_member']] + 1 : 1;
2495
+		if ($row['id_member'] && empty($row['count_posts'])) {
2496
+					$member_post_changes[$row['id_member']] = isset($member_post_changes[$row['id_member']]) ? $member_post_changes[$row['id_member']] + 1 : 1;
2497
+		}
2379 2498
 	}
2380 2499
 	$smcFunc['db_free_result']($request);
2381 2500
 
2382
-	if (empty($msgs))
2383
-		return;
2501
+	if (empty($msgs)) {
2502
+			return;
2503
+	}
2384 2504
 
2385 2505
 	// Now we have the differences make the changes, first the easy one.
2386 2506
 	$smcFunc['db_query']('', '
@@ -2407,14 +2527,15 @@  discard block
 block discarded – undo
2407 2527
 				'approved' => 1,
2408 2528
 			)
2409 2529
 		);
2410
-		while ($row = $smcFunc['db_fetch_assoc']($request))
2411
-			$topic_changes[$row['id_topic']]['id_last_msg'] = $row['id_last_msg'];
2530
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
2531
+					$topic_changes[$row['id_topic']]['id_last_msg'] = $row['id_last_msg'];
2532
+		}
2412 2533
 		$smcFunc['db_free_result']($request);
2413 2534
 	}
2414 2535
 
2415 2536
 	// ... next the topics...
2416
-	foreach ($topic_changes as $id => $changes)
2417
-		$smcFunc['db_query']('', '
2537
+	foreach ($topic_changes as $id => $changes) {
2538
+			$smcFunc['db_query']('', '
2418 2539
 			UPDATE {db_prefix}topics
2419 2540
 			SET approved = {int:approved}, unapproved_posts = unapproved_posts + {int:unapproved_posts},
2420 2541
 				num_replies = num_replies + {int:num_replies}, id_last_msg = {int:id_last_msg}
@@ -2427,10 +2548,11 @@  discard block
 block discarded – undo
2427 2548
 				'id_topic' => $id,
2428 2549
 			)
2429 2550
 		);
2551
+	}
2430 2552
 
2431 2553
 	// ... finally the boards...
2432
-	foreach ($board_changes as $id => $changes)
2433
-		$smcFunc['db_query']('', '
2554
+	foreach ($board_changes as $id => $changes) {
2555
+			$smcFunc['db_query']('', '
2434 2556
 			UPDATE {db_prefix}boards
2435 2557
 			SET num_posts = num_posts + {int:num_posts}, unapproved_posts = unapproved_posts + {int:unapproved_posts},
2436 2558
 				num_topics = num_topics + {int:num_topics}, unapproved_topics = unapproved_topics + {int:unapproved_topics}
@@ -2443,13 +2565,14 @@  discard block
 block discarded – undo
2443 2565
 				'id_board' => $id,
2444 2566
 			)
2445 2567
 		);
2568
+	}
2446 2569
 
2447 2570
 	// Finally, least importantly, notifications!
2448 2571
 	if ($approve)
2449 2572
 	{
2450 2573
 		$task_rows = array();
2451
-		foreach (array_merge($notification_topics, $notification_posts) as $topic)
2452
-			$task_rows[] = array(
2574
+		foreach (array_merge($notification_topics, $notification_posts) as $topic) {
2575
+					$task_rows[] = array(
2453 2576
 				'$sourcedir/tasks/CreatePost-Notify.php', 'CreatePost_Notify_Background', json_encode(array(
2454 2577
 					'msgOptions' => array(
2455 2578
 						'id' => $topic['msg'],
@@ -2467,14 +2590,16 @@  discard block
 block discarded – undo
2467 2590
 					'type' => $topic['new_topic'] ? 'topic' : 'reply',
2468 2591
 				)), 0
2469 2592
 			);
2593
+		}
2470 2594
 
2471
-		if ($notify)
2472
-			$smcFunc['db_insert']('',
2595
+		if ($notify) {
2596
+					$smcFunc['db_insert']('',
2473 2597
 				'{db_prefix}background_tasks',
2474 2598
 				array('task_file' => 'string', 'task_class' => 'string', 'task_data' => 'string', 'claimed_time' => 'int'),
2475 2599
 				$task_rows,
2476 2600
 				array('id_task')
2477 2601
 			);
2602
+		}
2478 2603
 
2479 2604
 		$smcFunc['db_query']('', '
2480 2605
 			DELETE FROM {db_prefix}approval_queue
@@ -2490,8 +2615,9 @@  discard block
 block discarded – undo
2490 2615
 	else
2491 2616
 	{
2492 2617
 		$msgInserts = array();
2493
-		foreach ($msgs as $msg)
2494
-			$msgInserts[] = array($msg);
2618
+		foreach ($msgs as $msg) {
2619
+					$msgInserts[] = array($msg);
2620
+		}
2495 2621
 
2496 2622
 		$smcFunc['db_insert']('ignore',
2497 2623
 			'{db_prefix}approval_queue',
@@ -2505,9 +2631,10 @@  discard block
 block discarded – undo
2505 2631
 	updateLastMessages(array_keys($board_changes));
2506 2632
 
2507 2633
 	// Post count for the members?
2508
-	if (!empty($member_post_changes))
2509
-		foreach ($member_post_changes as $id_member => $count_change)
2634
+	if (!empty($member_post_changes)) {
2635
+			foreach ($member_post_changes as $id_member => $count_change)
2510 2636
 			updateMemberData($id_member, array('posts' => 'posts ' . ($approve ? '+' : '-') . ' ' . $count_change));
2637
+	}
2511 2638
 
2512 2639
 	return true;
2513 2640
 }
@@ -2524,11 +2651,13 @@  discard block
 block discarded – undo
2524 2651
 {
2525 2652
 	global $smcFunc;
2526 2653
 
2527
-	if (!is_array($topics))
2528
-		$topics = array($topics);
2654
+	if (!is_array($topics)) {
2655
+			$topics = array($topics);
2656
+	}
2529 2657
 
2530
-	if (empty($topics))
2531
-		return false;
2658
+	if (empty($topics)) {
2659
+			return false;
2660
+	}
2532 2661
 
2533 2662
 	$approve_type = $approve ? 0 : 1;
2534 2663
 
@@ -2544,8 +2673,9 @@  discard block
 block discarded – undo
2544 2673
 		)
2545 2674
 	);
2546 2675
 	$msgs = array();
2547
-	while ($row = $smcFunc['db_fetch_assoc']($request))
2548
-		$msgs[] = $row['id_msg'];
2676
+	while ($row = $smcFunc['db_fetch_assoc']($request)) {
2677
+			$msgs[] = $row['id_msg'];
2678
+	}
2549 2679
 	$smcFunc['db_free_result']($request);
2550 2680
 
2551 2681
 	return approvePosts($msgs, $approve);
@@ -2568,11 +2698,13 @@  discard block
 block discarded – undo
2568 2698
 	global $board_info, $board, $smcFunc;
2569 2699
 
2570 2700
 	// Please - let's be sane.
2571
-	if (empty($setboards))
2572
-		return false;
2701
+	if (empty($setboards)) {
2702
+			return false;
2703
+	}
2573 2704
 
2574
-	if (!is_array($setboards))
2575
-		$setboards = array($setboards);
2705
+	if (!is_array($setboards)) {
2706
+			$setboards = array($setboards);
2707
+	}
2576 2708
 
2577 2709
 	// If we don't know the id_msg we need to find it.
2578 2710
 	if (!$id_msg)
@@ -2590,15 +2722,16 @@  discard block
 block discarded – undo
2590 2722
 			)
2591 2723
 		);
2592 2724
 		$lastMsg = array();
2593
-		while ($row = $smcFunc['db_fetch_assoc']($request))
2594
-			$lastMsg[$row['id_board']] = $row['id_msg'];
2725
+		while ($row = $smcFunc['db_fetch_assoc']($request)) {
2726
+					$lastMsg[$row['id_board']] = $row['id_msg'];
2727
+		}
2595 2728
 		$smcFunc['db_free_result']($request);
2596
-	}
2597
-	else
2729
+	} else
2598 2730
 	{
2599 2731
 		// Just to note - there should only be one board passed if we are doing this.
2600
-		foreach ($setboards as $id_board)
2601
-			$lastMsg[$id_board] = $id_msg;
2732
+		foreach ($setboards as $id_board) {
2733
+					$lastMsg[$id_board] = $id_msg;
2734
+		}
2602 2735
 	}
2603 2736
 
2604 2737
 	$parent_boards = array();
@@ -2613,10 +2746,11 @@  discard block
 block discarded – undo
2613 2746
 			$lastModified[$id_board] = 0;
2614 2747
 		}
2615 2748
 
2616
-		if (!empty($board) && $id_board == $board)
2617
-			$parents = $board_info['parent_boards'];
2618
-		else
2619
-			$parents = getBoardParents($id_board);
2749
+		if (!empty($board) && $id_board == $board) {
2750
+					$parents = $board_info['parent_boards'];
2751
+		} else {
2752
+					$parents = getBoardParents($id_board);
2753
+		}
2620 2754
 
2621 2755
 		// Ignore any parents on the top child level.
2622 2756
 		// @todo Why?
@@ -2625,10 +2759,11 @@  discard block
 block discarded – undo
2625 2759
 			if ($parent['level'] != 0)
2626 2760
 			{
2627 2761
 				// If we're already doing this one as a board, is this a higher last modified?
2628
-				if (isset($lastModified[$id]) && $lastModified[$id_board] > $lastModified[$id])
2629
-					$lastModified[$id] = $lastModified[$id_board];
2630
-				elseif (!isset($lastModified[$id]) && (!isset($parent_boards[$id]) || $parent_boards[$id] < $lastModified[$id_board]))
2631
-					$parent_boards[$id] = $lastModified[$id_board];
2762
+				if (isset($lastModified[$id]) && $lastModified[$id_board] > $lastModified[$id]) {
2763
+									$lastModified[$id] = $lastModified[$id_board];
2764
+				} elseif (!isset($lastModified[$id]) && (!isset($parent_boards[$id]) || $parent_boards[$id] < $lastModified[$id_board])) {
2765
+									$parent_boards[$id] = $lastModified[$id_board];
2766
+				}
2632 2767
 			}
2633 2768
 		}
2634 2769
 	}
@@ -2641,23 +2776,24 @@  discard block
 block discarded – undo
2641 2776
 	// Finally, to save on queries make the changes...
2642 2777
 	foreach ($parent_boards as $id => $msg)
2643 2778
 	{
2644
-		if (!isset($parent_updates[$msg]))
2645
-			$parent_updates[$msg] = array($id);
2646
-		else
2647
-			$parent_updates[$msg][] = $id;
2779
+		if (!isset($parent_updates[$msg])) {
2780
+					$parent_updates[$msg] = array($id);
2781
+		} else {
2782
+					$parent_updates[$msg][] = $id;
2783
+		}
2648 2784
 	}
2649 2785
 
2650 2786
 	foreach ($lastMsg as $id => $msg)
2651 2787
 	{
2652
-		if (!isset($board_updates[$msg . '-' . $lastModified[$id]]))
2653
-			$board_updates[$msg . '-' . $lastModified[$id]] = array(
2788
+		if (!isset($board_updates[$msg . '-' . $lastModified[$id]])) {
2789
+					$board_updates[$msg . '-' . $lastModified[$id]] = array(
2654 2790
 				'id' => $msg,
2655 2791
 				'updated' => $lastModified[$id],
2656 2792
 				'boards' => array($id)
2657 2793
 			);
2658
-
2659
-		else
2660
-			$board_updates[$msg . '-' . $lastModified[$id]]['boards'][] = $id;
2794
+		} else {
2795
+					$board_updates[$msg . '-' . $lastModified[$id]]['boards'][] = $id;
2796
+		}
2661 2797
 	}
2662 2798
 
2663 2799
 	// Now commit the changes!
@@ -2749,11 +2885,13 @@  discard block
 block discarded – undo
2749 2885
 	global $txt, $mbname, $scripturl, $settings;
2750 2886
 
2751 2887
 	// First things first, load up the email templates language file, if we need to.
2752
-	if ($loadLang)
2753
-		loadLanguage('EmailTemplates', $lang);
2888
+	if ($loadLang) {
2889
+			loadLanguage('EmailTemplates', $lang);
2890
+	}
2754 2891
 
2755
-	if (!isset($txt[$template . '_subject']) || !isset($txt[$template . '_body']))
2756
-		fatal_lang_error('email_no_template', 'template', array($template));
2892
+	if (!isset($txt[$template . '_subject']) || !isset($txt[$template . '_body'])) {
2893
+			fatal_lang_error('email_no_template', 'template', array($template));
2894
+	}
2757 2895
 
2758 2896
 	$ret = array(
2759 2897
 		'subject' => $txt[$template . '_subject'],
@@ -2803,17 +2941,18 @@  discard block
 block discarded – undo
2803 2941
 function user_info_callback($matches)
2804 2942
 {
2805 2943
 	global $user_info;
2806
-	if (empty($matches[1]))
2807
-		return '';
2944
+	if (empty($matches[1])) {
2945
+			return '';
2946
+	}
2808 2947
 
2809 2948
 	$use_ref = true;
2810 2949
 	$ref = &$user_info;
2811 2950
 
2812 2951
 	foreach (explode('.', $matches[1]) as $index)
2813 2952
 	{
2814
-		if ($use_ref && isset($ref[$index]))
2815
-			$ref = &$ref[$index];
2816
-		else
2953
+		if ($use_ref && isset($ref[$index])) {
2954
+					$ref = &$ref[$index];
2955
+		} else
2817 2956
 		{
2818 2957
 			$use_ref = false;
2819 2958
 			break;
@@ -2850,8 +2989,7 @@  discard block
 block discarded – undo
2850 2989
 		if (!empty($lang_locale) && enchant_broker_dict_exists($context['enchant_broker'], $lang_locale))
2851 2990
 		{
2852 2991
 			$enchant_link = enchant_broker_request_dict($context['enchant_broker'], $lang_locale);
2853
-		}
2854
-		elseif (enchant_broker_dict_exists($context['enchant_broker'], $txt['lang_dictionary']))
2992
+		} elseif (enchant_broker_dict_exists($context['enchant_broker'], $txt['lang_dictionary']))
2855 2993
 		{
2856 2994
 			$enchant_link = enchant_broker_request_dict($context['enchant_broker'], $txt['lang_dictionary']);
2857 2995
 		}
@@ -2861,8 +2999,7 @@  discard block
 block discarded – undo
2861 2999
 		{
2862 3000
 			$context['provider'] = 'enchant';
2863 3001
 			return $enchant_link;
2864
-		}
2865
-		else
3002
+		} else
2866 3003
 		{
2867 3004
 			// Free up any resources used...
2868 3005
 			@enchant_broker_free($context['enchant_broker']);
@@ -2883,8 +3020,9 @@  discard block
 block discarded – undo
2883 3020
 		$pspell_link = pspell_new($txt['lang_dictionary'], $txt['lang_spelling'], '', strtr($context['character_set'], array('iso-' => 'iso', 'ISO-' => 'iso')), PSPELL_FAST | PSPELL_RUN_TOGETHER);
2884 3021
 
2885 3022
 		// Most people don't have anything but English installed... So we use English as a last resort.
2886
-		if (!$pspell_link)
2887
-			$pspell_link = pspell_new('en', '', '', '', PSPELL_FAST | PSPELL_RUN_TOGETHER);
3023
+		if (!$pspell_link) {
3024
+					$pspell_link = pspell_new('en', '', '', '', PSPELL_FAST | PSPELL_RUN_TOGETHER);
3025
+		}
2888 3026
 
2889 3027
 		error_reporting($old);
2890 3028
 		ob_end_clean();
@@ -2924,8 +3062,7 @@  discard block
 block discarded – undo
2924 3062
 			$word = iconv($txt['lang_character_set'], 'UTF-8', $word);
2925 3063
 		}
2926 3064
 		return enchant_dict_check($dict, $word);
2927
-	}
2928
-	elseif ($context['provider'] == 'pspell')
3065
+	} elseif ($context['provider'] == 'pspell')
2929 3066
 	{
2930 3067
 		return pspell_check($dict, $word);
2931 3068
 	}
@@ -2961,13 +3098,11 @@  discard block
 block discarded – undo
2961 3098
 			}
2962 3099
 
2963 3100
 			return $suggestions;
2964
-		}
2965
-		else
3101
+		} else
2966 3102
 		{
2967 3103
 			return enchant_dict_suggest($dict, $word);
2968 3104
 		}
2969
-	}
2970
-	elseif ($context['provider'] == 'pspell')
3105
+	} elseif ($context['provider'] == 'pspell')
2971 3106
 	{
2972 3107
 		return pspell_suggest($dict, $word);
2973 3108
 	}
Please login to merge, or discard this patch.