The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
#1
|
|||
|
|||
Change primary usergroup based on registration field
I'm certain this must have been addressed but cannot find it.
I need to change a user's primary usergroup based on their own selection from a menu "Please choose usergroup A, B or C" I would like this to be done at registration via a custom profile field. I don't know how this would be done as I am also using email verification which dumps everyone into the same Registered User group. Any ideas? Basically I just need users to select their own primary usergroup without my intervention, if not at registration, then somewhere. I'm really struggling with this. Any help or ideas are most appreciated. Here is what I tried from another thread. In register.php changed Code:
if ($userinfo['coppauser'] OR ($vboptions['moderatenewmembers'] AND !$userinfo['posts'])) { // put user in moderated group $user['usergroupid'] = 4; } if (empty($user['usergroupid'])) { $user['usergroupid'] = 2; // sanity check } Code:
if ($userinfo['coppauser'] OR ($vboptions['moderatenewmembers'] AND !$userinfo['posts'])) { // put user in moderated group $user['usergroupid'] = 4; } if (empty($user['usergroupid'])) { $user['usergroupid'] = 2; // sanity check } if ($userfield['field11']=='Arch') // change this to suit you { $user['usergroupid'] = 17; // change this to suit you. } I actually want to have 3 choices (groups). Am I on the right track here? |
#2
|
|||
|
|||
Has this gone anywhere. I'd love this on my site!
|
#3
|
|||
|
|||
Has anyone managed to implement this feature?
Would love to have this on my site. C: |
#4
|
|||
|
|||
Does anybody have an thoughts on how to implement this?
I require users to validate their email address, so after registration they are put into the 'Users Awaiting Email Confirmation' usergroup. I can't see how to remember their primary group choice so to move them after validating their email address. Any ideas? C: |
#5
|
|||
|
|||
you could always make a field in the database to remember a,b,c and after the user verifies his/her email addy then it looks for the a,b,c and puts the usergroup to that
|
#6
|
||||
|
||||
What would be the query code to add a user to a particular usergroup. Likewise, what would be the query code to remove a person from a particular group? This could then be added to php_include_start template.
I think if we knew that, many of us could work out our own conditionals as to how to apply it. In my case, I'd like it to add/remove from an additional usergroup and not affect the user's primary group. |
#7
|
||||
|
||||
Add:
[sql] update user set membergroupids=if(membergroupids='', 'X', concat_ws(',', membergroupids, 'X')) where not find_in_set('X', membergroupids) and conditions[/sql] Remove [sql]update user set membergroupids=if(instr(membergroupids, ',X') >0, replace(membergroupids, ',X', ''), replace(membergroupids, 'X,', '')) where conditions[/sql] X is the usergroup you want to add/remove, conditions are any conditions that apply (eg. userid=Y or smth.) But executing such queries in phpinclude_start is not a good idea IMHO - and won't affect the current user settings. To assign a User to a secondary usergroup based on the selection of a profile field, I released suich a Hack some time ago. |
#8
|
||||
|
||||
Quote:
Quote:
|
#9
|
||||
|
||||
Follow up, to give back to the community. I've now got this working, after embellishing what KirbyDE suggested a bit. Many thanks to Kirby for pointing in the right direction.
To add user to secondary user group X: PHP Code:
PHP Code:
|
Thread Tools | |
Display Modes | |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|