Esempio n. 1
0
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
Esempio n. 2
0
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})
Esempio n. 3
0
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})
Esempio n. 4
0
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