// Validation script for WES Registration

function validateForm()
{
	
	$error = 0;

	if(document.registration.terms.checked == false)
	{
		$error = 1;
		$message = "Please read and accept the terms and conditions";
	}
	
	if(document.registration.sponsorshipPackage.value == "none")
	{
		$error = 1;
		$message = "Please choose a sponsorship package option from the list provided";
	}
	
	if(document.registration.country.value == "")
	{
		$error = 1;
		$message = "Please enter your country";
	}
	
	if(document.registration.postcode.value == "")
	{
		$error = 1;
		$message = "Please enter your postcode";
	}
	
	if(document.registration.county.value == "")
	{
		$error = 1;
		$message = "Please enter your county";
	}
	
	if(document.registration.city.value == "")
	{
		$error = 1;
		$message = "Please enter your town / city";
	}
	
	if(document.registration.address1.value == "")
	{
		$error = 1;
		$message = "Please enter your address";
	}
	
	if(document.registration.telephone.value == "")
	{
		$error = 1;
		$message = "Please enter your daytime contact telephone number";
	}
	
	// Is this a valid email
	if(validateEmail(document.registration.email.value) == false)
	{
		$error = 1;
		$message = "Please enter a valid email address";
	}
	
	if(document.registration.email.value == "")
	{
		$error = 1;
		$message = "Please enter your email address";
	}
	
	if(document.registration.surname.value == "")
	{
		$error = 1;
		$message = "Please enter your surname";
	}
	
	if(document.registration.firstname.value == "")
	{
		$error = 1;
		$message = "Please enter your first name";
	}
	
	if($error == 1)
	{
		alert($message);
		return false;
	}
	else
	{
		document.registration.submit();	
	}

}

function validateDelegate()
{
	
	$error = 0;
	
	if(document.registration.terms.checked == false)
	{
		$error = 1;
		$message = "Please read and accept the terms and conditions";
	}
	
	// THis is only fired when we select student
	if($('#delegateType').val() == "Student")
	{

		if(document.registration.understand.checked == true)
		{
			if(document.registration.confirmPlace.checked == false)
			{
				$error = 1;
				$message = "You have ticked the 'I understand' box without confirming your place, please tick both boxes to continue.";
			}
		}
		
		if(document.registration.confirmPlace.checked == true)
		{
			if(document.registration.understand.checked == false)
			{
				$error = 1;
				$message = "Accomodation for this event is allocated in twin bedrooms, please tick the 'I understand' tick box so we know you are aware of this.";
			}
		}
		
		if((document.registration.understand.checked == false) && (document.registration.confirmPlace.checked == false))
		{
			$error = 1;
			$message = "Please confirm your place as a student for this event";
		}
		
		if(document.registration.universityCourse.value == "")
		{
			$uni = document.registration.universityName.value;
			
			if($uni == "")
			{
				$message = "Please enter the name of the Course you are studying.";
			}
			else
			{
				$message = "Please enter the name of the Course you are studying at " + $uni;
			}
			
			$error = 1;
		}
		
		if(document.registration.universityName.value == "")
		{
			$error = 1;
			$message = "Please enter the name of the University where you are currently studying.";
		}
		
		
	}
	
	// This is only fired when we select none member
	if($('#delegateType').val() == "Non Member")
	{
		
		if(document.registration.dateOfBirth.value == "")
		{
			$error = 1;
			$message = "Please enter your date of birth";
		}
		
		if(document.registration.degree.value == "")
		{
			$error = 1;
			$message = "Please enter your degree or any qualifications";
		}
		
		
		if(document.registration.jobTitle.value == "")
		{
			$error = 1;
			$message = "Please enter your job title if you're unemployed, please enter none";
		}
		
		if(document.registration.employer.value == "")
		{
			$error = 1;
			$message = "Please enter your current employer if you're unemployed, please enter none";
		}
	}
	
	if(document.registration.country.value == "")
	{
		$error = 1;
		$message = "Please enter your country";
	}
	
	if(document.registration.postcode.value == "")
	{
		$error = 1;
		$message = "Please enter your postcode";
	}
	
	if(document.registration.county.value == "")
	{
		$error = 1;
		$message = "Please enter your county";
	}
	
	if(document.registration.city.value == "")
	{
		$error = 1;
		$message = "Please enter your town / city";
	}
	
	if(document.registration.address1.value == "")
	{
		$error = 1;
		$message = "Please enter your address";
	}
	
	if(document.registration.telephone.value == "")
	{
		$error = 1;
		$message = "Please enter your daytime contact telephone number";
	}
	
	// Is this a valid email
	if(validateEmail(document.registration.email.value) == false)
	{
		$error = 1;
		$message = "Please enter a valid email address";
	}
	
	if(document.registration.email.value == "")
	{
		$error = 1;
		$message = "Please enter your email address";
	}
	
	if(document.registration.surname.value == "")
	{
		$error = 1;
		$message = "Please enter your surname";
	}
	
	if(document.registration.firstname.value == "")
	{
		$error = 1;
		$message = "Please enter your first name";
	}
	
	if($error == 1)
	{
		alert($message);
		return false;
	}
	else
	{
		document.registration.submit();	
	}

}

function validateEmail(str) 
{
		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1)
		{
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr)
		{
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr)
		{
		    return false
		}

		if (str.indexOf(at,(lat+1))!=-1)
		{
		    return false
		}

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot)
		 {
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1)
		 {
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1)
		 {
		    return false
		 }

 		 return true					
}

function clearField(obj)
{
	obj.value = "";
}


// New jQuery functions 03/06/10

$(document).ready(function()
{
	// Put our loader functions in here
	enableButtons();
});


function enableButtons()
{
	// Add click event to student button
	$('#student-button').click(function()
	{
		// First add a class of over to the clicked button
		$(this).addClass('over');
		
		// Remove over class from other button
		$('#members-button').removeClass('over');
		$('#non-members-button').removeClass('over');
		
		// Add class of hide to non student
		$('#member').addClass('hide');
		$('#non-member').addClass('hide');
		
		// Remove hide class from student
		$('#student').removeClass('hide');
		
		// Find and edit the hidden registration Type field
		$('#delegateType').val("Student");
	});
	
	// Add click event to non student button
	$('#members-button').click(function()
	{		
		// First add a class of over to the clicked button
		$(this).addClass('over');
		
		// Remove over class from other button
		$('#student-button').removeClass('over');
		$('#non-members-button').removeClass('over');
		
		// Add a hide class to student
		$('#student').addClass('hide');
		$('#non-member').addClass('hide');
		
		// Remove hide class from non student
		$('#member').removeClass('hide');
		
		// Find and edit the hidden registration Type field
		$('#delegateType').val("Member");
	});
	
	// Add click event to non student button
	$('#non-members-button').click(function()
	{
		// First add a class of over to the clicked button
		$(this).addClass('over');
		
		// Remove over class from other button
		$('#student-button').removeClass('over');
		$('#members-button').removeClass('over');
		
		// Add a hide class to student
		$('#student').addClass('hide');
		$('#member').addClass('hide');
		
		// Remove hide class from non student
		$('#non-member').removeClass('hide');
		
		// Find and edit the hidden registration Type field
		$('#delegateType').val("Non Member");
	});
	
}

