function validateMyForm(form) {
	if(validateString(form.first_name, 'Please enter your first name', 2, 30) == false ){
		return false;
	}
	
	if(validateString(form.last_name, 'Please enter your last name', 2, 30) == false ){
		return false;
	}

	if(validateEmail(form.email, 'Please enter your email address') == false ){
		return false;
	}
	
	return true;
} 


function validatePhone(field, msg) {
	var phone = field;
	var digits = phone.value.replace(/[^0-9]/ig, '');
	if (!digits) { 
		alert(msg);
		field.focus();
		field.select();
		return false; 
	}
	if (digits.length == 10) {
		phone.value = '(' + digits.substring(0, 3) + ') ' +  
		digits.substring(3, 6) + '-' +  
		digits.substring(6, 10);
		return true;
	} else {
		phone.value = digits;
		alert(msg);
		field.focus();
		field.select();
		return false;
	}
} 
function validateString(field, msg, min, max) {
	if (!min) { min = 1 }
	if (!max) { max = 65535 }
	
	if (!field.value || field.value.length < min ||  
		field.value.max > max) {
		alert(msg);
		field.focus();
		field.select();
		return false;
	}
	
	return true;
}

function validateNumber(field, msg, min, max) {
	if (!min) { min = 0 }
	if (!max) { max = 255 }
	
	if ( (parseInt(field.value) != field.value) || field.value.length < min || field.value.length > max) {
		alert(msg);
		field.focus();
		field.select();
		return false;
	}
	
	return true;
}

function validateEmail(email, msg, optional) {
	if (!email.value && optional) {
		return true;
	}
	
	var re_mail = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z])+$/;
	if (!re_mail.test(email.value)) {
		alert(msg);
		email.focus();
		email.select();
		return false;
	}
	return true;
}
