/**
**比较两个日期大小
**/
function compareDate(DateOne,DateTwo)
{
        
        var OneMonth = DateOne.substring(5,DateOne.lastIndexOf ("-"));
        
        var OneDay = DateOne.substring(DateOne.length,DateOne.lastIndexOf ("-")+1);
        var OneYear = DateOne.substring(0,DateOne.indexOf ("-"));
        
        var TwoMonth = DateTwo.substring(5,DateTwo.lastIndexOf ("-"));
        var TwoDay = DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf ("-")+1);
        var TwoYear = DateTwo.substring(0,DateTwo.indexOf ("-"));
        
        if (Date.parse(OneYear+"/"+OneMonth+"/"+OneDay) > Date.parse(TwoYear+"/"+TwoMonth+"/"+TwoDay))
        {
        
        	return true;
        }
        else
        {	
        	return false;
        }
        
}


function DateisEquel(DateOne,DateTwo)
{
        
        var OneMonth = DateOne.substring(5,DateOne.lastIndexOf ("-"));
        
        var OneDay = DateOne.substring(DateOne.length,DateOne.lastIndexOf ("-")+1);
        var OneYear = DateOne.substring(0,DateOne.indexOf ("-"));
        
        var TwoMonth = DateTwo.substring(5,DateTwo.lastIndexOf ("-"));
        var TwoDay = DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf ("-")+1);
        var TwoYear = DateTwo.substring(0,DateTwo.indexOf ("-"));
        
        if (Date.parse(OneYear+"/"+OneMonth+"/"+OneDay) = Date.parse(TwoYear+"/"+TwoMonth+"/"+TwoDay))
        {
        
        	return true;
        }
        else
        {	
        	return false;
        }
        
}



function copy(content)
{
    window.clipboardData.setData("text", content);
    alert("网址已经生成并替您复制好了，直接用键盘Ctrl+V粘贴到QQ、MSN、论坛、邮箱就可以了\r\n，您的朋友一定会很惊喜，快快发送把");
}

//判断是否是NetScape浏览器,true:是
ns4 = (document.layers)? true:false

//判断是否是IE,true:是
ie4 = (document.all)? true:false

// 取通过URL传过来的参数 (格式如 ?Param1=Value1&Param2=Value2)
function getUrlParams()
{
    var urlParams = new Object() ;
    var aParams = document.location.search.substr(1).split('&') ;
    for (i = 0; i < aParams.length; i++)
    {
        var aParam = aParams[i].split('=') ;
        urlParams[aParam[0]] = aParam[1];
    }
    return urlParams;
}

/**
根据id，返回对应的对象
**/
function $(id)
{
    return document.getElementById(id);
}

/**
  为 Array 类增加一个 max 方法
**/
Array.prototype.max = function()
{
    var i, max = this[0];

    for (i = 1; i < this.length; i++)
    {
        if (max < this[i])
            max = this[i];
    }

    return max;
}

/**
 为字符串增加trim方法
**/
String.prototype.trim = function()
{
    // 用正则表达式将前后空格用空字符串替代。
    return this.replace(/(^\s*)|(\s*$)/g, "");
}

/**
   执行正则表达式
**/
function executeExp(re, s)
{
    return re.test(s);
}

/**
  判断是否是字母、数字或者为空
**/
function isAlphaNumeric(strValue)
{
    // 只能是 A-Z a-z 0-9 之间的字母数字 或者为空
    return executeExp(/^\w*$/gi, strValue);
}

/**
  判断是否是正确的日期，格式为2003-12-12
**/
function isDate(strValue)
{
    if (isEmpty(strValue)) return true;

    if (!executeExp(/^\d{4}-[01]?\d-[0-3]?\d$/g, strValue)) return false;

    var arr = strValue.split("-");
    var year = arr[0];
    var month = arr[1];
    var day = arr[2];

    // 1 <= 月份 <= 12，1 <= 日期 <= 31
    if (!( ( 1 <= month ) && ( 12 >= month ) && ( 31 >= day ) && ( 1 <= day ) ))
        return false;

    // 润年检查
    if (!( ( year % 4 ) == 0 ) && ( month == 2) && ( day == 29 ))
        return false;

    // 7月以前的双月每月不超过30天
    if (( month <= 7 ) && ( ( month % 2 ) == 0 ) && ( day >= 31 ))
        return false;

    // 8月以后的单月每月不超过30天
    if (( month >= 8) && ( ( month % 2 ) == 1) && ( day >= 31 ))
        return false;

    // 2月最多29天
    if (( month == 2) && ( day >= 30 ))
        return false;

    return true;
}

/**
  判断是否是正确的Email
**/
function isEmail(strValue)
{
    if (isEmpty(strValue)) return true;

    var pattern = /^([a-zA-Z0-9_.-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
    return executeExp(pattern, strValue);

}

/**
  判断字符串是否为空
**/
function isEmpty(strValue)
{
    if (strValue == null || strValue == "")
        return true;
    else
        return false;
}


/**
  判断是否为数字
**/
function isNumeric(strValue)
{   if (isEmpty(strValue)) return true;
    return executeExp(/^\d*$/g, strValue);
}


/**
  判断是否为浮点数（不带正负号）
**/
function isNumberFloat(strValue)
{
    if (isEmpty(strValue)) return true;
    return executeExp(/^\d+(\.\d+)?$/, strValue);
    //return (!isNaN(parseFloat(strValue))) ? true : false;
}
 /**
  判断是性别是男还是女
**/
function isSex(strValue)
{
  if(strValue=="男"||strValue=="女")
    {return true;
     }
   if(strValue=="male"||strValue=="woman")
     {
      return true;
     }
  return false;
}
/**
  判断是否是货币
**/
function isMoney(strValue)
{
    if (isEmpty(strValue)) return true;
    return executeExp(/^[+-]?\d+(,\d{3})*(\.\d+)?$/g, strValue);
}

/**
  判断是否为手机号码
**/
function isMobile(strValue)
{
    if (isEmpty(strValue)) return true;
    return executeExp(/^(130|131|132|133|134|135|136|137|138|139|159|156)\d{8}$/, strValue);
}

/**
  判断是否为电话
**/
function isPhone(strValue)
{
    if (isEmpty(strValue)) return true;
    return executeExp(/(^\(\d{3,5}\)\d{6,8}(-\d{2,8})?$)|(^\d+-\d+$)|(^(130|131|135|136|137|138|139)\d{8}$)/g, strValue);
}

/**
  判断是否为邮政编码
**/
function isPostalCode(strValue)
{
    return executeExp(/(^$)|(^\d{6}$)/gi, strValue)
}

/**
  判断是否为合法的URL
**/
function isURL(strValue)
{
    if (isEmpty(strValue)) return true;
    var pattern = /^(http|https|ftp):\/\/(\w+\.)+[a-z]{2,3}(\/\w+)*(\/\w+\.\w+)*(\?\w+=\w*(&\w+=\w*)*)*/gi;
    return executeExp(pattern, strValue);
}


//比较，compare(1,'<=10')将返回true，第一个参数为要比较的数字，第二个参数支持>、=、<、<=、>=
function compare(l, strParam)
{
    var ml;
    // 要判断的长度
    var co;
    // 比较符

    // 判断是否为<=、>=
    if (strParam.indexOf('<=') != -1 || strParam.indexOf('>=') != -1)
    {
        ml = parseInt(strParam.substr(2));
        cp = strParam.substr(0, 1);
    }
    else
    {
        ml = parseInt(strParam.substr(1));
        cp = strParam.charAt(0);
    }

    switch (cp)
            {
        case '<' :
            if (l >= ml) return false;
            break;
        case '=' :
            if (l != ml) return false;
            break;
        case '>' :
            if (l <= ml) return false;
            break;
        case '<=' :
            if (l > ml) return false;
            break;
        case '>=' :
            if (l < ml) return false;
            break;
        default :
            return false
    }

    return true;
}

//检查字符的长度
function checkStrLength(strValue, strParam)
{
    //if( isEmpty( strValue ) )	return true; // 此处注释掉，空字符串同样要检查

    // 参数形如：L<10, L=5, L>117, L<=10, L>=10
    if (strParam.charAt(0) != 'L')    return false;

    return compare(strValue.length, strParam.substr(1));
}


/**
  添加getBytesLength方法，用于得到字节数。中文为2个字节
**/
String.prototype.getBytesLength = function()
{
    var cArr = this.match(/[^\x00-\xff]/ig);
    return this.length + (cArr == null ? 0 : cArr.length);
}

//检查字符的长度，使用字节数来检测，即1个中文当作2个字节
function checkStrLengthOfBytes(strValue, strParam)
{
    //if( isEmpty( strValue ) )	return true; // 此处注释掉，空字符串同样要检查

    // 参数形如：L<10, L=5, L>117
    if (strParam.charAt(0) != 'L')    return false;

    return compare(strValue.getBytesLength(), strParam.substr(1));
}

/**
 * 检查文件扩展名
 * @param fileName 文件名
 * @param allowedName 允许的扩展名，以|分开，如"jpg|gif"代表允许.jpg和.gif文件。"*"和""（空字符串）代表不允许所有。如果该文件无扩展名，返回true
 */
function checkFileExtendName(fileName, allowedName)
{
    if (allowedName == null || allowedName == "" || allowedName == "*" ||
        fileName == null || fileName == "" || fileName.indexOf(".") == -1)
    {
        return true;
    }

    var realFileName = "";
    if (fileName.indexOf("\\") != -1)
    { // 如果包含路径名
        realFileName = fileName.substr(fileName.lastIndexOf("\\") + 1, fileName.length);
    }
    else if (fileName.indexOf("/") != -1)
    { // 如果包含路径名（for Unix）
        realFileName = fileName.substr(fileName.lastIndexOf("/") + 1, fileName.length);
    }
    else
    { // 无路径名
        realFileName = fileName;
    }

    if (realFileName.indexOf(".") == -1)
    {
        return true;
    }

    var extendName = realFileName.substr(realFileName.lastIndexOf(".") + 1, realFileName.length);

    var extendNames = allowedName.split("|");
    //alert("文件名：" + realFileName + " 扩展名：" + extendName + " " + extendNames);

    for (var i = 0; i < extendNames.length; i++)
    {
        if (extendName.toLowerCase() == extendNames[i].toLowerCase())
        {
            return true;
        }
    }

    return false;
}

/**
  检查字符的长度，使用字节数来检测，即1个中文当作2个字节
**/
function validStrLengthOfBytes(objName, strDescription, strParam)
{
    var strMsg = "";
    if (!isElementExist(objName))
    {
        strMsg = strDescription + " 对象不存在";
        window.alert(strMsg);
        return;
    }
    var strValue = getElement(objName).value.trim();

    if (!checkStrLengthOfBytes(strValue, strParam))
    {
        strMsg = '"' + strDescription + '" 长度不正确，必需为' + strParam + '（注意1个中文为2个字节长度）\n';
    }

    return strMsg;
}


/**
  判断各种类型的入口函数
**/
function checkValid(objName, strDescription, strType)
{
    var strMsg = "";
    if (isElementExist(objName))
    {
        var strValue = getElement(objName).value.trim();
        switch (strType)
                {
            case "Date" :    // 日期
                if (!isDate(strValue))
                    strMsg = '【' + strDescription + '】 格式错误，请输入正确的日期格式，如1970-1-1\n';
                break;

            case "AlphaNumeric" :    // 字母数字
                if (!isAlphaNumeric(strValue))
                    strMsg = '【' + strDescription + '】 格式错误，请输入字母或数字！\n';
                break;

            case "NotEmpty" :    // 不许空值
                if (isEmpty(strValue))
                    strMsg = '【' + strDescription + '】 不能为空！\n';
                break;

            case "Email" :    // 电子邮件
                if (!isEmail(strValue))
                    strMsg = '【' + strDescription + '】 格式错误，请输入正确的邮件格式\n';
                break;

            case "Money" :    //货币
                if (!isMoney(strValue))
                    strMsg = '【' + strDescription + '】 格式错误，请输入正确的货币格式\n';
                break;

            case "Numeric" :    //数字
                if (!isNumeric(strValue))
                    strMsg = '【' + strDescription + '】 格式错误，请输入数字！\n';
                break;

            case "NumberFloat" :    //浮点数
                if (!isNumberFloat(strValue))
                    strMsg = '【' + strDescription + '】 格式错误，请输入浮点数！\n';
                break;

            case "Mobile" :    // 手机号码
                if (!isMobile(strValue))
                    strMsg = '【' + strDescription + '】 格式错误，请输入正确的手机号码\n';
                break;

            case "Phone" :    // 电话
                if (!isPhone(strValue))
                    strMsg = '【' + strDescription + '】 格式错误，请输入正确的电话格式\n';
                break;

            case "PostalCode" :    // 邮政编码
                if (!isPostalCode(strValue))
                    strMsg = '【' + strDescription + '】 格式错误，请输入6位数字！\n';
                break;

            case "URL" :    // URL
                if (!isURL(strValue))
                    strMsg = '【' + strDescription + '】 格式错误，请输入正确的URL格式！\n';
                break;

            default :    // 其他
                strMsg = '错误的 【' + strDescription + '】 类型 "' + strType + '" 不能识别！\n';
                break;
        }
    }
    else
    {
        strMsg = '【' + strDescription + "】 对象不存在\n";
    }

    return strMsg;
}


/**
  链接转向
**/
function goToURL(url)
{
    window.location = url;
}


/**
  根据指定的名称，判断元素是否存在
**/
function isElementExist(name)
{
    var objArray = document.getElementsByName(name);
    if (objArray != null && objArray.length > 0)
    {
        return true;
    }
    return false;
}

/**
  根据指定的名称，返回特定的元素，若不存在，则返回null
**/
function getElement(name)
{
    var objArray = document.getElementsByName(name);
    if (objArray != null && objArray.length > 0)
    {
        return objArray[0];
    }
    return null;
}


/**
  根据指定的名称，返回特定的元素数组
**/
function getElements(name)
{
    var objArray = document.getElementsByName(name);
    return objArray;
}

/**
  根据指定的名称，判断特定的元素是否是数组
**/
function elementIsArray(name)
{
    var objArray = document.getElementsByName(name);
    if (objArray != null && objArray.length > 1)
    {
        return true;
    }
    return false;
}

/**
  字段是否为空
**/
function checkEmpty(field)
{
    if (isElementExist(field))
    {
        if (getElement(field).value.trim() == "")
            return true;
    }
    return false;
}

/**
  根据ID得到对应的对象
**/
function getObject(id)
{
    return document.getElementById(id);
}
//屏蔽右键
oncontextmenu = "window.event.returnValue=false";

/**
  刷新当前窗口
**/
function refresh()
{
    document.location.reload();
}

//根据radio的名称和值，设置某一项选中
function setRadioChecked(radioName, value)
{
    if (!isElementExist(radioName))
        return;

    var objArray = getElements(radioName);
    for (var i = 0; i < objArray.length; i++)
    {
        var item = objArray[i];
        if (item.tagName == "INPUT" && item.type == "radio")
        {
            if (item.value == value)
            {
                item.checked = true;
            }
        }
    }
}

//根据select的名称和值，设置某一项选中
function setSelectSelected(selectName, value)
{
    if (!isElementExist(selectName))
        return;

    var selectObj = getElement(selectName);
    if (selectObj.tagName == "SELECT")
    {
        for (var i = 0; i < selectObj.options.length; i++)
        {
            var option = selectObj.options[i];
            if (option.value == value)
            {
                option.selected = true;
            }
        }
    }
}


function checkCommentForm(formObj)
{
    if (formObj.ticket.value.length == 0)
    {
        alert("请输入验证码");
        formObj.ticket.focus();
        return false;
    }
    if (formObj.content.value.length == 0)
    {
        alert("评论内容不能为空");
        return false;
    }

    if (formObj.content.value.length > 2000)
    {
        alert("对不起，您发表的内容太多，不能提交")
        return false;
    }

    if (!formObj.niming.checked)
    {
        if (formObj.username.value.length == 0)
        {
            alert("您还没有登录，请先登录");
            return false;
        }
    }
    else
    {
        formObj.username.value = "网友";
        return true;
    }
}

/**
  判断是否为身份证号
*/
function checkIdcard(idcard1)
{
    //var idcard=document.forms[0].elements[idcard1].value;
    var idcard = idcard1;
    var Errors = new Array(
            "验证通过!",
            "身份证号码位数不对!",
            "身份证号码出生日期超出范围或含有非法字符!",
            "身份证号码校验错误!",
            "身份证地区非法!"
            );
    var area = {11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"}

    var idcard,Y,JYM;
    var S,M;
    var idcard_array = new Array();
    idcard_array = idcard.split("");
    /*地区检验*/
    if (area[parseInt(idcard.substr(0, 2))] == null)
    {
        alert(Errors[4]);
        return false;
    }
    /*身份号码位数及格式检验*/
    switch (idcard.length)
            {
        case 15:
            if ((parseInt(idcard.substr(6, 2)) + 1900) % 4 == 0 || ((parseInt(idcard.substr(6, 2)) + 1900) % 100 == 0 && (parseInt(idcard.substr(6, 2)) + 1900) % 4 == 0 ))
            {
                ereg = /^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}$/;
                //测试出生日期的合法性
            }
            else
            {
                ereg = /^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}$/;
                //测试出生日期的合法性
            }
            if (ereg.test(idcard))
            {
                alert(Errors[0] + "15");
                return false;
            }
            else
            {
                alert(Errors[2]);
                return false;
            }
            break;

        case 18:
        //18位身份号码检测
        //出生日期的合法性检查
        //闰年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))
        //平年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))
            if (parseInt(idcard.substr(6, 4)) % 4 == 0 || (parseInt(idcard.substr(6, 4)) % 100 == 0 && parseInt(idcard.substr(6, 4)) % 4 == 0 ))
            {
                ereg = /^[1-9][0-9]{5}19[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}[0-9Xx]$/;
                //闰年出生日期的合法性正则表达式
            }
            else
            {
                ereg = /^[1-9][0-9]{5}19[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}[0-9Xx]$/;
                //平年出生日期的合法性正则表达式
            }
            if (ereg.test(idcard))
            {//测试出生日期的合法性
                //计算校验位
                S = (parseInt(idcard_array[0]) + parseInt(idcard_array[10])) * 7
                        + (parseInt(idcard_array[1]) + parseInt(idcard_array[11])) * 9
                        + (parseInt(idcard_array[2]) + parseInt(idcard_array[12])) * 10
                        + (parseInt(idcard_array[3]) + parseInt(idcard_array[13])) * 5
                        + (parseInt(idcard_array[4]) + parseInt(idcard_array[14])) * 8
                        + (parseInt(idcard_array[5]) + parseInt(idcard_array[15])) * 4
                        + (parseInt(idcard_array[6]) + parseInt(idcard_array[16])) * 2
                        + parseInt(idcard_array[7]) * 1
                        + parseInt(idcard_array[8]) * 6
                        + parseInt(idcard_array[9]) * 3;
                Y = S % 11;
                M = "F";
                JYM = "10X98765432";
                M = JYM.substr(Y, 1);
                /*判断校验位*/
                if (M == idcard_array[17])
                {
                    alert(Errors[0] + "18");
                    return false;
                    /*检测ID的校验位*/
                }
                else
                {
                    alert(Errors[3]);
                    return false;
                }
            }
            else
            {
                alert(Errors[2]);
                return false;
            }
            break;

        default:
            alert(Errors[1]);
            return false;

    }
}

/**
根据所选折的省份，显示其包含的城市产生联动。
*/
function changeCity(proObj)
{
    var value = proObj.options[proObj.selectedIndex].value;
    var cityObj = document.getElementById("city");
    if (value.length == 0)
    {
        for (var i = cityObj.length - 1; i >= 0; i--)
        {
            cityObj.options[i] = null;
        }
        var option = document.createElement("OPTION");
        option.text = "--请选择--";
        option.value = "";
        document.getElementById("city").options.add(option);
        return;
    }

    for (var i = cityObj.length - 1; i >= 0; i--)
    {
        cityObj.options[i] = null;
    }

    var option = document.createElement("OPTION");
    option.text = "--请选择--";
    option.value = "";
    document.getElementById("city").options.add(option);
    for (var i = 0; i < cityIdList.length; i++)
    {
        var city = cityIdList[i];
        if (city[1] == value)
        {
            var option = document.createElement("OPTION");
            option.text = city[2];
            option.value = city[0];
            document.getElementById("city").options.add(option);
        }
    }
}

function changeValidateImg(imgObj)
{
    imgObj.src = "/cgi-bin/img/validateimg";
}


/**
  根据xml文档对象得到指定tag的文本值
*/
function getXmlTagText(xmlobj,tagName)
{
    if(document.all)
    {
      if(xmlobj.getElementsByTagName(tagName)[0])
        return xmlobj.getElementsByTagName(tagName)[0].childNodes[0].text;
      else
        return "";
    }
    else
    {
      if(xmlobj.getElementsByTagName(tagName)[0])
        return xmlobj.getElementsByTagName(tagName)[0].childNodes[0].nodeValue;
      else
        return "";
    }
}
/**
打开文章内容页
*/
function openArticle(article_id)
{
    var url="/cgi-bin/aboutcjqh/AboutCJQH?function=openArticle&article_id="+article_id;
    window.open(url, "", "toolbar=yes,directories=yes,menubar=yes,resizable=yes,top=0,scrollbars=yes,width=800,height=600");
}
