Closed Bug 874932 Opened 11 years ago Closed 11 years ago

Add a newsletter signup form (Firefox Marketplace - Firefox OS)

Categories

(Marketplace Graveyard :: Consumer Pages, defect, P1)

defect

Tracking

(Not tracked)

RESOLVED FIXED
2013-07-11

People

(Reporter: clouserw, Assigned: spasovski)

References

Details

(Whiteboard: [qa+])

Attachments

(4 files)

Attached image mockup
We'd like to encourage people to sign up for the Marketplace newsletter when we launch the Marketplace.  See the attached mockup for a visual design.  If you're not comfortable doing front and back development find someone to take the other side, or split this bug into two, or tell me.

Some notes for the frontend:

- This should only appear for logged in users
- This should only appear after a person has accessed the marketplace 3 times over 72 hours (so we're not asking them to join before they've had a chance to use it)
- If the person signs up, the spinner is for the POST to the server, and then the message at the end should appear for 2 seconds and then disappear
- If a person signs up or clicks the close button we don't show the message again (store in a cookie or localstorage)
- If you forget to add "Signing up..." to the middle pane I won't say anything
- you can track the 3x visits and show/hide stuff in localstorage.  if it gets reset it's not the end of the world

Some notes for the backend:
- I think we just need an API endpoint to talk to which passes through the email to exact target
- https://github.com/mozilla/basket-client/ is how we can talk to exact target.  pmac can help with questions about that

Let me know on IRC if you've got questions.
Depends on: 874958
Winston, Sakina and I met today to talk integration.

Key specs for this:

1) We'll have welcome emails set up for ES, PT-BR and PL by July 1

2) If the marketplace is live in other locales outside of the languages available for marketplace (ie the 3 above and others as we add them), the email opt-in should not show.

3) Signup form may (or may not) need HTML vs. Text fields as well as a privacy policy check box – Has this been discussed with privacy?

4) Email signup form will need to pass through the following fields:

EMAIL_ADDRESS_
EMAIL_FORMAT_
SOURCE_URL
COUNTRY_
LANGUAGE_ISO2
MARKETPLACE_FLG
MARKETPLACE_DATE
> EMAIL_ADDRESS_
> EMAIL_FORMAT_
> SOURCE_URL
> COUNTRY_
> LANGUAGE_ISO2
> MARKETPLACE_FLG
> MARKETPLACE_DATE

Please link to the documentation for these. Thanks
https://github.com/mozilla/zamboni/commit/3090dcf
Assignee: nobody → ashort
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → 2013-05-30
Whoops, meant to only close the backend bug.
Assignee: ashort → nobody
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Target Milestone: 2013-05-30 → ---
Assignee: nobody → dspasovski
Jess needs to see this before it goes live and help make sure everything is working correctly (right fields in right database, correct welcome email is fired from basket admin setup, etc.).

Please keep me posted when it's in a place where I can see it.
done: https://github.com/mozilla/fireplace/commit/a7b1862

You will need a FFOS device and you will need to launch it 3 times within 72 hours. The rest should match the mocks.
Status: REOPENED → RESOLVED
Closed: 11 years ago11 years ago
Resolution: --- → FIXED
Does it meet this spec?

If the marketplace is live in other locales outside of the languages available for marketplace (PT, ES, PL, EN), the email opt-in should not show.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
(In reply to Jessilyn Davis from comment #8)
> Does it meet this spec?
> 
> If the marketplace is live in other locales outside of the languages
> available for marketplace (PT, ES, PL, EN), the email opt-in should not show.

There's always a locale. There's always text on every page (i.e.: if we don't support your language, we don't leave things blank).

Do you mean region? Locale is language and region is country. I'm assuming you only want this available in the launch countries (independent of language).
Flags: needinfo?(jdavis)
This only shows up in the launch countries when the language is Spanish, Portuguese, Polish, or English.
Flags: needinfo?(jdavis)
The languages concern should be addressed with: https://github.com/mozilla/fireplace/commit/52517e4
Status: REOPENED → RESOLVED
Closed: 11 years ago11 years ago
Resolution: --- → FIXED
Target Milestone: --- → 2013-06-06
Thanks Davor.  This is disabled until we have a meeting w/ privacy
Reopening as a reminder that this is still outstanding until UX decides how to handle the privacy link.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Assignee: dspasovski → sgroth
Target Milestone: 2013-06-06 → ---
Privacy link has been decided.  We can use the same privacy policy as marketplace.
https://marketplace.firefox.com/privacy-policy  (this needs to be updated).

Need to design the link into the UI
Assignee: sgroth → msandberg
Keywords: uiwanted
Depends on: 884598
Just filed Bug 994598 to get the welcome email functionality in place.

I'm cc'ing Rebecca from QA so that she can run through testing when the form is in place and ready to go.


Please let us know when the form will be in a place for testing. 

Also please let me know when a mockup has been created for the new signup form flow given the conversation with Privacy.
(In reply to Jessilyn Davis from comment #15)
> Just filed *Bug 884598* to get the welcome email functionality in place.
Will - can you confirm with me how the "LANGUAGE_ISO2" field is set in the Marketplace signup form?

This will be crucial info to pass through - not only for triggering the right welcome email message in the right language - but also to make sure they get the right language for their Marketplace emails.
Flags: needinfo?(clouserw)
Sdonner - does your team have a Firefox OS phone that can test this functionality early next week?
(In reply to Jessilyn Davis from comment #17)
> Will - can you confirm with me how the "LANGUAGE_ISO2" field is set in the
> Marketplace signup form?

A question for Allen.
Flags: needinfo?(clouserw) → needinfo?(ashort)
(In reply to Jessilyn Davis from comment #18)
> Sdonner - does your team have a Firefox OS phone that can test this
> functionality early next week?

Yes, that won't be a problem at all.
Excellent - Thanks Stephen!

Allen - can you let me know how the form is configured to pass through the right "LANGUAGE_ISO2" field?
I'm not sure what that refers to, since there's nothing in the basket API with that name. We pass basket the language used for the marketplace UI, which can either be specified by the user in the URL or is detected from the browser directly.
Flags: needinfo?(ashort)
Thanks, Allen. We'll test it and see what happens.

Stephen, I think we're ready for QA!  Can you let me know who's available with an OS phone? I'll need to walk them through how to check in Exact Target for things as well and I'd love to see the sign up flow in person if possible (I'm in Mountain View). 
(FWIW, Rebecca is the resident QA expert on all things Exact Target and our email integration.)

I think the only other outstanding item at this point is the UX design needed in Comment 14.
Flags: needinfo?(stephen.donner)
(In reply to Jessilyn Davis from comment #23)
> Thanks, Allen. We'll test it and see what happens.
> 
> Stephen, I think we're ready for QA!  Can you let me know who's available
> with an OS phone? I'll need to walk them through how to check in Exact
> Target for things as well and I'd love to see the sign up flow in person if
> possible (I'm in Mountain View). 
> (FWIW, Rebecca is the resident QA expert on all things Exact Target and our
> email integration.)
> 
> I think the only other outstanding item at this point is the UX design
> needed in Comment 14.

Raymond should be able to help out with this -- if he's too busy, he/you can let me know, and we can find someone else -- ping us in #mozwebqa, too!  Cheers.
Flags: needinfo?(stephen.donner)
Raymond, can you start testing today/early tomorrow on this and let us know what you find?

Rebecca or I can help you find the people in the right places in Exact Target.

Thanks!
I'm working on snippets and the Firefox OS launch pages today. I wont be able to get to this until later today or early tomorrow.
Sounds perfect. Thanks Raymond!
Added privacy policy link and changed styling to the same as our other prompts. This one is 10px taller to make room for the PP link.
Assignee: msandberg → dspasovski
Keywords: uiwanted
raymond - basket changes went live today that will make the marketplace email signup form + welcome emails trigger happily!

To test:
1) Make sure your marketplace settings are for one of these language speaking countries: Spanish, Portuguese, Polish, or English.

2) Visit the marketplace 3 times over 72 hours to trigger the welcome email signup

3) Signup with a unique email address

4) Check to see you received the HMTL Marketplace welcome email in your language (note: I'm updating the language email code, but you'll see "Welcome- ES!" in the headline for the spanish one for now. This is in the process of being updated and will be live before EOD Saturday)

5) Rinse and repeat with the other languages.

6) Set your country/langauge to a non es, pt, pl, or en speaking country (ie France).
Visit the marketplace 3 times over 72 hours to try to trigger the welcome email signup.
Make sure the signup form is not triggered.
Jess - that is an awesome summary of how to verify, however, the form is not live yet, we just got the UI yesterday and the bug is assigned to davor.  Once he closes the bug we'll be able to verify.
Ah - awesome - thanks for the update!
Target Milestone: --- → 2013-07-04
Final touches added:

https://github.com/mozilla/fireplace/commit/ecb9b9d
Status: REOPENED → RESOLVED
Closed: 11 years ago11 years ago
Resolution: --- → FIXED
Sweet! This should work on dev-marketplace.mozilla.org - right?

Raymond - you're up!

I've got an OS device for backup testing if needed - and I'm happy to check email addresses in Exact Target to make sure the right flags show up in Master_Subscribers.  Raymond, just let me know which email addresses you sign up with and I can check 'em.
Not that we need to mention all the bugs here, but I just filed bug 888516, FYI.
(In reply to Jessilyn Davis from comment #33)
> Sweet! This should work on dev-marketplace.mozilla.org - right?

https://marketplace-dev.allizom.org

In your console enter the following:

    localStorage.removeItem('newscounter');
Also make sure you're in responsive mode or have minimized your screen to a narrow resolution.
Thanks cvan I meant to write the full conditions to test this repeatedly. So to summarize to see the newsletter be in responsive mode (cmd+option+m or ctrl+alt+m) with a narrow width and refresh the homepage 3 times in 72 hours.

Once you see the signup form http://cl.ly/image/350s0y1P333n a local storage entry is created so you never see it again (on the same device). 

cmd+option+k (or ctrl+alt+k) will open the FF console for you and type: 

localStorage.removeItem('newscounter');

then hit enter. This should remove the flag that you've seen the newsletter and it will show up again after 3 refreshes in 72 hours.
This is ready for QA.  The UX appears, which I've seen, but I don't know if all the exact target stuff works.
Whiteboard: [qa+]
Raymond - how's QA looking? I took a look in Exact Target this am and it looks like only a few test emails triggered the EN version. It'd be awesome to see if it works for the other locales too.
Before this goes live I definitely want to make sure that the non-EN language signup form is sending through the right language information and triggering the right welcome email...especially b/c there's not the explicit way for them to tell us language + country info.


This needs to be confirmed before it can go live. Otherwise we run the risk of spamming our subscribers = super bad for the user, and deliverability status of our email program.
It's scheduled to go live tomorrow at 2pm.  Please verify before then. Thanks.
:retornam, please see comment 39; thanks!
Flags: needinfo?(mozbugs.retornam)
Depends on: 889111
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
That issue only happens if you've saved your settings before submitting the newsletter and your email contains a plus. Try signing out and signing back in, then submitting the newsletter.
This signup form should NOT be pushed live if it's not working correctly.

To test - please see comment 29.

After you signup, you should get a marketplace welcome email in the correct corresponding language. Please be sure to test: EN, ES, PT and PL specifically.

When you get the welcome email, you should be able to click on the "Modify preferences" link in the header or footer to go to that subscribers email preference center. Make sure you change the locale of the email preference center to en-US so that the correct language and country info show up from Exact Target. (There's a bug with not showing the right country + language fields in the old l10n php email preference center links)

Confirm that the subscriber has the right country + language info, and subscription flags (Marketplace only), as expected from the language and country info you were on to subscribe to the newsletter.

Rbillings knows how to look up subscribers in Exact Target (as do I) - so we can double check email addresses and/or show you how to query for them - so that we can make sure that the subscription, country and language flags are correct in the email database.

Let me know if you have any questions and if I can be of help. I tried to trigger the marketplace signup to help test, but was unable to get it to work :/

Thanks for your help.
Sweet! I just double checked this subscriber/token info and it looks like the right flags were set and the right welcome email was sent. However, this was an existing subscriber which is a good test - but I can't see which fields changed when so I'm unsure if the language + country flags changed correctly or not (I *think* they were, but we need more testing to be sure).

Test cases left to test with unique (first time subscribers):
1) Sign up for Marketplace in ES
2) Sign up for Marketplace in PL
3) Sign up for Marketplace in PT
4) Sign up for Marketplace in EN
5) Try to trigger the Marketplace signup in JA (or another non: en, pl, pt or en locale) - and make sure it doesn't show the signup form.

These need to be tested and verified before the code can go live (planned for 2pm today).

Let me know if you have any questions and thanks again for your help.
(In reply to Jessilyn Davis from comment #47)
> These need to be tested and verified before the code can go live (planned
> for 2pm today).

Code is actually tagged before noon to give us time to test the final version.  Please aim for asap. :)
QA is stretched with moz.org testing. Retornam found a bug (to be filed) with the country (and possibly the language) not passing through correctly.

This feature needs to be punted to a future marketplace push. It's not ready for a noon push.
Just chatted with clouserw - please disable the signup form for this push. 

We'll run through more QA testing this week and file the bugs to be fixed next week when our basket devs are back online.
Thanks Davor!

Next steps:
QA to finish testing and filing bugs as blockers to this bug - this week
Pmac/basket devs to be around to help troubleshoot the form - early next week


We can check in Monday/Tuesday to see how testing and fixing bugs is going and figure out a timeline for it to go live.

Thanks all!
Depends on: 889458
Depends on: 889468
Verified fix on dev: able to sign up on marketplace with email including "+" and user appears in exact target
Target Milestone: 2013-07-04 → 2013-07-11
Sorry to flood this bug with more comments but here are updated instructions on how to test the form:

Requirements: User is signed in. UA is in responsive mode (width less than 710px).

1. Install `firebug` and also `firestorage plus` and delete the `newscounter` key. This will be versioned so you won't be able to do `localStorage.removeItem('newscounter')` since depending on the version it could look like `0::newscounter`. It's far easier to use Chrome's dev tools unfortunately.

2. Visit https://marketplace-dev.allizom.org/ and refresh 3 times. Eventually you should see this: http://cl.ly/image/3q1n1Q1c1p3W

If you're visiting from a new device/browser the 'newscounter' key won't exist so you should ignore step 1. Hopefully this clears things up a bit.
Thanks Davor! Quick question: How can QA test the language?

(Rbillings was able to verify "country" is passing through correctly.)
(In reply to Davor Spasovski [:spasovski] from comment #54)
> 1. Install `firebug` and also `firestorage plus` and delete the
> `newscounter` key. This will be versioned so you won't be able to do
> `localStorage.removeItem('newscounter')` since depending on the version it
> could look like `0::newscounter`. It's far easier to use Chrome's dev tools
> unfortunately.

Using a new profile is a much more standard way of testing.  We shouldn't need to install any add-ons.
Even easier:

1. Search for ":debug" in the marketplace 
2. Press the Clear localStorage button 
3. There is no step 3
Another testing scenario:

Sign up for the newsletter when your country in the marketplace settings hasn't been explicitly set.

(Question: How often will this scenario happen?)
(In reply to Jessilyn Davis from comment #58)
> (Question: How often will this scenario happen?)

Every user that doesn't have a SIM card will experience this.
Everything is ready from an engineering perspective. This is scheduled to go out this week barring any issues from QA.
Status: REOPENED → RESOLVED
Closed: 11 years ago11 years ago
Resolution: --- → WORKSFORME
Attached image pt-BR-newsletter
I was able to signup and receive the PT-BR newsletter
Resolution: WORKSFORME → FIXED
Sweet! Last two QA checks for verification:

1) Sign up with PL as the language
2) Try to trigger the marketplace for a non marketplace newsletter locale (ie ja) - and make sure it doesn't show
Will - when does QA need to be finished verification on here?
Flags: needinfo?(clouserw)
(In reply to Jessilyn Davis from comment #63)
> Will - when does QA need to be finished verification on here?

This is already on the train to go out tomorrow.  If you need it to not go tell me now.
Flags: needinfo?(clouserw)
Raymond - can you test these last two scenarios today?  If not, Stephen D, can you find someone to tackle?  This needs to be verified before it goes live.

1) Sign up with PL as the language
2) Try to trigger the marketplace for a non marketplace newsletter locale (ie ja) - and make sure it doesn't show
Flags: needinfo?(mozbugs.retornam)
(In reply to Jessilyn Davis from comment #65)
> 1) Sign up with PL as the language

What does this mean?
(In reply to Matt Basta [:basta] from comment #66)
> (In reply to Jessilyn Davis from comment #65)
> > 1) Sign up with PL as the language
> 
> What does this mean?

Set your language in the marketplace to Polish, trigger the signup form and then sign up.
http://cl.ly/image/0u0S3m1X2x10 Polish newsletter works
Flags: needinfo?(mozbugs.retornam)
The newsletter sign-up form was not shown when I used the Japanese local and set my country to worldwide.
I can confirm, using my Unagi w/today's B2G18 (i.e. v1-train) build that the Polish case works, and that the Japanese locale doesn't offer me the newsletter.

(re: comment 62).
Sweeeeet!  Thank you both for quickly testing!

We're good for this to go live tomorrow with the code push. \o/

When it goes live, please let us know in this bug so QA can test on prod.
And we're live!

https://marketplace.firefox.com/

Thanks everyone for your hard work on this! =)
Sweet! QA - can you verify that all looks good on prod if you haven't checked yet?
Summary: Add a newsletter signup form → Add a newsletter signup form (Firefox Marketplace - Firefox OS)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: