def send_verified_email(request): if request.method == 'GET': return HttpResponseRedirect(reverse('user:settings')) user = request.user if user.email_verified: messages.error(request, '您的邮箱已验证') return HttpResponseRedirect(reverse('user:settings')) last_email = Email.objects.get(user=user) if (timezone.now() - last_email.timestamp).seconds < 60: messages.error(request, '一分钟内只能申请一次') else: try: email = Email.objects.get(user=user) email.token = email.generate_token() email.timestamp = timezone.now() email.save() except Email.DoesNotExist: email = Email(user=user) email.token = email.generate_token() email.save() finally: send_mail( '欢迎加入问问', '%s你好:\r\n请点击链接验证您的邮箱:%s%s' % (user.username, SITE_URL, reverse('user:email_verified', args=(user.id, email.token))), DEFAULT_FROM_EMAIL, [user.email], ) messages.success(request, '邮件发送成功,请到您的邮箱进行邮箱验证。如果没有收到验证邮件,请查阅你的垃圾信箱。') return HttpResponseRedirect(reverse('user:settings'))
def send_verified_email(request): if not request.method == 'POST': return redirect(reverse('user:settings')) user = request.user if user.email_verified: messages.error(request, '你的邮箱已经验证过了!') return redirect(reverse('user:settings')) last_email = Email.objects.get(user=user) if (timezone.now() - last_email.timestamp).seconds < 120: messages.error(request, '两分钟内只能申请一次!') else: try: email = Email.objects.get(user=user) email.token = email.generate_token() email.timestamp = timezone.now() email.save() except Email.DoesNotExist: email = Email(user=user) email.token = email.generate_token() email.save() finally: msg = '{} 你好:\r\n欢迎你注册成为会员,请点击链接验证你的邮箱bb:{}{}'.format( user.username, SITE_URL, reverse('user:email_verified', kwargs={ 'uid': user.id, 'token': email.token })) send_mail('欢迎加入!', msg, FROM_EMAIL, [user.email]) messages.success(request, '邮件已发送,请去邮箱验证!') return redirect(reverse('user:settings'))
def send_verified_email(request): if request.method == "GET": return HttpResponseRedirect(reverse("user:settings")) user = request.user if user.email_verified: messages.error(request, u"您的邮箱已经验证过了") return HttpResponseRedirect(reverse("user:settings")) last_email = None try: last_email = Email.objects.get(user=user) except: pass if last_email and (timezone.now() - last_email.timestamp).seconds < (3600 * 2): messages.error(request, u'两小时内只能申请验证一次哦!') else: try: email = Email.objects.get(user=user) email.token = email.generate_token() email.timestamp = timezone.now() email.save() except Email.DoesNotExist: email = Email(user=user) email.token = email.generate_token() email.save() finally: send_mail(u"欢迎加入NSLoger!", u"%s 你好:\r\n 欢迎您注册成为NSLoger会员,请点击链接验证您的邮箱: %s%s" % (user.username,SITE_URL, reverse("user:email_verified", args=(user.id, email.token))), "*****@*****.**", [user.email] ) messages.success(request, u"邮件已经发送,请去您的邮箱验证一下您的邮箱,如果未收到邮件,请去垃圾信箱看一下。") return HttpResponseRedirect(reverse("user:settings"))
def send_verified_email(request): if request.method == 'GET': return HttpResponseRedirect(reverse('user:settings')) user = request.user if user.email_verified: messages.error(request,'您的邮箱已经验证过了.') return HttpResponseRedirect(reverse('user:settings')) try: last_email = Email.objects.get(user=user) except Email.DoesNotExist: pass if (timezone.now() - last_email.timestamp).seconds < 60: messages.error(request, '一分钟之内只能申请一次.') else: try: email = Email.objects.get(user=user) email.token = email.generate_token() email.timestamp = timezone.now() email.save() except Email.DoesNotExist: email = Email(user=user) email.token = email.generate_token() email.save() finally: send_mail("欢迎加入", "%s 你好:\r\n请点击链接验证你的邮箱:%s%s," % ( user.username, SITE_URL, reverse('user:email_verified', args=(user.id, email.token))), "*****@*****.**", [user.email]) messages.success(request, '恭喜注册成功,请去您的邮箱验证。如果查不到邮件,那么可以垃圾邮箱中查收以下。') return HttpResponseRedirect(reverse('user:settings'))
def register(request): if request.method == "POST": form = RegisterForm(request.POST) if form.is_valid(): data = form.clean() new_user = Member.objects.create_user( username=data["username"], email=data["email"], password=data["password"] ) # Email 验证 # TODO new_user.save() email_verified = Email(user=new_user) email_verified.token = email_verified.generate_token() email_verified.save() send_mail( u"欢迎加入NSLoger", u"%s 你好:\r\n 请点击链接验证您的邮箱 %s%s" % ( new_user.username, SITE_URL, reverse("user:email_verified", args=(new_user.id, email_verified.token)), ), "*****@*****.**", [data["email"]], ) messages.success(request, u"恭喜您注册成功,请去您的邮箱验证一下您的邮箱,如果未收到邮件,请去垃圾信箱看一下。") # 注册成功后自动登陆 user = authenticate(email=data["email"], password=data["password"]) auth_login(request, user) go = reverse("bbs:index") if request.session.get("next"): go = request.session.pop("next") is_auto_login = request.POST.get("auto") if not is_auto_login: request.session.set_expiry(0) return HttpResponseRedirect(go) else: form = RegisterForm() return render(request, "people/register.html", {"form": form})
def register(request): if request.method == 'POST': form = RegisterForm(request.POST) if form.is_valid(): data = form.cleaned_data new_user = Member.objects.create_user(username=data['username'], email=data['email'], password=data['password']) new_user.save() email_verified = Email(user=new_user) email_verified.token = email_verified.generate_token() email_verified.save() #此处进行邮箱验证 try: send_mail( '欢迎加入问问', '%s你好:\r\n请点击链接验证您的邮箱:%s%s' % (new_user.username, SITE_URL, reverse('user:email_verified', args=(new_user.id, email_verified.token))), DEFAULT_FROM_EMAIL, [ data['email'], ]) except: messages.error( request, '由于测试期间服务器发送大量邮件,可能qq邮箱暂时禁止本站发送邮件,测试期间未验证邮箱不影响使用') messages.success(request, '恭喜注册成功,请到您的邮箱进行邮箱验证。如果没有收到验证邮件,请查阅你的垃圾信箱。') user = authenticate(username=data['username'], password=data['password']) auth_login(request, user) go = reverse('question:index') is_auto_login = request.POST.get('auto') if not is_auto_login: request.session.set_expiry(0) else: request.session.set_expiry(60) return HttpResponseRedirect(go) else: form = RegisterForm() return render(request, 'people/register.html', {'form': form})
def register(request): if request.method == 'POST': form = RegisterForm(request.POST) if form.is_valid(): data = form.cleaned_data new_user = Member.objects.create_user(username=data['username'], email=data['email'], password=data['password']) new_user.save() email_verified = Email(user=new_user) email_verified.token = email_verified.generate_token() email_verified.save() #email_verified send_mail( "Welcome", "%s Hello:\r\nplease click the link below to verify your email:%s%s" % (new_user.username, SITE_URL, reverse('user:email_verified', args=(new_user.id, email_verified.token))), "*****@*****.**", [data['email']]) messages.success( request, 'congratulations,please check the message in your email address.' ) user = authenticate(email=data['email'], password=data['password']) #check auth_login(request, user) #login go = reverse('question:index') is_auto_login = request.POST.get('auto') if not is_auto_login: request.session.set_expiry(0) else: request.session.set_expiry(60) return HttpResponseRedirect(go) else: form = RegisterForm() return render(request, 'people/register.html', {'form': form})
def register(request): if request.method == 'POST': form = RegisterForm(request.POST) if form.is_valid(): data = form.cleaned_data new_user = Member.objects.create_user( username=data['username'], email=data['email'], password=data['password2'], ) new_user.save() email_verified = Email(user=new_user) email_verified.token = email_verified.generate_token() email_verified.save() msg = "{} 你好:\r\n请点击链接验证你的邮箱:{}{}".format( new_user.username, SITE_URL, reverse('user:email_verified', kwargs={ 'uid': new_user.id, 'token': email_verified.token })) send_mail('欢迎加入', msg, FROM_EMAIL, [data['email']]) messages.success(request, '注册成功,请去你的邮箱进行验证!') user = authenticate(email=data['email'], password=data['password2']) auth_login(request, user) go = reverse('question:index') is_auto_login = request.POST.get('auto', False) if not is_auto_login: request.session.set_expiry(0) else: time = datetime.timedelta(days=30) request.session.set_expiry(time) return redirect(go) else: form = RegisterForm() return render(request, 'people/register.html', {'form': form})
def register(request): if request.method == "POST": form = RegisterForm(request.POST) if form.is_valid(): data = form.clean() new_user = Member.objects.create_user(username=data["username"], email=data["email"], password=data["password"]) # Email 验证 # TODO new_user.save() email_verified = Email(user=new_user) email_verified.token = email_verified.generate_token() email_verified.save() send_mail(u"欢迎加入NSLoger", u"%s 你好:\r\n 请点击链接验证您的邮箱 %s%s" % (new_user.username,SITE_URL, reverse("user:email_verified", args=(new_user.id, email_verified.token))), "*****@*****.**", [data["email"]] ) messages.success(request, u"恭喜您注册成功,请去您的邮箱验证一下您的邮箱,如果未收到邮件,请去垃圾信箱看一下。") #注册成功后自动登陆 user = authenticate(email=data["email"], password=data["password"]) auth_login(request, user) go = reverse("bbs:index") if request.session.get("next"): go = request.session.pop("next") is_auto_login = request.POST.get('auto') if not is_auto_login: request.session.set_expiry(0) return HttpResponseRedirect(go) else: form = RegisterForm() return render(request, 'people/register.html', { 'form': form, })
def profile(request): user = request.user if request.method == "POST": form = ProfileForm(request.POST, instance=user) if form.is_valid(): user = form.save(commit=False) if user.email != form.old_email: user.email_verified = False try: email_verified = Email.objects.get(user=user) except DoesNotExist: email_verified = Email(user=user) email_verified.token = email_verified.generate_token() email_verified.save() user.save() messages.success(request, '设置已更新') return render(request, 'people/settings.html', {'form': form}) else: form = ProfileForm(instance=user) q = Auth(AK, SK) buket_name = 'wenwenavatar' key_name = 'wenwenavatar/' + user.username returnBody = '{"name":$(fname),"key":$(key)}' returnUrl = SITE_URL + reverse('user:upload_headimage') mimeLimit = 'image/jpeg;image/png;' policy = { 'returnUrl': returnUrl, 'returnBody': returnBody, 'mimeLimit': mimeLimit, 'insertOnly': 0, } uptoken = q.upload_token(buket_name, key_name, 3600, policy) return render(request, 'people/settings.html', { 'form': form, 'user': user, 'uptoken': uptoken, })
def send_verified_email(request): if request.method == "GET": return HttpResponseRedirect(reverse("user:settings")) user = request.user if user.email_verified: messages.error(request, u"您的邮箱已经验证过了") return HttpResponseRedirect(reverse("user:settings")) try: email = Email.objects.get(user=user) email.token = email.generate_token() email.save() except Email.DoesNotExist: email = Email(user=user) email.token = email.generate_token() email.save() finally: send_mail(u"欢迎加入NSLoger", u"请点击链接验证您的邮箱 %s%s" % (SITE_URL, reverse("user:email_verified", args=(user.id, email.token))), "*****@*****.**", [user.email] ) messages.success(request, u"邮件已经发送,请去您的邮箱验证一下您的邮箱,如果未收到邮件,请去垃圾信箱看一下。") return HttpResponseRedirect(reverse("user:settings"))
def register(request): if request.method == 'POST': form = RegisterForm(request.POST) if form.is_valid(): data = form.cleaned_data new_user = Member.create_user(username=data['username'], email=data['email'], password=data['password']) new_user.save() email_verified = Email(user=new_user) email_verified.token = email_verified.generate_token() email_verified.save() # email_verified -> 邮箱验证函数 send_mail("欢迎加入", "%s 你好:\r\n请点击链接验证你的邮箱:%s%s," % ( new_user.username, SITE_URL, reverse('user:email_verified', args=(new_user.id, email_verified.token))), "*****@*****.**", [data['email']]) messages.success(request,'恭喜注册成功,请去您的邮箱验证。如果查不到邮件,那么可以垃圾邮箱中查收以下。') # *******check django 函数验证登录用户名和密码 ************* user = authenticate(email=data['email'],password=data['password']) # login auth_login(request,user) go = reverse('question:index') is_auto_login = request.POST.get('auto') if not is_auto_login: request.session.set_expiry(0) else: request.session.set_expiry(60) return HttpResponseRedirect(go) else: form = RegisterForm() return render(request,'people/register.html',{'form':form})