shane-tomlinson / browserid-wordpress

Wordpress plugin that adds Persona authentication
23 stars 16 forks source link

Add option to create user accounts for non-registered users #86

Open AdamWill opened 11 years ago

AdamWill commented 11 years ago

This is a long-standing request and I know the new maintainer knows about it (it was on the 'todo list' he posted on taking over the plugin), but I figured it can't hurt to have it properly tracked.

Currently you can only use Persona to log in to a blog if you already have an account at that blog with the associated email address. This isn't great for many configurations: I don't want to allow users to register accounts directly, I just want to allow them to log in via OpenID or Persona and have an account created automatically if necessary.

The plugin should be capable of creating a new user account if there is not yet one for the user's email address, if desired by the blog admin. There was a patch posted for this against an older version of the plugin at http://forum.faircode.eu/forums/topic/fix-for-new-unregistered-users/ back in January, but it was not implemented as a preference, so it wasn't accepted. I had a go at trying to make it into a preference but it didn't work and I couldn't figure out why. Now the code has been re-factored the patch would need re-doing anyway.

Be great if this feature could be added soon, it'd make Persona massively more useful for my blog. Thanks!

krydos commented 10 years ago

As I can see Persona plugin already have this feature... All that you need is a option "Disable non-Persona logins". After this on your registration page, user can register on your site using Persona.

ptrsmk commented 10 years ago

I don't know why KryDos thinks it is currently possible to register via Persona with this plugin. It very certainly is not. And it would very much add to the value of the plugin to be able to use it for registration. I hope that this is implemented soon.

shane-tomlinson commented 10 years ago

@dvrcthewrld - please watch the tone. @KryDos is correct, the plugin already allows for user registration. In fact, here is a screen shot from my own site:

screen shot 2014-02-07 at 10 39 10

To allow for user registrations using Persona, select "Disable non-Persona logins" from the Mozilla Persona settings menu:

screen shot 2014-02-07 at 10 41 00

As far as adding a feature to automatically create a user account if one is not found with the same email address. I added this feature at one point, then removed it because there is no way for users to change their username after the account is created. I can set the username to the user's email address, but people frequently want to be able to choose another username, and my own WP skills are insufficient to figure out how to add new screens. PRs welcome.

ptrsmk commented 10 years ago

No disrespect, but this is pure text; I didn't have a tone. However, I'm sorry that I wasn't clearer with my choice of words.

Yes, I realized last night that I have to eat my words; it is possible. I failed to check the registration page. The error message that shows up when you try to login with an unregistered email gives the impression that one must complete a standard registration process first. Moreover, there's nothing in the admin panel to make it clear that registration is possible via Persona.

I'm curious, why is it that non-Persona logins must be disabled in order to enable Persona registration? Is it because of the possibility that someone who originally registered via Persona might return and try to login with regular credentials?

I think it would be great to have the automatic registration that you designed. Granted, some people might not like it, but having a switch to turn it off would satisfy them. Users can't change their usernames--that's true--but, on my site, I'd rather they display their name anyhow. And they shouldn't even care about their username if they're logging in via Persona. Again, I get that some people don't like this, but it'd be a valuable option.

Even if this isn't implemented, it be great to have the option for two buttons on the Login screen: one for Login via Persona, the other "Register via Persona."

By the way, thanks for maintaining this plugin.

AdamWill commented 10 years ago

Just a +1 on dvrcthewrld - I'd like to allow OpenID and Persona login as options, with auto-registration if you're not already registered. Of course you don't have to do it, just pointing out that there's a use for it.

Erudition commented 9 years ago

+1 to dvrcthewrld. I also thought the feature was missing, it's very unclear. Same here - having to register seperately kinda defeats the convenience of Persona, especially in browsers that remember passwords.