Go Back   vb.org Archive > Community Discussions > Modification Requests/Questions (Unpaid)
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 10-11-2004, 12:04 PM
Johan Andersson Johan Andersson is offline
 
Join Date: Oct 2004
Posts: 2
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Usergroups enabled by key-checking?

Hello.

I'm running a vbulletin with about 34,000 active members for a game-development company.

In order to make sure registered customers get better service, we were planning to give them access to a special forums. The idea I had was to give those people a special additional user-group that grants access.

The idea was to have them enter a "cd-key" thats provided with the box we ship, and then have some utility on the forum-server check a local database if it is a valid key and then grant them the additional usergroup.

Anyone got any hints for how to do it?
Reply With Quote
  #2  
Old 10-11-2004, 12:41 PM
Colin F's Avatar
Colin F Colin F is offline
 
Join Date: Jul 2004
Location: Switzerland
Posts: 1,551
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Johan Andersson
Hello.

I'm running a vbulletin with about 34,000 active members for a game-development company.

In order to make sure registered customers get better service, we were planning to give them access to a special forums. The idea I had was to give those people a special additional user-group that grants access.

The idea was to have them enter a "cd-key" thats provided with the box we ship, and then have some utility on the forum-server check a local database if it is a valid key and then grant them the additional usergroup.

Anyone got any hints for how to do it?
You might be able to do this by adding a custom profile field and checking hourly via a cron job if that is a valid key. Then again, while that would require no editing of files, I'm not sure how one would only check the users that updated it, meaning a bit of serverload...

Another way would be adding a custom check.

How are the cd-keys generated?
Is there an algorithm that can be used to check or would one have to check in the database?
Reply With Quote
  #3  
Old 10-11-2004, 01:04 PM
nexialys
Guest
 
Posts: n/a
Default

as Colin said, if your code-key is generated in a php script on the server where your forum is, it's easy to manage a general hack that will provide a usergroup for each key generated... or the opposite, a specific field where users enter their keys (may be multiple i suppose) and if they have a proper algorythm, the usergroup is modified...
Reply With Quote
  #4  
Old 10-12-2004, 11:09 AM
Johan Andersson Johan Andersson is offline
 
Join Date: Oct 2004
Posts: 2
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Well.. I was having the idea of having all valid keys in a database of some sort on the server.
And then have a check if the entered key is valid and not used before, and if that is ok, then give that user the new user-group.
Reply With Quote
  #5  
Old 10-12-2004, 11:32 AM
Colin F's Avatar
Colin F Colin F is offline
 
Join Date: Jul 2004
Location: Switzerland
Posts: 1,551
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Sure that works as well. Then the easiest would be to have a table with all the available license keys in the same database vBulletin is installed in.
Reply With Quote
  #6  
Old 10-12-2004, 12:05 PM
CarCdr CarCdr is offline
 
Join Date: Apr 2004
Posts: 242
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

From what you have said thus far, this is very similar to the way forum passwords are managed. I would copy/adapt the code for forum passwords.

A couple of questions:
1) If I have entered a valid CD key, do I get access to just one forum or to multiple forums?
2) Is the forum(s) I get access to dependent on the key or does everyone with a valid key get the same access?

The answers to these questions will dictate your choices for where the passwords are stored in your DB.
Reply With Quote
  #7  
Old 10-12-2004, 03:47 PM
Xenon's Avatar
Xenon Xenon is offline
 
Join Date: Oct 2001
Location: Bavaria
Posts: 12,878
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Personally i'd use Colin's suggestion.

If you have you Key within the same DB as vB, it would just require a single custom profile field and a cron job.
Selecting just those users which are in the normal usergroup but have entered a key shouldn't be to server intense. run the script once a day should be enough.

The other way would be to edit profile.php so once the custom field is filled, it has to check the key table, and then modifies the usergroup of the user.
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 06:34 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.06208 seconds
  • Memory Usage 2,216KB
  • Queries Executed 13 (?)
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)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (7)post_thanks_box
  • (7)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (7)post_thanks_postbit_info
  • (7)postbit
  • (6)postbit_onlinestatus
  • (7)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_postinfo_query
  • fetch_postinfo
  • 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
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete