Extension:SMF Auth Integration

Overview
This extension integrates MediaWiki with SMF's members table. To get started you only need to configure the relative path to your SMF forum. In the default configuration the wiki login is separate from the forum. You can enable auto authentication by configuring the required settings.

If you decide to use auto authentication, when you click login / logout, the wiki will redirect you to the SMF page and then back to the wiki. For this to work you must be using SMF database sessions (default setting). You also need to ensure local storage of cookies is disabled in SMF.

Another feature is the restriction of editing to one or more SMF member groups. Keep in mind that SMF administrators are always allowed to edit. You can also add one or more member groups to by MediaWiki sysops.

Installation

 * 1) Download the extension and place the it in the wiki/extensions/ folder.
 * 2) Add the code below to the bottom of LocalSettings.php and customize as needed.

Known Issues

 * When wgSMFLogin is disabled the wiki converts underscores in usernames to spaces. For example john_doe becomes John doe. To work around this we check for both cases and use the first registered SMF user. Either change the later registered users or set wgSMFLogin to enabled.

Change Log
 1.8 
 * Check for SMF administrator by ID instead of name. Reported by ecpcorran on SMF.

 1.7 
 * Provide error message when SMF group name is invalid.
 * Fix login/logout redirection with new browser session when wgSMFLogin is enabled.

 1.6 
 * Use existing wgAuth instead of creating a new class.
 * Clarify and clean up source code commenting.
 * Use set and get for user class instead of directly assigning variables.
 * Fix bug introduced by change password for new members when wgSMFLogin is disabled.
 * Fix admin check error for usernames with space or underscore when wgSMFLogin is disabled.
 * Load user from database only if no previous session when sgSMFLogin is enabled.
 * Alert for unexisiting username with space or underscore when wgSMFLogin is disabled.

 1.5 
 * Correctly setup session when wgSMFLogin is enabled. Reported by Slack on SMF.

 1.4 
 * Update email and display name changes when wgSMFLogin is enabled.

 1.3 
 * Authenticate emails for new wiki users when wgSMFLogin is enabled.
 * Enable passwords to be changed via the wiki when wgSMFLogin is disabled.
 * Don't allow banned or unactivated users to log on when wgSMFLogin is disabled.

 1.2 
 * Added support for SMF 2.0 with wgSMFVersion

 1.1 
 * Attempt to work around underscores in usernames when wgSMFLogin is disabled.
 * Allow an array of multiple groups to be used for wgSMFGroupName.
 * Add wgSMFAdminGroupName to define groups that should be granted wiki sysop rights.

 1.0 
 * Initial release