wp-calypso
wp-calypso copied to clipboard
Plan: Update CTAs visual style on the plan management page
Proposed Changes
- This PR changes the CTAs visual style on the plan management page. ref: pebzTe-cs-p2
Testing Instructions
- Go to a site on a paid plan.
- Choose
Upgrades > Planson the left sidebar and clickManage planon the main panel. - The CTAs below the plan details card should look as follows:

Pre-merge Checklist
- [ ] Have you written new tests for your changes?
- [ ] Have you tested the feature in Simple (P9HQHe-k8-p2), Atomic (P9HQHe-jW-p2), and self-hosted Jetpack sites (PCYsg-g6b-p2)?
- [x] Have you checked for TypeScript, React or other console errors?
- [x] Have you used memoizing on expensive computations? More info in Memoizing with create-selector and Using memoizing selectors and Our Approach to Data
- [ ] Have we added the "[Status] String Freeze" label as soon as any new strings were ready for translation (p4TIVU-5Jq-p2)?
Related to #
Here is how your PR affects size of JS and CSS bundles shipped to the user's browser:
Sections (~142 bytes added 📈 [gzipped])
name parsed_size gzip_size
site-purchases +611 B (+0.0%) +142 B (+0.0%)
purchases +611 B (+0.0%) +142 B (+0.0%)
domains +21 B (+0.0%) +5 B (+0.0%)
Sections contain code specific for a given set of routes. Is downloaded and parsed only when a particular route is navigated to.
Legend
What is parsed and gzip size?
Parsed Size: Uncompressed size of the JS and CSS files. This much code needs to be parsed and stored in memory. Gzip Size: Compressed size of the JS and CSS files. This much data needs to be downloaded over network.
Generated by performance advisor bot at iscalypsofastyet.com.
I tried purchasing a subscription and going to the purchase management page and saw this:

It looks odd to not have an icon here when all the other ones do, and the sentence case is inconsistent (i.e. it should presumably be "Cancel subscription and refund" to match the others). If you're going to add icons and switch to sentence case, I think you need to do it everywhere -- there are actually lots of examples like this (the above is just one), for example "Cancel Domain" when cancelling a domain has the same problem, and there are many more.
I also noticed that for a subscription outside the refund window, I see this (again, another example with problems like the above):

But more important, if I go through and click "Cancel Subscription" in the above to (disable auto-renew), I now wind up on this screen, with yet another "Cancel Subscription" link:

But this time the "Cancel Subscription" link has a completely different meaning (it actually removes the subscription). I think that would be extremely confusing to the user.
All cases with a cancelation button should follow the above design. The bin icon + the Cancel label, all in red.
@JanaMW27: what are your thoughts on @DavidRothstein's comment above?
if I go through and click "Cancel Subscription" in the above to (disable auto-renew), I now wind up on this screen, with yet another "Cancel Subscription" link:
But this time the "Cancel Subscription" link has a completely different meaning (it actually removes the subscription). I think that would be extremely confusing to the user.
I'm in agreement that having the same wording for two separate actions is very confusing (to the point that there will likely be users that click it again because they think the app didn't work correctly).
I am currently working on changing the labels for this and improving the overall UX flow. For now, let's have: Cancel plan and refund (for user within refund window) In red and with the bin icon Cancel plan (for a user outside the refund window) In red and with the bin icon Remove plan (for a user with auto-renew off) In red and with the bin icon I think this will work in the meantime.
Rebased.
@JanaMW27 For expired purchases, the page shows Pick another plan instead of Upgrade plan but the upload icon doesn't fit the description. Could you give me another icon name for Pick another plan?
Can we use this one?
@JanaMW27 done. :)
All labels and icons are updated as per @JanaMW27 's suggestions.
This Pull Request is now available for translation here: https://translate.wordpress.com/deliverables/7528985
Thank you @taggon for including a screenshot in the description! This is really helpful for our translators.
Thank you! Could I ask for a piece of feedback that came in yesterday? The cancel and remove labels, and the icon can they be the same color as the other buttons, rather than red?
The cancel and remove labels, and the icon can they be the same color as the other buttons, rather than red?
@JanaMW27 already done.
Perfect! thank you!
@taggon: this feels really close. I tested the flows @DavidRothstein pointed out above, and they seem to be addressed. I did notice that after cancelling a domain, the button now says "Remove subscription". It should probably say "Remove domain" to follow the previous buttons.
I also tested add-ons and one-time purchases (like single premium themes and quick start sessions). They both look good.
It looks to me like the only remaining product that needs updating (aside from the domains remove button) are Earn purchases, which use a different card. There's a FG page that covers testing these purchases (PCYsg-lW4-p2).
the button now says "Remove subscription". It should probably say "Remove domain" to follow the previous buttons.
@michaeldcain Thanks for pointing it out. :) With the latest commit, the button says "Remove domain" if the purchase is a domain registration. The remove button of the Earn purchases should be handled in a follow-up PR to keep this PR focused on the plan management page. I'll create a new PR for that soon.

Rebased
Translation for this Pull Request has now been finished.
Created a followup issue for some small inconsistencies here, including the Earn issue mentioned above (which I don't think has a pull request yet): https://github.com/Automattic/wp-calypso/issues/68921