def _state_engine_process_login(request, challenge, engine, state, template_data): response = None next_state = _StateEngineStates.NOTICE if engine == "pledge-only": next_state = _StateEngineStates.PLEDGE if request.current_role: state = next_state else: form = ChallengesSigninForm(initial=request.GET) if request.method == "POST": form = ChallengesSigninForm(request.POST) if form.is_valid(): username = form.cleaned_data.get('email_address') password = form.cleaned_data.get('password') user = authenticate(username=username, password=password) login(request, user) request.current_role = change_current_role(request) state = next_state response = redirect('/challenges/%s/%s/%s' % (challenge.id, engine, state)) template_data['form'] = form if state == _StateEngineStates.LOGIN: response = render( request, 'spudderspuds/challenges/pages_ajax/signin.html', template_data) return response, state
def signin(request): form = ChallengesSigninForm(initial=request.GET) if request.method == "POST": form = ChallengesSigninForm(request.POST) if form.is_valid(): username = form.cleaned_data.get('email_address') password = form.cleaned_data.get('password') user = authenticate(username=username, password=password) login(request, user) role = change_current_role(request) redirect_url = form.cleaned_data.get('next') or role.home_page_path return redirect(redirect_url) return render(request, 'spudderspuds/challenges/pages/signin.html', {'form': form})
def signin(request): form = ChallengesSigninForm(initial=request.GET) if request.method == "POST": form = ChallengesSigninForm(request.POST) if form.is_valid(): username = form.cleaned_data.get('email_address') password = form.cleaned_data.get('password') user = authenticate(username=username, password=password) login(request, user) role = change_current_role(request) redirect_url = form.cleaned_data.get('next') or role.home_page_path return redirect(redirect_url) return render( request, 'spudderspuds/challenges/pages/signin.html', {'form': form})
def _state_engine_process_login(request, challenge, engine, state, template_data): response = None next_state = _StateEngineStates.NOTICE if engine == "pledge-only": next_state = _StateEngineStates.PLEDGE if request.current_role: state = next_state else: form = ChallengesSigninForm(initial=request.GET) if request.method == "POST": form = ChallengesSigninForm(request.POST) if form.is_valid(): username = form.cleaned_data.get('email_address') password = form.cleaned_data.get('password') user = authenticate(username=username, password=password) login(request, user) request.current_role = change_current_role(request) state = next_state response = redirect('/challenges/%s/%s/%s' % (challenge.id, engine, state)) template_data['form'] = form if state == _StateEngineStates.LOGIN: response = render(request, 'spudderspuds/challenges/pages_ajax/signin.html', template_data) return response, state