Exemplo n.º 1
0
def createUser(access, info):
    username = ''
    if 'last_name' in info:
        name = re.sub(r'[^a-zA-Z0-9]', '', info['last_name'])
        username = name[:18]
    if 'first_name' in info:
        name = re.sub(r'[^a-zA-Z0-9]', '', info['first_name'])
        l = 22 - len(username)
        username = name[:l] + username
    if len(username) < 5 and 'email' in info:
        name = re.sub(r'@.*$', '', info['email'])
        name = re.sub(r'[^a-zA-Z0-9]', '', name)
        l = 22 - len(username)
        username = name[:l] + username

    digest = hashlib.sha1(smart_bytes(access)).digest()
    digest = force_text(base64.urlsafe_b64encode(digest)).replace('=', '')
    username = username + '-' + digest[-7:]

    kwargs = {User.USERNAME_FIELD: username, 'email': '', 'password': None}
    if 'email' in info:
        kwargs['email'] = info['email']
    if 'first_name' in info:
        kwargs['first_name'] = info['first_name']
    if 'last_name' in info:
        kwargs['last_name'] = info['last_name']

    return User.objects.create_user(**kwargs)
Exemplo n.º 2
0
    def get_or_create_user(self, provider, access, info):

        "Create InOut user profile."
        kwargs = {
            'school':info.pop('school')['name']
        }
        info.pop('id')
        info.pop('created_at')
        info.pop('updated_at')
        email=info.pop('email')
        kwargs.update(info)
        new=InoutUser(**kwargs)


        digest = hashlib.sha1(smart_bytes(access)).digest()
        # Base 64 encode to get below 30 characters
        # Removed padding characters
        username = force_text(base64.urlsafe_b64encode(digest)).replace('=', '')
        User = get_user_model()
        kwargs = {
            User.USERNAME_FIELD: username,
            'password': None,
            'email':email


        }
        new_user=User.objects.create_user(**kwargs)
        new.participant = new_user
        new.save()
        return new_user
Exemplo n.º 3
0
def createUser(access, info):
    username = ''
    if 'last_name' in info:
        name = re.sub(r'[^a-zA-Z0-9]', '', info['last_name'])
        username = name[:18]
    if 'first_name' in info:
        name = re.sub(r'[^a-zA-Z0-9]', '', info['first_name'])
        l = 22 - len(username)
        username = name[:l] + username
    if len(username) < 5 and 'email' in info:
        name = re.sub(r'@.*$', '', info['email'])
        name = re.sub(r'[^a-zA-Z0-9]', '', name)
        l = 22 - len(username)
        username = name[:l] + username
    
    digest = hashlib.sha1(smart_bytes(access)).digest()
    digest = force_text(base64.urlsafe_b64encode(digest)).replace('=', '')
    username = username +'-'+ digest[-7:]
    
    kwargs = {
        User.USERNAME_FIELD: username,
        'email': '',
        'password': None
    }
    if 'email' in info:
        kwargs['email'] = info['email']
    if 'first_name' in info:
        kwargs['first_name'] = info['first_name']
    if 'last_name' in info:
        kwargs['last_name'] = info['last_name']
        
    return User.objects.create_user(**kwargs)
Exemplo n.º 4
0
 def get_or_create_user(self, provider, access, info):
     "Create a shell users.User."
     digest = hashlib.sha1(smart_bytes(access)).digest()
     # Base 64 encode to get below 30 characters
     # Removed padding characters
     username = force_text(base64.urlsafe_b64encode(digest)).replace('=', '')
     # Add basic user data to dictionary
     kwargs = {
         'username': username,
         'password': None,
         'language': self.request.LANGUAGE_CODE,
         'timezone': self.request.session.get('django_timezone', settings.TIME_ZONE),
     }
     # Add facebook data to dictionary
     kwargs.update({
         'first_name': info.get('first_name', ''),
         'last_name': info.get('last_name', ''),
         'birthday': User.prepare_birthday(info.get('birthday')),
         'gender': Genders.get_value(info.get('gender')),
     })
     # Create user
     user = User.objects.create_user(**kwargs)
     # Create new email
     new_email = NewEmail.objects.create_new_email(user, info['email'])
     # Send welcome email to user to verify email
     auth_emails.welcome(user)
     # Return user
     return user
Exemplo n.º 5
0
    def get_or_create_user(self, provider, access, info):

        "Create InOut user profile."
        kwargs = {'school': info.pop('school')['name']}
        info.pop('id')
        info.pop('created_at')
        info.pop('updated_at')
        email = info.pop('email')
        kwargs.update(info)
        new = InoutUser(**kwargs)

        digest = hashlib.sha1(smart_bytes(access)).digest()
        # Base 64 encode to get below 30 characters
        # Removed padding characters
        username = force_text(base64.urlsafe_b64encode(digest)).replace(
            '=', '')
        User = get_user_model()
        kwargs = {
            User.USERNAME_FIELD: username,
            'password': None,
            'email': email
        }
        new_user = User.objects.create_user(**kwargs)
        new.participant = new_user
        new.save()
        return new_user
Exemplo n.º 6
0
 def get_or_create_user(self, provider, access, info):
     "Create a shell custom.MyUser."
     username = info.get('username', None)
     email = info.get('email', None)
     name = info.get('name', None)
     if email is None:
         # No email was given by the provider so create a fake one
         digest = hashlib.sha1(smart_bytes(access)).digest()
         # Base 64 encode to get below 30 characters
         # Removed padding characters
         email = '*****@*****.**' % force_text(
             base64.urlsafe_b64encode(digest)).replace('=', '')
     User = get_user_model()
     """
     kwargs = {
         'email': email,
         'full_name': name,
         'password': None
     }
     """
     u = User.objects.create_user(username, email, None)
     profile = u.get_profile()
     profile.email = email
     profile.full_name = name
     profile.save()
     return u
Exemplo n.º 7
0
 def get_or_create_user(self, provider, access, info):
     "Create a shell custom.MyUser."
     username = info.get('username', None)
     email = info.get('email', None)
     name = info.get('name', None)
     if email is None:
         # No email was given by the provider so create a fake one
         digest = hashlib.sha1(smart_bytes(access)).digest()
         # Base 64 encode to get below 30 characters
         # Removed padding characters
         email = '*****@*****.**' % force_text(base64.urlsafe_b64encode(digest)).replace('=', '')
     User = get_user_model()
     """
     kwargs = {
         'email': email,
         'full_name': name,
         'password': None
     }
     """
     u = User.objects.create_user(username, email, None)
     profile = u.get_profile()
     profile.email = email
     profile.full_name = name
     profile.save()
     return u
Exemplo n.º 8
0
 def get_or_create_user(self, provider, access, info):
     "Create a shell custom.MyUser."
     email = info.get('email', None)
     if email is None:
         # No email was given by the provider so create a fake one
         digest = hashlib.sha1(smart_bytes(access)).digest()
         # Base 64 encode to get below 30 characters
         # Removed padding characters
         email = '*****@*****.**' % force_text(
             base64.urlsafe_b64encode(digest)).replace('=', '')
     User = get_user_model()
     kwargs = {'email': email, 'password': None}
     return User.objects.create_user(**kwargs)
Exemplo n.º 9
0
 def get_or_create_user(self, provider, access, info):
     "Create a shell custom.MyUser."
     email = info.get('email', None)
     if email is None:
         # No email was given by the provider so create a fake one
         digest = hashlib.sha1(smart_bytes(access)).digest()
         # Base 64 encode to get below 30 characters
         # Removed padding characters
         email = '*****@*****.**' % force_text(base64.urlsafe_b64encode(digest)).replace('=', '')
     User = get_user_model()
     kwargs = {
         'email': email,
         'password': None
     }
     return User.objects.create_user(**kwargs)