def form_valid(self, form): user = form.save() if user.user_profile is None: profile = UserProfile(user=user) else: profile = user.user_profile gender = form.cleaned_data.get('gender') if gender is not None and not 'x' in gender: profile.gender = gender profile.send_newsletters = form.cleaned_data.get( 'marketing_optin') != 'false' profile.activation_key = profile.generate_activation_key() profile.detected_country = self.request.country profile.preferred_currency = self.request.session.get( 'preferred_currency', '') profile.save() Events(self.request).user_signup(user) # login user password = form.cleaned_data.get('password') user = authenticate(username=user.username, password=password) login(self.request, user) messages.success(self.request, REGISTER_SUCCESS_MESSAGE) return render(self.request, "mailing_lists/fragments/capture_complete.html")