• This forum has been archived. New threads and replies may not be made. All add-ons/resources that are active should be migrated to the Resource Manager. See this thread for more information.

Joomla Bridge using JFusion

Coop

Active member
Note that as this is an initial release, there will almost certainly be some teething troubles. Please backup your databases prior to using this mod.

Joomla - Xenforo integration via JFusion
version 1.0.9

Tested against
XenForo 1.1.0

JFusion 1.6.0 - can be downloaded from http://www.jfusion.org/
Joomla 1.5.24 & 1.7.2

Description
This addon consists of two parts, a standalone XenForo addon and a plugin for the JFusion framework. The aim is to provide seamless logon integration between Joomla and XenForo.

Limitations
Due to the way this software works, both the Joomla installation and the Xenforo installation must be on the same domain and have their files on the same physical server. It must also be possible for one script to access the other, so both pieces of software must be in the same user account if your server uses open_basedir.

The current release works with Joomla 1.5. and Joomla 1.6 when using JFusion 1.6.

Known Issues
[issue] language, timezone settings and avatar details are not added to the Joomla account that is created.
This is a known issue with this version and is being worked on.

Functionality
  • Ability to synchronise accounts between Joomla and XenForo.
  • Ability to synchronize accounts with the other supported software for JFusion (though this is currently untested).
  • Ability to login from either Joomla or Xenforo with the logins synchronised. So if you login to one, you are logged into both.
  • Automatically deals with password synchronisation between the two systems.
Installation
Installation is in two parts, as there is an addon to be installed into XenForo and a plugin to be installed into JFusion.

XenForo Installation
  1. Download and unpack the JoomlaBridge.zip file
  2. First, upload the contents of upload/* to your Xenforo installation folder. This will just upload some files to a new directory in the library area of XenForo. No system files are modified or replaced.
  3. Go to your XenForo Admin Control Panel, and click *Install Add-on*.
  4. Click the *+ Install Add-on* button.
  5. Select *addon_JoomlaBridge.xml* as the file to upload.
  6. Click *Install Add-on* to confirm the installation of JoomlaBridge.
  7. From the *Home* tab of the adminCP, navigate to the *Options* area
  8. Select the *Joomla Bridge Configuration* menu item
  9. In the *Joomla Path* enter the full server path to your Joomla installation.
  10. Press the *Save Changes* button
XenForo Upgrade
  1. Download and unpack the *JoomlaBridge.zip* file
  2. First, upload the contents of upload/* to your Xenforo installation folder. If you are prompted to overwrite the existing files, be sure to tell your FTP software to overwrite, so that the uploaded files repace the original files.
  3. Login to your XenForo Admin Control Panel, and navigate to *Home->Add-ons->List Add-on*.
  4. You are transfered to a page listing your addons. Find the *A Joomla Bridge* addon.
  5. To the right of the addon is a dropdown called controls, click that.
  6. From the menu that appears, click *Upgrade*. The upgrade page is displayed.
  7. Click the browse button and brose to where you unpacked the addon files.
  8. Select the *addon_JoomlaBridge.xml* file and click the *Open* button on the dialog.
  9. You are returned to the upgrade page.
  10. Click the *Upgrade Add-on* button and wait for the upgrade to complete.
Joomla Installation

First, install Joomla and ensure that the normal Joomla installation is working properly. During installation, create an admin account that uses a username that is not used on your forum. This is to ensure you can get back into the Joomla installation if you accidentally lock yourself out.

Now you need to install version 1.6.0 of the JFusion Joomla plugin. Follow the instructions on the JFusion site here http://www.jfusion.org/docs to complete the JFusion installation.

Once JFusion is installed, using an FTP program, navigate to the 'administrator/components/com_jfusion' directory and ensure that the 'plugins' sub directory is writable by your web server.
  1. Login to your Joomla admin panel.
  2. Navigate to Components->JFusion->Joomla Options
  3. Configure the Joomla Options to reflect your Joomla installation (the options are documented on the jfusion website). Note that advanced usergroup management is still undergoing testing, so may not work as expected in this release.
  4. Disable registrations in Joomla from the glocbal settings area
  5. Navigate to Components->JFusion->configuration
  6. Ensure that the xenforo plugin is set as the master
  7. Ensure joomla_int is set as the slave
  8. Ensure that the dual login option is ticked
  9. Press the green arrow to the left of the xenForo plugin to configure the plugin settigs.
  10. In the path box, enter the full server path to your XenForo installation directory
  11. Press the Next button
  12. You are now in the XenForo plugin configuration area. Check all settings, in particular, the url to your forums and the full path to your forums.
  13. Configure the appropriate usergroups for awaiting registration users and registered users.
  14. Ensure that the syncsessions and Enable Keep Alive options are set to yes (this is the tested configuration)
  15. Save the settings
  16. Navigate to Components->JFusion->Cpanel
  17. you will notice a red bar at the top right saying that JFusion is disabled with a small link to enable it. Click that link to enable JFusion.
Joomla Upgrade

  1. Login to your Joomla admin panel.
  2. Navigate to Components->JFusion->Plugin Manager
  3. Scroll to the bottom of the page and select the Browse button to the right of the Package File option
  4. Browse to the location of the xenforo.zip file and select it.
  5. Press the Open button in the dialog. You are returned to the plugin manager page.
  6. Press the Upload File & Install button.
The plugin is now upgraded. To ensure your settings are correct, you must now reload your settings as follows:

  1. Configuration page of JFusion.
  2. Check the radio button to the left pf the xenforo module.
  3. Click the pen to edit your settings.
  4. Normally, you should just be able to press save to update any settings, but check them just in case.
That completes the basic configuration. At this point, all new user registrations must be made via XenForo. When a user first logs in via Joomla, there account will be created automatically. From that point onwards, the Joomla and XenForo session will be synchronised, so if you log in to Joomla, you will be logged into Xenforo and vice versa.

Note that there is an issue that occurs if you login to XenForo prior to visiting the Joomla installation. If you the remain logged into and visit the Joomla installation, you will get an error. This issue is currently being worked on. You can overcome this issue by using the JFusion tools to synchronise users between installations.

Change Log
Release 1.0.1:
* Fixed session sync issue for users that do not yet exist in Joomla
* Fixed issue with accounts imported from vBulletin to XenForo

Release 1.0.2:
* Fixed some small problems that caused notice messages to be issued when PHP is set to display notices.

Release 1.0.3:
* Modified the admin script to automatically enable the 'System - JFusion' plugin and turn on the sync sessions and keep alive options.

Release 1.0.4:
* Fixed warnings with PHP 5.2.x

Release 1.0.6:
* Fixed bug in code that resulted in multiple sessions for each user.

Release 1.0.7:
* Added code to synch email addresses when Joomla is set as slave.

Release 1.0.9:


* Fixed an issue with Joomla 1.7.2 when using non standard database table prefix.

Please note that if you are upgrading, you will need to go into the xenforo configuration from the JFusion configuration page and re-save the configuration.


Note that this plugin now works with Joomla 1.5, Joomla 1.6 and Joomla 1.7 when using the JFusion 1.6.0 plugin for Joomla.
 

Attachments

Hey Coop, excellent :) Thank you so much for this. And for sharing with everybody.
 
Thank you coop, now where are everybody who wanted this done ? :D I'll give it a try in one of my joomla sites.
 
Looks great! Going to wait for a few more updates before I try it out. Keep up the good work!
 
just installed it on a testsite. Small glitches with dual-login (joomla -> XF) but its working pretty good for a first version. ;)
Many thanks in advance for your work!
 
thanks for the feedback high1976, you say there are small glitches with the dual login. Could you elaborate so I can look into reproducing and fixing those issues ?
 
Updated the plugin to version 1.0.3. This version automatically enables the System - JFusion plugin during the configuration stage. To use it, upload the new plugin, then re-edit the XenForo plugin options and save them again.
 
Updated plugin to version 1.0.6. Fixed a bug that would cause the plugin to fail under some configurations. The issue was caused by multiple session rows in the session table. Thanks to high1976 for his extensive help in testing this fix and tracking down the issue.
 
Hi,
When I try to install JoomlaBridge plug-in in xenforo, I get the following error message:

finfo_file() [function.finfo-file]: File or path not found 'addon_JoomlaBridge.xml'

1. XenForo_Application::handlePhpError()
2. finfo_file() in C:\xampp\htdocs\xenforo\library\Zend\File\Transfer\Adapter\Abstract.php at line 1302
3. Zend_File_Transfer_Adapter_Abstract->_detectMimeType() in C:\xampp\htdocs\xenforo\library\Zend\File\Transfer\Adapter\Http.php at line 468
4. Zend_File_Transfer_Adapter_Http->_prepareFiles() in C:\xampp\htdocs\xenforo\library\Zend\File\Transfer\Adapter\Http.php at line 53
5. Zend_File_Transfer_Adapter_Http->__construct() in C:\xampp\htdocs\xenforo\library\XenForo\ControllerAdmin\AddOn.php at line 169
6. XenForo_ControllerAdmin_AddOn->actionInstall() in C:\xampp\htdocs\xenforo\library\XenForo\FrontController.php at line 310
7. XenForo_FrontController->dispatch() in C:\xampp\htdocs\xenforo\library\XenForo\FrontController.php at line 132
8. XenForo_FrontController->run() in C:\xampp\htdocs\xenforo\admin.php at line 13

Could anyone help me?
Thanks
 
Hi Cookie,
from the symptoms your getting, it seems like there is a problem with HTTP uploads on the server (or your pc if this is a local install). Without access to your PC, it's difficult to resolve the actual problem, so the best way is to work around the issue. Firstly, make sure that, when you unzip the zipfile, you copy the content of the upload directory (but not the directory itself) to your forums directory.

Now copy the 'addon_JoomlaBridge.xml' file to the C:\xampp\htdocs\xenforo directory.

go back to your XenForo admin panel and try to install the addon again. But this time, enter 'C:\xampp\htdocs\xenforo\addon_JoomlaBridge.xml' into the 'Install from file on server:' field and press the 'Install Add-on' button.

This just means that the XenForo software doesn't have to upload the XML file via a POST request, which seems to be where your failure occurs.
 
Hi Cheesegrits,
yes, that configuration should work with Joomla 1.5 only. However, it is not a well tested configuration. It does correctly create Joomla users inside XenForo and map across the main usergroup using the advanced mapping. In particular, it has not been tested when using addons such as community builder, so if you are using any major addons that create additional profile fields or affect the registration process, then you may run into problems.

Coop
 
hi Coop
Thanks for fast reply.
We're new to jfusion.
We have a website www.venus18.com using Magento 1.4.1.1 and Xenforo 1.(you can press the tabs in header to see)
And we want to let Magento and Xenforo to be integrated in one website.
The most important for us is customer "single login and single register".
Jfusion can do this, right?
If jfusion can do this, do we need to integrate 2 (xenforo, magento) "login box" to become one in front end
or 2 (xenforo, magento) "login box" both can be kept and access customer backend separately?

Besides, Our programmer has several weeks off.
We need someone to support us to install(Joomla, jfusion ,jfusion addons of xenforo, magento ) and have a budget.
If you can do this, we'll send you a private message for a quote.
Thank you very much.
 
hi Coop
Thanks for fast reply.
We're new to jfusion.
We have a website www.venus18.com using Magento 1.4.1.1 and Xenforo 1.(you can press the tabs in header to see)
And we want to let Magento and Xenforo to be integrated in one website.
The most important for us is customer "single login and single register".
Jfusion can do this, right?
If jfusion can do this, do we need to integrate 2 (xenforo, magento) "login box" to become one in front end
or 2 (xenforo, magento) "login box" both can be kept and access customer backend separately?

Besides, Our programmer has several weeks off.
We need someone to support us to install(Joomla, jfusion ,jfusion addons of xenforo, magento ) and have a budget.
If you can do this, we'll send you a private message for a quote.
Thank you very much.

Yes, that can definitely be done. I'll drop you a PM.
 
Been a couple weeks. Any further development? I'm glad to see that there is potential here for XF/Joomla users. Concerned about it being supported/updated though.
 
Top Bottom