def wx_register(request): if request.method == 'POST': response = HttpResponse() response['Content-Type'] = "text/javascript" openid = request.REQUEST.get('openid', None) u_ajax = request.POST.get('name', None) if u_ajax: response['Content-Type'] = "application/json" r_u = request.POST.get('param', None) u = User.objects.filter(username=r_u) if u.exists(): response.write('{"info": "用户已存在","status": "n"}') # 用户已存在 return response else: response.write('{"info": "用户可以使用","status": "y"}') return response form = WXRegisterForm(request.POST) if form.is_valid(): username = request.REQUEST.get('username', None) pwd1 = request.REQUEST.get('password', None) pwd2 = request.REQUEST.get('password2', None) em = request.REQUEST.get('email', None) flag = 0 u = User.objects.filter(username=username) if u.exists(): form.valiatetype(2) flag = 1 if pwd1 != pwd2: form.valiatetype(3) flag = 1 if flag == 1: return render_to_response("wx_reg.html", {'form': form, 'openid': openid}, context_instance=RequestContext(request)) elif pwd1 == pwd2: new_user = User.objects.create_user(username=username, password=pwd1) new_user.save() u = UserInformation(user=new_user, photo_url='/static/upload/default.png', email=em, abcdefg=pwd1) u.save() user = auth.authenticate(username=username, password=pwd1) auth.login(request, user) u = UserInformation.objects.filter(user_id=User.objects.filter(username=username)[0].id) tl = ThirdLogin.objects.filter(userInfo_id=u[0].id) if tl.exists(): tl = ThirdLogin.objects.get(userInfo_id=u[0].id) tl.wxopenId2 = openid tl.save() else: tl = ThirdLogin(wxopenId2=openid, wxFlag2=0) tl.userInfo = u[0] tl.wxFlag2 = 1 tl.wxBlock = 0 tl.save() #直接定向到首页 return HttpResponseRedirect(reverse('searchindex')) else: return render_to_response("wx_reg.html", {'form': form, 'openid': openid}, context_instance=RequestContext(request)) else: form = WXRegisterForm() openid = request.GET.get('openid', None) return render_to_response("wx_reg.html", {'form': form, 'openid': openid}, context_instance=RequestContext(request))
def wx_binding(request): # print "get a request in wx_binding" # print "method is :"+request.method if request.method == 'POST': username = request.REQUEST.get('log_un', None) pwd = request.REQUEST.get('log_pwd', None) code = request.REQUEST.get('log_code', None) openid = request.REQUEST.get('openid', None) if username is None: form = WXLoginForm(request.POST) if form.is_valid(): cd = form.clean() # username = cd['username'] # pwd = cd['password'] username = request.REQUEST.get('username', None) pwd = request.REQUEST.get('password', None) user = auth.authenticate(username=username, password=pwd) if user is None: a = 2 elif not user.is_active: a = 3 else: auth.login(request, user) a = 1 if a == 1: a = request.REQUEST.get('next', None) if a: return HttpResponseRedirect(a) else: u = UserInformation.objects.filter(user_id=User.objects.filter(username=username)[0].id) tl = ThirdLogin.objects.filter(userInfo_id=u[0].id) if tl.exists(): tl = ThirdLogin.objects.get(userInfo_id=u[0].id) tl.wxopenId2 = openid tl.save() else: tl = ThirdLogin(wxopenId2=openid, wxFlag2=0) tl.userInfo = u[0] tl.wxFlag2 = 1 tl.wxBlock = 0 tl.save() return HttpResponseRedirect(reverse('searchindex')) else: form.valiatetype(a) return render_to_response('wx_login.html', {'form': form, 'openid': openid}, context_instance=RequestContext(request)) else: return render_to_response('wx_login.html', {'form': form, 'openid': openid}, context_instance=RequestContext(request)) return refresh_header(request, user_auth(request, username, pwd, code)) else: form = WXLoginForm() next = request.GET.get('next', None) openid = request.GET.get('openid', None) return render_to_response('wx_login.html', {'form': form, 'next': next, 'openid': openid}, context_instance=RequestContext(request))
def wx_register(request): if request.method == 'POST': response = HttpResponse() response['Content-Type'] = "text/javascript" openid = request.REQUEST.get('openid', None) u_ajax = request.POST.get('name', None) if u_ajax: response['Content-Type'] = "application/json" r_u = request.POST.get('param', None) u = User.objects.filter(username=r_u) if u.exists(): response.write('{"info": "用户已存在","status": "n"}') # 用户已存在 return response else: response.write('{"info": "用户可以使用","status": "y"}') return response form = WXRegisterForm(request.POST) if form.is_valid(): username = request.REQUEST.get('username', None) pwd1 = request.REQUEST.get('password', None) pwd2 = request.REQUEST.get('password2', None) em = request.REQUEST.get('email', None) flag = 0 u = User.objects.filter(username=username) if u.exists(): form.valiatetype(2) flag = 1 if pwd1 != pwd2: form.valiatetype(3) flag = 1 if flag == 1: return render_to_response( "wx_reg.html", { 'form': form, 'openid': openid }, context_instance=RequestContext(request)) elif pwd1 == pwd2: new_user = User.objects.create_user(username=username, password=pwd1) new_user.save() u = UserInformation(user=new_user, photo_url='/static/upload/default.png', email=em, abcdefg=pwd1) u.save() user = auth.authenticate(username=username, password=pwd1) auth.login(request, user) u = UserInformation.objects.filter(user_id=User.objects.filter( username=username)[0].id) tl = ThirdLogin.objects.filter(userInfo_id=u[0].id) if tl.exists(): tl = ThirdLogin.objects.get(userInfo_id=u[0].id) tl.wxopenId2 = openid tl.save() else: tl = ThirdLogin(wxopenId2=openid, wxFlag2=0) tl.userInfo = u[0] tl.wxFlag2 = 1 tl.wxBlock = 0 tl.save() #直接定向到首页 return HttpResponseRedirect(reverse('searchindex')) else: return render_to_response("wx_reg.html", { 'form': form, 'openid': openid }, context_instance=RequestContext(request)) else: form = WXRegisterForm() openid = request.GET.get('openid', None) return render_to_response("wx_reg.html", { 'form': form, 'openid': openid }, context_instance=RequestContext(request))
def wx_binding(request): # print "get a request in wx_binding" # print "method is :"+request.method if request.method == 'POST': username = request.REQUEST.get('log_un', None) pwd = request.REQUEST.get('log_pwd', None) code = request.REQUEST.get('log_code', None) openid = request.REQUEST.get('openid', None) if username is None: form = WXLoginForm(request.POST) if form.is_valid(): cd = form.clean() # username = cd['username'] # pwd = cd['password'] username = request.REQUEST.get('username', None) pwd = request.REQUEST.get('password', None) user = auth.authenticate(username=username, password=pwd) if user is None: a = 2 elif not user.is_active: a = 3 else: auth.login(request, user) a = 1 if a == 1: a = request.REQUEST.get('next', None) if a: return HttpResponseRedirect(a) else: u = UserInformation.objects.filter( user_id=User.objects.filter( username=username)[0].id) tl = ThirdLogin.objects.filter(userInfo_id=u[0].id) if tl.exists(): tl = ThirdLogin.objects.get(userInfo_id=u[0].id) tl.wxopenId2 = openid tl.save() else: tl = ThirdLogin(wxopenId2=openid, wxFlag2=0) tl.userInfo = u[0] tl.wxFlag2 = 1 tl.wxBlock = 0 tl.save() return HttpResponseRedirect(reverse('searchindex')) else: form.valiatetype(a) return render_to_response( 'wx_login.html', { 'form': form, 'openid': openid }, context_instance=RequestContext(request)) else: return render_to_response( 'wx_login.html', { 'form': form, 'openid': openid }, context_instance=RequestContext(request)) return refresh_header(request, user_auth(request, username, pwd, code)) else: form = WXLoginForm() next = request.GET.get('next', None) openid = request.GET.get('openid', None) return render_to_response('wx_login.html', { 'form': form, 'next': next, 'openid': openid }, context_instance=RequestContext(request))