Example #1
0
 def facebook_registration_data(self, username=True):
     """
     Gets all registration data
     and ensures its correct input for a django registration
     """
     facebook_profile_data = self.facebook_profile_data()
     user_data = {}
     username = username_as_username_field()
     try:
         user_data = self._convert_facebook_data(facebook_profile_data, username=username)
     except OpenFacebookException, e:
         self._report_broken_facebook_data(user_data, facebook_profile_data, e)
         raise
    def register(self, request, form=None, **kwargs):
        """
        Create and immediately log in a new user.

        """
        if username_as_username_field():
            username, email, password = kwargs["username"], kwargs["email"], kwargs["password1"]
            # Create user doesn't accept additional parameters,
            new_user = get_user_model().objects.create_user(username, email, password)
            username_field = username
        else:
            email, password = kwargs["email"], kwargs["password1"]
            # Create user doesn't accept additional parameters,
            new_user = get_user_model().objects.create_user(email, password)
            username_field = email

        signals.user_registered.send(sender=self.__class__, user=new_user, request=request)
        authenticated_user = self.authenticate(request, username_field, password)
        return authenticated_user