﻿// JScript 文件

//模拟Trim函数
function Trim(str) {
    return str.replace(/(^\s*)|(\s*$)/g, "");
}

//替换HTML
function replaceHTML(Content) {
    if (Content == null) {
        return "";
    }
    Content = Content.replace(/</g, "&lt;").replace(/>/g, "&gt;");
    Content = Content.replace(/&/g, "&amp;");
    return Content;
}

/* 取得字符串的字节长度 */
function strlen(str) {
    var i;
    var len;
    len = 0;
    for (i = 0; i < str.length; i++) {
        if (str.charCodeAt(i) > 255)
            len += 2;
        else
            len++;
    }
    return len;
}

//构造一个函数
function MergFunctionName() {
    var result = arguments[0] + "(", a = arguments;
    if (a.length > 1) {
        for (i = 1; i < a.length; i++) {
            result += "\'" + arguments[i] + "\'";
            if (i != (a.length - 1))
                result += ",";
        }
    }
    result += ")";
    return result;
}

function SelectAddOptions(obj, Data, isNull, DefName) {
    var object = obj;
    object.options.length = 0;
    if (isNull) {
        if (DefName) {
            object.options.add(new Option(DefName, "-1"));
        }
        else {
            object.options.add(new Option("请选择", "-1"));
        }

    }
    if (Data != null && Data.DataList != null && Data.DataList.length > 0) {
        var DataList = Data.DataList;
        var row;
        for (var i = 0; i < DataList.length; i++) {
            row = DataList[i];
            object.options.add(new Option(row[1], row[0]));
        }
    }
}


function SelectAddOptions_A(obj, Data, isNull, DefName) {
    var object = $(obj);
    object.options.length = 0;
    if (isNull) {
        if (DefName) {
            object.options.add(new Option(DefName, "-1"));
        }
        else {
            object.options.add(new Option("请选择", "-1"));
        }

    }
    if (Data != null && Data.length > 0) {
        for (var i = 0; i < Data.length; i++) {
            row = Data[i];
            object.options.add(new Option(row[1], row[0]));
        }
    }
}

function GetSelectText(obj, value) {
    if (obj == null || !$(obj)) {
        return '';
    }
    if (value == null || !value) {
        return $(obj).options[0].text;
    }
    var len = $(obj).options.length;
    for (var i = 0; i < len; i++) {
        if (value == $(obj).options[i].value) {
            return $(obj).options[i].text;
        }
    }
    return '';
}


function IninSelAreaServer(EGameTypeID, EGameAreaID, EServerID, UPageobj) {
    if ($(EGameTypeID)) {
        $(EGameTypeID).disabled = "";
        if ($(EGameTypeID).options.length > 1) {
            $(EGameTypeID).selectedIndex = 1;
        }
        else { $(EGameTypeID).selectedIndex = 0; }
    }
    if ($(EGameAreaID)) {
        $(EGameAreaID).disabled = "";
        UPageobj.ChangGame($F(EGameTypeID));
        if ($(EGameAreaID).options.length > 1) {
            $(EGameAreaID).selectedIndex = 1;
        }
        else { $(EGameAreaID).selectedIndex = 0; }
    }
    if ($(EServerID)) {
        $(EServerID).disabled = "";
        UPageobj.ChangArea($F(EGameAreaID));
        if ($(EServerID).options.length > 1) {
            $(EServerID).selectedIndex = 1;
        }
        else { $(EServerID).selectedIndex = 0; }
    }

}
function hideSelAreaServer(EGameTypeID, EGameAreaID, EServerID) {
    if ($(EGameTypeID)) {
        $(EGameTypeID).disabled = "disabled";
        $(EGameTypeID).selectedIndex = 0;
    }
    if ($(EGameAreaID)) {
        $(EGameAreaID).disabled = "disabled";
        $(EGameAreaID).selectedIndex = 0;
    }
    if ($(EServerID)) {
        $(EServerID).disabled = "disabled";
        $(EServerID).selectedIndex = 0;
    }
}


/**
*校验字符串是否为日期型
*返回值：
*如果为空，定义校验通过，           返回true
*如果字串为日期型，校验通过，       返回true
*如果日期不合法，                   返回false    参考提示信息：输入域的时间不合法！（yyyy-MM-dd）
*/
function checkIsValidDate(str) {
    //如果为空，则通过校验
    if (str == "")
        return true;
    var pattern = /^((\d{4})|(\d{2}))-(\d{1,2})-(\d{1,2})$/g;
    if (!pattern.test(str))
        return false;
    var arrDate = str.split("-");
    if (parseInt(arrDate[0], 10) < 100)
        arrDate[0] = 2000 + parseInt(arrDate[0], 10) + "";
    var date = new Date(arrDate[0], (parseInt(arrDate[1], 10) - 1) + "", arrDate[2]);
    if (date.getYear() == arrDate[0]
       && date.getMonth() == (parseInt(arrDate[1], 10) - 1) + ""
       && date.getDate() == arrDate[2])
        return true;
    else
        return false;
}

/**
*校验两个日期的先后

*返回值：
*如果其中有一个日期为空，校验通过,          返回true
*如果起始日期早于等于终止日期，校验通过，   返回true
*如果起始日期晚于终止日期，                 返回false    参考提示信息： 起始日期不能晚于结束日期。

*/
function checkDateEarlier(strStart, strEnd) {
    //    if(checkIsValidDate(strStart) == false || checkIsValidDate(strEnd) == false)
    //        return false;
    //如果有一个输入为空，则通过检验
    if ((strStart == "") || (strEnd == ""))
        return true;
    var arr1 = strStart.split("-");
    var arr2 = strEnd.split("-");
    var date1 = new Date(arr1[0], parseInt(arr1[1].replace(/^0/, ""), 10) - 1, arr1[2]);
    var date2 = new Date(arr2[0], parseInt(arr2[1].replace(/^0/, ""), 10) - 1, arr2[2]);
    if (arr1[1].length == 1)
        arr1[1] = "0" + arr1[1];
    if (arr1[2].length == 1)
        arr1[2] = "0" + arr1[2];
    if (arr2[1].length == 1)
        arr2[1] = "0" + arr2[1];
    if (arr2[2].length == 1)
        arr2[2] = "0" + arr2[2];
    var d1 = arr1[0] + arr1[1] + arr1[2];
    var d2 = arr2[0] + arr2[1] + arr2[2];
    if (parseInt(d1, 10) > parseInt(d2, 10))
        return false;
    else
        return true;
}

function IsURL(str_url) {
    var strRegex = "^((https|http|ftp|rtsp|mms)?://)"
   + "(([0-9a-z_!~*'().&=+$%-]+: )?[0-9a-z_!~*'().&=+$%-]+@)?" // ftp的user@
   + "(([0-9]{1,3}\.){3}[0-9]{1,3}" // IP形式的URL- 199.194.52.184
   + "|" // 允许IP和DOMAIN（域名）
   + "([0-9a-z_!~*'()-]+\.)*" // 域名- www.
   + "([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\." // 二级域名
   + "[a-z]{2,6})" // first level domain- .com or .museum
   + "(:[0-9]{1,4})?" // 端口- :80
   + "((/?)|" // a slash isn't required if there is no file name
   + "(/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+/?)$";
    var re = new RegExp(strRegex);
    if (re.test(str_url)) {
        return (true);
    } else {
        return (false);
    }
}
//****************************************************************
// Description: sInputString 为输入字符串，iType为类型，分别为
// 0 - 去除前后空格; 1 - 去前导空格; 2 - 去尾部空格   
//****************************************************************
function cTrim(sInputString, iType) {
    var sTmpStr =' '; var i = -1;
    if (iType == 0 || iType == 1) {
        while (sTmpStr ==' ') {
            ++i; 
            sTmpStr = sInputString.substr(i, 1);
        } 
        sInputString = sInputString.substring(i);
    }
    if (iType == 0 || iType == 2) {
        sTmpStr =' ';
        i = sInputString.length;
        while (sTmpStr ==' ') {
            --i;
            sTmpStr = sInputString.substr(i, 1);
        } 
        sInputString = sInputString.substring(0, i + 1);
    } return sInputString;
}
//出去所有空格
function IgnoreSpaces(Str) {
    var ResultStr = "";
    Temp = Str.split(" "); //双引号之间是个空格；
    for (i = 0; i < Temp.length; i++)
        ResultStr += Temp[i];
    //alert(ResultStr);
    return ResultStr;
}
