// JScript 文件

// 检查数字 
function NumberInput(lx, o, e) {
    sValue = o.value;
    switch (lx) {
        case 0: //整数/小数点/有负数

            if (e.keyCode == 46) { if (sValue.indexOf(".") != -1) { e.keyCode = 0; return false; } }
            else if (e.keyCode == 45) { if (sValue.indexOf("-") != -1) { e.keyCode = 0; return false; } }
            if ((e.keyCode < 48 || e.keyCode > 57) && e.keyCode != 8 && e.keyCode != 46 && e.keyCode != 45) { e.keyCode = 0; return false; }
            break;
        case 1: //整数
            if (e.keyCode == 45) { if (sValue.indexOf("-") != -1 || trim(sValue).length > 0) { e.keyCode = 0; return false; } }
            if ((e.keyCode < 48 || e.keyCode > 57) && e.keyCode != 8 && e.keyCode != 45) { e.keyCode = 0; return false; }
            break;
        case 2:   //有小数点/没有负数
            if (e.keyCode == 46) { if (sValue.indexOf(".") != -1) { e.keyCode = 0; return false; } }
            if ((e.keyCode < 48 || e.keyCode > 57) && e.keyCode != 8 && e.keyCode != 46) { e.keyCode = 0; return false; }
            break;
    }

}

var daysOfMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
var daysOfMonthLY = new Array(31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

function isLeapYear(year) {
    year = year - 0;
    if ((year / 4) != Math.floor(year / 4)) return false;
    if ((year / 100) != Math.floor(year / 100)) return true;
    if ((year / 400) != Math.floor(year / 400)) return false;
    return true;
}

function isValidDate(date) {
    if (!isValidDateFormat(date)) return false;
    var d = date.split('-');
    year = d[0];
    month = d[1];
    day = d[2];
    day = day - 0; month = month - 0; year = year - 0;
    if ((day > 31) || (month > 12) || (day <= 0) || (month <= 0) || (year <= 1900) || (year >= 3000) ||
                 (isLeapYear(year) && day > daysOfMonthLY[month - 1]) ||
                 (!isLeapYear(year) && day > daysOfMonth[month - 1]))
        return false;
    else
        return true;
}

function isValidDateFormat(date) {
    isDateFormat = /^[1-9][0-9][0-9][0-9]-[0-9]?[0-9]-[0-9]?[0-9]$/
    if (!isDateFormat.test(date))
        return false;
    else
        return true;
}


function EnterTab(T, F, N) {
    var N1;
    N1 = replace(T.id, F, N);
    //    if(T.type=="radio"){
    //       N1=replace(T.id,F,N);
    //    }else{
    //       N1=replace(T.name,F,N);
    //    }
    var N2 = document.getElementById(N1)
    if (event.keyCode == 13) {
        if (N2 != null) {
            N2.focus();
            if (N2.type == 'text' || N2.type == 'password') N2.select();
        }
    }
}


function ValidateInputString(obj, strText) {
    var flag = false;
    var state = true;
    var str = trim(strText).toLowerCase();
    var templet = "',--,*,%,script,exec,insert,select,delete,update,drop,shutdown,table,union,database,and,or,count,chr,mid,master,truncate,char,declare,case,cast,xp_cmdshell,xp_,replace,function,exit";

    if (str != "") {
        state = false;
        var params = templet.split(",");

        for (var i = 0; i < params.length; i++) {
            if (str.indexOf(params[i]) != -1) {
                flag = true;
                break;
            }
            //alert("No."+i+" "+params[i])
        }

        if (flag) {
            obj.value = "";
            state = false;
            alert("请不要在参数中包含非法字符！");
        } else {
            obj.value = str;
            state = true;
        }
    }
    return state;
}

function checkEmpty(obj, value, message) {
    if (trim(obj.val()) == "" || obj.val() == value) {
        alert("" + message + "");
        obj.focus();
        return false;
    }
    return true;
}

function checkIsEmpty(e, message, spanCtl) {
    var eType = e.type;
    if (trim(e.value) == "") {
        spanCtl.innerText = "【" + message + "】！";
        e.focus();
        if (eType == "text") {
            e.value = "";
        }
        return false;
    } else {
        spanCtl.innerText = "";
    }
    return true;
}

function checkIsEmpty(e, message) {
    var eType = e.type;
    if (trim(e.val()) == "") {
        alert(message);
        e.focus();
        if (eType == "text") {
            e.value = "";
        }
        return false;
    }
    return true;
}

function checkMsgLength(e) {
    var msg_max_length = 300;
    if (e.value.length > msg_max_length) {
        alert("短信内容长度不能超过" + msg_max_length + "个字符！");
        return false;
    }
    return true
} 


function checkDate(e, title) {
    if (trim(e.value) == "") { return false; }
    if (isValidDateFormat(e.value) == false) {
        alert(title + ' 格式错误。(yyyy-MM-dd)');
        e.blur();
        if (e.type == 'text') {
            e.focus();
        }
        return false;
    }
    if (isValidDate(e.value) == false) {
        alert('非法的' + title + '。');
        if (e.type == 'text') {
            e.focus();
        }
        return false;
    }
    return true;
}


function checkPattern(text, pattern, message, spanCtl) {
    if (!pattern.test(text.val())) {
        $("#" + spanCtl).attr('class', 'field-validation-error');
        $("#" + spanCtl).css('color', 'red');
        document.getElementById(spanCtl).innerText = message;
        text.focus();

        return false;
    }
    return true;
}

//检查用户名
function checkUsername(textCtl, message, spanCtl) {
    var pattern = /^([0-9a-zA-Z\-\_]{6,15})+$/;
    if (!pattern.test(textCtl.val())) { 
        spanCtl.removeClass().addClass('onError');
        spanCtl.html(message);
        //textCtl.focus();
        return false;
    }

    return true;
}
//检查密码 
function checkPassword(textCtl, message, spanCtl) {
    var pattern = /^([0-9a-zA-Z\-\_]{6,15})+$/;
    if (!pattern.test(textCtl.val())) {
        spanCtl.removeClass().addClass('onError');
        spanCtl.html(message);
        //textCtl.focus();
        return false;
    }

    return true;
}
//检查手机号码
function checkMobile(textCtl, message, spanCtl) {
    var pattern = /^1[3|4|5|8][0-9]\d{4,8}$/;
    if (!pattern.test(textCtl.val())) {
        spanCtl.removeClass().addClass('onError');
        spanCtl.html(message);
        //textCtl.focus(); 
        return false;
    }

    return true;
}
//检查电子邮箱
function checkEmail(textCtl, message, spanCtl) {
    var pattern = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;
    if (!pattern.test(textCtl.val())) {
        spanCtl.removeClass().addClass('onError');
        spanCtl.html(message);
        //textCtl.focus();
        return false;
    }

    return true;
}
 
