Page MenuHome

Simplify Blender ID registration
ClosedPublic

Authored by Anna Sirota (railla) on Jun 25 2021, 5:51 PM.

Details

Summary

Instead of requiring email verification before logging in, allow setting the password during registration and log in right away.
Score-based reCAPTCHA is used in the form to deter obvious abuse.

This allows redirecting right back to Blender Cloud /join without interrupting the subscription flow, see the video from the local dev server:

Deployment checklist

  • reCAPTCHA credentials must be copied to Sintel before this can be deployed

Diff Detail

Repository
rBID Blender ID

Event Timeline

Anna Sirota (railla) edited the summary of this revision. (Show Details)Jun 25 2021, 5:53 PM
bid_api/views/create_user.py
39–40

Just moving the already existing nickname generation elsewhere to make it reusable in the new registration flow, which no longer requires a nickname.

bid_main/templates/bid_main/login.html
34

This change is important, this is the goal of the simplification, allowing people to register and end up where they started (e.g., Blender Cloud subscription checkout).

blenderid/oauth2_urls.py
15

Email confirmation is no longer enforced on login, hence the custom view is no longer used here.

Anna Sirota (railla) added inline comments.
bid_main/templatetags/forms.py
9

RegistrationForm cannot use BootstrapModelFormMixin because it has to override __init___ in its own way, so this filter is used to do the same thing BootstrapModelFormMixin does, but directly in the template.

(It's worth completely replacing BootstrapModelFormMixin with this filter, for the sake of separating "business logic" from representation, however this is out of scope of this patch.)

Anna Sirota (railla) marked 3 inline comments as not done.Jun 28 2021, 11:35 AM
  • valiation typo fixed
This revision is now accepted and ready to land.Jun 28 2021, 7:20 PM