function fTrim(str){
	str=str||""
	//JS Trim created by dagon (greymagic.com)
    //if (typeof str == "string")
		//return( str.replace(/^\s*([\s\S]*\S+)\s*$|^\s*$/,'$1') ); 
		return( str.replace(/^\s+|\s*([\+\,>\s;:])\s*|\s+$/g,'$1') ); 
}

function fisValidEmail(strEmail){
// fisValidEmail by dagon (greyMagic.com)
	return /^\w.+@([\w\-]+\.)+\w{2,3}$/.test(strEmail);

}

function fIsNumeric(strNum){
	return /^\d+$/.test(strNum);
}

function fIsFloat(strNum){
	return /^((\d+(\.\d*)?)|((\d*\.)?\d+))$/.test(strNum);
}

function fIsAlphanumeric(str){
	return /^[a-zA-Z0-9à-ú]+$/.test(str);
}

function fIsFileName(str){
	return /^[a-zA-Z0-9 -_()]+$/.test(str);
}

function fIsValidUniqeString(str){
	return /^[a-zA-Z0-9 \-_@à-ú]+$/.test(str);
}

function fIsValidDate(str){
	return /^(3[01]|0[1-9]|[12]\d)\/(0[1-9]|1[012])\/\d{4}/.test(str);
}

function fIsNotEmpty(str){
	return(!(fTrim(str)==""));
}

function oValidator(funcRef, sMsg){
	this.funcRef=funcRef;
	this.sMsg=sMsg;
}

function oFld(){
	var argv = oFld.arguments;
	this.obj = argv[0];
	this.validationFuncs=new Array();
    for (var i = 1; i < argv.length; i++) 
        this.validationFuncs[i-1]=argv[i];
}
