
function checkstring(item_title,data,allowednull) {
	var datastr = data;
	var lefttrim = datastr.search(/\S/gi);

	if (lefttrim == -1) {
		if (allowednull) {
		  return 1;
		} 
		else {
		  alert("Please input : " + item_title + " !");
		  return -2;
		}
	}
	if (datastr.search(/[\`\~\\|?<>]/gi) != -1) {
		alert(" " + item_title + " is a incorrect string");
		return -1;
	}
	return 1;
}

function checkchar(name,data,allowednull) {
	var datastr = data;
	var lefttrim = datastr.search(/\S/gi);

	if (lefttrim == -1) {
		if (allowednull) {
		  return 1;
		} 
		else {
		  alert("请输入 : " + name + " !");
		  return -2;
		}
	}
	var pattern = /^[a-zA-Z]+$/;
	flag = pattern.test(datastr);
	if (!flag) {
		alert(" " + name + " 是一个非法字串");
		return -1;
	}
	return 1;
}

function checkemail(name, data, allowednull) {
	var datastr = data;
	var lefttrim = datastr.search(/\S/gi);
	  
	if (lefttrim == -1) {
		if (allowednull) {
		  return 1;
		} 
		else {
		  alert("Please input : " + name + " !");
		  return -1;
		}
	}
	
	var pattern = /[a-z0-9](([a-z0-9]|[_\-\.][a-z0-9])*)@([a-z0-9]([a-z0-9]|[_\-][a-z0-9])*)((\.[a-z0-9]([a-z0-9]|[_\-][a-z0-9])*)*)/gi;
	flag = pattern.test(data);
	if (!flag) {
		alert("Please input correct Email!");
		return -1;
	}
	return 1;
}

function parseYMD(theYear,theMonth,theDay) {
  theYear=parseNum(theYear)
  theMonth=parseNum(theMonth)
  theDay=parseNum(theDay)
  if ((theYear < 1900) || (theYear > 3000)){
    return 1
  }
  if (theMonth < 1 || theMonth > 12){
    return 2
  }
  if ((theMonth==1 || theMonth==3 || theMonth==5 || theMonth==7 || theMonth==8 || theMonth==10 || theMonth==12) &&
      (theDay <1 || theDay > 31)
     ){
    return 3
  }
  if ((theMonth==4 || theMonth==6 || theMonth==9 || theMonth==11) &&
      (theDay <1 || theDay > 30)
     ){
    return 3
  }
  if (theYear%400==0 || (theYear%4==0 && theYear%100!=0)){  //闰年
    if (theMonth==2 && (theDay <1 || theDay > 29) )
      return 3
  }
  else  //平年
    if (theMonth==2 && (theDay <1 || theDay > 28) )
      return 3
  return 0
}
function isInvalidDate(theDate,separator){
  default_style=1
  if (theDate.length>10 || theDate.length<8)
    return true
  idx1=theDate.indexOf(separator)
  if (idx1==-1)
    return true
  idx2=theDate.indexOf(separator,idx1+1)
  if (idx2==-1)
    return true
  if (isInvalidDate.arguments.length>2)
  	default_style=isInvalidDate.arguments[2]
  if (default_style<1 || default_style>9){
  	alert("传入参数有误！请检查。")
	return true
  }
  if (default_style==1){
  theYear=theDate.substring(0,idx1)
  theMonth=theDate.substring(idx1+1,idx2)
  theDay=theDate.substring(idx2+1)
  }
  if (default_style==2){
  theMonth=theDate.substring(0,idx1)
  theDay=theDate.substring(idx1+1,idx2)
  theYear=theDate.substring(idx2+1)
  }
  if (theDay.length>2)
    return true
  if (parseYMD(theYear,theMonth,theDay)>0)
    return true
  else
    return false
}

//***************************************//
//*********** 2004-9-15 Add *************//
//***************************************//


//校验是否由6位以内的数字组成 
//格式应为:6位以内数字
function isInteger(s) 
{ 
    var patrn=/^[0-9]{1,10}$/; 
    if (!patrn.exec(s)) return false 
    return true 
}

//校验是否由6位以内的数字组成 
//价格应为:6位以内数字加2位以内小数
function isFloat(s) 
{ 
    if(isNaN(s)){
        //alert('not a number');
        return false;        
    }else{
        //alert('is a number');
        var patrn=/^([0-9]{1,6})(.{1}[0-9]{1,2})*$/;
        if (!patrn.exec(s)) return false 
        return true 
    }
}


//校验日期
//日期应为:"yyyy-mm-dd"且有效
function isDate(str){ 
    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;
} 

//校验登录名：只能输入5-15个以字母开头、可带数字、“_”、“.”的字串 
//格式应为:字母开头，5-15位
function isRegisterUserName(s) 
{ 
    var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,14}$/; 
    if (!patrn.exec(s)) return false 
    return true 
}

//校验用户姓名：只能输入1-30个以字母开头的字串 
function isTrueName(s) 
{ 
    var patrn=/^[a-zA-Z]{1,30}$/; 
    if (!patrn.exec(s)) return false 
    return true 
}

//校验密码：只能输入4-20个字母、数字、下划线 
//格式应为:4-20个字母、数字、下划线
function isPasswd(s) 
{ 
    var patrn=/^(\w){4,20}$/; 
    if (!patrn.exec(s)) return false 
    return true 
} 

//校验普通电话、传真号码：可以“+”开头，除数字外，可含有“-” 
//电话输入错误
function isTel(s) 
{ 
    //var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?(\d){1,12})+$/; 
    var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/; 
    if (!patrn.exec(s)) return false 
    return true 
} 

//校验手机号码：必须以数字开头，除数字外，可含有“-” 
//手机号码输入错误
function isMobil(s) 
{ 
    var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/; 
    if (!patrn.exec(s)) return false 
    return true 
} 

//校验邮政编码 
//邮政编码输入错误
function isPostalCode(s) 
{ 
    //var patrn=/^[a-zA-Z0-9]{3,12}$/; 
    var patrn=/^[a-zA-Z0-9 ]{3,12}$/; 
    if (!patrn.exec(s)) return false 
    return true 
} 

//校验搜索关键字 
function isSearch(s) 
{ 
    var patrn=/^[^`~!@#$%^&*()+=|\\\][\]\{\}:;'\,.<>/?]{1}[^`~!@$%^&()+=|\\\][\]\{\}:;'\,.<>?]{0,19}$/; 
    if (!patrn.exec(s)) return false 
    return true 
}

function isIP(s) //by zergling 
{ 
    var patrn=/^[0-9.]{1,20}$/; 
    if (!patrn.exec(s)) return false 
    return true 
}
