The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
Big Picture messing up your design? Install this Details »» | |||||||||||||||||||||||||||
Big Picture messing up your design? Install this
Developer Last Online: Oct 2004
What does this hack do?
This hack will check if an image that a member of your forums has inserted in the post is below the allowable width. If not, the image will be replaced with a small button that basicly says "Image too big, click here to view". When clicked, the image will appear right in the post but without messing up your forum design one bit. Example? Working example can be found here: http://www.designworldwide.com/forum/t35-s.html (note: This is on VB2 but should have the same effect. If you installed it on Vb3, send me a link so I can post it here) VB2 thread if anyone wants it: https://vborg.vbsupport.ru/showthread.php?t=63429 Please post any bugs/comments/questions here. While making this hack I had some trouble with reg. expressions and had to go around them a little (php developers can see this). Ive been coding for years now but never had the need to learn those Image: https://vborg.vbsupport.ru/showthrea...725#post495725 (Image now included in ZIP) Anyways, Enjoy! Dimitry Show Your Support
|
Comments |
#22
|
|||
|
|||
a very nice idea.
Heard from it in the german vB-Forums and tried it. But , unfortunately the hack did not work quite properly. Esp. in Mozilla and Netscape the window with the picture did not open itself. Also it is not working with IE5, only with IE 6. The 2nd problem: If there is a thread with many pictures u can not klick one of the samll replacements pics at once. u have to wait until all pictures in the thread are loaded. If u klick to early no picture will load properly anymore and the pics will open for example 1/ 3rd of its size. But when these problems are dealed with then i might insatll again because its a good idea. THX |
#23
|
|||
|
|||
There was a problem with Javascript. Not the actual JS, but the code executed an extra command that is NOT needed (This is a personal mod I did on my forum and forgot to undo changes)
Fix is attached (Tried just putting it in the reply but VB was replacing my code for some reason) Dimitry |
#24
|
||||
|
||||
Tnx for the fix, works great now.
|
#25
|
|||
|
|||
Another Problem:
Sometimes i get this Error: Quote:
And if a whole Thread isnt reachable this Hack is not so good at all. Without this Error it is an absolut galant and beautiful way to solve this Problem. But can you fix this error? That would be great! |
#26
|
|||
|
|||
This is the error I seemed to be getting a LOT lately on my server after it took about 2 mins of loading time.
The problem seems to be with that function retrieving the image at times. This is not the code's fault. It's either server's, GD library's, or PHP, I have yet to figure it out. Ill post here as soon as I get more info on this. On my forum I had to completely disable the hack which sux because I made it Dimitry |
#27
|
|||
|
|||
Yes, i know that the fault isnt in the code. But there must be a way to handle it. :ermm:
|
#28
|
|||
|
|||
I figured everything out.
Had to restart some processes on my server to get it working so it wasnt the hacks fault. Ive added a security check that checks if the file actually exists or not. And also added a Slowdown function, which will wait 1500 miliseconds before checking each minute. This helps the previous check to be finished and server doesnt get overloaded with constant outgoing connections piled up one on one (if you have a bunch [img] in thread). This barely slows down the load of the thread, 1500 miliseconds is nothing really, but enough (or SHOULD be enough) for server to complete previous task). I will post the upgrade and update the hack later today when I get home Dimitry [edit] Here's what broken images look like Replaced with text: http://www.designworldwide.com/forum...id=172#post172 |
#29
|
|||
|
|||
Quote:
Thats awesome! |
#30
|
|||
|
|||
Something new bout the security check update?
|
#31
|
|||
|
|||
to check if the file/image exists, replace the following in functions_bbcodeparse.php
Code:
// ###################### Start handle_bbcode_img_match ####################### // this is only called by handle_bbcode_img function handle_bbcode_img_match($link) { // IMPORTANT - REPLACE THE FOLLOWING 2 VARIALBS WITH YOUR INFORMATION $img_replacement = "images/buttons/imagebig.gif"; // <-- This is the button/image that will be displayed instead of the big image. $img_max_width = 640; // <-- This is the maximum width 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); $img_width = getimagesize($link); if ($img_width[0] > $img_max_width) { srand((double)microtime()*1000000); $number = rand(10,100); $inp_string = "<a href=\"javascript:toggle_imgview('bigimg".$number."')\"><img src=\"".$img_replacement."\" alt=\"\" border=\"0\" /></a><br />\n"; $inp_string .= "<div style=\"position:absolute;display:none;z-index:1;\" id=\"bigimg".$number."\"><img src=\"".$link."\" border=\"0\" alt=\"\" /></div>"; return $inp_string; } else return '<img src="' . $link . '" border="0" alt="" />'; } Code:
// ###################### Start handle_bbcode_img_match ####################### // this is only called by handle_bbcode_img function handle_bbcode_img_match($link) { // IMPORTANT - REPLACE THE FOLLOWING 3 VARIALBS WITH YOUR INFORMATION $img_replacement = "images/buttons/imagebig.gif"; // <-- This is the button/image that will be displayed instead of the big image. $img_replacement2 = "images/buttons/imagenotexist.gif"; // <-- This is the button/image that will be displayed if file does not exist. $img_max_width = 640; // <-- This is the maximum width 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); $image= ($link); if (@fclose(@fopen("$image", "r"))) { $img_width = getimagesize($link); if ($img_width[0] > $img_max_width) { srand((double)microtime()*1000000); $number = rand(10,100); $inp_string = "<a href=\"javascript:toggle_imgview('bigimg".$number."')\"><img src=\"".$img_replacement."\" alt=\"\" border=\"0\" /></a><br />\n"; $inp_string .= "<div style=\"position:absolute;display:none;z-index:1;\" id=\"bigimg".$number."\"><img src=\"".$link."\" border=\"0\" alt=\"\" /></div>"; return $inp_string; } else return '<img src="' . $link . '" border="0" alt="" />'; } else { return '<img src="' . $img_replacement2 . '" border="0" alt="" />'; } } |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|