def login(request): if 'openid' in request.GET or request.method == 'POST': form = LoginForm(request.REQUEST) if form.is_valid(): client = _openid_consumer(request) try: auth_request = client.begin(form.cleaned_data['openid']) if QUERY_EMAIL: sreg = SRegRequest() sreg.requestField(field_name=SRegField.EMAIL, required=True) auth_request.addExtension(sreg) ax = FetchRequest() ax.add(AttrInfo(AXAttribute.CONTACT_EMAIL, required=True)) auth_request.addExtension(ax) callback_url = reverse(callback) state = SocialLogin.marshall_state(request) callback_url = callback_url + '?' + urlencode(dict(state=state)) redirect_url = auth_request.redirectURL( request.build_absolute_uri('/'), request.build_absolute_uri(callback_url)) return HttpResponseRedirect(redirect_url) except DiscoveryFailure, e: if request.method == 'POST': form._errors["openid"] = form.error_class([e]) else: return render_authentication_error(request)
def login(request): context = {} form = LoginForm(request.POST or None) context['form'] = form if request.method == 'POST' and form.is_valid(): username = form.cleaned_data['username'] password = form.cleaned_data['password'] try: next = request.GET['next'] except: next = '/user/dashboard' user = authenticate(username=username, password=password) if user is not None: login_auth(request, user) return redirect(next) else: # 400 form.errors['__all__'] = form.error_class(["Login failure. Verify your user/password combination"]) return render_to_response('user/login.html', context, context_instance=RequestContext(request))
def login(request): if request.method == 'POST': form = LoginForm(request.POST) if form.is_valid(): cd = form.cleaned_data user = authenticate(username=cd['username'], password=cd['password']) if user: auth_login(request, user) return HttpResponseRedirect(reverse('profile')) else: form.errors['__all__'] = form.error_class( ['Username or password incorrect']) else: form = LoginForm() return render(request, 'login_form.html', { 'form': form, })