﻿//result
//0、默认 1、不显示 2、正确 3、必须 3-N、其他
function checkusername()
{
    WS.CheckUserName($("tbx_username").value,c_username_ok);
}
function c_username_ok(result)
{
    index_showtip(0,result);
}
function checkloginuser()
{
    var result;
    var userName = $("tbx_username").value;
    if(userName.length==0)
    {
        result = 3;
    }
    else
    {
	    validnum = /^\d$/; //判断是否为数字
	    validchar = /^\[a-zA-Z]+$/; //判断是否为字母
	    validall = /^\w{6,12}$/; //数字+字母+"_"
	    if(!validall.test(userName))
	    {
            result = 4;
        }
        else
        {
            result = 2;
	    }
    }
    index_showtip(13,result);
}
//密码强度
function PasswordStronger(strong)
{
    switch (strong)
    {
        case 'Low':
            $("passlevel_low").src = "images/passlevel_low_on.jpg";
			$("passlevel_mid").src = "images/passlevel_mid_off.jpg";
			$("passlevel_high").src = "images/passlevel_high_off.jpg";
            break;
        case 'Mid':
            $("passlevel_low").src = "images/passlevel_low_off.jpg";
			$("passlevel_mid").src = "images/passlevel_mid_on.jpg";
			$("passlevel_high").src = "images/passlevel_high_off.jpg";
            break;
        case 'High':
            $("passlevel_low").src = "images/passlevel_low_off.jpg";
			$("passlevel_mid").src = "images/passlevel_mid_off.jpg";
			$("passlevel_high").src = "images/passlevel_high_on.jpg";
            break;
    }
}
function checkPwd(pwdstring)
{
	var numFlag = 2;
	var charFlag = 2;
	validnum = /^\d$/; //判断是否为数字
	validchar = /^\[a-zA-Z]+$/; //判断是否为字母
	validall = /^\w{6,10}$/; //数字+字母+"_"
	if(!validall.test(pwdstring))
		return -1;
	else
	{
		for(var i = 0; i < pwdstring.length; i ++)
		{
			cPwd = pwdstring.substr(i, 1);
			if(validnum.test(cPwd))
				numFlag = 1;
			else if( 65 < cPwd < 90 || 97 < cPwd < 122)//validchar.test(cPwd))
				charFlag = 1;
			if((numFlag == 1) && (charFlag == 1))
				break;
		}
		if((numFlag == 2) || (charFlag == 2))	
			return 0;
	}
	return 1;	
}
//检查密码
function checkpassword()
{
    var result;
    var password = $('tbx_password').value;
    var username = $('tbx_username').value;
   
    if(password.length == 0)
        result = 3;
    else
    {
        if(password == username)
        {
                result = 5;
        }
        else
        {
            if(checkPwd(password) == -1) //字符串检测失败
            {
                result = 4;
            }
	        else
	        {
                result = 2;
	        }
        }
    }
    index_showtip(1,result);
}
//检查确认密码
function checkconfirmpassword()
{
    var result;
    var password = $('tbx_password').value;
    var confirmpassword = $('tbx_confirmpassowrd').value;
    if(confirmpassword.length == 0)
        result = 3;
    else
    {
        if(password != confirmpassword)
            result = 4;
        else
            result = 2;
    }
    index_showtip(2,result);
}
//验证邮箱
function checkemail()
{
    var result;
    var email = $('tbx_email').value;
    if(email.length == 0)
        result = 3;
    else
    {
        var reg_email = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
        if(!reg_email.test(email) || email.length<3 || email.length>50)
            result = 4;
        else
            result = 2;
    }
    index_showtip(3,result);
}
function checkrecommend()
{
    WS.CheckRecommend($("tbx_recommend").value,c_recommend_ok);
}
function c_recommend_ok(result)
{
    index_showtip(4,result);
}
//验证码
function checkcheckcode()
{
    WS.CheckCheckCode($("tbx_checkcode").value,c_checkcheckcode_ok);
}
function c_checkcheckcode_ok(result)
{
    index_showtip(5,result);
}
//身份证
function checkcardid()
{
    var result;
	var str = $("tbx_idcard").value;
	if(str.length == 0)
    {
        result = 1;
    }
    else
    {
	    var sErrMsg = validateid(str);
	    if((sErrMsg == "") || (sErrMsg == "您小于18周岁，将被纳入防沉迷"))
	    {
	        //合法身份证
//	        if(sErrMsg== "您小于18周岁，将被纳入防沉迷")
//	        {
//                return true;
//	        }
//	        else
//	        {
//                return true;
//	        }
	        result = 2;
	    }
	    else
	    {
	        //非法身份证
	        result = 4;
	    }
	}
    index_showtip(6,result);
}

//身份证检查函数
function validateid(certid)
{
	var sErrMsg = "";
	var reg_15 = /\d{15}/;
	var reg_18 = /\d{17}([0-9]{1}|x|X)/;
	var monthPerDays = new Array("31","28","31","30","31","30","31","31","30","31","30","31");
	certid = certid.toLowerCase();
	if(certid == "" || certid=="111111111111111")
	{
		sErrMsg = "您的身份证不合法";
	}
	var ret = certid.length == 15?reg_15.test(certid):reg_18.test(certid);
	if(!ret)
	{
		sErrMsg = "您的身份证不合法 ";
	}
	birthDate = certid.length == 15?"19" + certid.substr(6,6):certid.substr(6,8);
	year = birthDate.substr(0,4);
	if(birthDate.substr(4,1) == '0')
		month = birthDate.substr(5,1);
	else
		month = birthDate.substr(4,2);
	if(birthDate.substr(6,1) == '0')
		day = birthDate.substr(7,1);
	else
		day = birthDate.substr(6,2);
	dd = parseInt(day);
	mm = parseInt(month);
	yy = parseInt(year);
	days = new Date();
	gdate = days.getDate();
	gmonth = days.getMonth();
	gyear18 = days.getFullYear()-18;
	if(mm>12 || mm<1 ||dd>31 || dd<1)
	{
		sErrMsg = "您的身份证不合法";
	}
	if(year % 100 != 0)
	{
		if(year % 4 ==0)
		monthPerDays[1] = 29;
	}
	else
	{
		if(year % 400 == 0)
		monthPerDays[1] = 29;
	}
	if(monthPerDays[mm - 1] < dd)
	{
		sErrMsg = "您的身份证不合法";
	}
	if(certid.length == 18)
	{
		var arTemp = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2);
		var num = 0;
		var proof;
		for(var i=0; i < 17; i ++)
		{
			num = num + certid.substr(i,1) * arTemp[i];
		}
		num = num % 11;
		switch(num)
		{
			case 0:proof='1';break;
			case 1:proof='0';break;
			case 2:proof='x';break;
			case 3:proof='9';break;
			case 4:proof='8';break;
			case 5:proof='7';break;
			case 6:proof='6';break;
			case 7:proof='5';break;
			case 8:proof='4';break;
			case 9:proof='3';break;
			case 10:proof='2';break;
		}
		if(certid.substr(17, 1) != proof)
		{
			sErrMsg = "您的身份证不合法";
		}
	}
	mm = mm -1;
	var prevTS18 = new Date(gyear18, gmonth, gdate,0,0,0);
	var ageTs = new Date(yy,mm,dd,0,0,0)
	if((prevTS18 < ageTs)&&(sErrMsg == ""))
	{
		sErrMsg = "您小于18周岁，将被纳入防沉迷";
		//	alert(sErrMsg);
	}
	return sErrMsg;
}
//检查姓名
function checkcardname()
{
    var result;
    var RealName = $("tbx_turename").value;
    if(RealName.length == 0)
    {
        result = 1;
    }
    else
    {
	    re = /^[\u4e00-\u9fff]*$/;
	    if(re.test(RealName)==false)
	    {
            result = 4;
        }
        else
        {
            result = 2;
        }
	}
    index_showtip(7,result);
}
//安全问题（下拉）
function checkddlquestion()
{
    if($('ddl_Question').value == '自已编写问题' || $('ddl_Question').value == '')
    {
        $('ddl_Question').style.display = 'none';
        $('tbx_Question').className = 'input';
        $('tbx_Question').innerText = '';
        $('tbx_Question').focus();
        return true;
    }
    else if($('ddl_Question').value.length == 0)
    {
        index_showtip('tip_question','DEFAULT',DefaultTip[6][0]);
        return true;
    }
    else
    {
        $('tbx_Question').innerText = $('ddl_Question').value;
        index_showtip('tip_question','RIGHT','&nbsp;');
        return true;
    }
}
//安全问题（填写）
function checkquestion()
{
    var result;
    var question = $("tbx_question").value;
    if(question.length == 0)
    {
        result = 1;
    }
    else
    {
        result = 2;
    }
    index_showtip(8,result);
}
//问题答案
function checkanswer()
{
    var result;
    var answer = $("tbx_answer").value;
    if(answer.length == 0)
    {
        result = 1;
    }
    else
    {
        result = 2;
    }
    index_showtip(9,result);
}
//服务条款
function checkservice()
{
    if(!$('cbx_agree').checked)
        index_showtip(10,3);
    else
        index_showtip(10,2);
}
function register()
{
    WS.Register(
        $("tbx_username").value,
        $("tbx_password").value,
        $("tbx_confirmpassowrd").value,
        $("tbx_email").value,
        '',
        $("tbx_checkcode").value,
        $("cbx_agree").checked,
        '',
        '',
        '',
        '',
        $("IP").value,
        $("ADID").value,
        $("GameID").value,
        $("CheannelID").value,
        $("GuildID").value,
        c_register_ok);
}
function c_register_ok(result)
{
    for(i=0; i<result.length; i++)
    {
        if(i<result.length-1)
        {
            if(i != 4 && i != 6 && i != 7 && i != 8 && i != 9)
            index_showtip(i,result.substr(i,1));
        }
        else //最后一个做特殊处理
        {
            if(result.substr(i,1) != '2')
            {
                showtip(11,result.substr(i,1));
            }
            else
                location.reload(true);
        }
    }
}

function login()
{
    WS.UserLogin(
        $("tbx_username").value,
        $("tbx_password").value,
        $("tbx_checkcode").value,
        $("IP").value,
        c_login_ok
        )
}
function c_login_ok(result)
{
    index_showtip(13,result.substr(0,1));
    index_showtip(1,result.substr(1,1));
    index_showtip(5,result.substr(2,1));
    if(result.substr(3,1) != '2')
        index_showtip(12,result.substr(3,1));
    else
        location.reload(true);
}


function show(ctrl)
{
    if(ctrl.style.display == 'block')
    {
        ctrl.style.display = 'none';
    }
    else
    {
        ctrl.style.display = 'block';
    }
}