def bind(request): name = setting('SOCIAL_AUTH_PARTIAL_PIPELINE_KEY', 'partial_pipeline') try: backend = request.session[name]['backend'] except: return redirect("account_login") c = {} if request.method == 'GET': form = SocialSignupForm() else: timestamp = int(time.time() * 1000) password = random.randrange(timestamp - 100000, timestamp) form = SocialSignupForm(request.POST) if form.is_valid(): signup_view = SignupView() signup_view.request = request form.cleaned_data['password'] = password form.cleaned_data['password_confirm'] = password signup_view.form_valid(form) request.session['pass_bind'] = True return redirect('socialauth_complete', backend=backend) c['form'] = form c['backend'] = backend return render(request, 'misc/bind.html', c)