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

Reply
 
Thread Tools
Simple vB User login and access control on non vB pages Details »»
Simple vB User login and access control on non vB pages
Version: 1.30, by Billspaintball Billspaintball is offline
Developer Last Online: Nov 2011 Show Printable Version Email this Page

Version: 3.5.8 Rating:
Released: 11-16-2005 Last Update: 04-23-2007 Installs: 138
Additional Files  
No support by the author.

Hack Description

This is a cutdown version of the user authentication and access control system I use on the non vB pages on my website.

This uses the vB 3.5 login system to log you in and out. It allows you to move between your forums and other pages on your site while remaining logged in.

It allows you to do things such as restrict pages by usergroup, display different content depending on a user being logged in or not.
For example, you can have banner Adds displying to non members only, and/or let members access to specific content.

Ive cut it down to the bare minimum that it needs to work, no fancy stuff such as avatars, PM's, or even formating.

I will try and offer support, but work and family commitments mean I dont have much free time.

This code is a mix of my own, and pieces I have used from other hacks that are floating around.

This script has been confirmed as working on
  • vB 3.5.x - All Versions


Changelog

Version 1.30 (24th April 2007)
  • Fixed - // in paths bug
  • Fixed - Javascript warning in some browsers
  • Fixed - Tidied up some code

Version 1.20 (2nd December 2006)
  • Fixed Logout incorrect path bug
  • Made change to reduce compatibility problems with foreign scripts

Version 1.10 (4th Feb 2006)
  • Changed login_inc.php so you only need to edit path in one place now.
  • Added more commenting to login_inc.php
  • Added usage instructions to instructions file
  • Added troubleshooting guide with all common problems and fixes to instructions file.
Note: It is NOT necessary to update from 1.0 to 1.10.
There is no functionality changes or bug fixes between these 2 releases.

Version 1.0 (17th November 2005)
  • Initial Release


Deluxe Version of this hack is now available
Has Avatars, PM's, Number of Posts etc.

Click Here


Click on Install
If you have this script installed then please click on the install link because;
  • You will get notified if any security issues are reported.
  • You will get notified when there are any upgrades to this script
  • It gives me a warm fuzzy feeling and motivates me to develop more

Donations
First of all, to be clear. This script is 100% free.

However if you feel an urge to donate I'm not going to say no.
Donations can be made at http://www.billspaintball.com/vb3/bd_donate.php

Show Your Support

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

Comments
  #182  
Old 08-02-2006, 01:19 AM
Billspaintball's Avatar
Billspaintball Billspaintball is offline
 
Join Date: Sep 2003
Location: Bathurst, Au
Posts: 649
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by lightwave
How do I make this work across different subdomains?
Tried step 4 yet?
https://vborg.vbsupport.ru/showpost....98&postcount=2
Reply With Quote
  #183  
Old 08-02-2006, 10:02 PM
Evoir Evoir is offline
 
Join Date: Nov 2001
Posts: 72
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hi, I baaaack

I have another question: I'd like to lock up an entire page based on vB usergroup, and it seems like there is a problem doing this... here is the error I get:
Quote:
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /big/dom/xc5children/www/private/aboutus/index.php on line 30
I'm using your second suggestion under USAGE:
Quote:
You can use a simple variation of this to restrict entire pages to a certain usergroup.
For example,
PHP Code:
<?php
if ($vbulletin->userinfo['usergroupid'] == '6' )
{
echo "Have stuff for here";
} else {
echo "You do not have permission for this page"; }
?>
Can you help me understand how to protect a whole page (including the navigation etc)? I simply wrapped my html inside of the quotes "Have stuff for here" in above example. It includes html and php calls (includes for the navigation etc). Basically, everything between <body> and </body>
Reply With Quote
  #184  
Old 08-03-2006, 12:12 AM
soletrader soletrader is offline
 
Join Date: Jul 2006
Posts: 340
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Q. Now that I've installed this script I'm having problems logging in/out!

A. Try clearing your cookies. If you're still having problems afterwards, go to your Admin CP, click on vBulletin Options, and edit your Cookie Domain (listed under Cookies and HTTP Header Options). Change that option to ".yoursite.com" (note the two dots!). Also make sure that your Cookie Path option is set to "/".
Once you change that, close all browser windows, clear your cookies again, and then try to log in/out again.

Once I do this, I can no longer login to the control panel. Are there any solutions to this?
Reply With Quote
  #185  
Old 08-03-2006, 04:32 AM
Billspaintball's Avatar
Billspaintball Billspaintball is offline
 
Join Date: Sep 2003
Location: Bathurst, Au
Posts: 649
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Evoir
I simply wrapped my html inside of the quotes "Have stuff for here" in above example. It includes html and php calls (includes for the navigation etc). Basically, everything between <body> and </body>
Ok, thats were the problem is.

Wrapping the HTML in those tags is fine, however when you wrapped the PHP inside the echo tags everything breaks as you have found out.

If your wrapping a mix of HTML and PHO you need it in a format like this.

PHP Code:
<?php
if ($vbulletin->userinfo['usergroupid'] == '6' )
{
echo 
"Have stuff for here";
// put some PHP code here
echo "Now some more HTML goes here";
// and some more PHP stuff cos I can
echo "and the final HTML stuff here";
} else {
echo 
"You do not have permission for this page"; }
?>
Ive just used comments // in the above example where you would add your straight PHP code.

Hope thats a bit more clear.
If your still having problems just post the first dozen lines or so of your page or so.
Reply With Quote
  #186  
Old 08-03-2006, 04:57 AM
Billspaintball's Avatar
Billspaintball Billspaintball is offline
 
Join Date: Sep 2003
Location: Bathurst, Au
Posts: 649
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by soletrader
Once I do this, I can no longer login to the control panel. Are there any solutions to this?
Did you flush the cookies in your browsers cache and force a page reload? (CTRL+F5 (I think) )
Reply With Quote
  #187  
Old 08-04-2006, 02:42 AM
boske boske is offline
 
Join Date: Jul 2005
Posts: 17
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Billspaintball
Did you flush the cookies in your browsers cache and force a page reload? (CTRL+F5 (I think) )
Yeah make sure you do this when you have changed Cookies and HTTP headers, I had the same problem as you.
Reply With Quote
  #188  
Old 08-13-2006, 08:02 PM
quadude quadude is offline
 
Join Date: Aug 2006
Posts: 1
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Something maybe worth mentioning is that to prevent script issues from happenning(due to path changes) You can do something like this:
Code:
$cwd = getcwd();
chdir('/path/to/your/forums'); 
require_once('/path/to/your/forums/global.php'); 
chdir($cwd);
Reply With Quote
  #189  
Old 08-13-2006, 08:26 PM
Evoir Evoir is offline
 
Join Date: Nov 2001
Posts: 72
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Ok, now I am having trouble with any quotes being used within the document. Is there a way around this? I am using this code on a template, and my client is using quotes, which is causing an error.

Quote:
Parse error: parse error, unexpected T_STRING, expecting ',' or ';' in /big/dom/xc5children/www/private/learning_areas/dramatic_play.php on line 38
Reply With Quote
  #190  
Old 08-15-2006, 08:32 PM
grayloon's Avatar
grayloon grayloon is offline
 
Join Date: Mar 2006
Posts: 26
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Since the chdir code must be first on the page, how do you handle the sending of headers (like cookies)?
Reply With Quote
  #191  
Old 08-15-2006, 09:45 PM
Bahawolf2 Bahawolf2 is offline
 
Join Date: Apr 2003
Posts: 23
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I have a question...

I am using the script in other folders, and it wont then login... For example:

Main directory: public_html/
Forum Directory: public_html/forums/

Say I have a page in public_html/support/

The script doesnt login, or logout properly, but If I login to a page before the /support/ directory it works okay. Otherwise only pages in the public_html folder works.

Any help? I have changed the codes inserted in the page to reflect the change, (ie. ../forums/login_inc.php) like that.
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 02:14 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.05614 seconds
  • Memory Usage 2,327KB
  • 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
  • (1)bbcode_code
  • (1)bbcode_php
  • (8)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