$(document).ready(function() {
    // index.initRegValidator();
    // index.initRegGoValidator();
});
var Regflag = true;
var index = {
    /**
     * 随机数字
     */
    getRandomStr : function() {
        return parseInt(Math.random() * 1000);
    },
    /**
     * 滚动最新信息点
     */
    scrollLatestManors : function() {
        $('.ihome_news_list>div:last-child').css("display", "none").css("height", "0px").css("padding",
                "0px 15px").prependTo(".ihome_news_list");
        $('.ihome_news_list>div:first-child').animate({
            height : '60px',
            paddingTop : '17px',
            paddingBottom : '17px'
        }, 1000, function() {
            index.traceManor(this);
        });
    },

    refreshImg : function(id) {
        $("#" + id).attr("src", $("#" + id).attr("src") + "#");
    },
    replace : function(id) {
        var value = $("#" + id).val();
        if (value.indexOf(" ") != -1) {
            $("#" + id).val(value.replace(/\s/g, ''));
        }
    },
    /**
     * 个人用户注册的第一步表单验证
     */
    checkUserRegisterOne : function() {
        $("#hiddendotype").val("");
        var result = 0;// index.checkEmail();
        if (result == 0) {
            /** 邮箱地址 */
            var account_no = $('#email').val();
            if (account_no == "" || account_no == null) {
                $('#hiddendotype').val("no");
                $('#emailsuggest').hide();
                $('#emailerror').show().find("p").text("请输入常用的邮箱");
            } else if (/^([a-zA-Z0-9]+[_|\_|\.|\-]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/
                    .test(account_no) == false) {
                $('#hiddendotype').val("no");
                $('#emailsuggest').hide();
                $('#emailerror').show().find("p").text("请输入正确的邮箱地址");
            }

        }

        var alias = $('#alias').val();
        var val = $('#alias').val().length;
        if (alias == "" || alias == null || alias == "作为您以后的登录账号") {
            $('#hiddendotype').val("no");
            $('#aliassuggest').hide();
            $('#aliaserror').show().find("p").text("请输入用户名");
        } else if (!(/^[a-zA-Z][a-zA-Z0-9_]*$/.test(alias))) {
            $('#hiddendotype').val("no");
            $('#aliassuggest').hide();
            $('#aliaserror').show().find("p").text("必须由数字,字母,下划线组成,并且以字母开头");
        } else if (val < 4 || val > 20) {
            $('#hiddendotype').val("no");
            $('#aliassuggest').hide();
            $('#aliaserror').show().find("p").text("用户名长度必须为4-20位字符");
        }

        /** 创建密码 */
        var password = $('#password').val();
        if (password == "" || password == null) {
            $('#hiddendotype').val("no");
            $('#passwordsuggest').hide();
            $('#passworderror').show().find("p").text("请输入密码");
        } else if (/^[\u0391-\uFFE5\w]+$/.test(password) == false) {
            $('#hiddendotype').val("no");
            $('#passwordsuggest').hide();
            $('#passworderror').show().find("p").text("请输入英文字母、数字和下划线");
        } else if (password.length < 6) {
            $('#hiddendotype').val("no");
            $('#passwordsuggest').hide();
            $('#passworderror').show().find("p").text("密码太短了，最少为6位。");
        } else {
            var len;
            var i;
            var isPassword = true;
            len = 0;
            for (i = 0; i < password.length; i++) {
                if (password.charCodeAt(i) > 255)
                    isPassword = false;
            }
            var and_string = password.charAt(0);
            var and_num = 0;
            if (!isPassword || password.length > 16 || password.length < 6) {
                $('#hiddendotype').val("no");
                $('#passwordsuggest').hide();
                $('#passworderror').show().find("p").text("请输入6~16位长度的密码");
            }
            var temp1 = '';
            for ( var i = 0; i < password.length; i++) {
                temp1 += and_string;
            }
            if (temp1 == password) {
                $('#hiddendotype').val("no");
                $('#passwordsuggest').hide();
                $('#passworderror').show().find("p").text("密码不允许连续或重复");
            }
            var a = 0;
            var b = 0;
            if (!isNaN(password)) {
                and_num = parseInt(and_string);
                for ( var i = 1; i < password.length; i++) {
                    if ((and_num + 1) != parseInt(password.charAt(i))) {
                        a = 1;
                    }
                    and_num = parseInt(password.charAt(i));
                }

                var end_num = parseInt(password.charAt(0));
                for ( var c = 1; c < password.length; c++) {
                    if ((end_num - 1) != parseInt(password.charAt(c))) {
                        b = 1;
                    }
                    end_num = parseInt(password.charAt(c));
                }

                if (a == 0 || b == 0) {
                    $('#hiddendotype').val("no");
                    $('#passwordsuggest').hide();
                    $('#passworderror').show().find("p").text("密码不允许连续或重复");
                }
            }
        }

        /** 创建密码 */
        var resPassword2 = $('#password2').val();

        if (resPassword2 == "" || resPassword2 == null) {
            $('#hiddendotype').val("no");
            $('#password2suggest').hide();
            $('#password2error').show().find("p").text("请输入确认密码");
        } else if (/^[\u0391-\uFFE5\w]+$/.test(resPassword2) == false) {
            $('#hiddendotype').val("no");
            $('#password2suggest').hide();
            $('#password2error').show().find("p").text("请输入英文字母、数字和下划线");
        } else if (resPassword2 != $('#password').val()) {
            $('#hiddendotype').val("no");
            $('#password2suggest').hide();
            $('#password2error').show().find("p").text("两次输入的密码不同");
        }

        /** 验证码 */
        if ($('#captcha').length > 0) {
            var captcha_code = $('#captcha').val();

            if (captcha_code == "" || captcha_code == null) {
                $('#hiddendotype').val("no");
                $('#captchasuggest').hide();
                $('#captchaerror').show().find("p").text("请输入验证码");
                return false;
            } else {
                if (!index.checkCaptcha(captcha_code)) {
                    $('#hiddendotype').val("no");
                    $('#captchasuggest').hide();
                    $('#captchaerror').show().find("p").text("验证码输入错误");
                    return false;
                }
            }

        }

        if ($("#protocol").attr("checked") == false) {
            $('#hiddendotype').val("no");
            $("#remind-protocal").center().show();
            return false;
        }
        $("#password_md5").val(hex_md5($("#password").val()));
        if ($('#hiddendotype').val() == "no") {
            return false;
        } else {
            return true;
        }

    },

    removeerrorInfo : function(id) {
        var errorid = id + "error";
        $('#' + errorid + '').html("");
        $('#' + errorid + '').attr("class", "");
    },
    removerrorInfoClass : function(id) {
        var errorid = id + "error";
        var sugestid = id + "suggest";
        var rightid = id + "right";
        $('#' + errorid + '').hide();
        $('#' + sugestid + '').show();
        $('#' + rightid + '').hide();
    },
    checkPaswd : function(pass) {
        var pass = hex_md5(pass);
        var result = 0;
        $.ajax({
            url : '/uc/action/userinfo/checkPasswd',
            type : 'GET',
            async : false,
            data : {
                password : pass
            },
            datatype : 'JSON',
            success : function(data) {
                if (data.success) {
                    result = 1;
                }
            },
            error : function(jqXHR, textStatus, errorThrown) {
                common401Handler(xhr);
                var url = jqXHR.responseText;
                $("#password").focus();
            }
        });
        return result;
    },
    checkCaptcha : function(captcha_code) {
        var result = 1;
        $.ajax({
            url : '/uc/action/userinfo/checkCaptcha',
            type : 'GET',
            async : false,
            data : {
                captcha : captcha_code
            },
            datatype : 'JSON',
            success : function(data) {
                if (!data.success) {
                    result = 0;
                }
            },
            error : function(xhr) {
                common401Handler(xhr);
            }
        });
        return result;
    },
    checkUserResetPwd : function(id) {
        $('#hiddendotype').val("");
        if (id == "password") {
            var passwd = $('#password').val();
            if (passwd == "" || passwd == null) {

                $('#hiddendotype').val("no");
                $('#passworderror').html("<font>请输入原始密码</font>");
                $('#passworderror').attr("class", "onError");
            } else {

                var result = index.checkPaswd(passwd);
                if (result == 1) {
                    $('#passworderror').html("");
                    $('#passworderror').attr("class", "");
                }
                if (result == 0) {
                    $('#hiddendotype').val("no");
                    $('#passworderror').html("<font>密码错误请重新输入</font>");
                    $('#passworderror').attr("class", "onError");
                }
            }

        } else if (id == "password1" || id == "password_1") {

            /** 创建密码 */
            var password = $('#password1').val() ? $('#password1').val() : $('#password_1').val();
            if (password == "" || password == null) {

                $('#hiddendotype').val("no");
                $('#' + id + 'error').html("<font>请输入密码</font>");
                $('#' + id + 'error').attr("class", "onError");
            } else if (/^[\u0391-\uFFE5\w]+$/.test(password) == false) {

                $('#hiddendotype').val("no");
                $('#' + id + 'error').html("<font>请输入英文字母、数字和下划线</font>");
                $('#' + id + 'error').attr("class", "onError");
            } else if (password.length < 6) {

                $('#hiddendotype').val("no");
                $('#' + id + 'error').html("<font>密码太短了，最少为6位。</font>");
                $('#' + id + 'error').attr("class", "onError");
            } else {
                var len;
                var i;
                var isPassword = true;
                len = 0;
                for (i = 0; i < password.length; i++) {
                    if (password.charCodeAt(i) > 255)
                        isPassword = false;
                }
                var and_string = password.charAt(0);
                var and_num = 0;
                if (!isPassword || password.length > 16 || password.length < 6) {

                    $('#hiddendotype').val("no");
                    $('#' + id + 'error').html("<font>请输入6~16位长度的密码</font>");
                    $('#' + id + 'error').attr("class", "onError");
                    return;
                }
                var temp1 = '';
                for ( var i = 0; i < password.length; i++) {
                    temp1 += and_string;
                }
                if (temp1 == password) {

                    $('#hiddendotype').val("no");
                    $('#' + id + 'error').html("<font>密码不允许连续或重复</font>");
                    $('#' + id + 'error').attr("class", "onError");
                    return;
                }
                var a = 0;
                var b = 0;
                if (!isNaN(password)) {
                    and_num = parseInt(and_string);
                    for ( var i = 1; i < password.length; i++) {
                        if ((and_num + 1) != parseInt(password.charAt(i))) {
                            a = 1;
                        }
                        and_num = parseInt(password.charAt(i));
                    }
                    var end_num = parseInt(password.charAt(0));
                    for ( var c = 1; c < password.length; c++) {
                        if ((end_num - 1) != parseInt(password.charAt(c))) {
                            b = 1;
                        }
                        end_num = parseInt(password.charAt(c));
                    }

                    if (a == 0 || b == 0) {

                        $('#hiddendotype').val("no");
                        $('#' + id + 'error').html("<font>密码不允许连续或重复</font>");
                        $('#' + id + 'error').attr("class", "onError");
                        return;
                    } else {
                        $('#' + id + 'error').html("&nbsp;");
                        $('#' + id + 'error').attr("class", "onCorrect");
                    }

                } else {
                    $('#' + id + 'error').html("&nbsp;");
                    $('#' + id + 'error').attr("class", "onCorrect");
                }
            }

        } else if (id == "password2" || id == "password_2") {
            /** 创建密码 */

            var resPassword2 = $('#password2').val() ? $('#password2').val() : $('#password_2').val();
            var password = $('#password1').val() ? $('#password1').val() : $('#password_1').val();
            if (resPassword2 == "" || resPassword2 == null) {

                $('#hiddendotype').val("no");
                $('#' + id + 'error').html("<font>请输入确认密码</font>");
                $('#' + id + 'error').attr("class", "onError");
            } else if (/^[\u0391-\uFFE5\w]+$/.test(resPassword2) == false) {

                $('#hiddendotype').val("no");
                $('#' + id + 'error').html("<font>请输入英文字母、数字和下划线</font>");
                $('#' + id + 'error').attr("class", "onError");
            } else if (resPassword2 != password) {

                $('#hiddendotype').val("no");
                $('#' + id + 'error').html("<font>两次输入的密码不同!</font>");
                $('#' + id + 'error').attr("class", "onError");
            } else if (resPassword2.length < 6) {
                $('#hiddendotype').val("no");
                $('#' + id + 'error').html("<font>密码不能小于6位</font>");
                $('#' + id + 'error').attr("class", "onError");
            } else {
                $("#resetPass").attr("disabled", false);
                $('#' + id + 'error').html("&nbsp;");
                $('#' + id + 'error').attr("class", "onCorrect");
            }

        }
        if ($('#hiddendotype').val() == "no") {
            return false;
        } else {
            return true;
        }
    },
    checkUserResetPwdSubmit : function() {
        $('#hiddendotype').val("");
        if ($('#password').length > 0) {
            var passwd = $('#password').val();
            if (passwd == "" || passwd == null) {

                $('#hiddendotype').val("no");
                $('#passworderror').html("<font>请输入原始密码</font>");
                $('#passworderror').attr("class", "onError");
            } else {

                var result = index.checkPaswd(passwd);
                if (result == 1) {
                    $('#passworderror').html("");
                    $('#passworderror').attr("class", "");
                }
                if (result == 0) {
                    $('#hiddendotype').val("no");
                    $('#passworderror').html("<font>密码错误请重新输入</font>");
                    $('#passworderror').attr("class", "onError");
                }
            }
        }

        /** 创建密码 */
        var password = $('#password1').val() ? $('#password1').val() : $('#password_1').val();
        if (password == "" || password == null) {

            $('#hiddendotype').val("no");
            $('#password1error').html("<font>请输入密码</font>");
            $('#password1error').attr("class", "onError");
        } else if (/^[\u0391-\uFFE5\w]+$/.test(password) == false) {

            $('#hiddendotype').val("no");
            $('#password1error').html("<font>请输入英文字母、数字和下划线</font>");
            $('#password1error').attr("class", "onError");
        } else if (password.length < 6) {

            $('#hiddendotype').val("no");
            $('#password1error').html("<font>密码太短了，最少为6位。</font>");
            $('#password1error').attr("class", "onError");
        } else {
            var len;
            var i;
            var isPassword = true;
            len = 0;
            for (i = 0; i < password.length; i++) {
                if (password.charCodeAt(i) > 255)
                    isPassword = false;
            }
            var and_string = password.charAt(0);
            var and_num = 0;
            if (!isPassword || password.length > 16 || password.length < 6) {

                $('#hiddendotype').val("no");
                $('#password1error').html("<font>请输入6~16位长度的密码</font>");
                $('#password1error').attr("class", "onError");
                return;
            }
            var temp1 = '';
            for ( var i = 0; i < password.length; i++) {
                temp1 += and_string;
            }
            if (temp1 == password) {

                $('#hiddendotype').val("no");
                $('#password1error').html("<font>密码不允许连续或重复</font>");
                $('#password1error').attr("class", "onError");
                return;
            }
            var a = 0;
            var b = 0;
            if (!isNaN(password)) {
                and_num = parseInt(and_string);
                for ( var i = 1; i < password.length; i++) {
                    if ((and_num + 1) != parseInt(password.charAt(i))) {
                        a = 1;
                    }
                    and_num = parseInt(password.charAt(i));
                }
                var end_num = parseInt(password.charAt(0));
                for ( var c = 1; c < password.length; c++) {
                    if ((end_num - 1) != parseInt(password.charAt(c))) {
                        b = 1;
                    }
                    end_num = parseInt(password.charAt(c));
                }

                if (a == 0 || b == 0) {

                    $('#hiddendotype').val("no");
                    $('#password1error').html("<font>密码不允许连续或重复</font>");
                    $('#password1error').attr("class", "onError");
                    return;
                } else {
                    $('#password1error').html("&nbsp;");
                    $('#password1error').attr("class", "onCorrect");
                }

            } else {
                $('#password1error').html("&nbsp;");
                $('#password1error').attr("class", "onCorrect");
            }
        }
        /** 创建密码 */

        var resPassword2 = $('#password2').val() ? $('#password2').val() : $('#password_2').val();
        if (resPassword2 == "" || resPassword2 == null) {
            $('#hiddendotype').val("no");
            $('#password2error').html("<font>请输入确认密码</font>");
            $('#password2error').attr("class", "onError");
        } else if (/^[\u0391-\uFFE5\w]+$/.test(resPassword2) == false) {

            $('#hiddendotype').val("no");
            $('#password2error').html("<font>请输入英文字母、数字和下划线</font>");
            $('#password2error').attr("class", "onError");
        } else if (resPassword2 != $('#password1').val()) {

            $('#hiddendotype').val("no");
            $('#password2error').html("<font>两次输入的密码不同!</font>");
            $('#password2error').attr("class", "onError");
        } else if (resPassword2.length < 6) {
            $('#hiddendotype').val("no");
            $('#password2error').html("<font>密码不能小于6位</font>");
            $('#password2error').attr("class", "onError");
        } else {
            $('#password2error').html("&nbsp;");
            $('#password2error').attr("class", "onCorrect");
        }
        if ($('#hiddendotype').val() == "no") {
            return false;
        } else {
            return true;
        }
    },
    /**
     * 个人用户注册的第一步表单验证
     */
    checkUserRegisterOneFocus : function(id) {
        if (id == "alias") {
            var alias = $('#alias').val();
            var val = $('#alias').val().length;
            if (alias == "" || alias == null || alias == "作为您以后的登录账号") {
                $('#hiddendotype').val("no");
                $('#aliassuggest').hide();
                $('#aliaserror').show().find("p").text("请输入用户名");
            } else if (!(/^[a-zA-Z][a-zA-Z0-9_]*$/.test(alias))) {
                $('#hiddendotype').val("no");
                $('#aliassuggest').hide();
                $('#aliaserror').show().find("p").text("必须由数字,字母,下划线组成,并且以字母开头");
            } else if (val < 4 || val > 20) {
                $('#hiddendotype').val("no");
                $('#aliassuggest').hide();
                $('#aliaserror').show().find("p").text("用户名长度必须为4-20位字符");
            } else {
                $('#aliassuggest').hide();
                $('#aliaserror').hide();
                $('#aliasright').show();
            }
        } else if (id == "email") {
            var result = 0;// index.checkEmail();
            if (result == 0) {
                /** 邮箱地址 */
                var account_no = $('#email').val();
                if (account_no == "" || account_no == null) {
                    Regflag = false;
                    $('#hiddendotype').val("no");
                    $('#emailsuggest').hide();
                    $('#emailerror').show().find("p").text("请输入常用的邮箱");
                } else if (/^([a-zA-Z0-9]+[_|\_|\.|\-]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/
                        .test(account_no) == false) {
                    Regflag = false;
                    $('#hiddendotype').val("no");
                    $('#emailsuggest').hide();
                    $('#emailerror').show().find("p").text("请输入正确的邮箱地址");
                } else if (account_no.length > 255) {
                    Regflag = false;
                    $('#hiddendotype').val("no");
                    $('#emailsuggest').hide();
                    $('#emailerror').show().find("p").text("邮箱长度过长");
                } else {
                    $('#emailsuggest').hide();
                    $('#emailerror').hide();
                    $('#emailright').show();
                }

            }
        } else if (id == "password") {

            /** 创建密码 */
            var password = $('#password').val();
            if (password == "" || password == null) {
                Regflag = false;
                $('#hiddendotype').val("no");
                $('#passwordsuggest').hide();
                $('#passworderror').show().find("p").text("请输入密码");
            } else if (/^[\u0391-\uFFE5\w]+$/.test(password) == false) {
                Regflag = false;
                $('#hiddendotype').val("no");
                $('#passwordsuggest').hide();
                $('#passworderror').show().find("p").text("请输入英文字母、数字和下划线");
            } else if (password.length < 6) {
                Regflag = false;
                $('#hiddendotype').val("no");
                $('#passwordsuggest').hide();
                $('#passworderror').show().find("p").text("密码太短了，最少为6位。");
            } else {
                var len;
                var i;
                var isPassword = true;
                len = 0;
                for (i = 0; i < password.length; i++) {
                    if (password.charCodeAt(i) > 255)
                        isPassword = false;
                }
                var and_string = password.charAt(0);
                var and_num = 0;
                if (!isPassword || password.length > 16 || password.length < 6) {

                    $('#hiddendotype').val("no");
                    $('#passwordsuggest').hide();
                    $('#passworderror').show().find("p").text("请输入6~16位长度的密码");
                    return;
                }
                var temp1 = '';
                for ( var i = 0; i < password.length; i++) {
                    temp1 += and_string;
                }
                if (temp1 == password) {

                    $('#hiddendotype').val("no");
                    $('#passwordsuggest').hide();
                    $('#passworderror').show().find("p").text("密码不允许连续或重复");
                    return;
                }
                var a = 0;
                var b = 0;
                if (!isNaN(password)) {
                    and_num = parseInt(and_string);
                    for ( var i = 1; i < password.length; i++) {
                        if ((and_num + 1) != parseInt(password.charAt(i))) {
                            a = 1;
                        }
                        and_num = parseInt(password.charAt(i));
                    }
                    var end_num = parseInt(password.charAt(0));
                    for ( var c = 1; c < password.length; c++) {
                        if ((end_num - 1) != parseInt(password.charAt(c))) {
                            b = 1;
                        }
                        end_num = parseInt(password.charAt(c));
                    }

                    if (a == 0 || b == 0) {
                        Regflag = false;
                        $('#hiddendotype').val("no");
                        $('#passwordsuggest').hide();
                        $('#passworderror').show().find("p").text("密码不允许连续或重复");
                        return;
                    }
                }
                $('#passwordsuggest').hide();
                $('#passworderror').hide();
                $('#passwordright').show();
            }

        } else if (id == "password2") {
            /** 创建密码 */

            var resPassword2 = $('#password2').val();
            if (resPassword2 == "" || resPassword2 == null) {
                Regflag = false;
                $('#hiddendotype').val("no");
                $('#password2suggest').hide();
                $('#password2error').show().find("p").text("请输入确认密码");
            } else if (/^[\u0391-\uFFE5\w]+$/.test(resPassword2) == false) {
                Regflag = false;
                $('#hiddendotype').val("no");
                $('#password2suggest').hide();
                $('#password2error').show().find("p").text("请输入英文字母、数字和下划线");
            } else if (resPassword2 != $('#password').val()) {
                Regflag = false;
                $('#hiddendotype').val("no");
                $('#password2suggest').hide();
                $('#password2error').show().find("p").text("两次输入的密码不同");
            } else {
                $('#password2suggest').hide();
                $('#password2error').hide();
                $('#password2right').show();
            }

        }

    }
};
