/**
 * user表单信息校验
 * Created by rhhz on 2017/3/22.
 */

$(function () {
    var loginForm = {
        rules: {
            "email": {
                required: true,
                remote: {
                    type: 'post',
                    url: local_host + 'member/checkUserExist',
                    data: {
                        email: function () {
                            return $('#loginForm').find('#email').val()
                        },
                        type: 'login'
                    }
                }
            },
            "password": {
                required: true
            },
            'authExpNum': {
                required: true,
                remote: {
                    type: 'post',
                    url: local_host + 'member/checkRegAuthExp',
                    data: {
                        authExpNum: function () {
                            return $('#authExpNum').val()
                        }
                    }
                }
            }
        },
        messages: {
            'email': {
                required: "请输入登录名",
                remote: '用户名不存在'
            },
            'password': {
                required: "请输入密码"
            },
            'authExpNum': {
                remote: '验证码错误',
                required: '请输入验证码'
            }
        }
    };
    $('#loginForm').validate({
        submitHandler: function (form) {
            $.ajax({
                url: local_host + "member/userLogin",
                type: 'post',
                data: {
                    email: $(form).find('#email').val(),
                    password: $(form).find('#password').val(),
                    remember: $('#remember').prop('checked')
                },
                success: function (data) {
                    if (data.valid) {
                        alert(data.message);
                        window.location.href = local_host;
                    }
                }
            })
        },
        rules: loginForm.rules,
        messages: loginForm.messages
    });


    // 注册
    var registerForm = {
        rules: {
            "email": {
                required: true,
                remote: {
                    type: "POST",
                    url: local_host + "member/checkUserExist",
                    data: {
                        email: function() {
                            return $('#email').val()
                        },
                        type: 'register'
                    }
                }
            },
            'password': {
                required: true
            }
        },
        messages: {
            'email': {
                required: "请输入密码",
                remote: '用户名已被注册'
            },
            'password': {
                required: "请输入确认密码"
            }
        }
    };
    $('#registerForm').validate({
        submitHandler: function (form) {
            console.log('定位');
            $(form).attr('action', local_host + 'member/register');
            $.ajax({
                url: local_host + "member/register",
                type: 'post',
                data: {
                    email: $(form).find('#email').val(),
                    password: $(form).find('#password').val()
                },
                success: function (data) {
                    alert('注册成功');
                },
                error: function () {
                    alert("测试")
                }
            })
        },
        rules: registerForm.rules,
        messages: registerForm.messages
    });


    // // 忘记密码第一步, 验证邮箱存在性
    var forgetPasswordFormOne = {
        rules: {
            "email": {
                required: true,
                remote: {
                    type: "POST",
                    url: local_host + "member/checkUserExist",
                    data: {
                        email: function () {
                            return $("#forgetPasswordFormOne").find('#email').val();
                        },
                        type: 'login'
                    }
                }
            },
            'code': {
                required: true,
                remote: {
                    type: 'post',
                    url: local_host + 'member/checkRegAuthExp',
                    data: {
                        authExpNum: function () {
                            return $('#code').val()
                        }
                    }
                }
            }
        },
        messages: {
            'email': {
                required: "请输入密码",
                remote: '用户不存在'
            },
            code: {
                required: '请输入验证码',
                remote: '验证码错误'
            }
        }
    };
    //修改密码第一步表单  校验邮箱是否存在
    $("#forgetPasswordFormOne").validate({
        submitHandler: function (form) {   		//表单提交句柄,为一回调函数，带一个参数：form
            // 跳转到第二步
            window.location.href = local_host + 'member/resetTwo?email=' + $(form).find('#email').val()
        },
        rules: forgetPasswordFormOne.rules,
        messages: forgetPasswordFormOne.messages
    });

    // 验证密码第二步, 获取验证码
    var forgetPasswordFormTwo = {
        rules: {
            "code": {
                required: true,
                remote: {
                    type: "POST",
                    url: local_host + "member/resetPass",
                    data: {
                        email: $('#email').html(),
                        code: function () {
                            return $("#code").val();
                        }
                    },
                    complete: function () {
                        $('#forgetPasswordFormTwo').find('button').removeAttr('disabled')
                    }
                }
            }
        },
        messages: {
            "code": {
                required: "请输入验证码",
                remote: "验证码输入错误"
            }
        }
    };

    //修改密码第二步表单  获取邮箱验证码
    $("#forgetPasswordFormTwo").validate({
        submitHandler: function (form) {
            window.location.href = local_host + 'member/resetThree?email=' + $(form).find('#email').html()
        },
        rules: forgetPasswordFormTwo.rules,
        messages: forgetPasswordFormTwo.messages
    });

    $('#forgetPasswordFormThree').validate({
        rules: {
            password: 'required',
            passwordConfirm: {
                equalTo: '#password'
            }
        },
        message: {
            password: {
                required: '请输入密码'
            },
            passwordConfirm: {
                equalTo: '两次密码输入不一致'
            }
        }
    })
});

// 发送验证码
function sendActiveCode(aEle) {
    $.ajax({
        url: local_host + 'member/sendResetPassEmail',
        type: 'post',
        dataType: 'json',
        data: {
            email: $('#email').html()
        },
        success: function (data) {
            if (data == true) {
                //验证码发送成功
                codeBackNum(aEle);
            } else {
                $(aEle).parent().siblings("span.yhm").html("验证码发送失败！");
                $(aEle).parent().siblings("span.yhm").css("display", "block");
            }
        }
    })
}

// 验证码重新发送计时
var wait = 60;
function codeBackNum(aEle) {
    if (wait == 0) {
        aEle.removeAttribute("disabled");
        $(aEle).html("获取验证码");
        wait = 60;
    } else {
        aEle.setAttribute("disabled", "disabled");
        $(aEle).html("(" + wait + ")秒后重新获取");
        wait--;
        setTimeout(function () {
            codeBackNum(aEle)
        }, 1000)
    }
}

// 验证码重新加载
function refreshImg(imgObj) {
    $(imgObj).attr('src', $(imgObj).attr('src') + '?r' + Math.random());
}
/**
 * 系统退出
 * @return
 */
function logout(){
	var url=local_host+"member/logout";
	var ajaxArgTemp={
			url : url,
			extraDate :{}, 
			returnFun:logoutByData 
		};
	ajaxPost(ajaxArgTemp);	
	window.location.href = local_host;
}
/** 系统退出 回调函数*/
function logoutByData(data, extraDate) {
	if (undefined != data && undefined != data.valid && "" != data.valid) {
		if ("false" == data.valid) {
			alert("意外错误，请联系管理员!");
		} 
		else {
			removeCookie();
		}
	}
}