-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Establish a process for copying data from fields on Backdrop users to fields on CiviCRM contacts. #829
Comments
We can categorize fields that appear on the user/register form as follows:
The last two items aren't technically part of this issue, but I think we should be addressing all of them together. I'm going to start by addressing these categories individually. |
The list of Backdrop user account fields can be seen here: https://beta.backdropcms.org/admin/config/people/manage. Right off the bat, I would say that MOST of them can stay user-account-only, with these exceptions:
Other possible user account fields to consider:
We might want to consider still more fields to move, but I think we ought to identify how we would use that information before expending the effort to figure out how to move it. |
For existing CiviCRM fields that we might want to start collecting, possible ones to consider:
For all these fields that we add to the user registration page, we should be very clear about which ones are and are not going to be exposed to other users (and in general, most should be private). |
One of the CiviCRM fields we'll want to make use of is the "Groups" field. We can define mailing list groups willy-nilly, which people can choose to be a part of to receive mailings on a specific topic. (The groups are for centrally-sent mailings; they're not like Mailman lists or Google Groups, where a member can send in an email that gets reflected back out to everyone in the group.) So Groups can be used as an expression of interest in various topics (Volunteering, BDLive, etc.). |
Gender: consider not using built-in CiviCRM gender, instead create custom gender field that exactly mirrors Backdrop's (allowing multiple selection). |
Comments from the Civi meeting 3/14:
|
2022-08-16. CiviCRM on beta.b.org is updated to version 5.52.2 (the current version). I've spent some time exercising a local version of beta.b.org, discovered a few gotchas, but basically have identified most of the steps of a process for integrating Civi. Here's the high points, in preparation for the next Outreach meeting. What fields to move from Backdrop user accounts
Synchronize Backdrop user accounts to CiviCRM contactsGo to CiviCRM > Administer > Users and Permissions > Sychronize users to contacts. This will create contacts for all user accounts, but that doesn't include the user account fields from the user accounts; we'll have to import that information in a second step. We have >5000 accounts (the vast majority of which were created by spammers over the years). This command is not executed as a batch process, so running this command from the UI ran into
Export user account data from BackdropTo get the rest of the Backdrop user account fields into CiviCRM, we start by exporting that information via a View.
Save the resulting page as a CSV file. Import user account data into CiviCRMImport from the file into CiviCRM at CiviCRM > Contacts > Import Contacts, with: This will put the User account fields into the right corresponding contact records. There are 229 import errors (which will be skipped) when we include full location information. By far the majority of them are spam accounts from Vietnam (and many also have problematic names). A very small number might be "real", though. Nevertheless, skipping these records will just leave their CiviCRM information blank (beyond their names). So no harm in skipping them (even if there are a few non-spammers tucked away in the group). If they belong to a real person, that person can fill in their data fields if they ever edit their user account again. This is done using the batch processing, so it should in principle go through in a single run without timeouts, but some of the individual steps still issue timeout errors after 30 seconds on my local site. But we can reduce the batch size. In file PermissionsThere is a new role, "Civi Admin". Need to give that role all CiviCRM permissions. Question: currently "Developer" role has many Civi admin permissions. Should these be removed from this role? Need to give "Authenticated" the "View my contact" and "Edit my contact" permissions. New registration pageCiviCRM automatically creates a Profile for the user registration page, containing:
We can/should remove the corresponding User account fields (Location group) after copying the data into CiviCRM so that we're only collecting this information once. This profile information is displayed by default on the user page. It is visible to the user, but not to other authenticated or anonymous people (per the permissions above). A somewhat user-unfriendly aspect is that this profile information is on its own edit page, which will be at What's nextIf everything as described above is acceptable, I will make these changes on beta.b.org so that people can kick the tires of the user registration, profile, and profile edit pages. |
I've made these changes now on beta.backdropcms.org:
There is a CiviCRM profile for the name and address information, which shows up on the new user registraition form at https://beta.backdropcms.org/user/register. It needs some CSS for visual compatility. The "Name and Address" profile from CiviCRM shows up on the user account page at Please poke around, kick the tires, etc. |
This is now done on b.org. |
We'll eventually want to move some of the field data from user profiles into civi records instead. Once this is done, we'll want to delete the old user fields and expose the civi records on the user edit form at the same time so that users aren't presented with duplicate form fields.
The text was updated successfully, but these errors were encountered: