vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 2.x Full Releases (https://vborg.vbsupport.ru/forumdisplay.php?f=4)
-   -   Register link for guests, User CP link (or button) for members. (https://vborg.vbsupport.ru/showthread.php?t=38416)

KuraFire 05-07-2002 10:00 PM

Register link for guests, User CP link (or button) for members.
 
Oh my Kura, you're releasing small, simple hacks every day now, huh? What's this one about?
Rest assured, after this one I don't have anything to release for a while (only stuff that has no purpose outside my own board).
Well, this hack. What it does is 'merge' the Register and User CP buttons. If a viewer is a guest or just not logged in, the link will display a Register button (or text link, whatever you want). If the viewer IS logged in, and therefore a member, it will display the User CP button instead.

Click here for an example
(where `register` is will be `user cp` when you're logged in).

I mean, why have a Register button for members available, and a User CP button available for guests? :)

Exactly, that makes no sense, therefore, this hack. :)


Instructions

Step 1: Open your global.php and find this line:

PHP Code:

// ###################### Start templates ####################### 

Add ABOVE that, the following code:
Make sure to remove the space between {imagesfolder and }!!

PHP Code:

// guest/member register/usercp hack
if($bbuserinfo['userid'] != 0) {
    
$reg_ucp "<a href=\"usercp.php?s=$session[sessionhash]\">".
        
"<img src=\"{imagesfolder }/usercp.gif\" ".
        
"alt=\"Here you can view your subscribed threads, work with private messages and edit your profile and preferences\" ".
        
"border=\"0\"></a>";
}else{
    
$reg_ucp "<a href=\"register.php?s=$session[sessionhash]&action=signup\">".
        
"<img src=\"{imagesfolder }/register.gif\" ".
        
"alt=\"Registration is free!\" border=\"0\"></a>";


Step 2: save your global.php and go to Edit your Header template (Styles > modify > fonts/colors > Header). Now, put

$reg_ucp

somewhere in your Header, where you want the UserCP / Register button to appear. Make sure to remove the 'hardcoded' buttons that are already in there, of course.

Save, and you're done. :)

Note that if you aren't using the default vB templates and graphics (which is 99% likely? ;)) you'll have to adjust the code above to suit your needs. If you don't use images, just remove the image part there and replace it with text links.

Extra feature that you can use with this hack: add Guest-only banners or something alike. In other words, only guests will see the banner (which could say something like "Want to get rid of this annoying banner? Then sign up now!") and users who are logged in won't see anything. :)

To do so, use something like this:


PHP Code:

// guest/member register/usercp hack
if($bbuserinfo['userid'] != 0) {
    
$reg_ucp "blablabla usercp";
        
$banner "";
}else{
    
$reg_ucp "blablabla register";
        
$banner "<img src=\"{imagesfolder }/banner.gif\" />".
"<br />Want to get rid of this banner? Then sign up now!";


Now place $banner in your header or footer wherever you want, and only guests will see it.

Enjoy!

KuraFire 05-08-2002 10:49 AM

No screenshots cos this is so simple your imagination should suffice. :p

Sorry about the side-scrolling btw, I always work with wrapping on :/

(oh and please note that "blablabla ...." should, of course, be replaced with what's in there, above. :p)

Admin 05-08-2002 11:03 AM

I edited your post to make it not scroll. :)

KuraFire 05-08-2002 11:13 AM

Thanks, but it still scrolled on reso 1152x864 (and below) so I edited it even more. :)

(you beat me to it, I was still working on adding the hack to the DB before editing it myself to make it thinner, bah! :p :D)

NTLDR 05-08-2002 12:10 PM

Nice hack KuraFire, shame I already added this to by board a few days ago ;)

None the less good job.

Velocd 05-08-2002 01:42 PM

Good hack, but I have a suggestion.. Why not replace the "new thread" and "new reply" buttons with a button that says "register to post" or "register". Then make it link to a page where you can choose to register, or log in (since some people just forget to log in, and log in when creating a new thread).

Takara 05-08-2002 06:05 PM

Works nicely, thanks alot ^_^

*continues to add small subtle hacks to her board* :bunny:

Takara 05-08-2002 06:09 PM

Uh oh. you should note that in the php code box it doesnt escape the " in "Registration is free\"
or
img src="https://vborg.vbsupport.ru/green/top_register.gif\" ".

Plus it doesnt start the "s back in the else after the ".

PHP Code:

// guest/member register/usercp hack
if($bbuserinfo['userid'] != 0) {
    
$reg_ucp "<a href=\"usercp.php?s=$session[sessionhash]\">".
        
"<img src=\"https://vborg.vbsupport.ru/green/top_profile.gif\" ".
        
"alt=\"Here you can view your subscribed threads, work with private messages and edit your profile and preferences\" ".
        
"border=\"0\"></a>";
}else{
    
$reg_ucp "<a href=\"register.php?s=$session[sessionhash]&action=signup\">".
        
"<img src=\"https://vborg.vbsupport.ru/green/top_register.gif\" ".
        
"alt=\"Registration is free!\" border=\"0\"></a>";


Sorry for correting you! But I got lots of icky errors >.< (btw, I know that you typed it right. Its the [ php] 's fault that it edited the escapes out ^^)

Dark Odin 05-08-2002 06:51 PM

For Template driven:

PHP Code:

if($bbuserinfo['userid'] != 0) {
          eval(
"\$reg_ucp = \"".gettemplate("unregged")."\";");
        }else{
eval(
"\$reg_ucp = \"".gettemplate("regged")."\";");


Just create the templates unregged and place your register button code or link, and put your user cp link code in regged template.

Not sure if this works, but it looks like it should.

KuraFire 05-08-2002 09:43 PM

Dark Odin, your code is backwards. It currently gives unreg-templates for members, and regged-templates for guests. :)

Takara, actually, my hack said { imagesfolder } but if I type it without the spaces, it gets parsed... o_O

But it all looks commented out fine on _my_ screen, nonetheless.... o.o


All times are GMT. The time now is 01:50 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.01223 seconds
  • Memory Usage 1,757KB
  • 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_php_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (2)pagenav_pagelink
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (10)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
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete