function isEmpty(Str) {
	empty = (Str === "") ? true :  false;
	return empty;
}

function isNumber(Digit) {
	return /^\d+[\.\d*]?$/.test(Digit);
}

function isAlphabet(Digit) {
	return /^[a-zA-Z]$/.test(Digit);
}
function isInteger(Str) {
	return /^\d+$/.test(Str);
}
function isFloat(Str) {
		return /^[+-]?\d+\.{1}\d*$/.test(Str);
}
function isCurrency(Str) {
		return /^\d+[.]{1}[0-9]{2,}$/.test(Str);
}
function isDate(Str) {
	var bool1=/^[0]?\d[\/|-][0-2]\d[\/|-]\d{4}$/.test(Str);		//0x month format 0X-2X date format
	var bool2=/^[1][0-2][\/|-][0-2]\d[\/|-]\d{4}$/.test(Str);	//1x month format 3X date format
	var bool3=/^[1][0-2][\/|-][3][0,1][\/|-]\d{4}$/.test(Str);	
	var bool4=/^[0]?\d[\/|-][3][0,1][\/|-]\d{4}$/.test(Str);
	return ((bool1)||(bool2)||(bool3)||(bool4));
}
function isTime(Str) {
		var bool1 = /^[0-1]?\d:[0-5]\d(:[0-5]\d)?$/.test(Str);
		var bool2 = /^[2][0-3]:[0-5]\d(:[0-5]\d)?$/.test(Str);
		return ((bool1)||(bool2));
}
function isDateTime(Str) {
		var str = RemoveSpace(Str).split(' ');
		return isDate(str[0]) && isTime(str[1]);
}
function isDomain (Str) {
	var specialChars="\\(\\)<>#\\$&\\*!`\\^\\?~|/@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var atom=validChars + '+';
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	var ipDomainPat=/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/;
	var IPArray=Str.match(ipDomainPat);
	if (IPArray!=null) {
	 	 for (var i=1;i<=4;i++) {
	    		if (IPArray[i]>255) {
	 			return false
	   		 }
   		 }
	}
	var domainArray=Str.match(domainPat)
	if (domainArray==null) {
    		return false;
	}
	var atomPat=new RegExp(atom,"g")
	var domArr=Str.match(atomPat)
	var len=domArr.length
	if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>4) {
		return false;
	}
	if (len<2) {
   		 return false;
	}

	return true;
}

function isOpenDomain (Str) {
	var pos=Str.indexOf(':');
	if (pos==-1) {
		return (isDomain(Str))
	}
	else {
		domain=Str.substring(0,pos);
		openDomain = Str.substring(pos,Str.length);
	}
		return ((/^[\:]{1}\d+$/.test(openDomain))&&(isDomain(domain)));
}
function isUser (Str) {
	var specialChars="\\(\\)<>#\\$&\\*!`\\^\\?~|/@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var quotedUser="(\"[^\"]*\")";
	var atom=validChars + '+'
	var word="(" + atom + "|" + quotedUser + ")";
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	if (Str.match(userPat)==null) {
    		return false ;
	}
	return true;
}

function isURL(Str) {
	var pos=Str.indexOf('/');
	var domain = (pos==-1)?Str:Str.substring(0,pos);
	var subURL = (pos==-1)?'':Str.substring(pos,Str.length);
	if (!isOpenDomain(domain)) {
		return false;
	}
	if ((subURL=='')||(subURL.length==1)) {
		return true;
	}
	var subPat = /^\/[^\/\\]+\.?[^\/\\]+(\/[^\/\\]*\.{0,1}[^\/\\]*)*$/;
	var ArrayURL=subURL.match(subPat);
	if (ArrayURL==null) {
		return false;
	}
	return true;
}

function isEmail (emailStr) {
	var emailPat=/^(.+)@(.+)$/ ;
	var matchArray=emailStr.match(emailPat);
	if (matchArray==null) {
		return false;
	}
	var user=matchArray[1];
	var domain=matchArray[2];

	if (!isUser(user)) {
   		 return false ;
	}

	if (!isDomain(domain)) {
   		return false;
	}
	return true;
}

function isPhoneNumber (strPhone) {
	return  /^(\d{6,15})$/.test(strPhone);
}


function checkNumRange (value, nMin,nMax){
	if (!isInteger(value)) return false;
	if (value <nMin || value > nMax ) return false;
	return true;
}
function LTrim(Str) {
	return Str.replace(/^\s+/, '');
}

function RTrim(Str) {
	return Str.replace(/\s+$/, '');
}

function Trim(Str) {
	return RTrim(LTrim(Str));
}
function checkSearch(f){
	f._kwd.value = Trim(f._kwd.value);
	if(f._kwd.value!=''){
		var keys,keys_lower,keys_upper;
		keys = f._kwd.value;
		f._case.value = HTMLcode(keys);
		keys_lower = keys.toLowerCase();
		f._lcase.value = HTMLcode(keys_lower);
		keys_upper = keys.toUpperCase();
		f._ucase.value = HTMLcode(keys_upper);
		f.action = "/Search/";
		return true;
	}
	return false;
}
var arrPixFiles = new Array("jpg","jpeg","gif","png","bmp","tif","jpe");
var arrDocFiles = new Array("doc","xls","txt","xls","pdf","ppt","rtf","zip","rar","psd","fla","tgz","gz","bz2");
var arrMovieFiles = new Array("div","mov","wmv","wma","avi","mpg","mpeg","qt","mp4","ram");
var arrFlashFiles = new Array("swf");
//------------------------------------------------
// Function Name :  isFlash
// Actions : retutn true if fileName is Flash file
//------------------------------------------------
function isFlash(fileName) {
  	if (fileName=='') {
   		return false;   	
  	}
  	var ext = getExtension(fileName).toLowerCase();
  	var e;
	for(e in arrFlashFiles){
		if(arrFlashFiles[e]==ext) return true;
	}
	return false;
}

//------------------------------------------------
// Function Name :  isPix
// Actions : retutn true if fileName is image file
//------------------------------------------------
function isPix(fileName) {
  	if (fileName=='') {
   		return false;   	
  	}
  	var ext = getExtension(fileName).toLowerCase();
  	var e;
	for(e in arrPixFiles){
		if(arrPixFiles[e]==ext) return true;
	}
	return false;
}
function getExtension(fileName){
		return fileName.substr(fileName.lastIndexOf(".")+1);
}