CiviCRM Community Forums (archive)

*

News:

Have a question about CiviCRM?
Get it answered quickly at the new
CiviCRM Stack Exchange Q+A site

This forum was archived on 25 November 2017. Learn more.
How to get involved.
What to do if you think you've found a bug.



  • CiviCRM Community Forums (archive) »
  • Old sections (read-only, deprecated) »
  • Support »
  • Using CiviCRM »
  • Using Joomla Extensions (Moderator: lcdweb) »
  • New Joomla 2 CiviCRM user sync plugin
Pages: [1]

Author Topic: New Joomla 2 CiviCRM user sync plugin  (Read 3239 times)

nant

  • I post frequently
  • ***
  • Posts: 143
  • Karma: 4
    • Joomlapolis
  • CiviCRM version: 4.3.4
  • CMS version: Joomla 2.5.11
  • MySQL version: 5
  • PHP version: 5.3
New Joomla 2 CiviCRM user sync plugin
May 20, 2013, 10:14:35 am
With the assistance of Brian Shaughnessy I am working on a Joomla 2.5/3.x plugin that will trigger off the Joomla onUserAfterSave event in order to synchronize a new Joomla user (created via Joomla frontend or backend process) with a CiviCRM contact (creates one if needed and adds entry in uf_match table).

So far the following functionality is implemented:

1. System only acts on successfully created new Joomla users
2. System checks application scope that triggers the user creation (e.g., com_user, com_comprofiler/CB, com_civicrm, etc.) and acts accordingly (e.g., in case of com_civicrm it will not do anything since com_civicrm should handle this. In case of CB it will grab first, middle and last name fields from CB user object, etc.)
3. Splits Joomla name into first/middle/last name strings for CiviCRM contact creation (if needed).

TODO:

1. Decide how to handle case where the newly created Joomla user email address is used in more than one CiviCRM contact. Suggestions?

2. Decide which items should be parameters (e.g., domain_id ?)

3. Other?

Would love to hear Joomla/CiviCRM user feedback here and also volunteers to test.


--
Nick (aka nant from CB Team)

nant

  • I post frequently
  • ***
  • Posts: 143
  • Karma: 4
    • Joomlapolis
  • CiviCRM version: 4.3.4
  • CMS version: Joomla 2.5.11
  • MySQL version: 5
  • PHP version: 5.3
Re: New Joomla 2 CiviCRM user sync plugin
May 24, 2013, 02:51:42 pm
Followup:

I am almost ready to release first RC package.

Description follows:

Joomla 2 CiviCRM User Synchronization — Joomla! 3.x/2.5 Plugin

This plugin integrates the Joomla and/or Community Builder registration process with CiviCRM. Newly created Joomla website users will be matched with existing CiviCRM contact(s) based on their email address. If no matching CiviCRM contact is found, a new onw will be created and synchronized with the Joomla user.

Parameter Settings

The plugin should be enabled and set for Public access and also has the following Basic Options:

CiviCRM info: This is a readonly lookup field that returns the version number of the installed CiviCRM component. This plugin was designed and tested for CiviCRM version 4.3.4 or better. If you have an older version of CiviCRM, you will need to upgrade. If you do not have CiviCRM installed, then this parameter will show a '0' and the plugin will be internally disabled.

Email location type: This single select drop-down field is populated with location types retrieved from your CiviCRM installation. Select the location type that should be used by the plugin when creating (if needed) a new CiviCRM contact.

Multiple Contact Handling: This radio select field is used to specify how the plugin should react in the case where more than one CiviCRM is found with the Joomla user email address. Default setting is to use the oldest record found. Another interesting setting is to specify that a new CiviCRM contact is always created and linked to the new Joomla user (and let backend CiviCRM de-duplication actions handle the multiple CiviCRM contacts).

Domain id: This text field parameter is set to '1' by default and should really be left as is for typical CiviCRM on Joomla installations.
--
Nick (aka nant from CB Team)

nant

  • I post frequently
  • ***
  • Posts: 143
  • Karma: 4
    • Joomlapolis
  • CiviCRM version: 4.3.4
  • CMS version: Joomla 2.5.11
  • MySQL version: 5
  • PHP version: 5.3
Re: New Joomla 2 CiviCRM user sync plugin
June 13, 2013, 12:29:58 am
Still progressing here - now that CiviCRM 4.3.4 is out (with joomla api file fix needed) I will be able to release version 1.0.

Still waiting for some testers ....

Description of plugin follows:

Joomla 2 CiviCRM User Synchronization — Joomla! 3.x/2.5 Plugin

This Joomla plugin is part of the Joomlapolis Community Builder sponsored Joomla 2 CiviCRM add-on series.

This plugin integrates the Joomla and/or Community Builder registration process with CiviCRM. Newly created Joomla website users will be matched with existing CiviCRM contact(s) based on their email address. If no matching CiviCRM contact is found, a new one will be created and synchronized with the Joomla user.

This plugin was developed by the Joomlapolis CB Team and is offered as a free open-source download to the CiviCRM community as part of the Joomla 2 CiviCRM add-on series.

Version - Release Notes

Version: 1.0 RC1
Date: 14-06-2013
Download: TBS

Parameter Settings

The plugin should be enabled and set for Public access and also has four (4) sets of parameters that can be used to configure its operations:

Basic Options

  • CiviCRM info: This is a readonly lookup field that returns the version number of the installed CiviCRM component. This plugin was designed and tested for CiviCRM version 4.3.4 or better. If you have an older version of CiviCRM, you will need to upgrade. If you do not have CiviCRM installed, then this parameter will show a '0' and the plugin will be internally disabled.
  • Email location type: This single select drop-down field is populated with location types retrieved from your CiviCRM installation. Select the location type that should be used by the plugin when creating (if needed) a new CiviCRM contact.
  • Multiple Contact Handling: This radio select field is used to specify how the plugin should react in the case where more than one CiviCRM is found with the Joomla user email address. Default setting is to use the oldest record found. Another interesting setting is to specify that a new CiviCRM contact is always created and linked to the new Joomla user (and let backend CiviCRM de-duplication actions handle the multiple CiviCRM contacts).
  • Domain id: This text field parameter is set to '1' by default and should really be left as is for typical CiviCRM on Joomla installations.

Activity Options (3 use cases)


There are 3 Activity Option tabs that have parameters to instruct the plugin to create a CiviCRM Activity when a CiviCRM contact is created or synchronized because of a new Joomla user registration (see Basic Options).

  • Create activity: This is a Yes/No radio field that is used to instruct the plugin to create or not create a new activity for the just synchronized contact.
  • Email location type: This single select drop-down field is populated with location types retrieved from your CiviCRM installation. Select the location type that should be used by the plugin when creating (if needed) a new CiviCRM contact.
  • Activity date/time: This drop-down select field contains date specific settings that are used to determine when the new activity should be scheduled for. By default the new activity is scheduled for +3 days after it is created.
  • Activity type: This drop-down field parameter contains all the contact related activity types your CiviCRM has in its configuration. You need to select the type of activity you would like the plugin to create for the CiviCRM contact that is synchronized.
  • Activity subject: This text field parameter should be populated with the subject of the activity you want created.
  • Activity subject: This text field parameter should be populated with the subject of the activity you want created.
  • Activity message: This editor field parameter contains the message you want for the activity that is created.
  • Assigned ids for activity: This text field parameter contains a list of CiviCRM contact ids (semicolon separated) of the contacts that will be assigned to the new activity. By default this is 0 (zero), which means that the activity will remain unassigned

Requirements

This plugin installs and works on Joomla 2.5.x or Joomla 3.x series with CiviCRM 4.3.4 or better installed. It also integrates with Community Builder 1.9 or better when present.

Credits and Links

The plugin was developed by Nicholas G. Antimisiaris (aka nant) from the Community Builder Team of Joomlapolis.com. Brian Shaughnessy from the Lighthouse Consulting & Design was instrumental in guiding and assisting with CiviCRM API usage.
--
Nick (aka nant from CB Team)

nant

  • I post frequently
  • ***
  • Posts: 143
  • Karma: 4
    • Joomlapolis
  • CiviCRM version: 4.3.4
  • CMS version: Joomla 2.5.11
  • MySQL version: 5
  • PHP version: 5.3
Re: New Joomla 2 CiviCRM user sync plugin
June 15, 2013, 08:16:55 am
Plugin released:

http://civicrm.org/extensions/joomla-2-civicrm-user-synchronization

--
Nick (aka nant from CB Team)

Pages: [1]
  • CiviCRM Community Forums (archive) »
  • Old sections (read-only, deprecated) »
  • Support »
  • Using CiviCRM »
  • Using Joomla Extensions (Moderator: lcdweb) »
  • New Joomla 2 CiviCRM user sync plugin

This forum was archived on 2017-11-26.