Esempio n. 1
0
def forget_password(request):
    if request.method == 'GET':
        return render(request, 'front_forgetpwd.html')
    else:
        form = ForgetpwdForm(request.POST)
        if form.is_valid():
            email = form.cleaned_data.get('email')
            user = FrontUserModel.objects.filter(email=email).first()
            if user:
                if send_email(
                        request,
                        email,
                        'front_reset_password',
                        subject='密码重置',
                        message=
                        u' 进行重置密码,请在10分钟内完成验证,工作人员不会向您索取验证码,请勿泄露。消息来自:Mack的博客'
                ):
                    return HttpResponse(u'邮件发送成功!')
                else:
                    return HttpResponse(u'邮件发送失败!')
            else:
                return render(request, 'front_forgetpwd.html',
                              {'error': u'该用户不存在!'})
        else:
            return render(request, 'front_forgetpwd.html',
                          {'error': form.get_error()})
Esempio n. 2
0
def update_email(request):
    if request.method == 'GET':
        return render(request, 'cms_email.html')
    else:
        form = UpdateEmailForm(request.POST)
        if form.is_valid():
            email = form.cleaned_data.get('email', None)
            # 如果邮箱存在
            if email:
                if send_email(request, email, 'cms_check_email'):
                    return redirect(reverse('cms_success_email'))
                else:
                    return redirect(reverse('cms_fail_email'))
        else:
            return render(request, 'cms_email.html', {'error': form.errors})
Esempio n. 3
0
def update_email(request):  # 更新email函数
    if request.method == 'GET':
        return render(request, 'cms_email.html')
    else:
        print "request.POST过来的数据 =", request.POST
        print "request.POST过来的数据email =", request.POST.get("email")
        form = UpdateEmailForm(request.POST)
        if form.is_valid():
            email = form.cleaned_data.get('email', None)
            print "form中的数据email =", email
            if send_email(request, email, 'cms_check_email'):  # 肯定都是发送成功的啦~
                return redirect(reverse('cms_email_success'))
            else:
                return redirect(reverse('cms_email_fail'))
        else:
            return render(request, 'cms_email.html', {'error': form.errors})
Esempio n. 4
0
def signup(request):
    if request.method == 'GET':
        #记住来源的url,如果没有则设置为首页('/')
        request.session['login_from'] = request.META.get('HTTP_REFERER', '/')
        return render(request, 'front_signup.html')
    else:
        form = SignupForm(request.POST)
        refresh_url = request.session['login_from']
        if form.is_valid():
            email = form.cleaned_data.get('email')
            username = form.cleaned_data.get('username')
            password = form.cleaned_data.get('password')

            # 给用户发送一封激活邮件
            cache_data = {
                'email': email,
                'username': username,
                'password': password
            }
            # 注册验证(检验邮箱 用户名是否已被注册)
            is_email_exist = FrontUserModel.objects.filter(
                email=email).exists()
            is_username_exist = FrontUserModel.objects.filter(
                username=username).exists()
            # print is_username_exist,is_email_exist
            if is_email_exist:
                return render(request, 'front_signup.html',
                              {'error': "该邮箱已被注册!"})
            if is_username_exist:
                return render(request, 'front_signup.html',
                              {'error': "账号已存在!"})
            elif send_email(request,
                            email,
                            'front_check_email',
                            subject='注册验证',
                            cache_data=cache_data,
                            message=u' 进行登录,工作人员不会向您索取验证码,请勿泄露。消息来自:Mack的博客',
                            signup=True):
                # 成功登录后返回原来页面
                # return HttpResponseRedirect(request.session['login_from'])
                return render(request, 'front_aftersignup.html',
                              {'refresh_url': refresh_url})
            else:
                return HttpResponse(u'邮件发送失败!')
        else:
            return render(request, 'front_signup.html',
                          {'error': form.get_error()})
Esempio n. 5
0
def forget_password(request):
    if request.method == 'GET':
        return render(request, 'front_forgetpwd.html')
    else:
        form = ForgetpwdForm(request.POST)
        if form.is_valid():
            email = form.cleaned_data.get('email')
            # request,email,check_url,cache_data=None,subject=None,message
            user = FrontUserModel.objects.filter(email=email).first()
            if user:
                if send_email(request, email, 'front_reset_password'):
                    return HttpResponse(u'邮件发送成功')
                else:
                    return HttpResponse(u'邮件发送失败')
            else:
                return HttpResponse(u'该邮件不存在')
        else:
            return render(request, 'front_forgetpwd.html', {'error': form.get_error()})
Esempio n. 6
0
def signup(request):  # 前台注册(附:注册必须check_email后账号才生效)
    if request.method == 'GET':
        return render(request, 'front_signup.html')
    else:
        form = SignupForm(request.POST)
        if form.is_valid():
            email = form.cleaned_data.get('email')
            username = form.cleaned_data.get('username')
            password = form.cleaned_data.get('password')

            # 给用户发送一封确认邮件
            # request,email,check_url,cache_data=None,subject=None,message=None
            cache_data = {
                'email': email,
                'username': username,
                'password': password
            }
            if send_email(request, email, 'front_check_email', cache_data):
                return HttpResponse(u'邮件发送成功')
            else:
                return HttpResponse(u'邮件发送失败')
        else:
            return myjson.json_params_error(message=form.get_error())