function is_not_empty(val) {
	return (trim(val) != "");
}

function is_email(val) {
	return (!(val.indexOf('@')<0 || val.indexOf('.')<0));
}

function is_email_or_empty(val) {
	if(is_not_empty(val)) 
		return is_email(val);
	return true;	
}

function is_numeric(val) {
	return (!(isNaN(val)));
}

function is_decimal(val) {
	var regex = /^((\d+(\.\d*)?)|((\d*\.)?\d+))$/;
	return (parseFloat(val)>0 && regex.test(val));
}

function is_decimal_or_empty(val) {
	if(is_not_empty(val)) 
		return is_decimal(val);
	return true;
}

function is_number(val) {
	var regex = /^\d+$/;
	return(parseInt(val)>0 && regex.test(val));
}	

function is_number_or_empty(val) {
	if(is_not_empty(val)) 
		return is_number(val);
	return true;
}

function trim(str) {
     return str.replace(/^\s+/g, '').replace(/\s+$/g, '');
}