Fundraising/External-facing/E-mail preference center
Overview
The email preference center is a standalone wiki that uses civiproxy to talk to civicrm.
Note that the links below include checksums that will have expired by the time you read this page. To get an updated checksum for a contact, just browse to their contact summary page in your local Civi instance and look for the 'email preference center' link on the right side just under the Donor Links block.
Links
URL Structure
https://donorpreferences.wikimedia.org/index.php?title=Special:EmailPreferences/emailPreferences&contact_id=<id>&checksum=<checksum_can_expired>&email=<email>&hash=<hash_for_email_update>&uselang=<for_page_view>
Translated Preference Center (adding &uselang=)
&uselang=ja
Phabricator Epic
Create Preference Center for donors to manage email subscription preferences - https://phabricator.wikimedia.org/T125272
Documentation of Email Preference
https://docs.google.com/document/d/1wKtGxJn06bs6OGAFV7DKUfVw2salKdU_NAUn5SMGks0
User interface Design
CiviCRM
- Local civi url to see the api: http://wmf.localhost:32353/civicrm/api3#explorer: select contact -> get -> then input the contact id and the checksum there to see the donor info
- Check user from civi: https://wmf.localhost:32353/civicrm/contact/view?reset=1&cid=6
- From edit view, you will see the opt in from communication section, home email, and their prefer language, and Email preference Country.
Civiproxy
Official documentation: https://docs.civicrm.org/civiproxy/en/latest/
Our repo: https://gerrit.wikimedia.org/r/q/project:wikimedia/fundraising/crm/civiproxy
- Link to test from docker add in key and hash from a test contact (need checksum and contact_id):
- https://localhost:9005/rest.php?entity=civiproxy&action=getpreferences&key=SITE_KEY&version=3&json=1&checksum=&api_key=API_KEY&contact_id=
Translations
The languages available are in DI config named DonationInterfaceEmailPreferencesLanguages
The strings themselves live in emailForms/i18n