vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3.8 Add-ons (https://vborg.vbsupport.ru/forumdisplay.php?f=235)
-   -   Profile Enhancements - Random Usergroup on Registration (https://vborg.vbsupport.ru/showthread.php?t=211059)

dstruct2k 04-12-2009 10:00 PM

Random Usergroup on Registration
 
1 Attachment(s)
This is a remake of one of my earlier mods, found here.

The original did not support the plugin system, and could not deal with email activation. Now both of these issues have been addressed!

What does this addon do?
This addon will allow admins to set a list of usergroups by usergroupid for new members to be randomly sorted into. You still have to create the usergroups yourself, this addon just sorts people into them.

Why do I want this addon?
If you have any reason to split your members into groups (the first example that comes to mind would be a Harry Potter website) and would like people to be sorted automatically.

Can the system be disabled?
Just disable the addon from your admincp.

Help! I can't find my usergroupid's/this addon doesn't work/I think it ate my cat!
Post your questions here! I'll be glad to assist in any way. Oh, and good luck with the cat. ;)


Changelog
1.0 - Initial release.


1.01 - Bug Fix Release
  • Fixed issue where "random" was sometimes selecting an invalid usergroup.
  • Corrected install file to create a setting under Registration Options in vBulletin where the usergroup list could be maintained.
1.02 - Bug Fix Release
  • Corrected errors in setting validation - Please follow the example when entering your settings.

dstruct2k 04-13-2009 07:32 AM

<i>Reserved.</i>

Jasem 04-13-2009 03:29 PM

Nice work, thank you!

Installed

Tobes 04-13-2009 03:37 PM

I have 3.7.2--will this still work? I installed the product, and it says it worked fine, but I can't find where to define which usergroups should be used during the random assignments.

TigerC10 04-13-2009 04:09 PM

Glad to see my help got this modification added so quickly! :) You've got a problem with your XML file. It should look like this toward the bottom:

Code:

        <options>
                <settinggroup name="register" displayorder="200">
                        <setting varname="fpx_rndm_usrgrp_list" displayorder="150">
                                <datatype>free</datatype>
                                <defaultvalue>2</defaultvalue>
                                <validationcode><![CDATA[return( preg_match("/^[\d+[\s,]*]+$|^$/", $data) );]]></validationcode>
                        </setting>
                </settinggroup>

        </options>

Without the setting/settinggroup in there at all, it would result in the problem Tobes talked about - being unable to alter the settings. This code change adds an option for the random group thing to the registration options and ensures that the list entered is a valid list of numbers separated by commas or spaces (or if they want to disable it they can just enter a blank, this will stop the extra code from running in the plugins which saves on server load - though they can also enter a singular 2).

dstruct2k 04-13-2009 04:40 PM

I'm certain the XML should've included that... I exported the product in its entirety. I suppose there's a bug with Advanced Product Management then!

Re-upped, update sent to all installed users. Thanks Tiger, I'll be doing more addons of varying difficulty over the next little while and I'll definitely keep you in mind if I get stumped again ;)

TigerC10 04-13-2009 04:46 PM

Quote:

Originally Posted by dstruct2k (Post 1790340)
I suppose there's a bug with Advanced Product Management then!

Ah ha! So that's why your XML has a problem with mixed newline characters. :) It contains both linux and windows newline characters, which isn't a problem for machines to overlook but with human debugging it's a real pain. At least this modification isn't a very large one. :cool:

dstruct2k 04-13-2009 04:49 PM

Yeah, I found APM and it's great for building new addons from scratch... But apparently it has its flaws...

dstruct2k 04-13-2009 04:55 PM

Quote:

Originally Posted by Tobes (Post 1790306)
I have 3.7.2--will this still work? I installed the product, and it says it worked fine, but I can't find where to define which usergroups should be used during the random assignments.

Please update to the latest version, this will correct your issues.

PS - It should work on any version of vB that supports hooks in the registration file. If you're curious, open up your register.php file and look for these 2 text blocks:
PHP Code:

($hook vBulletinHook::fetch_hook('register_form_complete')) ? eval($hook) : false

PHP Code:

($hook vBulletinHook::fetch_hook('register_activate_process')) ? eval($hook) : false

If both of these lines already exist in your register.php file, this addon will work fine. You cannot manually add these lines in, they must already exist in your version of vBulletin.

Wseries 04-13-2009 04:55 PM

I'd like to use this to assign my users to one of two groups randomly, but how would I go about doing that for members who have already registered? Can this mod do that?


All times are GMT. The time now is 01:54 AM.

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.01033 seconds
  • Memory Usage 1,748KB
  • 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
  • (1)bbcode_code_printable
  • (2)bbcode_php_printable
  • (2)bbcode_quote_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