vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   Programming Articles (https://vborg.vbsupport.ru/forumdisplay.php?f=188)
-   -   Want to add multiple drop-down menus in your Navbar? (https://vborg.vbsupport.ru/showthread.php?t=126649)

JenniferK 09-14-2006 09:00 PM

Want to add multiple drop-down menus in your Navbar?
 
I needed this for my new forum but was unable to find a hack that currently does that. So I figured out how to do it myself. I'm sharing it in case anyone else is interested, but please know I am in no way, shape or form a coder, so any help I can give will be extremely limited.

I figured it out by looking at the navbar template and pulling out the chunk of code that makes the "quick links" drop down. I copied it, modified it then added it to the template but it still didn't work (because I didn't realize there were two things that needed to be edited). Ultimately, I went to the online manual at VBulletin.com and searched for popup menu (yes I actually read the manual directions, lol) and used that to help me further. The second drop-down I even added conditionals to make it so only staff sees it is there, and only admins can see some of the links. Here is the code I used with the conditionals (if you want everyone to see it, just edit those out). I have this dropdown after the Quick Links dropdown and this is where I placed the code.

Find:
HTML Code:

<if condition="$show['member']">
                        <td class="vbmenu_control"><a href="login.php?$session[sessionurl]do=logout&amp;logouthash=$bbuserinfo[logouthash]" onclick="return log_out()">$vbphrase[log_out]</a></td>
                </if>

Place this above (after editing it for your site):
HTML Code:

<if condition="is_member_of($bbuserinfo,5,6,7)">                               
<td id="stafflinks" class="vbmenu_control"><a href="$show[nojs_link]#stafflinks">Staff Links</a> <script type="text/javascript"> vbmenu_register("stafflinks"); </script></td>
</if>


Find:
HTML Code:

<if condition="$show['member']">
        <!-- user cp tools menu -->
        <div class="vbmenu_popup" id="usercptools_menu" style="display:none">
                <table cellpadding="4" cellspacing="1" border="0">
               
                <tr><td class="thead">$vbphrase[quick_links]</td></tr>
<tr><td class="vbmenu_option"><a href="http://www.huntleyneighbors.com/forum/faq.php">FAQ</a></tr>
<tr><td class="vbmenu_option"><a href="http://www.huntleyneighbors.com/forum/view.php?pg=useragreement">User Agreement</a></tr>
               
                <if condition="$vboptions['enablesearches']"><tr><td class="vbmenu_option"><a href="search.php?$session[sessionurl]do=getdaily">$vbphrase[todays_posts]</a></td></tr></if>
                <tr><td class="vbmenu_option"><a href="forumdisplay.php?$session[sessionurl]do=markread">$vbphrase[mark_forums_read]</a></td></tr>
<tr><td class="vbmenu_option"><a href="http://www.huntleyneighbors.com/forum/memberlist.php">Members List</a></tr>
                <tr><td class="vbmenu_option"><a href="#" onclick="window.open('misc.php?$session[sessionurl]do=buddylist&amp;focus=1','buddylist','statusbar=no,menubar=no,toolbar=no,scrollbars=yes,resizable=yes,width=250,height=300'); return false;">$vbphrase[open_buddy_list]</a></td></tr>
                               
                <tr><td class="thead"><a href="usercp.php$session[sessionurl_q]">$vbphrase[user_control_panel]</a></td></tr>
                <if condition="$show['siglink']"><tr><td class="vbmenu_option"><a href="profile.php?$session[sessionurl]do=editsignature">$vbphrase[edit_signature]</a></td></tr></if>
                <!--<if condition="$show['avatarlink']"><tr><td class="vbmenu_option"><a href="profile.php?$session[sessionurl]do=editavatar">$vbphrase[edit_avatar]</a></td></tr></if>-->
                <tr><td class="vbmenu_option"><a href="profile.php?$session[sessionurl]do=editprofile">$vbphrase[edit_profile]</a></td></tr>
                <tr><td class="vbmenu_option"><a href="profile.php?$session[sessionurl]do=editoptions">$vbphrase[edit_options]</a></td></tr>
               
                <tr><td class="thead">$vbphrase[miscellaneous]</td></tr>
                <if condition="$show['pmstats']"><tr><td class="vbmenu_option"><a href="private.php$session[sessionurl_q]" rel="nofollow">$vbphrase[private_messages]</a></td></tr></if>
                <tr><td class="vbmenu_option"><a href="subscription.php$session[sessionurl_q]" rel="nofollow">$vbphrase[subscribed_threads]</a></td></tr>
                <tr><td class="vbmenu_option"><a href="member.php?$session[sessionurl]u=$bbuserinfo[userid]">$vbphrase[my_profile]</a></td></tr>
                <if condition="$show['wollink']"><tr><td class="vbmenu_option"><a href="online.php$session[sessionurl_q]">$vbphrase[whos_online]</a></td></tr></if>
               
                </table>
        </div>
        <!-- / user cp tools menu -->
        </if>

Place this below (after editing it for your site):
HTML Code:

<if condition="is_member_of($bbuserinfo,5,6,7)">
<!-- staff links menu-->
<div class="vbmenu_popup" id="stafflinks_menu" style="display:none"> <table cellpadding="4" cellspacing="1" border="0">
<tr><td class="thead">Staff Links</td></tr>
<if condition="is_member_of($bbuserinfo,5,6,7)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum/view.php?pg=staffguidelines">Staff Guidelines</a></td></tr></if>
<if condition="is_member_of($bbuserinfo,6)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum//misc.php?do=moderator_stats">Mod Stats</a></td></tr></if>
<if condition="is_member_of($bbuserinfo,6)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum/spiders.php?">Spiders</a></td></tr></if>
<if condition="is_member_of($bbuserinfo,5,6,7)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum/modcp/index.php">Mod CP</a></td></tr></if>
<if condition="is_member_of($bbuserinfo,6)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum/admincp/index.php">Admin CP</a></td></tr></if>
</table>
 </div>
<!-- / staff links menu -->
 </if>

Hope this helps someone!

TroyF2000 09-15-2006 02:28 AM

COOL! I can get some use out of this! I like the idea of making me and my administrator the only ones who can see the "hidden" RPG link. heheh. Thanks for the script, JK!

PS: Say, you don't know how to embed a new font to your forum, do you? I'm sure it's some easy thing already included as an option somewhere in the panel, but I'm an idiot and can't find it.

JenniferK 09-15-2006 03:28 AM

I'm glad you can use it :)

As for the font, off the top of my head I don't remember exactly, but I know in Admin CP you want to go into Styles and Templates and then Style Manager :)

Princeton 09-17-2006 07:17 PM

great article ... thanks for sharing with the community :up:

HPIA 10-14-2006 07:26 PM

Aww, it didn't work. I got an error that said an </if> tag was mising on line 151. How do I find line 151 and add an </if> tag? Should I post my code up?

What is the 5,6,7 thing for? :p

[/noob]

JenniferK 10-20-2006 05:16 PM

I'm thinking when you copied and pasted the code, you didn't grab the whole thing, leaving one of the </if> tags off of the end.

The 5,6,7 is for the conditional of who you want the menu to display to. You would need to edit that for your own board - for example, include 5, 6 and 7 if those are the usergroup id numbers for the usergroups you want the menu to display for.

gamesmastervide 10-24-2006 10:19 AM

anyway to get this working in postbit?

Sergio68 10-24-2006 04:04 PM

Quote:

Originally Posted by JenniferK
I'm thinking when you copied and pasted the code, you didn't grab the whole thing, leaving one of the </if> tags off of the end.

The 5,6,7 is for the conditional of who you want the menu to display to. You would need to edit that for your own board - for example, include 5, 6 and 7 if those are the usergroup id numbers for the usergroups you want the menu to display for.

Sorry JenniferK but you did this probably :D

Instead of this :

Code:

<if condition="is_member_of($bbuserinfo,5,6,7)">
<!-- staff links menu-->
<div class="vbmenu_popup" id="stafflinks_menu" style="display:none"> <table cellpadding="4" cellspacing="1" border="0">
<tr><td class="thead">Staff Links</td></tr>
<if condition="is_member_of($bbuserinfo,5,6,7)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum/view.php?pg=staffguidelines">Staff Guidelines</a></td></tr></if>
<if condition="is_member_of($bbuserinfo,6)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum//misc.php?do=moderator_stats">Mod Stats</a></td></tr></if>
<if condition="is_member_of($bbuserinfo,6)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum/spiders.php?">Spiders</a></td></tr></if>
<if condition="is_member_of($bbuserinfo,5,6,7)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum/modcp/index.php">Mod CP</a></td></tr></if>
<if condition="is_member_of($bbuserinfo,6)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum/admincp/index.php">Admin CP</a></td></tr></if>
</table>
 </div>
<!-- / staff links menu -->

Use this :

Code:

<if condition="is_member_of($bbuserinfo,5,6,7)">
<!-- staff links menu-->
<div class="vbmenu_popup" id="stafflinks_menu" style="display:none"> <table cellpadding="4" cellspacing="1" border="0">
<tr><td class="thead">Staff Links</td></tr>
<if condition="is_member_of($bbuserinfo,5,6,7)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum/view.php?pg=staffguidelines">Staff Guidelines</a></td></tr></if>
<if condition="is_member_of($bbuserinfo,6)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum//misc.php?do=moderator_stats">Mod Stats</a></td></tr></if>
<if condition="is_member_of($bbuserinfo,6)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum/spiders.php?">Spiders</a></td></tr></if>
<if condition="is_member_of($bbuserinfo,5,6,7)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum/modcp/index.php">Mod CP</a></td></tr></if>
<if condition="is_member_of($bbuserinfo,6)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum/admincp/index.php">Admin CP</a></td></tr></if>
</table>
 </div>
<!-- / staff links menu -->
</if>

And everything works fine ;)

Luggruff 10-26-2006 11:58 AM

could you change the is_member_of to select userID instead?

Currently I'm using this:

Code:

<if condition="in_array($bbuserinfo['usergroupid'], array(5,6,7,50))">
</if>

though that only checks for primary usergroup..

And I'm using this for useriD.. though it will get confusing having two different types of code to sort out userID's and usergroupID's

Code:

<if condition="in_array($bbuserinfo['userid'], array(5,6,7,50))">
</if>


JenniferK 10-28-2006 05:28 PM

hmmm, honestly I don't know enough to answer your question, maybe someone else can help?

Chicago_VLNU_4s 10-29-2006 08:36 PM

thanks... needed this

ngaiox 10-31-2006 04:27 PM

Is there any way someone could do this for me?

If you can here are the details:

I want the super moderators and the administrators to be able to see the link.

I want the dropdown menu name to be Administration. Inside of it, I want there to be two links. Admin CP and Mod CP. Admin CP is the link only members of the usergroup Administrators can see. And Mod CP is the link only members of the usergroup Super Moderators can see. Is that going to be a problem doing this for me? I will appriciate it if you do. :)

PS: I need to learn the scripting of the templates better, lol.

Alfa1 11-19-2006 10:10 PM

Ok here ya go:
Go into your adminCP ->Styles and templates -> style manager -> default style -> select edit templates -> scroll down to 'navigation/breadcrump templates'and double click that -> navbar

Like Jennifer K says

Find:
HTML Code:

<if condition="$show['member']">
                        <td class="vbmenu_control"><a href="login.php?$session[sessionurl]do=logout&amp;logouthash=$bbuserinfo[logouthash]" onclick="return log_out()">$vbphrase[log_out]</a></td>
                </if>

Place this above (after editing it for your site):
HTML Code:

<if condition="is_member_of($bbuserinfo,5,6,7)">                               
<td id="stafflinks" class="vbmenu_control"><a href="$show[nojs_link]#stafflinks">Staff Links</a> <script type="text/javascript"> vbmenu_register("stafflinks"); </script></td>
</if>

Now where it says
HTML Code:

5,6,7
means super mods(5), admins(6) and mods(7)
If you dont want your super mods to see this then delete
HTML Code:

5,
The same goes for the code below.

Then find:
HTML Code:

<if condition="$show['member']">
        <!-- user cp tools menu -->
        <div class="vbmenu_popup" id="usercptools_menu" style="display:none">
                <table cellpadding="4" cellspacing="1" border="0">
               
                <tr><td class="thead">$vbphrase[quick_links]</td></tr>
<tr><td class="vbmenu_option"><a href="http://www.huntleyneighbors.com/forum/faq.php">FAQ</a></tr>
<tr><td class="vbmenu_option"><a href="http://www.huntleyneighbors.com/forum/view.php?pg=useragreement">User Agreement</a></tr>
               
                <if condition="$vboptions['enablesearches']"><tr><td class="vbmenu_option"><a href="search.php?$session[sessionurl]do=getdaily">$vbphrase[todays_posts]</a></td></tr></if>
                <tr><td class="vbmenu_option"><a href="forumdisplay.php?$session[sessionurl]do=markread">$vbphrase[mark_forums_read]</a></td></tr>
<tr><td class="vbmenu_option"><a href="http://www.huntleyneighbors.com/forum/memberlist.php">Members List</a></tr>
                <tr><td class="vbmenu_option"><a href="#" onclick="window.open('misc.php?$session[sessionurl]do=buddylist&amp;focus=1','buddylist','statusbar=no,menubar=no,toolbar=no,scrollbars=yes,resizable=yes,width=250,height=300'); return false;">$vbphrase[open_buddy_list]</a></td></tr>
                               
                <tr><td class="thead"><a href="usercp.php$session[sessionurl_q]">$vbphrase[user_control_panel]</a></td></tr>
                <if condition="$show['siglink']"><tr><td class="vbmenu_option"><a href="profile.php?$session[sessionurl]do=editsignature">$vbphrase[edit_signature]</a></td></tr></if>
                <!--<if condition="$show['avatarlink']"><tr><td class="vbmenu_option"><a href="profile.php?$session[sessionurl]do=editavatar">$vbphrase[edit_avatar]</a></td></tr></if>-->
                <tr><td class="vbmenu_option"><a href="profile.php?$session[sessionurl]do=editprofile">$vbphrase[edit_profile]</a></td></tr>
                <tr><td class="vbmenu_option"><a href="profile.php?$session[sessionurl]do=editoptions">$vbphrase[edit_options]</a></td></tr>
               
                <tr><td class="thead">$vbphrase[miscellaneous]</td></tr>
                <if condition="$show['pmstats']"><tr><td class="vbmenu_option"><a href="private.php$session[sessionurl_q]" rel="nofollow">$vbphrase[private_messages]</a></td></tr></if>
                <tr><td class="vbmenu_option"><a href="subscription.php$session[sessionurl_q]" rel="nofollow">$vbphrase[subscribed_threads]</a></td></tr>
                <tr><td class="vbmenu_option"><a href="member.php?$session[sessionurl]u=$bbuserinfo[userid]">$vbphrase[my_profile]</a></td></tr>
                <if condition="$show['wollink']"><tr><td class="vbmenu_option"><a href="online.php$session[sessionurl_q]">$vbphrase[whos_online]</a></td></tr></if>
               
                </table>
        </div>
        <!-- / user cp tools menu -->
        </if>

Place this below (after replacing "yoursite.com" with your website address):
HTML Code:

<if condition="is_member_of($bbuserinfo,5,6,7)">
<!-- Mod links menu-->
<div class="vbmenu_popup" id="stafflinks_menu" style="display:none"> <table cellpadding="4" cellspacing="1" border="0">
<tr><td class="thead">Mod Links</td></tr>
<if condition="is_member_of($bbuserinfo,6)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum/admincp/index.php">Admin CP</a></td></tr></if>
<if condition="is_member_of($bbuserinfo,5,6,7)"><tr><td class="vbmenu_option"><a href="http://www.yoursite.com/forum/modcp/index.php">Mod CP</a></td></tr></if>
</table>
 </div>
<!-- / staff links menu -->
</if>

With this mods can only see the modCP, not the adminCP. I have put the Mod rules in mine, but left it out for you. Have fun.

Edit: do not mind the colors above. The automerge function of this site is causing this.

So, here is my new post:

I'd like to add a link to the staff links menu which shows moderators unread posts in their forums. How can I do that?

Targowski 11-26-2006 06:47 PM

Thanks a lot, was just going to look for this on Google - haha.

ngaiox 01-07-2007 05:42 PM

Thanks! :D Many thanks!

J0iN 07-03-2007 06:58 PM

Really needed a drop down to show more links so it would fit on the page many thanks

Alfa1 07-22-2007 04:18 PM

In the 'User CP' drop down on the navbar here at vb.org, the top link is 'user control panel'. It is both dark blue, has bold white font and it is linked. What is the 'td class' value for this?
i.e. I currently have
Code:

<td class="vbmenu_option">
which makes it a grey drop down link with normal blue font, instead of a dark blue linked one.

tunistunis 12-12-2007 11:42 AM

thx

katilkuzu 02-09-2008 12:53 PM

grat job dude. thanks alot

Criminal-Minds 04-25-2009 05:54 PM

If i wanted to add multiple different Drop down boxes (i.e 2 separate boxs) How would I go about this?


All times are GMT. The time now is 08:37 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.02153 seconds
  • Memory Usage 1,862KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (5)bbcode_code_printable
  • (10)bbcode_html_printable
  • (1)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (20)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.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
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete