Extension:XenForoAuth

MediaWiki extensions manual
XenForoAuth
Release status: unmaintained
Implementation User identity
Description Provides login with a XenForo account in a configurable XenForo forum.
Author(s) Florian Schmidt (Florianschmidtwelzowtalk)
Latest version 0.1.0
MediaWiki 1.27+
PHP 5.5+
Database changes Yes
License MIT License
Download
  • $wgXenForoAuthButtonIcon
  • $wgXenForoAuthAutoCreate
  • $wgXenForoAuthBaseUrl
  • $wgXenForoAuthClientId
  • $wgXenForoAuthClientSecret
Quarterly downloads 1 (Ranked 135th)
Translate the XenForoAuth extension if it is available at translatewiki.net

The XenForoAuth extension allows wiki users to login with an account of a XenForo based online-forum. The extension uses the XenForo bd Api plugin (which needs to be installed on the XenForo forum in order to work with this extension) to request basic profile information.

Requirements

To use this extension you need at least:

  • MediaWiki 1.27+
  • MySQL (no PostgreSQL or SQLite support for now!)
  • PHP 5.5+
  • An API client in the forum with which your users can authenticate
  • Able to run composer update

Installation

  • Download and move the extracted XenForoAuth folder to your extensions/ directory.
    Developers and code contributors should install the extension from Git instead, using:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/XenForoAuth
  • Add the following code at the bottom of your LocalSettings.php file:
    wfLoadExtension( 'XenForoAuth' );
    
  • Run the update script which will automatically create the necessary database tables that this extension needs.
  • Configure the required parameters
  •   Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

Configuration

The extension provides two configuration variables to set the Client ID and Client Secret (you get this pair in the API Client settings of the XenForo forum, remove "<" and ">"). You also need to configure the base url where the api can be reached.

$wgXenForoAuthClientSecret = '<your-client-secret>';
$wgXenForoAuthClientId = '<your-client-id>';
$wgXenForoAuthBaseUrl = 'https://example.com/api/';

Additional Configuration parameter

Configuration variable Default value Description
$wgXenForoAuthButtonIcon 'images/xenForo_icon.png' The icon, which will be added to the "Log in with XenForo" button. Normally you would set the path to the icon of the forum here. The value has to be surrounded with '.
$wgXenForoAuthAutoCreate false Whether users from XenForo should be autocreated in this wiki. If you set this to true and a user logs in with XenForo and doesn't have a local connected account, it will be created automatically. If the username is already registered, the user will get an error message, that he couldn't be logged in.

Settings for the API Client

Please make sure, that you created an API Client in XenForo. Please also set your full URL to Special:UserLogin into the Redirect Uri input field (e.g. https://www.example.com/wiki/Special:UserLogin). Please also add your domain to the White-listed Domains input field (e.g. *.example.com).