XenforoRegister
XenforoRegister
Contributors:
VoidWhisperer
NOTE: This plugin is no longer updated and support will not be provided.

This plugin allows users to register onto your xenforo forum from the comfort of your game servers.

It is extremely easy to configure, but there are some prerequisites.
  • You need to have a xenforo forum
  • You need to install the Xenforo API - This is how the plugin registers users.
  • You need to follow the instructions below to set it up
NOTICE:
If you get an error related a 403 http error when trying to use the plugin, and you are using cloudflare, you need to create a direct subdomain that doesn't go through cloudflare and use that - cloudflare blocks this from retrieving the url because it's not considered to be a real person and it thinks that it is a bot or something similar.

Also, please PM issues to me instead of posting them in the thread, as that will allow me to see and address them quicker.

If you want it send users emails when they register, add this at line 5063 in the xenforo api php file you will download:
Code (Text):
if ($user['user_state'] == 'email_confirm') {
XenForo_Model::create('XenForo_Model_UserConfirmation')->sendEmailConfirmation($user);
}

Set up:
  1. Install xenforo api from the link above, by placing it into the same directory as the rest of your xenforo files.
  2. Edit the file to set the api key at the specified place near the top. Save this, you will need it while configuring the plugin!
The below steps change depending on if you are using the bungee or bukkit version:

Bukkit version:
  1. Unzip the zip file and place it onto the server(s) plugins folders. Delete the config.json
  2. Go into the XenforoRegister plugin folder and open up the config.yml file.
  3. Set the values in the configuration file to the following:
  • apiKey - The API key you set in the xenforo api file earlier
  • apiLocation - the location of the api file. This is generally the link to the frontpage of xenforo on your website with api.php at the end. For example, 'http://myserverwebsitexenforo.com/api.php'
  • mainPage - this is the URL you want people to be linked to upon a successful register. Normally this is the main page of your site or the login page.
Bungee version:
  1. Unzip the zip file and place the jar file into the bungee server plugins. Put the XenforoRegister folder into the plugins directory also, and delete the Config.yml file.
  2. Go to the plugin folder and open up the config.json file
  3. Set the following values in the file (Just change what is in the quotes AFTER each label:
  • apiKey - The API key you set in the xenforo api file earlier
  • apiLocation - the location of the api file. This is generally the link to the frontpage of xenforo on your website with api.php at the end. For example, 'http://myserverwebsitexenforo.com/api.php'
  • mainPage - this is the URL you want people to be linked to upon a successful register. Normally this is the main page of your site or the login page.
Once you follow these, reload the plugin's config in console via /registerreload or just reloading the plugin/restarting the server. Now your users will be able to register on your site via the following command:
/register (email) (password)

Required plugins
Bukkit:
This plugin requires vault in order to work due to permissions.
Bungee: None

Configuration (Only for the bukkit version)
The first 3 config values are described above in the setup. The remaining ones:
  • waitOnFirstJoin - True/false - This determines whether or not the enforcement of the user having to wait a brief period of time to register if they just joined for the first time is active.
  • waitTime - Number - The number of seconds to wait before users who have joined for the first time can register.
  • rewardRegisters - true/false - This determines whether or not you want the commands to run to reward a user for registering.
  • rewardCommands - String list - This is a list of commands to run when a user successfully registers - usually used to reward the user.
You can also limit the the number of registrations an IP address can make to not allow people to spam your forum with their alts:

The config values are slightly different between bukkit/bungee, so the config values will be shown as BUKKIT/BUNGEE (If they are the same it means they are the same in both configs):
  • enforceMaxRegistrations - Whether or not to enforce the max users/ip limit - If you set this to false you do not need to fill out the database information
  • regPerIp/maxRegistrations - The max number of users that can register per IP if enforceMaxRegistrations is enabled.
  • dbIP - The ip of the database that xenforo is on
  • dbUsername - The database username of the database that xenforo is on
  • dbPassword - The database password of the database that xenforo is on
  • default_user_state - the default state that the user is in on the xenforo site when they register.
  • xenforoDBName/dbName - The name of the xenforo database.
  • secureCommands - If enabled, this will cause the plugin to intercept the register and changepassword command before they get printed to console so as not to leak user passwords. This one is currently bukkit-only.
Assuming you have configured this correctly, it should put a limit on how many users can register with a given IP address.

Lastly, you can configure the messages that the plugin will send to users. (Note, in the bukkit version these are lang.[etc] and in the bungee version they are messages.[etc])
  • maxips: Message shown to players when too many players have registered using in their ip
  • cannotregisteryet: Shown to users if they just joined and cannot register yet.
  • congrats: The congradulations message shown to users when they register
  • website: The website line shown below the congrats line, where {MAINPAGE} will be replaced with the main page you define in the config
  • change.password: The message a player sees when they change their password
  • change.email: The message a player sees when they change their email, {EMAIL} will be replaced with the email they use.
  • error.blankpassword: The error a user sees when they try to change their password to a blank password
  • error.invalidemail: The error a user sees when they try to register with an invalid email.
With the two messages that have replaceable content in them, the things between the { and } must be in caps.

Commands:
/register (email) (password) - allows users to register onto your xenforo site.
/registerreload - Reloads the plugin's config (Op only)
/changeemail (email) - Allows users to change their email on the website
/changepassword [password] - Allows users to change their password on the website.
/xfsetrank [name] [rank] - Sets a user's primary rank on the xenforo site
/xfaddrank [name] [rank] - Adds a secondary rank to the the user on the xenforo site.
/xfremoverank [name] [rank] - Removes a secondary rank from the user on the xenforo site.
Permissions:
xr.register - Allow them to use /register
xr.changeemail - Allow them to use the /changeemail command
xr.changepassword - Allow them to use the /changepassword command
xr.setrank - Allow them to use the /xfsetrank command
xr.addrank - Allow them to use the /xfaddrank command
xr.removerank - Allow them to use the /xfremoverank command

On bungee there is an extra permission: xr.reload - reload the config

Common issues:
Make sure you do not have the bukkit version on your bukkit and the bungee version on bungee at the same time, as this could cause conflicts.

Other Uses:
In theory this plugin could be used to combat the spam bots that plague xenforo forums by forcing registration ingame and disabling it on the website. However, disabling registration on the website is currently out of the scope of what this plugin does.

I'm planning to add more features onto this, such as more detailed error messages for failed registry, and possibly other features that are related to the xenforo api.

If you have any issues at all please feel free to email me at [email protected] or leave a comment below.

FAQ:
If you get the 'user_error_phrase is undefined' error, make sure of the following:
  • If you are using SSL and have a redirect on your website to go from non-SSL to SSL, then use the https url, not the http one. The plugin has issues with the redirect.
  • Make sure your API key for the plugin is the one that you set in the file, and that you set one.
  • If you are still having issues, do this:
    • Find your api key
    • Take the url you have defined as the link to the api in your config
    • Put this on the end of the url:
    • ?action=register&hash=[your api key]&username=test123&password=234hdf3&[email protected]
    • Replace the [your api key] with your api key.
    • Copy the contents of the resulting page in a PM to me.
If you PM me with that issue without trying above you are likely to just be told to read this, and not get help until you do as it says.

Similar resources

XenforoRegister BlackSpigot.com
Allows users to register on your xenforo forum ingame with a simple command, among other things
4.00 star(s) 1 ratings
Downloads
105
Updated
BlackSpigot General Chat
Rules Help Users
    timojesus @ timojesus: I fixed some of the gifs for resource and rank prefix banners today, too ur ModelEngine its safe?
    Top