function Jtrim(str)
{
	var i = 0;
	var len = str.length;
	if ( str == "" ) return( str );
	j = len -1;
	flagbegin = true;
	flagend = true;
	while ( flagbegin == true && i< len)
	{
		if ( str.charAt(i) == " " )
		{
			i=i+1;
			flagbegin=true;
		}
		else
		{
			flagbegin=false;
		}
	}
	while  (flagend== true && j>=0)
	{
		if (str.charAt(j)==" ")
		{
			j=j-1;
			flagend=true;
		}
		else
		{
			flagend=false;
		}
	}
	if ( i > j ) return ("")
	trimstr = str.substring(i,j+1);
	return trimstr;
}

//数字判断函数
function isNumber(s)
{
	var digits = "0123456789";
	var i = 0;
	var sLength = s.length;
	while ((i < sLength))
	{
		var c = s.charAt(i);
		if (digits.indexOf(c) == -1) return false;
		i++;
	}
	return true;
}

//检查是否是允许范围内的数值
function isNumRange(s,mins,maxs)
{
	if (!isNumber(s))
	{
		return false;
	}
	else
	{
		if ((s<mins)||(s>maxs))
		{
			return false;
		}
	}
	return true;
}

//数字判断函数
function isPhone(s)
{
	var digits = "0123456789.-_";
	var i = 0;
	var sLength = s.length;
	while ((i < sLength))
	{
		var c = s.charAt(i);
		if (digits.indexOf(c) == -1) return false;
		i++;
	}
	return true;
}

//非允许字符函数isUnAccordant

//校验日期的合法性,当通过时返回对应的日期对象
function checkDate(dateStr)
{ 
	// 定义日期格式的正则表达式
	var reg = /^(\d{4,4})\-(\d{1,2})\-(\d{1,2})$/; 

	// 尝试匹配
	var r = dateStr.match(reg); 

	if(r == null) {
		// 未匹配成功
		return null; 
	}
	
	// 设置月份,范围为 0 - 11,因此这里要减1
	r[2] = r[2] - 1; 
	
	// 根据匹配的年,月,日构造日期对象
	var d = new Date(r[1], r[2], r[3]); 
	
	// 将此日期对象的年,月,日与原值对照,若有不匹配的即说明不是正确的日期格式.
	if (d.getFullYear() != r[1]) return null; 
	if (d.getMonth() != r[2]) return null; 
	if (d.getDate() != r[3]) return null; 
	return d; 
} 

//检查字符串的长度，汉字算2个字符
function Contentlength(strTemp)
{
	var Contentlength=0;
	for(i=0;i<strTemp.length;i++){
		if(strTemp.charCodeAt(i)>127)Contentlength+=2;
		else Contentlength++;
	}
	return Contentlength;
}

//去掉空格
function check_null(string) 
{ 
	var i=string.length;
	var j = 0; 
	var k = 0; 
	var flag = true;
	while (k<i)
	{ 
		if (string.charAt(k)!= " ")
			j = j+1; 
			k = k+1; 
	}
	if (j==0) 
	{
		flag = false;
	}
	return flag; 
}

//判断输入的是不是合法的字符的函数
function isEnKong(argValue) 
{
	var flag1=false;
	var compStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz _-1234567890.,&";
	var length2=argValue.length;
	for (var iIndex=0;iIndex<length2;iIndex++)
	{
		var temp1=compStr.indexOf(argValue.charAt(iIndex));
		if(temp1==-1) 
		{
			flag1=false;
			break;							
		}
		else
		{
			flag1=true;
		}
	}
	return flag1;
}

//判断输入的是不是合法的登录名称
function isLogin(argValue) 
{
	var flag1=false;
	var compStr="abcdefghijklmnopqrstuvwxyz_-1234567890.";
	var length2=argValue.length;
	for (var iIndex=0;iIndex<length2;iIndex++)
	{
		var temp1=compStr.indexOf(argValue.charAt(iIndex));
		if(temp1==-1) 
		{
			flag1=false;
			break;							
		}
		else
		{
			flag1=true;
		}
	}
	if (isPhone(argValue.charAt(0)))
	{
		flag1=false;
	}
	return flag1;
}

//判断Email是否合法的函数
function emailCheck(emailStr)
{
	var checkTLD=1;
	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var quotedUser="(\"[^\"]*\")";
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom=validChars + '+';
	var word="(" + atom + "|" + quotedUser + ")";
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	var emailPat=/^(.+)@(.+)$/;
	var matchArray=emailStr.match(emailPat);
	if (matchArray==null)
	{
		alert("邮件地址错误！ (请检查@ 和 .)");
		return false;
	}
	var user=matchArray[1];
	var domain=matchArray[2];
	for (i=0; i<user.length; i++)
	{
		if (user.charCodeAt(i)>127)
		{
			alert("邮件包含非法字符！");
			return false;
		}
	}
	for (i=0; i<domain.length; i++)
	{
		if (domain.charCodeAt(i)>127)
		{
			alert("域名包含非法字符！");
			return false;
		}
	}
	if (user.match(userPat)==null)
	{
		alert("用户名不存在！");
		return false;
	}
	var IPArray=domain.match(ipDomainPat);
	if (IPArray!=null)
	{
		for (var i=1;i<=4;i++)
		{
			if (IPArray[i]>255)
			{
				alert("IP地址不正确！");
				return false;
			}
		}
		return true;
	} 
	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
	for (i=0;i<len;i++)
	{
		if (domArr[i].search(atomPat)==-1)
		{
			alert("您输入的邮件域名不正确！");
			return false;
		}
	}
	if (checkTLD && domArr[domArr.length-1].length!=2 && domArr[domArr.length-1].search(knownDomsPat)==-1)
	{
		alert("邮件地址必须是已知域名或是两个字母 " + "国家.");
		return false;
	}
	if (len<2)
	{
		alert("这个邮件地址没有主机名！");
		return false;
	}
	return true;
}

//this function is used to compare two date,author:rautinee
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(OneMonth+"/"+OneDay+"/"+OneYear) > Date.parse(TwoMonth+"/"+TwoDay+"/"+TwoYear))
	{
		return true;
	}
	else
	{
		return false;
	}
}
