Closed
Bug 992388
Opened 11 years ago
Closed 9 years ago
Restyle FxA verification emails errors/success alert and migration prompt in sync preferences
Categories
(Firefox :: Sync, defect, P1)
Firefox
Sync
Tracking
()
RESOLVED
FIXED
Iteration:
43.3 - Sep 21
People
(Reporter: ckarlof, Assigned: markh)
Details
(Whiteboard: [fxsync])
Attachments
(3 files, 7 obsolete files)
977.83 KB,
application/zip
|
Details | |
13.96 KB,
patch
|
markh
:
review+
|
Details | Diff | Splinter Review |
2.71 KB,
patch
|
jaws
:
review+
|
Details | Diff | Splinter Review |
The relevant code is in browser/components/preferences/sync.js and browser/components/preferences/in-content/sync.js. On success, the browser shows a prompt indicating success. On failure, it does nothing.
It could fail for a variety of reasons, e.g.,
1) lack of network
2) various server errors, such as authentication errors and rate limiting
This probably deserves a better treatment, but for the Fx29 timeframe, we could just trigger the success prompt on all errors. I consider the resend button to be a bit of a "close door" button on the elevator anyway.
Reporter | ||
Comment 1•11 years ago
|
||
What do you think :markh?
Reporter | ||
Updated•11 years ago
|
Summary: The triggering the resending FxA verification emails doesn't handle errors → Triggering the resending FxA verification emails doesn't handle errors
Reporter | ||
Updated•11 years ago
|
Flags: needinfo?(jgruen)
Reporter | ||
Comment 2•11 years ago
|
||
We can do a proper error message for Fx31, but we need copy. For Fx29/30, we can leave it as is, or just show the success message on error. Right now it does nothing. Ryan, John, thoughts?
Flags: needinfo?(rfeeley)
Comment 3•11 years ago
|
||
Throwing the success box will provide a direct affordance (even if it's misleading). Probably a reasonable fix for 29.
For 31+ we can use something from this here (https://www.dropbox.com/s/6aoi7vk4jqn4v60/400%20and%20500%20Errors.pdf) as as a starting point.
Flags: needinfo?(jgruen)
Comment 5•11 years ago
|
||
(In reply to John Gruen from comment #4)
> Will follow up with Matej on Monday.
I'm on PTO Monday and Tuesday, but feel free to ping me today.
Reporter | ||
Comment 6•11 years ago
|
||
It's too late for changes for Fx29, but we can target Fx30 or Fx31.
Comment 7•11 years ago
|
||
I updated the Email Sent screen to include the potential error messages: https://www.dropbox.com/s/eith1ey3i8f7295/Email%20Sent.pdf
Reporter | ||
Comment 8•11 years ago
|
||
This needs string changes.
Reporter | ||
Comment 9•11 years ago
|
||
This needs string changes, so let's get the strings defined before Fx31 moves to aurora.
Assignee | ||
Updated•11 years ago
|
Flags: firefox-backlog?
Updated•11 years ago
|
Updated•11 years ago
|
Flags: firefox-backlog? → firefox-backlog+
Comment 10•11 years ago
|
||
Chris, if you want to see that bugs fixed in 31, this will have to land soon (we merge in 3 weeks).
Flags: needinfo?(ckarlof)
Reporter | ||
Comment 11•11 years ago
|
||
Given that our email verification rate is fairly high, I don't see any immediate evidence this is causing problems. It's a poor experience, but it doesn't need to be on 31.
Flags: needinfo?(ckarlof)
Reporter | ||
Updated•11 years ago
|
tracking-firefox31:
+ → ---
Reporter | ||
Updated•10 years ago
|
Priority: -- → P2
Assignee | ||
Comment 12•10 years ago
|
||
The migration code *does* handle errors [1], so we actually do have strings for this [2] - so it would actually be trivial to fix. Chris, given this, do you want to change the priority?
[1] https://dxr.mozilla.org/mozilla-central/source/services/sync/modules/FxaMigrator.jsm#507
[2] https://dxr.mozilla.org/mozilla-central/source/browser/locales/en-US/chrome/browser/accounts.properties#47
Flags: needinfo?(ckarlof)
Reporter | ||
Comment 13•10 years ago
|
||
I'm happy at P2. There's another sharp edge to address here. If a user's email address hard bounces, then we delete her account in our server. It would be nice to provide better treatment here because I believe it's a little difficult to subsequently re-signup with deliverable email.
Flags: needinfo?(ckarlof)
Reporter | ||
Updated•10 years ago
|
Priority: P2 → P1
Comment 14•10 years ago
|
||
I hacked something this afternoon, what do you think?
We would of course change the strings to have all the information in one sentence.
Assignee: nobody → edouard.oger
Status: NEW → ASSIGNED
Flags: needinfo?(rfeeley)
Reporter | ||
Updated•9 years ago
|
Iteration: --- → 43.1 - Aug 24
Comment 15•9 years ago
|
||
Looks great! Michael Maslaney did some visual design specs for this, although we would use the system font not Fira Sans. https://bugzilla.mozilla.org/show_bug.cgi?id=1091815
I like the close X for the notification.
Are you using existing colours or should I get them from Michael or Stephen Horlander?
Flags: needinfo?(rfeeley)
Updated•9 years ago
|
Flags: needinfo?(rfeeley)
Summary: Triggering the resending FxA verification emails doesn't handle errors → Restyle FxA verification emails errors/success alert and migration prompt in sync preferences
Comment 16•9 years ago
|
||
After watching the screenshots rfeeley provided, I took the initiative to also restyle the migration prompts. Here are the screenshots.
What else needs to be done Ryan?
I think the |verif_mail_ok| background color looks weird.
Attachment #8643412 -
Attachment is obsolete: true
Flags: needinfo?(rfeeley)
Comment 17•9 years ago
|
||
Here's my current working tree
Attachment #8646719 -
Flags: feedback?(markh)
Assignee | ||
Comment 18•9 years ago
|
||
Comment on attachment 8646719 [details] [diff] [review]
bug-992388.patch
Review of attachment 8646719 [details] [diff] [review]:
-----------------------------------------------------------------
Looks great!
::: browser/components/preferences/in-content/sync.js
@@ +445,5 @@
>
> // The "Learn more" link.
> if (!email) {
> let learnMoreLink = document.createElement("label");
> + learnMoreLink.id = "learnMoreLink";
is there a reason we can't have this in the .xul and just toggle its display value?
@@ +665,5 @@
> });
> },
>
> verifyFirefoxAccount: function() {
> + let changesyncStatusMessage = (data, isError = false) => {
ISTM it would be safe to assume that !data means isError = true;
@@ +688,5 @@
> +
> + let onSuccess = data => {
> + if (data) {
> + changesyncStatusMessage(data);
> + }
please cuddle the else on this line
::: browser/components/preferences/in-content/sync.xul
@@ +55,5 @@
> <button id="sync-migrate-resend"/>
> </hbox>
> </deck>
> </vbox>
> + <button id="syncStatusMessageClose">✖</button>
Is this unicode string used elsewhere? I've never seen it used before, so if it is used elsewhere, that's fine, but if it's not we should find something else similar and copy that.
::: browser/locales/en-US/chrome/browser/accounts.properties
@@ +1,5 @@
> # This Source Code Form is subject to the terms of the Mozilla Public
> # License, v. 2.0. If a copy of the MPL was not distributed with this
> # file, You can obtain one at http://mozilla.org/MPL/2.0/.
>
> +updateToFxa.title = Update
This string seems a little too "terse" - please check with Ryan that he's happy with that (he can see it in migration1.png in the .zip file)
@@ +44,5 @@
> verificationSentTitle = Verification Sent
> # LOCALIZATION NOTE (verificationSentHeading) - %S = Email address of user's Firefox Account
> verificationSentHeading = A verification link has been sent to %S
> verificationSentDescription = Please check your email and click the link to begin syncing.
> +verificationSentFull = A verification link has been sent to %S. Please check your email and click the link to begin syncing.
please copy the LOCALIZATION NOTE (changing the entity name) from above for this string.
Attachment #8646719 -
Flags: feedback?(markh) → feedback+
Comment 19•9 years ago
|
||
Hey hey Michael: your in-content prefs notification styles are spreading! Check out bug_992388_screenshots.zip screenshots above and let us know what HEX to use for red and green colours (and text colour white?).
Flags: needinfo?(mmaslaney)
Nice!
Please find the color palette here:
http://people.mozilla.org/~jgruen/chameleon/old/#nav5
Flags: needinfo?(mmaslaney)
Updated•9 years ago
|
Whiteboard: [fxsync]
Comment 21•9 years ago
|
||
New colors screenshots
Attachment #8646718 -
Attachment is obsolete: true
Flags: needinfo?(mmaslaney)
Assignee | ||
Comment 23•9 years ago
|
||
(In reply to Edouard Oger [:eoger] from comment #21)
> Created attachment 8647234 [details]
> new_screenshots.zip
>
> New colors screenshots
Note that the 3.55.24 screenshot is showing a successful resend of the verification mail, but the text is missing the email address (ie, it says "A verification link has been sent to . Please check your email..."
Comment 24•9 years ago
|
||
I was too lazy to wait for the fxa-auth-server send email unban, so I triggered the success message myself. No worries!
Assignee | ||
Comment 25•9 years ago
|
||
(In reply to Edouard Oger [:eoger] from comment #24)
> I was too lazy to wait for the fxa-auth-server send email unban, so I
> triggered the success message myself. No worries!
Fair enough :)
Reporter | ||
Comment 26•9 years ago
|
||
Is this blocked by the mmaslaney question? Ryan, can you help?
Flags: needinfo?(rfeeley)
Comment 27•9 years ago
|
||
"Learn more" link should be white and underlined, instead of blue on orange. Otherwise matching.
Flags: needinfo?(rfeeley) → needinfo?(edouard.oger)
Comment 28•9 years ago
|
||
Ready for review!
Attachment #8647235 -
Attachment is obsolete: true
Flags: needinfo?(mmaslaney)
Flags: needinfo?(edouard.oger)
Attachment #8652471 -
Flags: review?(markh)
Reporter | ||
Updated•9 years ago
|
Iteration: 43.1 - Aug 24 → 43.2 - Sep 7
Assignee | ||
Comment 29•9 years ago
|
||
Comment on attachment 8652471 [details] [diff] [review]
bug-992388.patch
Review of attachment 8652471 [details] [diff] [review]:
-----------------------------------------------------------------
Looks good, but I think we need to sort out that close button before landing.
::: browser/components/preferences/in-content/sync.xul
@@ +55,5 @@
> <button id="sync-migrate-resend"/>
> </hbox>
> </deck>
> </vbox>
> + <button id="syncStatusMessageClose">✖</button>
As I mentioned in comment 18, I'm not sure this is the way to do this - I'd expect a close-icon class like most other close buttons have.
Comment 30•9 years ago
|
||
Updated with close-icon and a bug fix related to the learnMoreLink.
Attachment #8652471 -
Attachment is obsolete: true
Attachment #8652471 -
Flags: review?(markh)
Attachment #8654253 -
Flags: review?(markh)
Assignee | ||
Updated•9 years ago
|
Attachment #8654253 -
Flags: review?(markh) → review+
Updated•9 years ago
|
Keywords: checkin-needed
Comment 31•9 years ago
|
||
Keywords: checkin-needed
Comment 32•9 years ago
|
||
Backed out for browser_bug731866.js failures.
https://treeherder.mozilla.org/logviewer.html#?job_id=4466630&repo=fx-team
https://hg.mozilla.org/integration/fx-team/rev/59062d51df42
Comment 33•9 years ago
|
||
Corrected patch for tests.
Attachment #8654253 -
Attachment is obsolete: true
Attachment #8655119 -
Flags: review?(markh)
Comment 34•9 years ago
|
||
Comment 35•9 years ago
|
||
Comment on attachment 8655119 [details] [diff] [review]
bug-992388.patch
Review of attachment 8655119 [details] [diff] [review]:
-----------------------------------------------------------------
Bad patch, display problems.
Attachment #8655119 -
Flags: review?(markh)
Comment 36•9 years ago
|
||
Removed the animations (side-effect of changing how we display the error message to pass tests :/)
Attachment #8655119 -
Attachment is obsolete: true
Attachment #8655173 -
Flags: review?(markh)
Comment 37•9 years ago
|
||
Reporter | ||
Comment 38•9 years ago
|
||
Markh will pick this up to add back in the animations in the next iteration.
Iteration: 43.2 - Sep 7 → 43.3 - Sep 21
Reporter | ||
Updated•9 years ago
|
Assignee: edouard.oger → markh
Assignee | ||
Comment 39•9 years ago
|
||
Comment on attachment 8654253 [details] [diff] [review]
bug-992388.patch
I think we should run with this version and fix the test.
Attachment #8654253 -
Attachment is obsolete: false
Assignee | ||
Updated•9 years ago
|
Attachment #8655173 -
Attachment is obsolete: true
Attachment #8655173 -
Flags: review?(markh)
Assignee | ||
Comment 40•9 years ago
|
||
Jaws,
The part1 of this bug is adding a hbox to the Sync prefs pane which is hidden using |visibility: collapse;|, but this causes browser_bug731866.js to fail as it only checks for visibility="hidden". We are doing it this way to get a pretty opacity transition and it looks fine in all our testing (ie, it is only visible when it should be).
The one-line fix for this is:
function is_hidden(aElement) {
...
- if (style.visibility != "visible")
+ if (style.visibility != "visible" && style.visibility != "collapse")
return true;
but I thought I better check there isn't something I'm missing! I've also changed the test to report the element ID that is failing, but that's obviously not part of the fix but makes tracking failures easier.
Attachment #8656942 -
Flags: review?(jaws)
Comment 41•9 years ago
|
||
Comment on attachment 8656942 [details] [diff] [review]
0002-Bug-992388-part-2-have-visibility-collapse-be-treate.patch
Review of attachment 8656942 [details] [diff] [review]:
-----------------------------------------------------------------
Yeah, I'm OK with this, but note that visibility:collapse; still allows margins to apply for XUL elements.
Do you have margins on your hbox? Due to this, maybe is_element_hidden should take an extra argument that allows visibility:collapse; to be considered as hidden? I'll let you use your judgement here. r=me
Attachment #8656942 -
Flags: review?(jaws) → review+
Assignee | ||
Comment 42•9 years ago
|
||
Thanks Jaws! While we don't have margins, on reflection I'm not that happy with this change, and it can be avoided simply by adding a "container" with the data-category attribute which seems cleaner - so I think I'll do that instead.
https://treeherder.mozilla.org/#/jobs?repo=try&revision=8cc9866c6053
Comment 44•9 years ago
|
||
Updated•9 years ago
|
blocking-b2g: 2.6? → ---
tracking-b2g:
backlog → ---
Updated•6 years ago
|
Component: Firefox Sync: UI → Sync
Product: Cloud Services → Firefox
You need to log in
before you can comment on or make changes to this bug.
Description
•