 window.onload = function() {
   writeSideMenu(0);
   writeTopMenu();
 }

$(document).ready(function() {
	$('.error').hide();
	$('#errorFlag').hide();

	//Validate form
	//name
	$('#a__contact_name').blur(function() {
		var cname=$('#a__contact_name').val();
		var cnamelen=cname.length;
		if( (cnamelen<2) || (cnamelen>50) )
		{
			$('#errorName').show();
		}
		else
		{
			$('#errorName').hide();
			if ( ($('#errorName').is(":visible") == false) && ($('#errorCompanyname').is(":visible") == false) && ($('#errorAddress').is(":visible") == false)
			&& ($('#errorCountry').is(":visible") == false) && ($('#errorPostcode').is(":visible") == false) && ($('#errorEmail').is(":visible") == false)
			&& ($('#errorPhone').is(":visible") == false) && ($('#errorCourse').is(":visible") == false) )
			{
				$('#errorFlag').hide();
			}			
		}
	});

	//company
	$('#c__company').blur(function() {
		var comp=$('#c__company').val();
		var complen=comp.length;
		if( (complen<2) || (complen>50) )
		{
			$('#errorCompanyname').show();
		}
		else
		{
			$('#errorCompanyname').hide();
			if ( ($('#errorName').is(":visible") == false) && ($('#errorCompanyname').is(":visible") == false) && ($('#errorAddress').is(":visible") == false)
			&& ($('#errorCountry').is(":visible") == false) && ($('#errorPostcode').is(":visible") == false) && ($('#errorEmail').is(":visible") == false)
			&& ($('#errorPhone').is(":visible") == false) && ($('#errorCourse').is(":visible") == false) )
			{
				$('#errorFlag').hide();
			}	
		}
	});

	//address
	$('#d__address1').blur(function() {
		var address=$('#d__address1').val();
		var addresslen=address.length;
		if( (addresslen<2) || (addresslen>150) )
		{
			$('#errorAddress').show();
		}
		else
		{
			$('#errorAddress').hide();
			if ( ($('#errorName').is(":visible") == false) && ($('#errorCompanyname').is(":visible") == false) && ($('#errorAddress').is(":visible") == false)
			&& ($('#errorCountry').is(":visible") == false) && ($('#errorPostcode').is(":visible") == false) && ($('#errorEmail').is(":visible") == false)
			&& ($('#errorPhone').is(":visible") == false) && ($('#errorCourse').is(":visible") == false) )
			{
				$('#errorFlag').hide();
			}			
		}
	});

	//country
	$('#f__country').blur(function() {
		var country=$('#f__country').val();
		var countrylen=country.length;
		if( (countrylen<2) || (countrylen>50) )
		{
			$('#errorCountry').show();
		}
		else
		{
			$('#errorCountry').hide();
			if ( ($('#errorName').is(":visible") == false) && ($('#errorCompanyname').is(":visible") == false) && ($('#errorAddress').is(":visible") == false)
			&& ($('#errorCountry').is(":visible") == false) && ($('#errorPostcode').is(":visible") == false) && ($('#errorEmail').is(":visible") == false)
			&& ($('#errorPhone').is(":visible") == false) && ($('#errorCourse').is(":visible") == false) )
			{
				$('#errorFlag').hide();
			}			
		}
	});

	//postcode
	$('#g__postcode').blur(function() {
		var postcode=$('#g__postcode').val();
		var postcodelen=postcode.length;
		if( (postcodelen<2) || (postcodelen>10) )
		{
			$('#errorPostcode').show();
		}
		else
		{
			$('#errorPostcode').hide();
			if ( ($('#errorName').is(":visible") == false) && ($('#errorCompanyname').is(":visible") == false) && ($('#errorAddress').is(":visible") == false)
			&& ($('#errorCountry').is(":visible") == false) && ($('#errorPostcode').is(":visible") == false) && ($('#errorEmail').is(":visible") == false)
			&& ($('#errorPhone').is(":visible") == false) && ($('#errorCourse').is(":visible") == false) )
			{
				$('#errorFlag').hide();
			}			
		}
	});

	//email
	$('#h__email').blur(function() {
		var email=$('#h__email').val();
		var emailTest=email.indexOf('@');
		var emaillen=email.length;
		if ( (emailTest<1) || (emaillen < 3) )
		{
			$('#errorEmail').show();
		}
		else
		{
			$('#errorEmail').hide();
			if ( ($('#errorName').is(":visible") == false) && ($('#errorCompanyname').is(":visible") == false) && ($('#errorAddress').is(":visible") == false)
			&& ($('#errorCountry').is(":visible") == false) && ($('#errorPostcode').is(":visible") == false) && ($('#errorEmail').is(":visible") == false)
			&& ($('#errorPhone').is(":visible") == false) && ($('#errorCourse').is(":visible") == false) )
			{
				$('#errorFlag').hide();
			}			
		}
	});

	//telephone
	$('#i__phone').blur(function() {
		var tel=$('#i__phone').val();
		var tellen=tel.length;
		if(tellen<6 || tellen>25 || !validate_phoneno(tel))
		{
			$('#errorPhone').show();
		}
		else
		{
			$('#errorPhone').hide();
			if ( ($('#errorName').is(":visible") == false) && ($('#errorCompanyname').is(":visible") == false) && ($('#errorAddress').is(":visible") == false)
			&& ($('#errorCountry').is(":visible") == false) && ($('#errorPostcode').is(":visible") == false) && ($('#errorEmail').is(":visible") == false)
			&& ($('#errorPhone').is(":visible") == false) && ($('#errorCourse').is(":visible") == false) )
			{
				$('#errorFlag').hide();
			}			
		}
	});


	//course
	$('.course').blur(function() {
		var chkd = false;
		var fLength =  $('#totalcourses').val();
		for(var i = 1; i <= fLength; i++){
			var focusElement = i;
			if($('#l__course__selected_' + i).attr('checked')) {
				chkd = true;
				break;
			}
		}
		if(!chkd){
			$('#errorCourse').show();
		} else	{
			$('#errorCourse').hide();
			if ( ($('#errorName').is(":visible") == false) && ($('#errorCompanyname').is(":visible") == false) && ($('#errorAddress').is(":visible") == false)
			&& ($('#errorCountry').is(":visible") == false) && ($('#errorPostcode').is(":visible") == false) && ($('#errorEmail').is(":visible") == false)
			&& ($('#errorPhone').is(":visible") == false) && ($('#errorCourse').is(":visible") == false) )
			{
				$('#errorFlag').hide();
			}			
		}
	});

});


//validate submission
	$("form").submit(function() {

		var numErrors = 0;

		//name
		var cname_val=$('#a__contact_name').val();
		var cnamelen_val=cname_val.length;
		if( (cnamelen_val<2) || (cnamelen_val>50) )
		{
			$('#errorName').show();
			numErrors++;
		}
		else
		{
			$('#errorName').hide();
		}


		//company
		var comp_val=$('#c__company').val();
		var complen_val=comp_val.length;
		if( (complen_val<2) || (complen_val>50) )
		{
			$('#errorCompanyname').show();
			numErrors++;
		}
		else
		{
			$('#errorCompanyname').hide();
		}

		//address
		var address_val=$('#d__address1').val();
		var addresslen_val=address_val.length;
		if( (addresslen_val<2) || (addresslen_val>150) )
		{
			$('#errorAddress').show();
			numErrors++;
		}
		else
		{
			$('#errorAddress').hide();
		}

		//country
		var country_val=$('#f__country').val();
		var countrylen_val=country_val.length;
		if( (countrylen_val<2) || (countrylen_val>50) )
		{
			$('#errorCountry').show();
			numErrors++;
		}
		else
		{
			$('#errorCountry').hide();
		}

		//postcode
		var postcode_val=$('#g__postcode').val();
		var postcodelen_val=postcode_val.length;
		if( (postcodelen_val<2) || (postcodelen_val>10) )
		{
			$('#errorPostcode').show();
			numErrors++;
		}
		else
		{
			$('#errorPostcode').hide();
		}

		//email
		var email_val=$('#h__email').val();
		var emailTest_val=email_val.indexOf('@');
		var emaillen_val=email_val.length;
		if ( (emailTest_val<1) || (emaillen_val < 3) )
		{
			$('#errorEmail').show();
			numErrors++;
		}
		else
		{
			$('#errorEmail').hide();
		}

		//telephone
		var tel_val=$('#i__phone').val();
		var tellen_val=tel_val.length;
		if(tellen_val<6 || tellen_val>25 || !validate_phoneno(tel_val))
		{
			$('#errorPhone').show();
			numErrors++;
		}
		else
		{
			$('#errorPhone').hide();
		}


		//courses
		var chkd = false;
		var fLength =  this.elements.length;
		for(var i = 0; i < fLength; i++){
			if(this.elements[i].type.toLowerCase() == "checkbox"){
				var focusElement = i;
				if(this.elements[i].checked && this.elements[i].id.indexOf("l__course__selected") != -1){
					chkd = true;
					break;
				}
			}
		}

		if(!chkd){
			$('#errorCourse').show();
			numErrors++;
		} else	{
			$('#errorCourse').hide();
		}

		//if errors
		if (numErrors > 0)
		{
			$('#errorFlag').show();
			 scrollTo(0,0);
			return false;
		}
});


function validate_phoneno(ph)
{
	var pattern=new RegExp(/^[0-9-+() ]+$/);
	return pattern.test(ph);
}	
