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.
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:
Bukkit version:
/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:
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):
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])
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:
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
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:
- Install xenforo api from the link above, by placing it into the same directory as the rest of your xenforo files.
- 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!
Bukkit version:
- Unzip the zip file and place it onto the server(s) plugins folders. Delete the config.json
- Go into the XenforoRegister plugin folder and open up the config.yml file.
- 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.
- 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.
- Go to the plugin folder and open up the config.json file
- 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.
/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.
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.
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.
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.