function ecp_checkNull(value)
{
    if( value == null )
        return true;

    if( value == "" )
        return true;

    return false;
}

function ecp_checkBlank(value)
{
    if( ecp_checkNull(value) )
	    return true;

    var pattern = /^\s*$/;

    if( pattern.exec(value) )
        return true;
    return false;
}

function ecp_checkInt(value)
{
    if( ecp_checkNull(value) )
        return false;

    var pattern = /^\-?\d+$/;
    if( !pattern.exec(value) )
        return false;

    return true;
}

function ecp_checkIntSpan(value, min, max)
{
    if( !ecp_checkInt(value) )
        return false;

    var tmp = parseInt(value);

    if( min!=null && tmp<min)
        return false;
    if( max!=null && tmp>max)
        return false;

    return true;
}

function ecp_checkIntNatural(value)
{
    return ecp_checkIntSpan(value, 0, null);
}
function ecp_checkIntPositive(value)
{
    return ecp_checkIntSpan(value, 1, null);
}
function ecp_checkFloat(value)
{
    if( ecp_checkNull(value) )
        return false;

    var pattern = /^\-?\d*\.?\d+$/;
    if( !pattern.exec(value) )
        return false;

    return true;
}
function ecp_checkFloatSpan(value, min, max)
{
    if( !ecp_checkFloat(value) )
        return false;

    var tmp = parseFloat(value);

    if( min!=null && tmp<min)
        return false;
    if( max!=null && tmp>max)
        return false;

    return true;
}
function ecp_checkFloatNatural(value)
{
    return ecp_checkFloatSpan(value, 0, null);
}
function ecp_checkFloatPositive(value)
{
    return ecp_checkFloatSpan(value, 1, null);
}
function ecp_checkDate(date)
{
    if( ecp_checkNull(date) )
        return false;

    var pattern = /^[1-2]\d{3}-[0-1]?\d-[0-3]?\d$/;
    if( !pattern.exec(date) )
        return false;

    var dates = date.split("-");
    if( dates[0] < 1900 )
        return false;
    if( dates[1] > 12 || dates[1] < 1 )
        return false;
    var tmp = new Date(dates[0], dates[1], 0).getDate();
    if( dates[2] > tmp || dates[2] < 1 )
        return false;

    return true;
}
function ecp_checkDate3(year, month, day)
{
    var date = year + "-" + month + "-" + day;

    return ecp_checkDate(date);
}

function ecp_checkEmail(value)
{
    if( ecp_checkNull(value) )
        return false;

    var pattern = /^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$/;
    if( !pattern.exec(value) )
        return false;

    return true;
}

function ecp_CheckMobilePhone(phone)
{
    var pattern;

    if( ecp_checkNull(phone) )
        return false;

    pattern = /^[0-9\-]+$/;
    if( !pattern.exec(phone) )
        return false;

    return true;
}

function ecp_checkPhoneNo4(phone, post, country, sub)
{
    var pattern;

    if( ecp_checkNull(phone) )
        return false;

    pattern = /^[1-9]\d+$/;
    if( !pattern.exec(phone) )
        return false;

    if( !ecp_checkBlank(sub) )
    {
        pattern = /^\d+$/;
        if( !pattern.exec(sub) )
            return false;
    }

    if( !ecp_checkBlank(post) )
    {
        pattern = /^\d{1,4}$/;
        if( !pattern.exec(post) )
            return false;
    }

    if( !ecp_checkBlank(country) )
    {
        if(ecp_checkBlank(post))
            return false;

        pattern = /^\d{1,4}$/;
        if( !pattern.exec(country) )
            return false;
    }

    return true;
}

function ecp_checkColor(value)
{
    if( ecp_checkNull(value) )
        return false;

    var pattern = /^[0-9A-Fa-f]{6}$/;
    if( !pattern.exec(value) )
        return false;

    return true;
}

function ecp_checkUrl(url)
{
    if( ecp_checkNull(url) )
        return false;

    var pattern = /^(http:\/\/)?([\w-]+\.)+[\w-]+(\/[\w-\.\/\?%&=~]*)?$/;
    if( !pattern.exec(url) )
        return false;

    return true;
}

function ecp_checkIdCard(idcard)
{
    if( ecp_checkNull(idcard) )
        return false;

    var pattern = /^[0-9a-zA-Z]{5,}$/;
    if( !pattern.exec(idcard) )
        return false;

    return true;
}

function ecp_checkCode(code)
{
    if( ecp_checkNull(code) )
        return false;

    var pattern = /^[0-9]{8}$/;
    if( !pattern.exec(code) )
        return false;

    return true;
}

function ecp_checkDomain(domain)
{
    if( ecp_checkNull(domain) )
        return false;

    var pattern = /^([\w-]+\.)+[\w-]+$/;
    if( !pattern.exec(domain) )
        return false;

    return true;
}

function reset_all(){
	document.all["is_submit"].style.display="none";
	document.all["is_reset"].style.display="";
}


/*
#函数名 ：            check_idcard(idcard)
#功能描述：           检查输入的身份证号码是否合法，若是则返回true,否则返回false
#输入参数：           idcard -----  待检查的身份证号码
#输出参数：           true/false
#作者    ：           汤永杰
#作成日  ：           2006-05-17
#修改者及修改内容：
*/
function check_idcard(idcard)
{
    var rule=false;
    idcard=idcard.toUpperCase();    
	if(idcard.length==18)
	{
		//获取最后一位识别码
		var check_num=idcard.charAt(17);
		var card=new Array(17);
		var sigma=0;
		var wi=new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);
		var ai=new Array('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2');
		if(check_num!='X'&&(check_num<'0'||check_num>'9'))
			return false;
		for(var i=0;i<17;i++)
		{
			if(idcard.charAt(i)<'0'||idcard.charAt(i)>'9')
			return false;
		}
		for(var i=0;i<17;i++)
    	{
        	card[i]=idcard.charAt(i);
        }
		for (var i=0;i<17;i++) 
		{
			sigma += card[i] * wi[i];
		}
		if(ai[(sigma % 11)]==check_num)
			rule=true; 
	}
	else if(idcard.length==15)
    {
    	for(var i=0;i<15;i++)
		{
			if(idcard.charAt(i)<'0'||idcard.charAt(i)>'9')
			return false;
		}
    	var month=idcard.substring(8,10);
    	var day=idcard.substring(10,12);  
    	month=parseInt(month,10);	
    	day=parseInt(day,10);
    	if(month<1||month>12||day<1||day>31)
    		return false;
    	rule=true;	
    }
	return rule;
    
}


/*
#函数名 ：            check_comcode(code)
#功能描述：           检查输入的公司统一编号是否合法，若是则返回true,否则返回false
#输入参数：           code -----  待检查的公司统一编号
#输出参数：           true/false
#作者    ：           汤永杰
#作成日  ：           2006-05-17
#修改者及修改内容：
*/
function check_comcode(code)
{
   var res=false;
   if(code.length==8)
   {
       for(var i=0;i<8;i++)
       {  
          if(!(code.charAt(i)>='0'&&code.charAt(i)<='9'))
             return res=false;
       }
       var a=new Array(1,2,1,2,1,2,4,1);
       var temp=new Array(8);
       var sum=0;
       for(var i=0;i<8;i++)
       {
          temp[i]=code.charAt(i)*a[i];
       }
       if(code.charAt(6)!='7')
       {
          for(var i=0;i<8;i++)
          {
             if(temp[i]>9)
             {  
                temp[i]=parseInt(temp[i]/10)+temp[i]%10;
                
             }
             sum+=temp[i];
          }
          if((sum%10)==0)
          { 
             res=true;
          }
       }
       else
       {  
          for(var i=0;i<8;i++)
          {
             if(i!=6)
             {
                if(temp[i]>9)
                {
                   temp[i]=parseInt(temp[i]/10)+temp[i]%10;
                   
                }
                sum+=temp[i];
             }
          }
          if(((sum+1)%10)==0||(sum%10)==0)
          {
             res=true;
          }
       }
   }
   return res;
}
