Page MenuHomePhabricator

Make unsubscribe work in EmailPreferences, delete Unsub extension
Closed, ResolvedPublic2 Estimated Story Points

Description

DonationInterface's Special:EmailPreferences form should handle unsubscribe links from thank you letters

We will be removing the email address from the links and making donors manually write their email address.

  • Move over i18n messages
  • handle old-style links?

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes

Since we do not have epc on production, remove the unsubscribe extension will lead broken unsubscribe function for current donor, so it blocked until we have that epc works on production.

Ejegg added a subscriber: XenoRyet.

@AKanji-WMF @XenoRyet Since we're doing work on the unsubscribe code to handle one-click unsubscribes, it would be great to tackle this at the same time.

The one-click unsubscribe would not have any UI (it seems to be POSTed to from the Google servers), but this form would have a UI. We just need to know whether the email address should be pre-populated and get whatever legal sign-off was mentioned in https://phabricator.wikimedia.org/T223330#8951468 .

Since we do not have epc on production, remove the unsubscribe extension will lead broken unsubscribe function for current donor, so it blocked until we have that epc works on production.

https://donorpreferences.wikimedia.org/index.php?title=Special:EmailPreferences/emailPreferences&contact_id=54243389&checksum=863c3c3ec2370330049846d71d74ceb0_1705523717_168 we have it on prod now

Natalie Ngu from Email team updated the template, and Danny Bu is aware of it, move to done

Change 994366 had a related patch set uploaded (by Wfan; author: Wfan):

[mediawiki/extensions/DonationInterface@master] Set up unsubscribe for DonationInterface for remove FundraisingEmailUnsubscribe

https://gerrit.wikimedia.org/r/994366

Change 995269 had a related patch set uploaded (by Wfan; author: Wfan):

[wikimedia/fundraising/crm@master] remove contribution check from email unsubscribe

https://gerrit.wikimedia.org/r/995269

@AKanji-WMF, @XenoRyet , @DBu-WMF Can you help us determine the current requirements for an unsubscribe page? The patch in review uses a link with a contact ID and a checksum like those for the email prefs pages, then has the donor fill in their email and click to confirm the unsubscribe.

Since @DBu-WMF has confirmed we can take off the unsubscribe link in the footer of the transactional emails for the US, this will be used for whatever remaining markets we need to include it in the transactional emails.

  • What should we have on the link? The contact ID / checksum combo will prevent people from unsubscribing other contact's emails - but do we need to allow people to unsubscribe arbitrary email addresses even if they don't match the contact?
  • Should the email address be pre-populated? Someone from the email team a few years ago said we could leave it blank, but requirements may have changed.
  • Should we require the click to confirm?

@AnnWF once we have the replacement up, and maybe wait a year for ppl to stop clicking old links, we can delete the whole extension, deactivate the git repo, and mark that page as obsolete.

Screenshot 2024-02-12 at 12.22.54 PM.png (1×2 px, 209 KB)
Here is the updated email pref center unsubscribe ui if we want them to confirm email address and click for unsubscribe @AKanji-WMF, @XenoRyet , @DBu-WMF please advise if any change is needed. thanks

Screenshot 2024-02-12 at 12.22.54 PM.png (1×2 px, 209 KB)
Here is the updated email pref center unsubscribe ui if we want them to confirm email address and click for unsubscribe @AKanji-WMF, @XenoRyet , @DBu-WMF please advise if any change is needed. thanks

Got the response from @DBu-WMF that we would use the existing email preference center link instead of this unsubscribe page as image above to make it consistent, so next step is:
1: replacing the old unsubscribe link from email templates, update getUnsubscribeUrl to use new epc link
2: wait until next year of our new template's effective date, then uninstall the extension.

Change #1057929 had a related patch set uploaded (by Wfan; author: Wfan):

[wikimedia/fundraising/crm@master] Use epc as unsubscribe url for thank you email

https://gerrit.wikimedia.org/r/1057929

Change #995269 abandoned by Wfan:

[wikimedia/fundraising/crm@master] remove contribution check from email unsubscribe

Reason:

This requirement is no longer needed, we are using the epc for all unsubscribe

https://gerrit.wikimedia.org/r/995269

Change #1057929 merged by jenkins-bot:

[wikimedia/fundraising/crm@master] Use epc as unsubscribe url for thank you email

https://gerrit.wikimedia.org/r/1057929

Change #1073512 had a related patch set uploaded (by Ejegg; author: Ejegg):

[wikimedia/fundraising/crm@master] Simplify unsubscribe token using prefs crt link

https://gerrit.wikimedia.org/r/1073512

We need to consider at least 2 edge cases if switch to epc: 1: if civi down, we can not go to the unsubscribe 2: if checksum expired, we can not unsubscribe, so need to figure out a better way to handle that, revert the switch to epc patch, since we will have civi maintenance and need to see either we want to remove checksum or extent to a longer period do not depends on civi

After talked with @Ejegg, we think it's better to make a valid for 1 year checksum for email unsubscribe link, since the original checksum for civi might used by agent only valid for default 7 days, while for email we want to have the checksum valid longer like 365 days, the reason for still using checksum if to make sure people will able to get their unique link to only update their own preference, without reconfirm their email address, nor expose their email in the link which have risk to get preference update by non-owner. https://gerrit.wikimedia.org/r/c/wikimedia/fundraising/crm/+/1073512

Change #994366 merged by jenkins-bot:

[mediawiki/extensions/DonationInterface@master] Set up unsubscribe for DonationInterface for remove FundraisingEmailUnsubscribe

https://gerrit.wikimedia.org/r/994366

Blocked due to translation: related with T359445 for ty email unsubscribe link and T376514 for the overall cpc translation, and here is the docs email team made: https://docs.google.com/document/d/19-07kj4bAfG4WndSoC-jFitFyOH8jFgmS216p2yNtY8/edit?tab=t.0 will get email once they unblocked us, then we can have this one move back

We need this extension still, since they could be treat as a backup solution when civi is down (epc needs to use civi to validate the checksum), so this ticket can be close if Legal agree @AKanji-WMF

Change #1115151 had a related patch set uploaded (by Ejegg; author: Ejegg):

[mediawiki/extensions/DonationInterface@master] WIP template for legacy unsubscribe

https://gerrit.wikimedia.org/r/1115151

Change #1073512 abandoned by Wfan:

[wikimedia/fundraising/crm@master] Set civi unsubscribe email using prefs ctr link with 1 year valid checksum

https://gerrit.wikimedia.org/r/1073512

@AnnWF So as far as I understand we can close this task, and we should open another flagging that we should investigate whether or not we can wind down this extension. See also comment in parent task.

Closing as per my comment above