Add an user management extension to the FluxBB discussion system -- written in PHP. The purpose is to integrate an existing user manager with the FluxBB for single-login. Users who are logged into our web site will be auto logged into the forum. And the user DBs stay synced.
ABOUT FLUXBB
FluxBB is a free open source forum application designed to be fast, light and user friendly. Version 1.3 of FluxBB, currently under development, has a powerful extension system enabling you to create custom forums. [login to view URL]
EXTERNAL SYNCHRONIZATION
You will provide a function which can be called from an external script, to add/delete/edit users to FluxBB. This script will be used to keep the primary user db synchronized with FLuxBB's user db: e.g.,:
fluxbb_usermanager("ADD", "username", $user_object)
AUTO LOGIN EXTENSION
You will write an extension to FluxBB which will auto-login users to FluxBB if they are logged into our site. Here's some information about building extensions in FluxBB:
[login to view URL]
FluxBB is based on a series of "hooks", which are invoked from various places in the main core, and which can also call inbuilt functions: [login to view URL]
This is the db structure: [login to view URL]
KEY FEATURES:
The overall objective is that all user-management and authentication features are omitted, and instead the site's primary user manager is used. These are some details:
~ Create one extension, using the system set up by FluxBB.
~ Auto-login a user who is logged in to main site. Assume a global PHP variable has been set by the user manager. The extension is configured with the variable name(s) from the main user manager.
~ Handle database mismatches where a user is missing from the FluxBB db by autoadding them to Fluxbb on the fly.
~ Allow a logout call, so that on logout from main site, the user is also logged out from FluxBB
~ Omit the "Logout" page link. It user attempts to logout, the logout will be initiated from our main user manger, which will call the above logout from FluxBB also.
~ Override the "Login/Register" page built into FluxBB, to NOT display the login link. If login is needed, redirect user to common login page from main site.
~ Provide option to hide the «user list» and «profile» pages
~ Provide option to modify «profile» page, omitting the password and email links, and adding a link to the primary site's user manager
~ Provide simple option for generating the forum header/footer.
~ You might not need to directly edit the dbs, but if you do, the code should work for the 3 supported db's: MySQL, PostgreSQL, and SQLite (sqlite is the priority).
TRY INSTALLING IT YOURSELF
If you are interested in this project, but unfamiliar with FluxBB, it's very easy (<3 minutes) to set up, if you have control over your own PHP server, and use sqlite for testing. You can download the current revision using this link:
[login to view URL];format=zip
Next, copy/upload all contents of the directory upload/ into the directory where you want to run your forums.
Then, run [login to view URL] from the forum root directory (e.g. open [login to view URL] in your browser). Follow the instructions.
Thanks,
Michael