Commit 3e89bbc3f87eae2545c1add5710ad7b089d2278a

Authored by Carlos Coêlho
Committed by Sergio Oliveira
1 parent 1e559f6d

Reimplemented way to create user through browserid

Added more fields to create user with custom model

Signed-off-by: Carlos Oliveira <carlospecter@gmail.com>
Signed-off-by: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com>
Showing 1 changed file with 22 additions and 0 deletions   Show diff stats
colab/accounts/auth.py
  1 +import re
1 2  
2 3 from django_browserid.auth import BrowserIDBackend
3 4  
  5 +
4 6 class ColabBrowserIDBackend(BrowserIDBackend):
5 7 def filter_users_by_email(self, email):
6 8 return self.User.objects.filter(emails__address=email)
  9 +
  10 + def create_user(self, email):
  11 + username = "colab_" + re.split('@', email)[0]
  12 + password = None
  13 + extra_fields = {
  14 + 'first_name': "Colab",
  15 + 'last_name': "Colab",
  16 + }
  17 +
  18 + user = self.User.objects.filter(emails__address=email)
  19 +
  20 + if len(user) is not 0:
  21 + return user
  22 +
  23 + return self.User.objects.create_user(
  24 + username,
  25 + email,
  26 + password,
  27 + **extra_fields
  28 + )
... ...