Closed Bug 699952 Opened 13 years ago Closed 3 years ago

[tracker] Multiple emails in mozillians.org accounts

Categories

(Participation Infrastructure :: Phonebook, enhancement, P2)

enhancement

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: aakashd, Unassigned)

References

(Depends on 1 open bug)

Details

(Whiteboard: [ux][Triage 2015-04-17] [iam-RFE])

Attachments

(1 file)

Contributors are known to have multiple e-mail addresses tied to their Mozilla identity in the community. Mozillians.org only allows one e-mail to be shown on their profile (their log-in), but users should be able to add other e-mail addresses they'd like to be contacted by as opposed to their primary account. Two additional benefits: * Users like lorchard don't have to create two separate mozillians profiles. * This is an excellent opportunity to open up to the contributor metrics and webservice api work.
Blocks: 679407
Target Milestone: 1.2 → 1.3
Features: * Add new e-mails: Users can add new e-mail addresses to their profile. All e-mails are public to vouched mozillians only. * Delete e-mails: Users can delete their already added e-mail addresses. * Set as primary: If a user wants to adjust their primary/log-in e-mail address to be another added e-mail, then can do use by clicking on the "set as primary" button. Other things to note: "My Login" is changed to "Login/Emails". Also, groups is moved over to the left and the separation between the two columns in this edit profile set-up is personal info on the left and mozilla-related info on the right.
Severity: normal → enhancement
Depends on: 728877
Whiteboard: [good first bug]
Hey identity folks, We're looking to tackle authorizing primary/contact e-mail addresses against a user, but are stuck with BrowserId. We'd love to have something as simple as allowing a user to do the following steps to adding another primary/contact e-mail address to their account: 1. Go to Edit Profile 2. Add a new e-mail address 3. Press Enter/Click on "Activate button" 4. Verify its a valid e-mail address and tie it to the account. The reason we need to validate the e-mail addresses is do to a roadmap item for authorizing Mozillians using a Phonebook API. We need authorized e-mail addresses to do this. Any help would be greatly appreciated!
(In reply to Aakash Desai [:aakashd] from comment #3) > We're looking to tackle authorizing primary/contact e-mail addresses against > a user, but are stuck with BrowserId. We'd love to have something as simple > as allowing a user to do the following steps to adding another > primary/contact e-mail address to their account: > > 1. Go to Edit Profile > 2. Add a new e-mail address > 3. Press Enter/Click on "Activate button" > 4. Verify its a valid e-mail address and tie it to the account. Happy to help. Is this to add an additional email address to their profile? Is BrowserID stopping you, or is it not quite providing the feature you want? Specifically, can you walk us through the failure case? -Ben
BrowserID is not stopping us but creating a confusing user interaction. What we are trying to do is allow Mozillians' profiles to have multiple verified email addresses. Often Mozillians have multiple emails and use different ones to do different things (e.g. github / corporate email / bugmail) and often they are in a state of flux. We want to be able to verify that all these emails belong to the same mozillian to be able to take advantage of external api and provide services for other mozilla properties. The issue is that currently, to add a new email, a user would start from an 'account' page and click a button that says something like 'authenticate new email using browserID'. The popup would then show a dialogue asking them to sign in with an email (instead of adding a new email). Furthermore, according to Bram (ux guy on mozillians), if the user has multiple emails associated with one browserID account they might see the dialogue box and expect that all these email addresses will be connected to the Mozillians account. To sum it up, this is mostly a UX issue with the fact that the browserID copy can only be "sign in with browserID" even if signing in is not what you want to do.
Hi Owen, Thanks for the details. It sounds like what you need is different copy for the popup when you want to add an email address. We've considered this before but haven't prioritized it because we didn't have a use case for it. This will bump it, though I admit that we're kind of swamped right now so can you give us an estimate of when you need this? I *think* you can start as is, but of course that's your call to make.
See attachment 612916 [details] on bug 728877 for the mockup. Here are our two possible scenarios: 1. The user wants to add an email to Mozillians with ones he already has on BrowserID 2. The user wants to add an email to Mozillians, but that email is not registered with BrowserID yet Ideally, the BrowserID popup window should: 1. Remove the email that the user initially logs in with (hence, no bold) 2. Remove emails that our database already have If we can’t do #1 and 2, the user will have to look through the BrowserID email list, compare it with the one on Mozillians, determine the email he had not added, and then add that address. This solution is not ideal, but very lightweight. The only thing we have to do is change the button name to say “Add Email Address” to clarify the action. But if we are going to do so much email removal, can’t we just go straight to the “Add another email…” dialog? Unfortunately we can’t, because the text box only allows user to add new email, not existing.
Component: mozillians.org → Phonebook
Product: Websites → Community Tools
QA Contact: mozillians-org → phonebook
Target Milestone: 1.3 → ---
Version: unspecified → other
Would I be correct in saying that we would need to alter the email address field in the UserProfile model to use a 'ManyToManyField'? And then just do a lookup in the same way we check the groups ie by accessing it in the form: profile.emails.all() ?
(In reply to David Waddington :Davidw93 from comment #8) > Would I be correct in saying that we would need to alter the email address > field in the UserProfile model to use a 'ManyToManyField'? And then just do > a lookup in the same way we check the groups ie by accessing it in the form: > profile.emails.all() ? It shouldn't be a ManyToMany, since an email should uniquely identify a user. The relationship is: User(primary email is part of this) |-email |-email |-email So something more like class EmailAddress(Model): user = ForeignKey(User) That way we can look up an email address quickly and find the user associated with it.
Assignee: nobody → owen
Blocks: 700828
Blocks: 764132
Blocks: 764168
Assignee: owen → nobody
Assignee: nobody → davidw93.dw
David are you still working on this?
Since David hasn't commented recently, I'm going to assign this over to Giorgos so he can work on it.
Assignee: davidw93.dw → giorgos
Whiteboard: [ux]
See Also: → 858327
As mentioned in bug 858327 comment 2, if a user adds a Mozilla staff email address @mozilla{.com,.org,foundation.org} they should not be automatically added to the staff group. We should have them verify their Mozilla staff email address first. Similarly, I think it would be a good idea to verify all additional email addresses a user may add to their account. So if a user adds mysecondemail@example.com, they will receive a confirmation email with a link to verify that email address belongs to them. This bug may get included with our profile UX redesign plans this quarter. If so, we'll detail the requirements for this feature soon.
If the (In reply to William Reynolds [:williamr] from comment #12) > As mentioned in bug 858327 comment 2, if a user adds a Mozilla staff email > address @mozilla{.com,.org,foundation.org} they should not be automatically > added to the staff group. We should have them verify their Mozilla staff > email address first. Shouldn't the only way to add an email be through the persona api? Allowing persona to validate emails seems lika a much simpler approach than rolling code to send emails and create validation tokens and that kind of thing.
The watch API makes this a little difficult. Some people have used the old navigator.id.get (in addition to keeping your current watch) to work around collecting additional email addresses. I think either fmarier or callahad in #identity would have more details.
Is this bug closed or can I work on this?I am new to this place but want to contribute actively to this project.
No longer blocks: 700828
Assignee: giorgos → nobody
Making this a tracker bug for multiple emails in mozillians.org accounts. See https://mozillians.etherpad.mozilla.org/multiple-emails-specs-2014-09-29 for more details
Summary: Users should be able to add multiple e-mail addresses to their account → [tracker] Multiple emails in mozillians.org accounts
Depends on: 1076865
Depends on: 1076867
Depends on: 1076869
Depends on: 1076889
Depends on: 1076891
Depends on: 1092255
Depends on: 1116135
Depends on: 1118772
Depends on: 1119213
Depends on: 1149484
Depends on: 1150575
No longer blocks: 679407
Whiteboard: [ux] → [ux][Triage 2015-04-17]

It is possible to have multiple emails on a profile. Done.

Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Whiteboard: [ux][Triage 2015-04-17] → [ux][Triage 2015-04-17] [iam-RFE]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: