function validate_form()
{	
	var str = "";
	var validform = true;

	// Declaring required variables
	var digits = "0123456789";
	// non-digit characters which are allowed in phone numbers
	var phoneNumberDelimiters = "()- .";
	// characters which are allowed in international phone numbers
	// (a leading + is OK)
	var validWorldPhoneChars = phoneNumberDelimiters + "+";
	// Minimum no of digits in an international phone no.
	var minDigitsInIPhoneNumber = 10;
	
	function isInteger(s)
	{
		var i;
		for (i = 0; i < s.length; i++)
		{
		// Check that current character is number.
			var c = s.charAt(i);
			if (((c < "0") || (c > "9"))) return false;
		}
		// All characters are numbers.
		return true;
	}

	function trim(s)
	{
		var i;
		var returnString = "";
		// Search through string's characters one by one.
		// If character is not a whitespace, append to returnString.
		for (i = 0; i < s.length; i++)
		{   
		// Check that current character isn't whitespace.
			var c = s.charAt(i);
			if (c != " ") returnString += c;
		}
		return returnString;
	}

	function stripCharsInBag(s, bag)
	{
		var i;
		var returnString = "";
		// Search through string's characters one by one.
		// If character is not in bag, append to returnString.
		for (i = 0; i < s.length; i++)
		{   
			// Check that current character isn't whitespace.
			var c = s.charAt(i);
			if (bag.indexOf(c) == -1) returnString += c;
		}
   		return returnString;
	}

	function checkInternationalPhone(strPhone)
	{
		var bracket=3
		strPhone=trim(strPhone)
		if(strPhone.indexOf("+")>1) return false
		if(strPhone.indexOf("-")!=-1)bracket=bracket+1
		if(strPhone.indexOf("(")!=-1 && strPhone.indexOf("(")>bracket)return false
		var brchr=strPhone.indexOf("(")
		if (strPhone.indexOf("(")!=-1 && strPhone.charAt(brchr+2)!=")")return false
		if (strPhone.indexOf("(")==-1 && strPhone.indexOf(")")!=-1)return false
		s = stripCharsInBag(strPhone,validWorldPhoneChars);
		return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
	}

	var vinletters=new Array();
	vinletters[1]="AJ";
	vinletters[2]="BKS";
	vinletters[3]="CLT";
	vinletters[4]="DMU";
	vinletters[5]="ENV";
	vinletters[6]="FW";
	vinletters[7]="GPX";
	vinletters[8]="HY";
	vinletters[9]="RZ";

	//--------------12345678901234567
	var vinweight= "8765432T098765432";
		
	function valvin(serie)
	{
	if(serie.length == 17)
	{
		suma = 0;
		for (i=0 ; i < serie.length; i++) 
		{
			nextchar = serie.charAt(i);
			for (j in vinletters)
			{
				if(vinletters[j].indexOf(nextchar) != -1)
				{
					nextchar = j;
				}
			}
			val = parseInt(nextchar);
			weight = vinweight.charAt(i);
			if(weight == "T")
			{
				weight = 10;
			}
			else
			{
				weight = parseInt(weight);
			}
			suma += val * weight;
		}
		controlchar = suma % 11;
		if(controlchar == 10) controlchar = "X";
		if(controlchar == serie.charAt(8))
		{
			return true;
		}
		else
		{
			return false;
		}
	}
	else
	{
		return false;
	}
	return false;
	}

	if (document.getElementById("contactmethod").value == "-1")
	{
		validform = false;
		document.contact_form.contactmethod.focus();
		document.getElementById("contactmethod_error").style.color = "red";
	}
	else
	{
		document.getElementById("contactmethod_error").style.color = "black";
	}

	if (document.getElementById("foundus").value == "-1")
	{
		validform = false;
		document.contact_form.foundus.focus();
		document.getElementById("foundus_error").style.color = "red";
	}
	else
	{
		document.getElementById("foundus_error").style.color = "black";
	}

	if (document.contact_form.priceofcar.value == "" || document.contact_form.priceofcar.value == null)
	{
		validform = false;
		document.contact_form.priceofcar.focus();
		document.getElementById("price_error").style.display = "block";
	}
	else
	{
		document.getElementById("price_error").style.display = "none";
	}
		
	if (document.contact_form.modelofcar.value == "" || document.contact_form.modelofcar.value == null)
	{
		validform = false;
		document.contact_form.modelofcar.focus();
		document.getElementById("model_error").style.display = "block";
	}
	else
	{
		document.getElementById("model_error").style.display = "none";
	}

	if (document.getElementById("makeofcar").value == "-1")
	{
		validform = false;
		document.contact_form.makeofcar.focus();
		document.getElementById("make_error").style.display = "block";
	}
	else
	{
		document.getElementById("make_error").style.display = "none";
	}

	if (document.getElementById("year").value == "-1")
	{
		validform = false;
		document.contact_form.year.focus();
		document.getElementById("year_error").style.display = "block";
	}
	else
	{
		document.getElementById("year_error").style.display = "none";
	}

	if ((document.contact_form.phone.value == "") || (document.contact_form.phone.value == null))
	{
		str = "- phone number [xxx-xxx-xxxx]\n" + str;
		validform = false;
		document.contact_form.phone.focus();
		document.getElementById("phone_error").style.display = "block";
	}
	else if (checkInternationalPhone(document.contact_form.phone.value)==false)
	{
		str = "- phone number [xxx-xxx-xxxx]\n" + str;
		validform = false;
		document.contact_form.phone.focus();
		document.getElementById("phone_error").style.display = "block";
	}
	else
	{
		document.getElementById("phone_error").style.display = "none";
	}
	
	var apos = document.contact_form.email.value.indexOf("@");
	var dotpos = document.contact_form.email.value.lastIndexOf(".");
	if (apos<1||dotpos-apos<2)
	{
		validform = false;
		str = "- email address\n" + str;
		document.contact_form.email.focus();
		document.getElementById("email_error").style.display = "block";
	} 
	else
	{
		document.getElementById("email_error").style.display = "none";
	}
	
	if (document.contact_form.lname.value == "" || document.contact_form.lname.value == null)
	{
		str = "- last name\n" + str;
		validform = false;
		document.contact_form.lname.focus();
		document.getElementById("lname_error").style.display = "block";
	}
	else
	{
		document.getElementById("lname_error").style.display = "none";
	}

	if (document.contact_form.fname.value == "" || document.contact_form.fname.value == null)
	{
		str = "- first name\n" + str;
		validform = false;
		document.contact_form.fname.focus();
		document.getElementById("fname_error").style.display = "block";
	}
	else
	{
		document.getElementById("fname_error").style.display = "none";
	}
	
	/*if (validform == false)
	{
		alert("Please fill in:\n" + str);
	}*/	
	
	if (validform == true)
	{
		document.contact_form.SubmitButton.disabled = true;
	}
	
	return(validform);
}
