Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.5 > vBulletin 3.5 Template Modifications
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
vBulletin Attachment Lightbox Details »»
vBulletin Attachment Lightbox
Version: 1.00, by Ntfu2 Ntfu2 is offline
Developer Last Online: Jan 2010 Show Printable Version Email this Page

Version: 3.5.4 Rating:
Released: 05-14-2006 Last Update: Never Installs: 95
 
No support by the author.

//////////////////////////////////////////////////////////////////\
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\/
****LightBox for vBulletin Attachments By: Dave @ FightRice.com****
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\/
//////////////////////////////////////////////////////////////////\
Ogrinal Version: ALl credit should go there, I Simply ported to vBulletin by myself
View Second Post In Thread for more modifications:

What this hack does is add a nice CSS and Javascript lightbox effect
to your forums attachments. Attachments must be set to shown as thumb-
nails and not inline. Attachments can not be posted using the [attach]
id[/attach] bbCode at this time.

Working Demo(s): (Send me your URL once you get it working) http://www.fightrice.com/forums/showthread.php?t=124

Now Lets Get Started

1. Open your adminCP - Styles and Templates - Template Manager - Postbit
Templates - postbit OR postbit_legacy (only edit both if you use both)
At The Very Top Add
Code:
<!--LightBox By Dave At FightRice -->
<if condition="$show['thumbnailattachment']">
<script type="text/javascript" src="clientscript/prototype.js"></script>
<script type="text/javascript" src="clientscript/scriptaculous.js?load=effects"></script>
<script type="text/javascript" src="clientscript/lightbox.js"></script>
<!-- / Light Box -->
<else />
<!-- Nothing To Load Here-->
</if>
<!-- /LightBox -->
Save and close

2. Next open postbit_attachmentthumbnail find <a after add
Code:
rel="lightbox[attachment]"
Save and close

3. Next Open the headinclude template Find
Code:
<!-- / CSS Stylesheet -->
Replace with
Code:
<link rel="stylesheet" href="clientscript/vbulletin_css/lightbox.css" type="text/css" media="screen" />
<!-- / CSS Stylesheet -->
Save and close

Thats all for template edits:
Now upload the contents of the clientscript into your forums. You should end up with this structure
/forums/clientscript/vbulletin_css/lightbox.css
/forums/clientscript/ - All the .js files go inside this folder

Next Upload the images into the webroot.ex
http://www.yoursite.com/images/lightboximages.gif (note this isnt an actual image, its an example)

Thats all there should be

User Configuration Options below If you do not feel comfortable doing this, dont
its not neccasary. if you come up with a cool effect please share it.
|||||||||||||||||||||||||||||||||||||||||||||||||| |||||||||||||||||||||||||||||
-------------------------------------------------------------------------------
In the clientscript/lightbox.js file these lines you can config to suite your needs
__________________________________________________ _________________________________
Code:
var fileLoadingImage = "/images/loading.gif";		
var fileBottomNavCloseImage = "/images/closelabel.gif";

var resizeSpeed = 7;	// controls the speed of the image resizing (1=slowest and 10=fastest)

var borderSize = 10;	//if you adjust the padding in the CSS, you will need to update this variable
__________________________________________________ _________________________________
clientscript/vbulletin_css/lightbox.css

Of Course can also be edited to make it unique to your needs.

Thats All, Make sure you click install, and nominate for Hack Of The Month!

If you like and wish to see other cool releases please donate via paypal, marcia@secondhomekennel.com
or a simple link back will rock as well
Code:
<a href="http://www.FightRice.com" target="_blank">Fight Rice</a>
Thank You

CLICK INSTALL TO GET SUPPORT! also a nomination for hack of the month wouldnt hurt

THIS IS FOR THE IMAGE RESIZE VERSION - USE lightboxresize.zip DO NOT USE BOTH!


/////////////////////////////////////////////////////////////\
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\/
Dynamic Lightbox auto resize - and image overlay.
/////////////////////////////////////////////////////////////\
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\/

If using a previous version of this hack, please remove all instances, delete all old files
and undo any templae edits. easy way is to simply follow the old instructions, and simply remove
things instead of add.

This lightbox will automatically resize images to your screen, and all for full size viewing.
Feel free to edit as you see fit.

First Step. open lightbox_plus.js at the very end find
Code:
// === PLEASE EDIT TO MATCH YOUR SITE ===
addEvent(window,"load",function() {
	var lightbox = new LightBox({
		loadingimg:'http://www.YOURSITE.com/images/loading.gif',
		expandimg:'http://www.YOURSITE.com/images/expand.gif',
		shrinkimg:'http://www.YOURSITE.com/images/shrink.gif',
		effectimg:'http://www.YOURSITE.com/images/zzoop.gif',
		effectpos:{x:-40,y:-20},
		effectclass:'effects',
		closeimg:'http://www.YOURSITE.com/images/close.gif'
	});
});
Replace all YOURSITE.com with the actual address you will keep everything. pretty simple.
Save and close.

Create the zzoop.gif image to match your site,

Upload lightbox_plus.js to the /yourforumlocation/clientscript folder

Upload lightbox.css into /yourforumlocation/clientscript/vbulletin_css folder

Upload all images into http://www.YOURSITE.com/images

*MAKE SURE ALL PREVIOUS INSTALLATIONS ARE REMOVED AT THIS POINT*
Login to AdminCP -> Styles Templates -> headinclude template

add at the very end.
Code:
<link rel="stylesheet" href="clientscript/vbulletin_css/lightbox.css" type="text/css" media="screen,tv" />
Save and close

Next open the postbit_attachmentthumbnail

After <a add
Code:
rel="lightbox"
If you want the image overlay, also add (or if you changed the effectclass in lightbox_plus.js use what you changed it to)
Code:
class="effects"
Save, and close.

in the postbit_legacy or postbit, place this code at the very top
Code:
<script type="text/javascript" src="clientscript/lightbox_plus.js"></script>
This should produce similar results to the last one, there is no next or previous buttons though.

Enjoy it.

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #32  
Old 05-16-2006, 12:35 AM
ryancooper ryancooper is offline
 
Join Date: Jul 2002
Posts: 433
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Any idea about the other error? I am still getting a bunch of undefined (undefined) errors

I hope this get fixed. THis is one of my alltime favorite hacks!
Reply With Quote
  #33  
Old 05-16-2006, 12:40 AM
Barakat's Avatar
Barakat Barakat is offline
 
Join Date: Nov 2004
Location: Jerusalem
Posts: 571
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

open the includes\class_bbcode.php and find

PHP Code:
function handle_bbcode_img_match($link)
    {
        
$link $this->strip_smilies(str_replace('\\"''"'$link));

        
// remove double spaces -- fixes issues with wordwrap
        
$link str_replace('  '''$link);

        return 
'<img src="' .  $link '" border="0" alt="" />';
    } 
and replace it with

PHP Code:
function handle_bbcode_img_match($link)
    {
        
$link $this->strip_smilies(str_replace('\\"''"'$link));
        
// remove double spaces -- fixes issues with wordwrap
        
$link str_replace('  '''$link);
        if (
$NLP = @getimagesize($link))
        {
            if(
$NLP[0] > 500)
            {
                
$NLP_W $NLP[0] / 2;
                
$NLP_H $NLP[1] / 2;
                return 
'<table width="' $NLP_W '" border="0" cellspacing="0" cellpadding="0"><tr><td style="border: 1px solid #ABABAB"><a href="' .  $link '" rel="lightbox" title="picture width in its full size"><img src="' .  $link '" width="' $NLP_W '" height="' .  $NLP_H '" border="0" alt="press here to view the picture in its original size" /></a></td></tr><tr><td align=center><a href="' .  $link '" rel="lightbox" title="view the picture in its full size"><img border="0" src="images/NLP_button.gif"></a></td></tr></table>';
            }
            else
            {
                return 
'<img src="' .  $link '" border="0" alt="" />';
            }

         }
         else
         {
             return 
'<img src="' .  $link '" border="0" alt="" />';
         }
    } 
Reply With Quote
  #34  
Old 05-16-2006, 12:57 AM
ryancooper ryancooper is offline
 
Join Date: Jul 2002
Posts: 433
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Barakat
open the includes\class_bbcode.php and find

PHP Code:
function handle_bbcode_img_match($link)
    {
        
$link $this->strip_smilies(str_replace('\\"''"'$link));

        
// remove double spaces -- fixes issues with wordwrap
        
$link str_replace('  '''$link);

        return 
'<img src="' .  $link '" border="0" alt="" />';
    } 
and replace it with

PHP Code:
function handle_bbcode_img_match($link)
    {
        
$link $this->strip_smilies(str_replace('\\"''"'$link));
        
// remove double spaces -- fixes issues with wordwrap
        
$link str_replace('  '''$link);
        if (
$NLP = @getimagesize($link))
        {
            if(
$NLP[0] > 500)
            {
                
$NLP_W $NLP[0] / 2;
                
$NLP_H $NLP[1] / 2;
                return 
'<table width="' $NLP_W '" border="0" cellspacing="0" cellpadding="0"><tr><td style="border: 1px solid #ABABAB"><a href="' .  $link '" rel="lightbox" title="picture width in its full size"><img src="' .  $link '" width="' $NLP_W '" height="' .  $NLP_H '" border="0" alt="press here to view the picture in its original size" /></a></td></tr><tr><td align=center><a href="' .  $link '" rel="lightbox" title="view the picture in its full size"><img border="0" src="images/NLP_button.gif"></a></td></tr></table>';
            }
            else
            {
                return 
'<img src="' .  $link '" border="0" alt="" />';
            }

         }
         else
         {
             return 
'<img src="' .  $link '" border="0" alt="" />';
         }
    } 

That didn't work???
Reply With Quote
  #35  
Old 05-16-2006, 01:18 AM
Barakat's Avatar
Barakat Barakat is offline
 
Join Date: Nov 2004
Location: Jerusalem
Posts: 571
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

this is the same hack with a small changes....
to resize the picture to a small view and after pressing on it it will open in its original size >

u can increase or decrease the size pic code

PHP Code:
if($NLP[0] > 500
make it 800 or 400 and it will work perfect .

and about the picture u can do like it and write inside it


press here to view the picture in its original size or what ever u want to wirte inside it <>

you will save you style in a nice way
Reply With Quote
  #36  
Old 05-16-2006, 02:47 AM
tei727's Avatar
tei727 tei727 is offline
 
Join Date: Feb 2006
Posts: 162
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Great! I love it!

Doesn't work for me with FF on my site (although it did on the demo site).
Reply With Quote
  #37  
Old 05-16-2006, 02:49 AM
Dr.Viggy Dr.Viggy is offline
 
Join Date: Apr 2006
Posts: 172
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

tei727, did you give the js files time to load? i had the same issue but doing a control-F5 and letting the javascript fully load did the trick
Reply With Quote
  #38  
Old 05-16-2006, 03:26 AM
Ntfu2 Ntfu2 is offline
 
Join Date: Feb 2006
Posts: 1,247
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I have returned with a fix..i think

Open your HeadInclude template.

Erase
Code:
<!--Light Box By Dave At FightRice -->
<script type="text/javascript" src="clientscript/prototype.js"></script>
<script type="text/javascript" src="clientscript/scriptaculous.js?load=effects"></script>
<script type="text/javascript" src="clientscript/lightbox.js"></script>
Go to Your Postbit Template (note i've only tested on postbit legacy)
At the very top add
Code:
<!--Light Box By Dave At FightRice -->
<script type="text/javascript" src="clientscript/prototype.js"></script>
<script type="text/javascript" src="clientscript/scriptaculous.js?load=effects"></script>
<script type="text/javascript" src="clientscript/lightbox.js"></script>
Save


*Note sure if this will save resources or not, but my thinking is it will not call upon the javascript files unless needed in postbit*
Use this code instead
Code:
<if condition="$show['thumbnailattachment']">
<!--Light Box By Dave At FightRice -->
<script type="text/javascript" src="clientscript/prototype.js"></script>
<script type="text/javascript" src="clientscript/scriptaculous.js?load=effects"></script>
<script type="text/javascript" src="clientscript/lightbox.js"></script>
<!-- / Light Box -->
<else />
<!-- Nothing To See Here Folks -->
</if>
Quote:
Originally Posted by Microstats With Attachments in post
Page generated in 0.37192 seconds with 12 queries [Server Loads: 18.55 27.73 : 23.86]
*Please note server load is not due to this hack, its from me running a gazillion sites at one time right now *
Quote:
Originally Posted by Microstats With-Out Attachments in post
Page generated in 0.19489 seconds with 11 queries [Server Loads: 24.73 26.15 : 23.72]
Hopefully that will speed things up for users
Report back
Reply With Quote
  #39  
Old 05-16-2006, 09:03 AM
MentaL's Avatar
MentaL MentaL is offline
 
Join Date: Jan 2003
Posts: 550
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

cool O_o
Reply With Quote
  #40  
Old 05-16-2006, 11:32 AM
ryancooper ryancooper is offline
 
Join Date: Jul 2002
Posts: 433
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Well that got rid of the iundefined problem But now in forefox it shows the opening screen then jumps to the image. In IE it works great.

Did I miss something?
Reply With Quote
  #41  
Old 05-16-2006, 12:11 PM
Dr.Viggy Dr.Viggy is offline
 
Join Date: Apr 2006
Posts: 172
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

when you say it jumps to the image... it's opening the image where? in a new window?
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 04:45 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.05007 seconds
  • Memory Usage 2,369KB
  • Queries Executed 25 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (14)bbcode_code
  • (5)bbcode_php
  • (3)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (1)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete