1 # -*- coding: utf-8 -*- vim:encoding=utf-8:
2 # vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab
4 from django.contrib.auth.models import User, UserManager, Permission, Group
5 from django.conf import settings
6 from flowspy.peers.models import *
7 from flowspy.accounts.models import *
10 def authenticate(self, **kwargs):
11 username = kwargs.get('username')
12 firstname = kwargs.get('firstname')
13 lastname = kwargs.get('lastname')
14 mail = kwargs.get('mail')
15 affiliation = kwargs.get('affiliation')
16 organization = kwargs.get('organization')
18 user = self._auth_user(username, firstname, lastname, mail, affiliation, organization)
25 def _auth_user(self, username, firstname, lastname, mail, affiliation, organization):
28 user = User.objects.get(username__exact=username)
30 user.first_name = firstname
31 user.last_name = lastname
32 # if organization == settings.SHIB_ADMIN_DOMAIN:
33 # user.is_staff = True
34 # user.is_superuser = True
35 # user.is_active = True
37 # The user did not exist. Create one with no privileges
40 user = User.objects.create_user(username, mail, None)
41 user.first_name = firstname
42 user.last_name = lastname
44 user.is_superuser = False
45 # if organization == settings.SHIB_ADMIN_DOMAIN:
46 # user.is_staff = True
47 # user.is_superuser = True
48 user.is_active = False
51 peer = Peer.objects.get(domain_name=organization)
52 up = UserProfile.objects.get_or_create(user=user,peer=peer)
57 def get_user(self, user_id):
59 return User.objects.get(pk=user_id)
60 except User.DoesNotExist: