function notNull(str) {
	if (str.length == 0 )
		return false
	else 
		return true
}

function notBlank(str) {
	for (i = 0; i < str.length; i++) {
		if (str.charAt(i) != " ")
			return true
	}
	return false
}

function isSize(str, size) {
	if (str.length == size) 
		return true
	else
		return false
}

function isDigits(str) {
	var i
	for (i = 0; i < str.length; i++) {
		mychar = str.charAt(i)
		if (mychar < "0" || mychar > "9")
			return false
	}
	return true
}

function isNumber(str) {
   if (!notNull(str) || !notBlank(str)) return false;
	numdecs = 0
	for (i = 0; i < str.length; i++) {
		mychar = str.charAt(i)
		if ((mychar >= "0" && mychar <= "9") || mychar 
			== ".") {
			if (mychar == ".")
				numdecs++
		}
		else 
			return false
	}
	if (numdecs > 1)
		return false	
return true
}

function isInRange(str, num1, num2) {
	var i = parseInt(str)
	return((i >= num1) && (i <= num2))

}

function stripNonDigits(str) {
	var i
	var newstring = ""
	for (i = 0;  i < str.length; i++) {
		mychar = str.charAt(i)
		if (isDigits(mychar)) 
			newstring += mychar
	}
	return newstring
}

function stripChars(str, chars) {
	var i
	var newstring = ""
	for (i = 0;  i < str.length; i++) {
		mychar = str.charAt(i)
		if (chars.indexOf(mychar) == -1)
			newstring += mychar
	}
	return newstring
}

function validateString(myfield) {
	if (notNull(myfield)&& notBlank(myfield)) 
		return true
	else {
		return false
	}
}

function validateDate(myfield) {
	var i
	var str = myfield;

	if ((!notNull(str)) || (!notBlank(str)))
	{
		return false;
	}
	
	if (str.length != 10)
	{
		return false;
	}
	for (i = 0;i < 4;i++)
	{
	   mychar = str.charAt(i)
		if (mychar < "0" || mychar > "9")
		{
			return false
		}
	}
	mychar = str.charAt(4);
	if (mychar != "/")
	{
		return false;
	}

	for (i = 5;i < 7;i++)
	{
	   mychar = str.charAt(i)
		if (mychar < "0" || mychar > "9")
		{
			return false
		}
	}
	mychar = str.charAt(7);
	if (mychar != "/")
	{
		return false;
	}
	for (i = 8;i < 10;i++)
	{
	   mychar = str.charAt(i)
		if (mychar < "0" || mychar > "9")
		{
			return false
		}
	}

	return true
}

//判断是否是闰年
function isYear(s){
	s = parseInt(s);
	
	if(s % 4 == 0){
		if(s % 100 ==0){
			if( s % 400 == 0){
				return true;
			}else{
				return false;
			}
		}else{
			return true;
		}
	}else{
		return false;
	}
}


function isDay(year,month,day){
	day= parseInt(day);
	month = parseInt(month);
	year = parseInt(year);
	//var array = new Array();
	//array = {1,3,5,7,8,10,12};
	if(month>12){
		return false;
	}else{
		return true;
	}
	var s = "1|3|5|7|8|10|12";
	var array = s.split("|");

	if(month == 2){
		if(isYear(year)){
			if(day > 29){
				return false;
			}else{
				return true;
			}
		}else{
			if(day > 28){
				return false;
			}else{
				return true;
			}
		}
	}else{
		var i ;
		var s = false;
		//判断该月是否有31日
		for(i = 0 ; i < array.length;i++){
			
			if(parseInt(array[i]) == parseInt(month)){
				s = true;
			}
		}
			if(s){
				if(day > 31){
					return false;
				}else{
					return true;
				}
			}else{
				if(day > 30){
					return false;
				}else{
					return true;
				}
		  }
	}
}


function verifyDate(startDate,endDate){
	startDate = eval(startDate);
	endDate = eval(endDate);
	if(startDate - endDate <= 0){
		return true;
	}else{
		return false;
	}
}


function chknbr(num,opt1,opt2) 
{ 
   var i=num.length; 
   var staus; 
   //staus用于记录.的个数 
   status=0; 
   if ((opt2!=1) && (num.charAt(0)=='-')) 
   { 
      //alert("You have enter a invalid number."); 
      return 0; 
   } 
   //当最后一位为.时出错 
   if (num.charAt(i-1)=='.') 
   { 
      //alert("You have enter a invalid number."); 
      return 0; 
   } 

   for (j=0;j<i;j++) 
   { 
      if (num.charAt(j)=='.') 
      { 
         status++; 
      } 
      if (status>1) 
      { 
         //alert("You have enter a invalid number."); 
         return 0; 
      } 
      if (num.charAt(j)<'0' || num.charAt(j)>'9' ) 
      { 
         if (((opt1==0) || (num.charAt(j)!='.')) && (j!=0)) 
         { 
            //alert("You have enter a invalid number."); 
            return 0; 
         } 
      } 
   } 
   return 1; 
} 



// 函数名: chkDate
// 功  能: 检察日期字段是否合法
// 参  数: strDate, 日期字符串 (格式: yyyy/mm/dd)
// ****************************************************************************************************
function chkDate(strDate) {
    var y = substring(strDate, 1, indexOf(strDate, "/") - 1)
    var m = substring(strDate, indexOf(strDate, "/") + 1, lastIndexOf(strDate, "/") - 1)
    var d = substring(strDate, lastIndexOf(strDate, "/") + 1)
    
    if ((isNaN(y) == true) || (isNaN(m) == true) || (isNaN(d) == true)) { return false; }
    
    if (parseInt(y) > 9999) { return false; }
    if (parseInt(m) > 12) { return false; }
    if (parseInt(d) > 31) { return false; }
    
    if (((parseInt(m) == 4) || (parseInt(m) == 6) || (parseInt(m) == 9) || (parseInt(m) == 11)) && (parseInt(d) > 30)) { return false; }
    
    if (parseInt(m) == 2) {
        if (((parseInt(y) % 4 == 0) && (parseInt(y) % 100 != 0)) || (parseInt(y) % 400 == 0)) {
            if (parseInt(d) > 29) { return false; }
        } else {
            if (parseInt(d) > 28) { return false; }
        }
    }
    
    return true;
}



// 函数名: chkDateCompare
// 功  能: 检察一个日期字段是否大于另一个 (strDate1 > strDate2)
// 参  数: strDate1, strDate2, 日期字符串 (格式: yyyy/mm/dd)
// 备  注: 需要 chkDate 函数支持
// ****************************************************************************************************
function chkDateCompare(strDate1, strDate2) {
    if ((chkDate(strDate1) == false) || (chkDate(strDate2) == false)) { return false; }
    
    var y1 = substring(strDate1, 1, indexOf(strDate1, "/") - 1);
    var y2 = substring(strDate2, 1, indexOf(strDate2, "/") - 1);
    var m1 = substring(strDate1, indexOf(strDate1, "/") + 1, lastIndexOf(strDate1, "/") - 1);
    var m2 = substring(strDate2, indexOf(strDate2, "/") + 1, lastIndexOf(strDate2, "/") - 1);
    var d1 = substring(strDate1, lastIndexOf(strDate1, "/") + 1);
    var d2 = substring(strDate2, lastIndexOf(strDate2, "/") + 1);
    
    if (y1 < y2) {
        return false;
    } else if (y1 == y2) {
        if (m1 < m2) {
            return false;
        } else if (m1 == m2) {
            if (d1 < d2) {
                return false;
            }
        }
    }
    
    return true;
}



// 函数名: chkEmail
// 功  能: 检察邮件字段合法性 ( "@" 及后续的 "." 检查)
// 参  数: strEmail, 邮件字符串
// ****************************************************************************************************
function chkEmail(strEmail) {		
    if (strEmail.indexOf("@") < 0) { return false; }
    if (strEmail.indexOf(".") < 0) { return false; }
    return true;
}



// 函数名: chkIfEnglish
// 功  能: 检察传入字段是否由英文字母及合法符号组成
// 参  数: strString, 传入字段
// ****************************************************************************************************
function chkIfEnglish(strString) {
	if (strString.charAt(0) == "-") { return false; }
	if (strString.charAt(strString.length - 1) == "-" ) { return false; }
	
	var i, s, Letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890-";
	for (i = 0; i < strString.length; i ++) {
	    s = strString.charAt(i);
	    if (Letters.indexOf(s) < 0) { return false; }
	}
	
	return true;
}



// 函数名: chkIfNull
// 功  能: 检察传入字段是否为空 (零长度字符串)
// 参  数: strString, 传入字段
// ****************************************************************************************************
function chkIfNull(strString) {
    if (strString.length == 0) {
        return false;
    } else {
        return true;
    }
}



// 函数名: chkIfRadioChecked
// 功  能: 检察 radio 中是否有选中的项目
// 参  数: strRadioName, radio 的完整评估式 (如, "form1.radio1")
// ****************************************************************************************************
function chkIfRadioChecked(strRadioName) {
    for (var i = 0; i < eval(strRadioName).length; i ++) {
        if (eval(strRadioName)[i].checked) {
            return true;
        }
    }
    return false;
}



// 函数名: chkPasswordChange
// 功  能: 修改密码时, 检察三个字段是否合法. (原密码, 新密码, 重复新密码)
// 参  数: strPwdOld, 原密码; strPwdNew, 新密码; strPwdReNew, 重复新密码
// 备  注: 需要 chkIfNull 函数支持
// ****************************************************************************************************
function chkPasswordChange(strPwdOld, strPwdNew, strPwdReNew) {
    if ((chkIfNull(strPwdOld) == false) || (chkIfNull(strPwdNew) == false) || (chkIfNull(strPwdReNew) == false)) { return false; }
    if (strPwdNew != strPwdReNew) { return false; }
    
    return true;
}

function openwin(url)
  {
  var width="520", height="400";
  var left = (screen.width/2) - width/2;
  var top = (screen.height/2) - height/2;
  var styleStr = 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbar=no,resizable=no,copyhistory=yes,width='+width+',height='+height+',left='+left+',top='+top+',screenX='+left+',screenY='+top;	  
     var newwin=window.open(url,"NewWin",styleStr);
     // newwin.focus();
     return false;
  }


//*****************************************************************************************************************

//*****************************************************************************************************************
function strLen(str)
  {
  	var badChar = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789><,[]{}?/+=|\\'\":;~!#$%()`";
    var i;
	var lens = 0;
	if(str.length == 0 || str == null)
		return 0;
	for(i=0;i<str.length;i++)
	  {
	  	c = str.charAt(i);//字符串s中的字符
	    if(badChar.indexOf(c) == -1)
		  {
		  	lens = lens + 2;
		  }
		else
		  {
		  	lens = lens + 1;
		  }
	  }
	return lens;
  }
  
function checkDel()
   {
      return confirm("您确认要删除吗？若有此记录相关的资源或信息将同时被删除？");
   }

function centerWin() {
if (window.screen) {
    var aw = screen.availWidth;
    var ah = screen.availHeight;
	
	var ww = width;
	var wh = height;
    window.moveTo((aw - ww)/2, (ah - wh)/2);
  }
}

function messageWindow(title, msg)
{
  var width="300", height="125";
  var left = (screen.width/2) - width/2;
  var top = (screen.height/2) - height/2;
  var styleStr = 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbar=no,resizable=no,copyhistory=yes,width='+width+',height='+height+',left='+left+',top='+top+',screenX='+left+',screenY='+top;
  var msgWindow = window.open("","msgWindow", styleStr);
  var head = '<head><title>'+title+'</title></head>';
  var body = '<center>'+msg+'<br><p><form><input type="button" value="   Done   " onClick="self.close()"></form>';
  msgWindow.document.write(head + body);
}

