I am running vB 3.0.14, so I know this works in that version, I am not sure how 3.5 or 3.6 differ from the older versions, but here is a simpler method to handle this issue.
In your functions_bbcodeparse.php file, find this:
Code:
function handle_bbcode_img_match($link)
Replace the contents of that function with this:
Code:
function handle_bbcode_img_match($link)
{
$img_max_width = 800; // <-- This is the maximum width that an image is allowed to be viewed safely.
$img_max_height = 600; // <-- This is the maximum height that an image is allowed to be viewed safely.
$link = strip_smilies(str_replace('\\"', '"', $link));
// remove double spaces -- fixes issues with wordwrap
$link = str_replace(' ', '', $link);
if ($imginfo=@getimagesize($link))
{
if (($imginfo[0] > $imginfo[1] and ($imginfo[0] > $img_max_width or $imginfo[1] > $img_max_height)) or ($imginfo[0] < $imginfo[1] and ($imginfo[1] > $img_max_width or $imginfo[0] > $img_max_height)) or ($imginfo[0] == $imginfo[1] and ($imginfo[0] * $imginfo[1] > $img_max_width * $img_max_height)))
{
$inp_string="<a href=\"$link\" target=\"_blank\"><img src=\"images/misc/toobigimage.gif\" border=\"0\" alt=\"\"></A>";
return $inp_string;
}
else
{
return '<img src="' . $link . '" border="0" alt="" />';
}
}
else
{
if (!$allowimgsizefailure)
{
$inp_string="<img src='images/misc/notexistimage.gif'>";
return $inp_string;
}
}
}
You may alter the $img_max_width and $img_max_height, to suit your needs. The script will take care of images which are greater than the specified limit, either in portrait or landscape mode. In other words and for the example shown in the code, it will replace images which are larger than 800x600 or 600x800, depending on which dimension is larger (width or height).
You need to create two small images, as shown here:
and
Put these images in your images/misc directory and you are done.