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

Reply
 
Thread Tools
Floating Top Bar script [register] Details »»
Floating Top Bar script [register]
Version: 1.00, by Sulaiti Sulaiti is offline
Developer Last Online: Jun 2014 Show Printable Version Email this Page

Category: Forum Home Enhancements - Version: 3.6.8 Rating:
Released: 09-24-2007 Last Update: Never Installs: 21
Template Edits
 
No support by the author.

Description: This script displays a floating bar that sits at the top of the window, gliding gently back into view when the page is scrolled. Regular HTML content can be shown inside of it. And to make the bar less intrusive, once it is closed (by clicking on the "x"), the bar can be set to dismiss for the entire duration of the browser session, by using cookies. Reloading the page won't bring it back. Sites like About.com use something similar to display important tidbits of information.

Step 1: Add the following code into the Template: headinclude :

below
<!-- / CSS Stylesheet -->

PHP Code:
<if condition="$show['registerbutton']">
<
style type="text/css">
#topbar{
position:absolute;
border1px solid black;
padding2px;
background-colorlightyellow;
width620px;
visibilityhidden;
z-index100;
}
</
style>
<
script type="text/javascript">
var 
persistclose=//set to 0 or 1. 1 means once the bar is manually closed, it will remain closed for browser session
var startX 30 //set x offset of bar in pixels
var startY //set y offset of bar in pixels
var verticalpos="fromtop" //enter "fromtop" or "frombottom"
function iecompattest(){
return (
document.compatMode && document.compatMode!="BackCompat")? document.documentElement document.body
}
function 
get_cookie(Name) {
var 
search Name "="
var returnvalue "";
if (
document.cookie.length 0) {
offset document.cookie.indexOf(search)
if (
offset != -1) {
offset += search.length
end 
document.cookie.indexOf(";"offset);
if (
end == -1end document.cookie.length;
returnvalue=unescape(document.cookie.substring(offsetend))
}
}
return 
returnvalue;
}
function 
closebar(){
if (
persistclose)
document.cookie="remainclosed=1"
document.getElementById("topbar").style.visibility="hidden"
}
function 
staticbar(){
 
barheight=document.getElementById("topbar").offsetHeight
 
var ns = (navigator.appName.indexOf("Netscape") != -1) || window.opera;
 var 
document;
 function 
ml(id){
  var 
el=d.getElementById(id);
  if (!
persistclose || persistclose && get_cookie("remainclosed")=="")
  
el.style.visibility="visible"
  
if(d.layers)el.style=el;
  
el.sP=function(x,y){this.style.left=x+"px";this.style.top=y+"px";};
  
el.startX;
  if (
verticalpos=="fromtop")
  
el.startY;
  else{
  
el.ns pageYOffset innerHeight iecompattest().scrollTop iecompattest().clientHeight;
  
el.-= startY;
  }
  return 
el;
 }
 
window.stayTopLeft=function(){
  if (
verticalpos=="fromtop"){
  var 
pY ns pageYOffset iecompattest().scrollTop;
  
ftlObj.+= (pY startY ftlObj.y)/8;
  }
  else{
  var 
pY ns pageYOffset innerHeight barheightiecompattest().scrollTop iecompattest().clientHeight barheight;
  
ftlObj.+= (pY startY ftlObj.y)/8;
  }
  
ftlObj.sP(ftlObj.xftlObj.y);
  
setTimeout("stayTopLeft()"10);
 }
 
ftlObj ml("topbar");
 
stayTopLeft();
}
if (
window.addEventListener)
window.addEventListener("load"staticbarfalse)
else if (
window.attachEvent)
window.attachEvent("onload"staticbar)
else if (
document.getElementById)
window.onload=staticbar
</script>
</if> 
Step 2: Insert the following code in the Template: navbar :

below
<!-- / PAGENAV POPUP -->
</if>

PHP Code:
<if condition="$show['registerbutton']">
<
div id="topbar">
<
a href="" onClick="closebar(); return false"><img src="close.gif" border="0" /></a>
<
a href="register.php$session[sessionurl_q]rel="nofollow">$vbphrase[register]</a>
</
div>
</if> 
Step 3: Finally, this script uses an image to close the bar:

Done!

Please make sure you click INSTALL if you like it.

Show Your Support

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

Comments
  #2  
Old 09-26-2007, 01:10 PM
nonamer69 nonamer69 is offline
 
Join Date: Nov 2005
Posts: 38
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

thanks. do you have a screenshot or demo site where we can see it in action.
Reply With Quote
  #3  
Old 09-26-2007, 01:45 PM
yoyoyoyo's Avatar
yoyoyoyo yoyoyoyo is offline
 
Join Date: Dec 2004
Location: USA
Posts: 1,612
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

here is a screenshot:

Reply With Quote
  #4  
Old 09-26-2007, 04:01 PM
Lizard King Lizard King is offline
 
Join Date: Jan 2005
Location: Mersin
Posts: 907
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It is not a really good approach to add all these lines to headinclude template. You can easily create a js file and call it via headinclude template and use the css within additional css.
Reply With Quote
  #5  
Old 09-26-2007, 07:15 PM
yoyoyoyo's Avatar
yoyoyoyo yoyoyoyo is offline
 
Join Date: Dec 2004
Location: USA
Posts: 1,612
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

After I install a modification I always go to view it in as many types of browsers as possible, to make sure that it is compliant with each of them. When I went to view my site in MSN Explorer I was shocked to see that the floating top bar is actually see-through:



I think that the CSS needs a bit of work in order to make it more cross-browser compliant/friendly.
Reply With Quote
  #6  
Old 10-06-2007, 08:14 AM
Shaheen's Avatar
Shaheen Shaheen is offline
 
Join Date: Nov 2006
Location: Melbourne
Posts: 147
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks Dude
Reply With Quote
  #7  
Old 10-30-2007, 04:54 PM
Sulaiti Sulaiti is offline
 
Join Date: Mar 2002
Location: Qatar
Posts: 51
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Lizard King View Post
It is not a really good approach to add all these lines to headinclude template. You can easily create a js file and call it via headinclude template and use the css within additional css.


I agree, soon I will upgrade it to be more elastic
Reply With Quote
  #8  
Old 11-05-2007, 05:09 PM
Chance4Today Chance4Today is offline
 
Join Date: Aug 2007
Location: NE
Posts: 187
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

The X shows up for everyone but me LOL I just took it out got tired of seeing it float around but a good idea
Reply With Quote
  #9  
Old 11-12-2007, 11:59 PM
nectons nectons is offline
 
Join Date: Nov 2007
Location: GREECE
Posts: 81
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

why you posting even withoute testing ? :S ..
Reply With Quote
  #10  
Old 11-18-2007, 02:38 PM
ReQueM ReQueM is offline
 
Join Date: Dec 2006
Location: Turkey
Posts: 98
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

thanks
click install
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 03:49 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04597 seconds
  • Memory Usage 2,338KB
  • Queries Executed 23 (?)
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
  • (2)bbcode_php
  • (1)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
  • (1)pagenav_pagelink
  • (10)post_thanks_box
  • (10)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (10)post_thanks_postbit_info
  • (9)postbit
  • (10)postbit_onlinestatus
  • (10)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