We do not use CiviCRM for any of our sites because a: it wastes a ton of space on the server, and b: we already have our own CRM product. It'd be really nice to be able to disconnect petition from CiviCRM. As it stands right now, we can't use this module at all because all of the CiviCRM stuff is hard coded into the module.

Comments

druvision’s picture

Yes, please! it can use the user's profile or CCK node to store the voter's data.

CIVICRM is heavy, the size of drupal, and we can't afford to translate it to Hebrew / RTL yet...

I join the request to make it lightweight!

druvision’s picture

StatusFileSize
new34.8 KB

I've almost finished abstracting the CiviCRM connection and making it optional, allowing to use profile fields instead.

Here is a preliminary version - comments on the concept are welcome (I haven't tried to compile it yet).

druvision’s picture

Assigned: Unassigned » druvision
Status: Active » Needs work
druvision’s picture

StatusFileSize
new24.57 KB

Here is a working version - I've completely abstracted the signatory storage mechanism out of the main module into include files. Two include files are attached - one for CiviCRM and one for the profile mechanism.

The following three posts will contain updated versions of petition.module, petition_profile.inc and petition_civicrm.inc.

Tests were only done on the profile interface - the civicrm interface was abstracted but not tested so more work is needed.

druvision’s picture

StatusFileSize
new6.04 KB

Here is the second file

druvision’s picture

StatusFileSize
new9.48 KB

Here is the third file