firebase / firebaseui-web

FirebaseUI is an open-source JavaScript library for Web that provides simple, customizable UI bindings on top of Firebase SDKs to eliminate boilerplate code and promote best practices.
https://firebase.google.com/
Apache License 2.0
4.59k stars 1.06k forks source link

Option to make accountChooser optional #42

Closed courthead closed 8 years ago

courthead commented 8 years ago

When users click "sign in with email", I think they expect to be shown a couple inputs where they can enter their email and password. However, instead they get this account chooser:

screen shot 2016-09-01 at 5 40 01 pm

I don't think this is an intuitive flow. As a user, I'm asking:

What are these "accounts"? I've never signed into this website with any of these email addresses. This looks like an OAuth flow. Are these my Google accounts? I don't know what an "account" is, so I don't know what the "Add Account" link does. I just want to type in an email address!

Is there a reason the UI works this way instead of standard email/password flow? At the very least can we use the term "email" instead of "account"?

erlgry commented 8 years ago

It would indeed be nice to have an option to disable the account chooser. It is confusing in that the account chooser and the google sign in screens look very similar. Further accountchooser.com is not something the end users understand or trust. Thus if an option to disable the account chooser was made available, in that case it would also be nice to display the email sign in form in-line, without the redirect or popup mode.

alfongj commented 8 years ago

Just to follow up, this is something we want to work on before the 1.0 milestone. Stay tuned!

courthead commented 8 years ago

Thanks @alfongj! If this is a blocker for anyone else reading this, you can simply implement a custom username/password login in addition to using this plugin, and display the two alongside each other seamlessly. I'm doing that here: https://www.indiehackers.com/sign-in

rlansky commented 8 years ago

If you are looking for an easy work-around to this problem, you can download the firebase-ui-auth.js file, make a one character change to the file, serve it up locally, and now it'll never show this picker.

Once you download the file, look for the text that reads: "accountChooserEnabled",!0

Once you find that, change the !0 to be !1

When you serve that version of the file from your server, it'll now never show the account chooser.

darrinm commented 8 years ago

It now appears that the config variable 'accountChooserEnabled': false disables the account chooser.

neelavar commented 8 years ago

I'd certainly agree with this issue of making 'accountChooser' optional.

The hack provided by rlansky works perfect. It would be useful to add this 'accountChooserEnabled' into the Config Options.

indiespace commented 8 years ago

@darrinm is right, it's been added. I can confirm it works too by adding the following to the config...

'accountChooserEnabled': false

Thanks @bojeil-google

TMSCH commented 8 years ago

This configuration parameter is not yet exposed, and won't work once we officially support this feature as part of the 1.0.0 release as it will be a different name. I would advise not to rely on this being the correct parameter until release 1.0.0.

bojeil-google commented 8 years ago

To disable accountChooser.com, use the following config: 'credentialHelper': firebaseui.auth.CredentialHelper.NONE

enun03 commented 6 years ago

Thanks @bojeil-google, adding the 'credentialHelper' property to the uiConfig object worked for me...