Commit 3e89bbc3f87eae2545c1add5710ad7b089d2278a
Committed by
Sergio Oliveira
1 parent
1e559f6d
Exists in
master
and in
39 other branches
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 | + ) | ... | ... |