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