Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Signup: move MLB flow to Calypso #541

Closed
wants to merge 5 commits into from
Closed

Conversation

oskosk
Copy link
Contributor

@oskosk oskosk commented Nov 23, 2015

The current MLB signup flow is outside of Calypso. A new flow mlb is created by this PR.

Live preview here:

https://calypso.live/start/mlb.com/?branch=add/move-mlb-flow-to-calypso

Testing instructions

Task Roadmap

  • Create new signup flow mlb with steps: mlb-themes, domains and user.
  • Create step mlb-themes.
    • The step should have a select-like component/element with MLB teams choices. When changing the selection, the theme thumbnails should change to reflect team alternatives.
    • The theme selection Should show 3 themes thumbnails per team selection with Fan, Modern and Retro alternatives
    • Create an MlbThemeThumbnail component (maybe compositing over ThemeThumbnail or using the ThemeList component as proposed here ) Use the Theme component.
    • Make this step set Theme Option for user selected Team via wpcom API. (Currently not supported).
    • There should be a default theme for when the user clicks StepWrapper's Skip button without selecting a particular theme.
    • Add mlb property to analytics call.
  • Create step mlb-domains. Needs to be like the step domains but also proposing the special .mlblogs.com domain for free.
  • Style copytext after asking for advice on this topic.

Previous MLB signup flow

Current MLB signup flow

Current status

New MLB signup flow

@nb
Copy link
Member

nb commented Nov 25, 2015

See #431.

@oskosk oskosk force-pushed the add/move-mlb-flow-to-calypso branch 2 times, most recently from 59751a2 to 368374c Compare November 26, 2015 00:22

This step offers the user:

* Domain selection with proposal of free .mlblogs.com domain and regular ``.wordpress.com` domains and prices.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's an extra back tick here :)

@scruffian scruffian added the [Feature] Signup & Account Creation All screens and flows for making a new WordPress.com account. label Nov 26, 2015
stepName: 'mlb-domains',
apiRequestFunction: stepActions.createSite,
providesDependencies: [ 'siteSlug' ],
delayApiRequestUntilComplete: true
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we need this?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you mean delayApiRequestUntilComplete ? Or the whole definition? (as opposed to using just the Site step?)

If you meant the latter I can say that at first, I replicated the domains step definition, then changed it to be similar to site definition.

The thing is that the way the API will handle the creation of .mlblogs.com sites is still to be defined.
If it's implemented as a free product, then this step may be needing to provide the domainItem dependency also instead of just the siteSlug and use an API request function like stepAction.addDomainsItemToCart instead of stepAction.createSite.

And the mlb-domain step component would need to have some extra logic for handling submit. (Currently the Site step is handling the submit, sending the step data to the API using stepActions.createSite which demands less properties than stepActions.addDomainsItemToCart when submitting signup step.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

delayApiRequestUntilComplete is only needed if the user is going to go back and edit the content before the end of the flow. I don't think you need it here.

You're right though there is still a big question mark about how we implement the API. For now your solution of using createSite is fine.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So, in this case the anonymous user should not be able to get back to domain screen?

I mean, If the user is logged, there's no extra step after selecting domain. But if the user is anonymous there's still one more screen (the user step) where there's a back button that would allow to alter the domain.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought about it some more and I think you're right. Lets leave this how it is; that's the way its done in other flows.

@oskosk
Copy link
Contributor Author

oskosk commented Nov 30, 2015

New flow working

MLB signup flow

Now using the Theme component instead of a MlbThemeThumbnail which previously was a cannibalized ThemeThumbnail (from the theme-selection signup step).
@nb @scruffian please check last PR status.

@oskosk oskosk force-pushed the add/move-mlb-flow-to-calypso branch 4 times, most recently from e7aa6c3 to 588587d Compare December 3, 2015 01:11
@folletto
Copy link
Contributor

folletto commented Dec 3, 2015

Design wise, the flow seems good, and it works ok. 👍

If possible, but as a "nice to have", I'd suggest some smaller style changes to make it tighter:

mlb-mockup-i2

This also requires a small "trick" in the dropdown, having both "Select your team..." (new) and "MLB" pointing to the default MLB themes. I think it's a good compromise that causes no confusion. :)

@oskosk oskosk force-pushed the add/move-mlb-flow-to-calypso branch from 588587d to 6184e36 Compare December 3, 2015 20:11
@oskosk
Copy link
Contributor Author

oskosk commented Dec 4, 2015

After applying @folletto recommendations

After style review

@folletto
Copy link
Contributor

folletto commented Dec 4, 2015

Tested on Chrome, looks good design wise. :)

Two minor details (definitely not blockers):

  1. I'd try to make the dropdown the same width as the theme thumbnails.
  2. I'd make the ToS line (.mlb-theme-selection__terms p) with a font-size of 11px.

@oskosk oskosk force-pushed the add/move-mlb-flow-to-calypso branch 3 times, most recently from da8c7b0 to e2ba253 Compare December 4, 2015 16:35
@oskosk
Copy link
Contributor Author

oskosk commented Dec 16, 2015

Updates from #1628 are now taken in account here.

@oskosk oskosk force-pushed the add/move-mlb-flow-to-calypso branch 2 times, most recently from 6d32938 to ff12de5 Compare December 26, 2015 16:25
@oskosk oskosk force-pushed the add/move-mlb-flow-to-calypso branch from ff12de5 to e28effc Compare March 1, 2016 14:31
@fabianapsimoes
Copy link
Contributor

@oskosk what's the status of this PR?

@oskosk oskosk force-pushed the add/move-mlb-flow-to-calypso branch from e28effc to bedd146 Compare March 3, 2016 20:46
@oskosk
Copy link
Contributor Author

oskosk commented Mar 3, 2016

@fabianapsimoes I've been keeping this up to date with master. Also fixed for complying with lodash 4.x new interface.

Yesterday, I found a recent an issue. The URL for this signup flow /start/mlb is being interpreted by Calypso as if mlb was a language. This started happening when the updates introduced by #3177 where merged. So, now, when you load /start/mlb the page gets reloaded ad infinitum. I'm working towards a solution.

Besides that, there are still two things are for the complete functionality of the MLB signup flow.

Two updates on the API are needed.

  • One that allows the registration of free WordPress.com sites under the domain .mlblogs.com.
  • And another one that allows to configure a theme option on the newly created site. (this is how Team specific MLB themes are implemented).

@lancewillett
Copy link
Contributor

@oskosk Did this launch fully yet (including API changes)? Or is it abandoned?

@oskosk
Copy link
Contributor Author

oskosk commented Jun 3, 2016

This did not launch. Not int my plans to abandon it, but I haven't found the time to articulate the missing pieces.

…and props.stepName as interface for custom domain site creation

Previously the suffix .wordpress.com was fixed on site address input's suffix. Also the stepName was hardcoded on call to SignupActions.saveSignupStep().
It was /start/mlb but the three character url fragment conflicted with language in URL mechanism
@oskosk oskosk force-pushed the add/move-mlb-flow-to-calypso branch from bedd146 to dc60a29 Compare June 3, 2016 16:25
@oskosk
Copy link
Contributor Author

oskosk commented Jun 3, 2016

@lancewillett I've just updated this branch to have no conflicts with master and no conflicts with the language-recognition-from-URL mechanism mentioned in previous comment.

@lancewillett
Copy link
Contributor

Cool — next step, maybe code review and launch? :) I'm not pressuring it but wouldn't want to lose all your hard work if it gets stale or old.

@rickybanister
Copy link

@lancewillett you sound like a racketeer :P

@oskosk oskosk added [Status] Needs Review The PR is ready for review. This also triggers e2e canary tests and wp-desktop tests automatically. and removed [Status] In Progress labels Jun 3, 2016
@mtias mtias added [Status] Needs Author Reply and removed [Status] Needs Review The PR is ready for review. This also triggers e2e canary tests and wp-desktop tests automatically. labels Jul 7, 2016
@lancewillett
Copy link
Contributor

Abandoning and closing since we have bigger priorities at the moment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Feature] Signup & Account Creation All screens and flows for making a new WordPress.com account.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants