function checkScreenName() {
    var obj = document.all('screenname').value;
    CheckDate.ValidateScreenName(obj, callback_ScreenName);
}
function callback_ScreenName(msg) {
    showMsg(msg, 'disabledImageZone_ScreenName',1);
}
function checkPassword() {
    var objn = document.all('screenname').value;
    var obj = document.all('password').value;
    CheckDate.ValidatePassword(obj, objn, callback_Password);
}
function callback_Password(msg) {
    showMsg(msg, 'disabledImageZone_Password',2);
}
function checkPasswordConfirm() {
    var objn = document.all('screenname').value;
    var obj = document.all('password').value;
    var objc = document.all('password_confirm').value;
    CheckDate.ValidatePasswordConfirm(obj, objc, objn, callback_PasswordConfirm);
}
function callback_PasswordConfirm(msg) {
    showMsg(msg, 'disabledImageZone_PasswordConfirm',4);
}
function checkRealName() {
    var obj = document.all('real_name').value;
    CheckDate.ValidateRealName(obj, callback_RealName);
}
function callback_RealName(msg) {
    showMsg(msg, 'disabledImageZone_RealName',8);
}
function checkSID() {
    var obj = document.all('account_sid').value;

    //js validate first,if passed,call the ajax validate
    if (!isIdCardNo(obj)) {
        callback_SID('ERR_ACCOUNT_SID_INVALID');
    } else {
        CheckDate.ValidateSId(obj, callback_SID);
    }
}
function callback_SID(msg) {
    showMsg(msg, 'disabledImageZone_SID',16);
}
function checkEmail() {
    var obj = document.all('email').value;
    CheckDate.ValidateEmail(obj, callback_Email);
}
function callback_Email(msg) {
    showMsg(msg, 'disabledImageZone_Email',128);
}
function checkVerification() {
    var obj = document.all('wordverresponse').value;
    CheckDate.ValidateWordVerification(obj, callback_Verification);
}
function callback_Verification(msg) {
    if(msg){
        fieldPass(256);
    }else{
        fieldFail(256);
    }

    if (msg) useLoadingImage('/img/dwr/fzcg_dh.gif', 'disabledImageZone_Wordverresponse', 'imageZone_Wordverresponse');
    else useLoadingImage('/img/dwr/th_ju.gif', 'disabledImageZone_Wordverresponse', 'imageZone_Wordverresponse');
}
function checkNickName() {
    var obj = document.all('nickname').value;
    CheckDate.ValidateNickName(obj, callback_NickName);
}
function callback_NickName(msg) {
        showMsg(msg, 'disabledImageZone_NickName',32);
}

function useLoadingImage(imageSrc, iddiv, idimg) {
    var loadingImage = imageSrc;
    var disabledImageZone = document.all(iddiv);
    document.all(idimg).src = imageSrc;
    document.all(iddiv).style.visibility = 'visible';
}


function showMsg(msg, divid,fieldcode) {
    var msgDiv = document.getElementById(divid);
    msgDiv.innerHTML = "";
    if (msg == "OK") {
        fieldPass(fieldcode);
        var img_ok = document.createElement("IMG");
        img_ok.src = "/img/dwr/fzcg_dh.gif";
        msgDiv.appendChild(img_ok);
    } else {
        fieldFail(fieldcode);
        var img_fail = document.createElement("IMG");
        img_fail.src = "/img/dwr/th_ju.gif";
        msgDiv.appendChild(img_fail);
        var lblMsg = document.createElement("DIV");
        lblMsg.innerHTML = eval(msg);
        msgDiv.appendChild(lblMsg);
    }
    msgDiv.style.visibility = 'visible';
}

//appendix validate for screenname,realname and nickname
function isContainsBlank(str) {
    var p = /\s/;
    return p.test(str);
}
//check is contains blank pre
function checkScreenNamesPre() {
    var obj = document.all('screenname').value;
    if (isContainsBlank(obj)) {
        callback_ScreenName('ERR_SCREENNAME_CONTAINS_BLANK');
    } else {
        checkScreenName();
    }
}
function checkRealNamePre() {
    var obj = document.all('real_name').value;
    if (isContainsBlank(obj)) {
        callback_RealName('ERR_REALNAME_CONTAINS_BLANK');
    } else {
        checkRealName();
    }
}
function checkNickNamePre() {
    var obj = document.all('nickname').value;
    if (isContainsBlank(obj)) {
        callback_NickName('ERR_NICKNAME_CONTAINS_BLANK');
    } else {
        checkNickName();
    }
}

//check passed flag,initlized with 0(means all fields check failed)
var passed = 0;
var FLAG_PASS = 511;
function fieldPass(fieldcode){
    passed = passed | fieldcode;
}
function fieldFail(fieldcode){
    passed = passed ^ fieldcode;
}
function isCheckPassed(){
    if(passed != FLAG_PASS){
        alert("请正确填写所有信息");
    }
    return passed == FLAG_PASS;
}