	///////////////////////////////////////////////////////////////////////////////////////
	// Generic functions, can be reused
	///////////////////////////////////////////////////////////////////////////////////////
	
	function isValidEmail(sEmailToCheck) 
	{
		var lEmail = sEmailToCheck.length;

		if (lEmail < 1 || sEmailToCheck == '')
		{
			return false;
		}
		if ((sEmailToCheck.indexOf("@") == -1) || (sEmailToCheck.indexOf(".") == -1))
		{
			return false;
		}
		return true;
	}
	
	function is_valid(sType, elemtoCheck, err_msg)
	{
		//Function to check if the date of birth entered is valid
		var e_val = elemtoCheck.value
		switch(true){
			case sType=='txt' : 
				if (e_val==""){
					alert(err_msg);
					elemtoCheck.focus();
					return 1
				}else{
					return 0
				}
			break;
			
			case (sType=='day') || (sType=='month') || (sType=='year') : 
				if(!isNaN(parseInt(e_val)))
				{
					var now = new Date();
					var currentYear = now.getYear();

					if( ( sType=='day' && ((parseInt(e_val) >= 1) && (parseInt(e_val) <= 31)) ) || ( sType=='month' && ((parseInt(e_val) >= 1) && (parseInt(e_val) <= 12)) ) || ( sType=='year' && ( ( parseInt(e_val) >= 1900 ) ) ) )
					{
						//date_string += parseInt(e_val);	
					}else{
						alert(err_msg);
						elemtoCheck.focus();
						return 1
					}
					return 0
				}else{
					alert(err_msg);
					elemtoCheck.focus();
					return 1
				}
			break 
		}
	}
	
	function isNumber(string) 
	{
		for (var i=0;i < string.length;i++)
		{
			if ((string.substring(i,i+1) < '0') || (string.substring(i,i+1) > '9'))
			{
            return false;
            }
        }
    return true;
	}
	
	function isDate(sDay,sMonth,sYear) 
	{
		var monthLength = new Array(31,28,31,30,31,30,31,31,30,31,30,31);

		if (!sDay || !sMonth || !sYear)
			return false;

		if (sYear/4 == parseInt(sYear/4))
			monthLength[1] = 29;

		if (sDay > monthLength[sMonth-1])
			return false;

		monthLength[1] = 28;

		var now = new Date();
		now = now.getTime(); //NN3

		var dateToCheck = new Date();
		dateToCheck.setYear(sYear);
		dateToCheck.setMonth(sMonth-1);
		dateToCheck.setDate(sDay);
		
		var checkDate = dateToCheck.getTime();
		var futureDate = (now < checkDate);
		var pastDate = (now > checkDate);
		
		return pastDate;
	}
	
	//********** Validate Date dd/mm/yyyy format **********

	function CheckDate(object_value)
	{
	    //Returns true if value is a eurodate format

	    if (object_value.length != 10)
	        return false;

	    //Returns true if value is a date in the dd/mm/yyyy format
	        isplit = object_value.indexOf('/');

	        if (isplit == -1 || isplit == object_value.length)
	                return false;

	    sDay = object_value.substring(0, isplit);
	        isplit = object_value.indexOf('/', isplit + 1);

	        if (isplit == -1 || isplit == object_value.length)
	                return false;

	    sMonth = object_value.substring((sDay.length + 1), isplit);

	        sYear = object_value.substring(isplit + 1);

	        if (!Checkinteger(sMonth)) //check month
	                return false;
	        else
	        if (!Checkrange(sMonth, 1, 12)) // check month
	                return false;
	        else
	        if (!Checkinteger(sYear)) //check year
	                return false;
	        else
	        if (!Checkrange(sYear, 0, null)) //check year
	                return false;
	        else
	        if (!Checkinteger(sDay)) //check day
	                return false;
	        else
	        if (!Checkday(sYear, sMonth, sDay)) //check day
	                return false;
	        else
	                return true;
	}
	
	
	function Checkday(checkYear, checkMonth, checkDay)
	    {
	        maxDay = 31;

	        if (checkMonth == 4 || checkMonth == 6 ||
	                        checkMonth == 9 || checkMonth == 11)
	                maxDay = 30;
	        else
	        if (checkMonth == 2)
	        {
	                if (checkYear % 4 > 0)
	                        maxDay =28;
	                else
	                if (checkYear % 100 == 0 && checkYear % 400 > 0)
	                        maxDay = 28;
	                else
	                        maxDay = 29;
	        }

	        return Checkrange(checkDay, 1, maxDay); //check day
	}
	
	function Checkinteger(object_value) {
	    //Returns true if value is a number or is NULL
	    //otherwise returns false   

	    if (object_value.length == 0)
	        return true;

	    //Returns true if value is an integer
	    //containing only the characters 0-9.
	    var integer_format = "0123456789";
	    var check_char;

	    for (var i = 0; i < object_value.length; i++) {
			check_char = object_value.charAt(i)
			if (integer_format.indexOf(check_char) < 0)
				return false;
		}
		return true;
	}
	
	function Checkrange(object_value, min_value, max_value)
    {
		//if value is in range then return true else return false

		if (object_value.length == 0)
		    return true;

		if (!isNumber(object_value))
		    {
		    return false;
		    }
		else
		    {
		    return (Numberrange((eval(object_value)), min_value, max_value));
		    }		    
		
	}
	
	function Numberrange(object_value, min_value, max_value)
    {
		// check minimum
		if (min_value != null)
		    {
		    if (object_value < min_value)
		            return false;
		    }

		// check maximum
		if (max_value != null)
		    {
		    if (object_value > max_value)
		            return false;
		    }
		    
		//All tests passed, so...
		return true;
	}
	
	//******************************End validate date ********************************
	///////////////////////////////////////////////////////////////////////////////////////
	
	///////////////////////////////////////////////////////////////////////////////////////
	// Functions to Validate the Ticket News Sign Up form.
	///////////////////////////////////////////////////////////////////////////////////////
	
	function ttSubmitLogin()
	{
		if (document.getElementById("ttTNSUEmail").value == "")
		{
			alert('Please Enter an Email Address');
		}
		else
		{
			document.ttTNSFrmStage1.submit();
		}
	}
	
	
	function ttCheckEmailMatch()
	{
		//Function to check if the 2 entered E-mail address match and then submit form
		var Email1 = document.ttTNSFrmStage2.ttTNSUEmail2.value 
		var Email2 = document.ttTNSFrmStage2.ttTNSUConfirmEmail2.value 
				
		if (Email1 != Email2)
		{
			alert('The two e-mail addresses you entered do not match');
		}
		else if (Email1 == "")
		{
			alert('Please enter your E-mail Address');
		}
		else
		{
			if (isValidEmail(Email1) == true) {
				document.ttTNSFrmStage2.submit();
			}
		}				
	}
			

	function ttSubmitMemberNo()
	{		
		var err_num = 0;
		var mufcNumber = document.ttTNSFrmStage3.ttTNSUMemNo.value;
		
		if (((document.getElementById("ttTNSUDoBDD").value == "") || (document.getElementById("ttTNSUDoBMM").value == "") || (document.getElementById("ttTNSUDoBYY").value == "")) && mufcNumber == "")
		{
			if(confirm("Are you sure you do not have a One United Membership Number?")) 
			{
				document.ttTNSFrmStage3.submit();
			} else {
				return;
			}
		} 
		else 
		{			
			mufcNumber = isNumber(mufcNumber);
			
			err_num += is_valid('month', document.getElementById("ttTNSUDoBMM"), 'The Month you have entered is invalid')
			err_num += is_valid('day', document.getElementById("ttTNSUDoBDD"), 'The Day you have entered is invalid')
			err_num += is_valid('year', document.getElementById("ttTNSUDoBYY"), 'The Year you have entered is invalid')
			
			if (mufcNumber == true && mufcNumber != "" && ((document.getElementById("ttTNSUDoBDD").value != "") && (document.getElementById("ttTNSUDoBMM").value != "") && (document.getElementById("ttTNSUDoBYY").value != "")))
			{		
				document.ttTNSFrmStage3.submit();
			} 
			else 
			{
				alert("Please enter a valid Membership No. and Date Of Birth");
			}	
		}	
	}	
	
	///////////////////////////////////////////////////////////////////////////////////////
	// Functions for validation of MU Mobile Ticket Alerts From 
	///////////////////////////////////////////////////////////////////////////////////////
	function dispalyOptions(val) 
	{
		// mozilla is currently not recognising options.length = 0
		// document.forms[0].elements['swapper'].options = null
		// find value
		if ('' + val.options[val.selectedIndex].value == '') return;
		if ('' + val.options[val.selectedIndex].value == 'undefined') return;
			
		var optionSelected = val.options[val.selectedIndex].value

		// construct arrays
		// format :
		// new Option(text, value, defaultselected[boolean], selected[boolean])
			
		//service for UK residents
		var e = new Array(3)
		e[0] = new Option("Please select","","","")
		e[1] = new Option("Match & News Alerts","2","","")
		e[2] = new Option("Ticket Alerts","50","","")
			
		//service for Eire residents
		var f = new Array(3)
		f[0] = new Option("Please select","","","")
		f[1] = new Option("Match & News Alerts","83","true","")
		f[2] = new Option("Ticket Alerts","84","true","")
			
			
		//operator for UK residents
		var g = new Array(6)
		g[0] = new Option("Please select","","","")
		g[1] = new Option("Orange","1","","")
		g[2] = new Option("Vodafone","2","","")
		g[3] = new Option("T-Mobile","4","","")
		g[4] = new Option("O2","5","","")
		g[5] = new Option("3","3","","")
			
		//operator for International residents
		var h = new Array(4)
		h[0] = new Option("Please select","","","")
		h[1] = new Option("Meteor","9","","")
		h[2] = new Option("O2 Ireland","10","","")
		h[3] = new Option("Vodafone Ireland","11","","")

		// Would use the javascript version of select ... case but Netscape handles it strangely ...
		if(optionSelected == "25") 
		{
			thearray = e
			arraytwo = g
		}
		if(optionSelected == "26") 
		{
			thearray = f
			arraytwo = h
		}
			

		// OK, do the biz for service ...
		document.mmTickeAlertsFrm.mmMobileSubscription.options.length = 0
		document.mmTickeAlertsFrm.mmMobileSubscription.options.length = thearray.length

		for(x=0; x < thearray.length; x++) {
			// thearray.reverse()
			document.mmTickeAlertsFrm.mmMobileSubscription.options[x] = thearray[x]
		}
			
		// OK, do the biz for operator ...
		document.mmTickeAlertsFrm.mmMobileOperator.options.length = 0
		document.mmTickeAlertsFrm.mmMobileOperator.options.length = arraytwo.length

		for(y=0; y < arraytwo.length; y++) {
			// arraytwo.reverse()
			document.mmTickeAlertsFrm.mmMobileOperator.options[y] = arraytwo[y]
		}
	}
	
	function getSelectOptions(val) 
	{
		// mozilla is currently not recognising options.length = 0
		// document.forms[0].elements['swapper'].options = null
		// find value
		if ('' + val.options[val.selectedIndex].value == '') return;
		if ('' + val.options[val.selectedIndex].value == 'undefined') return;
	
		var optionSelected = val.options[val.selectedIndex].value

		// construct arrays
		// format :
		// new Option(text, value, defaultselected[boolean], selected[boolean])
		
		//service level Man Utd on the Fone
		var a = new Array(5)
		a[0] = new Option("Please select","","","")
		a[1] = new Option("Premium","PREMIUM","","")
		a[2] = new Option("Standard","STANDARD","","")
		a[3] = new Option("Away","AWAY","","")
		a[4] = new Option("Off","OFF","","")

		//t&c's
		var b = new Array(3)
		b[0] = new Option("Please select","","","")
		b[1] = new Option("On","ON","","")
		b[2] = new Option("Off","OFF","","")

		//service level for Ticket Alerts
		var c = new Array(6)
		c[0] = new Option("Please select","","","")
		c[1] = new Option("Member","MEMBER","","")
		c[2] = new Option("Season","SEASON","","")
		c[3] = new Option("Public","PUBLIC","","")
		c[4] = new Option("Off","OFF","","")

		// Would use the javascript version of select ... case but Netscape handles it strangely ...
		if(optionSelected == "2" || optionSelected == "83")
		{
			thearray = a
		}
		if(optionSelected == "49")
		{
			thearray = b
		}
		if(optionSelected == "50" || optionSelected == "84")
		{
			thearray = c
		}
	
		// OK, do the biz for service level...
		document.mmTickeAlertsFrm.mmMobileSubscriptionLevel.options.length = 0
		document.mmTickeAlertsFrm.mmMobileSubscriptionLevel.options.length = thearray.length

		for(y=0; y < thearray.length; y++) {
			// thearray.reverse()
			document.mmTickeAlertsFrm.mmMobileSubscriptionLevel.options[y] = thearray[y]
		}

	}
	
	//  The purpose of this function is just to ensure that third privacy cannot be switched on whilst 
	//  Manchester United privacy is switched off ...
	function checkPrivacy(element)
	{
		var mu = document.mmTickeAlertsFrm.mmMobileNoInfo;
		var tp = document.mmTickeAlertsFrm.mmMobileNoCommercial;
		var elemName = element.name;

		if ((mu.checked == true) && (tp.checked == false))
		{
			if (elemName == 'mmMobileNoCommercial') {
				mu.checked = false;
			    tp.checked = false;
			} else {
				mu.checked = true;
			    tp.checked = true;
			}
	    }
	}
	
	function Check_mmTicketAlertsFrm()
	{
		var sErrorMessage = '';
		var elemfrm = document.mmTickeAlertsFrm;
    
		if (elemfrm.mmCountry.value == 25) {
			if (isValidUKMobileNumber(elemfrm.mmMobileNumber.value) == false) {
			sErrorMessage = sErrorMessage + '- Enter a valid UK mobile number\n'
			}
		}
	
		if (elemfrm.mmCountry.value == 26) {
			if (isValidEireMobileNumber(elemfrm.mmMobileNumber.value) == false) {
			sErrorMessage = sErrorMessage + '- Enter a valid Eire mobile number\n'
			}
		}
	
		if (elemfrm.mmMobileSubscription.selectedIndex == 0) {
			sErrorMessage = sErrorMessage + '- Select a service\n'
		}
		if (elemfrm.mmMobileSubscriptionLevel.selectedIndex == 0) {
			sErrorMessage = sErrorMessage + '- Select a service level\n'
		}
		if (elemfrm.mmMobileOperator.selectedIndex == 0) {
			sErrorMessage = sErrorMessage + '- Select an operator\n'
		}

		//	Alert any errors to the user otherwise post the page ...
		if (sErrorMessage !== '') {
			alert('Please check the following details and re-send\n' + sErrorMessage);
			return;
		} else {
			document.mmTickeAlertsFrm.submit();
		}
	}

	// Check that the number is a valid UK number:
	function isValidUKMobileNumber(iNumberToCheck)
	{
		var bValidMobileNumber = true;

		//	Is the number numeric:
		if ((isNumeric(iNumberToCheck, false) == false) || (iNumberToCheck == '')) {
			bValidMobileNumber = false;
		}

		// Is the number between 10 and 14 digits in length:
		var iNumberLength = iNumberToCheck.length;

		if ((iNumberLength < 10) || (iNumberLength > 12)) {
			bValidMobileNumber = false;
		}
		
		//	Does the number start with either '07':
		if (iNumberLength > 3) {
			if ((iNumberToCheck.substr(0, 2) !== '07')) {
				bValidMobileNumber = false;
			}
		}

		return bValidMobileNumber;
	}

	// Check that the number is a valid number:
	function isValidEireMobileNumber(iNumberToCheck)
	{
		var bValidMobileNumber = true;

		//	Is the number numeric:
		if ((isNumeric(iNumberToCheck, false) == false) || (iNumberToCheck == '')) {
			bValidMobileNumber = false;
		}

		// Is the number between 10 and 14 digits in length:
		var iNumberLength = iNumberToCheck.length;

		if ((iNumberLength < 10) || (iNumberLength > 12)) {
			bValidMobileNumber = false;
		}

		return bValidMobileNumber;
	}
	
	function isNumeric(string, ignoreWhiteSpace)
	{
		if (string.search) {
			if ((ignoreWhiteSpace && string.search(/[^\d\s]/) != -1) || (!ignoreWhiteSpace && string.search(/\D/) != -1)) return false;
		}
		return true;
	}
	
	// Check form details have been correctly entered:
	function Check_mmTickeAlertsValidationFrm()
	{
		var sErrorMessage = '';
		var elemfrm = document.mmTickeAlertsValidationFrm;

		if ((isNumeric(elemfrm.mmValidationNumber.value, false) == false) ||
		    (elemfrm.mmValidationNumber.value == '')) {
			sErrorMessage = sErrorMessage + '- Please enter the security code that has been sent to your mobile.\n'
		}

		//	Alert any errors to the user otherwise post the page ...
		if (sErrorMessage !== '') {
			alert('Please check the following details and re-send\n' + sErrorMessage);
		} else {
			elemfrm.submit();
		}

	}
	///////////////////////////////////////////////////////////////////////////////////////
	///////////////////////////////////////////////////////////////////////////////////////
	// Shirt/Wallpaper Questions Form
	///////////////////////////////////////////////////////////////////////////////////////
	
	function checkShirtQuestionsFrm()
	{
		if (document.getElementById("shirtRetailer").value == "")
		{
			alert ("Please select atleast one retailer.");
		}
		else if ((document.getElementById("shirtTown").value == "") && (document.getElementById("shirtRetailer").value != "Kitbag"))
		{
			alert ("Please enter the town.");
		}
		else
		{
			document.shirtWallpaperForm.submit();
		}
	}
	
	///////////////////////////////////////////////////////////////////////////////////////
	///////////////////////////////////////////////////////////////////////////////////////
	// Hospitality Attendance Form
	///////////////////////////////////////////////////////////////////////////////////////
	
	function CheckAttendForm()
	{
		if (document.getElementById("ttvenueFirstName").value == "")
		{
			alert ("Please enter your first name.");
		}
		else if (document.getElementById("ttvenueSurname").value == "")
		{
			alert ("Please enter your surname.");
		}
		else if (document.getElementById("ttvenueJobTitle").value == "")
		{
			alert ("Please enter your job title.");
		}
		else
		{
			document.ttvenueAttend.submit();
		}
	}
	
	function CheckBrouchreForm()
	{
		if ((document.getElementById("ttvenueFirstName").value == "") 
		|| (document.getElementById("ttvenueSurname").value == "") || (document.getElementById("ttvenueAddress1").value == "")||(document.getElementById("ttvenueTown").value == "") || (document.getElementById("ttvenuePostCode").value == ""))
		    
		{
			alert ("Please make sure all mandatory fields are filled in.");
			return false;
		}
		else
		{
			//document.ttvenueBrochure.submit();
			return true;
		}
	}
		
	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the Museum Form
	///////////////////////////////////////////////////////////////////////////////////////
		
	function switchDivs(stage)
	{
		if (stage == 1)
		{			
			document.getElementById('mstBOForm1').style.visibility = "visible";
			document.getElementById('mstBOForm1').style.display = "block";			
			document.getElementById('mstBOForm2').style.visibility = "hidden";
			document.getElementById('mstBOForm2').style.display = "none";
			//document.getElementById('mstBOForm3').style.visibility = "hidden";
			//document.getElementById('mstBOForm3').style.display = "none";			
			
		}
	
		if (stage == 2)
		{			
			document.getElementById('mstBOForm1').style.visibility = "hidden";
			document.getElementById('mstBOForm1').style.display = "none";			
			document.getElementById('mstBOForm2').style.visibility = "visible";
			document.getElementById('mstBOForm2').style.display = "block";	
			//document.getElementById('mstBOForm3').style.visibility = "hidden";
			//document.getElementById('mstBOForm3').style.display = "none";			
		}
		/*if (stage == 3)
		{			
			document.getElementById('mstBOForm1').style.visibility = "hidden";
			document.getElementById('mstBOForm1').style.display = "none";			
			document.getElementById('mstBOForm2').style.visibility = "hidden";
			document.getElementById('mstBOForm2').style.display = "none";	
			document.getElementById('mstBOForm3').style.visibility = "visible";
			document.getElementById('mstBOForm3').style.display = "block";			
		}*/
	}
		
	// Check form details have been correctly entered:
	function Check_MuseumForm(frmStage)
	{
		var sErrorMessage = '';
		var elemfrm = document.frmTourBooking;
		
		if (frmStage == 1)
		{
								

				if (elemfrm.mstBOFirstName.value == '') {
					sErrorMessage = sErrorMessage + '- Please enter your first name\n';
				}
				if (elemfrm.mstBOSurname.value == '') {
					sErrorMessage = sErrorMessage + '- Please enter your surname\n';
				}
				if (elemfrm.mstBOAddress1.value == '') {
					sErrorMessage = sErrorMessage + '- Please enter the first line of your address\n';
				}
				if (elemfrm.mstBOTown.value == '') {
					sErrorMessage = sErrorMessage + '- Please enter your town/city\n';
				}
				if (elemfrm.mstBOPostCode.value == '') {
					sErrorMessage = sErrorMessage + '- Please enter your postcode\n';
					}
				if (elemfrm.mstBOCountry.selectedIndex == 0) {
					sErrorMessage = sErrorMessage + '- Please select your country\n';
				}
				if (elemfrm.mstBODaytimeTel.value == '') {
					sErrorMessage = sErrorMessage + '- Please enter your daytime phone number\n';
				}
				if (isValidEmail(elemfrm.mstBOEmail.value) == false) {
					sErrorMessage = sErrorMessage + '- Please enter your email address\n';
				}
				
			
				if (sErrorMessage != "")
				{
					alert (sErrorMessage);
				}else{
					switchDivs(2);
				}
		}
		
		
		if (frmStage == 2)
		{				
			var cnt = -1;
			
			if (isDate(elemfrm.mstBODay.options[elemfrm.mstBODay.selectedIndex].value, elemfrm.mstBODMonth.options[elemfrm.mstBODMonth.selectedIndex].value, elemfrm.mstBOYear.options[elemfrm.mstBOYear.selectedIndex].value)) {
					sErrorMessage = sErrorMessage + '- Please check the date of your visit\n';
			}
			
			for (var i=elemfrm.mstBOTime.length-1; i > -1; i--) {
				if (elemfrm.mstBOTime[i].checked) {cnt = i; i = -1;}
			}
			
			if (cnt == -1){
			    sErrorMessage = sErrorMessage + '- Please select the time of your visit\n';
			}
			
						
			if (elemfrm.mstBOAdults.value == 0 && elemfrm.mstBOChildren.value == 0 && elemfrm.mstBOOAPS.value == 0) {
					sErrorMessage = sErrorMessage + '- Please enter number of adults, children and OAPs.\n';
			}
					
			if (sErrorMessage != "")
			{
				alert (sErrorMessage);
			}else{
				//switchDivs(3);
				document.frmTourBooking.submit();
				
			}
		}
		
		/*if (frmStage == 3)
		{	
			document.frmTourBooking.submit();
		}*/
	}

	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the Conference and Events Online Brochure Request Form
	///////////////////////////////////////////////////////////////////////////////////////
		
	function ceSwitchDivs(stage)
	{
		if (stage == 1)
		{
			document.getElementById('ceOBLeftForm').style.visibility = "hidden";
			document.getElementById('ceOBLeftForm').style.display = "none";
			document.getElementById('ceOBRightForm').style.visibility = "hidden";
			document.getElementById('ceOBRightForm').style.display = "none";
			document.getElementById('ceOBLeftForm2').style.visibility = "visible";
			document.getElementById('ceOBLeftForm2').style.display = "block";
			document.getElementById('ceOBRightForm2').style.visibility = "visible";
			document.getElementById('ceOBRightForm2').style.display = "block";
		}
	}
		
	// Check form details have been correctly entered:
	function Check_ceOnlineBrochureFrm(frmStage)
	{
		var sErrorMessage = '';
		
		if (frmStage == 1)
		{			
			var elemfrm = document.ceOnlineBrochureFrm;

			if (elemfrm.ceOBFirstName.value == '') {
				sErrorMessage = sErrorMessage + '- Please enter your first name\n';
			}
			if (elemfrm.ceOBSurname.value == '') {
				sErrorMessage = sErrorMessage + '- Please enter your surname\n';
			}
			if (elemfrm.ceOBAddress1.value == '') {
				sErrorMessage = sErrorMessage + '- Please enter the first line of your address\n';
			}
			if (elemfrm.ceOBTown.value == '') {
				sErrorMessage = sErrorMessage + '- Please enter your town/city\n';
			}
			if (elemfrm.ceOBPostCode.value == '') {
				sErrorMessage = sErrorMessage + '- Please enter your postcode\n';
				}
			if (elemfrm.ceOBCountry.selectedIndex == 0) {
				sErrorMessage = sErrorMessage + '- Please select your country\n';
			}
			if (elemfrm.ceOBDaytimeTel.value == '' || validatePhoneNumber(elemfrm.ceOBDaytimeTel.value)==false) {
				sErrorMessage = sErrorMessage + '- Please enter your daytime phone number\n';
			}
			if (isValidEmail(elemfrm.ceOBEmail.value) == false) {
				sErrorMessage = sErrorMessage + '- Please enter your email valid address\n';
			}
			
			if (sErrorMessage != "")
			{
				alert (sErrorMessage);	
			}
			else
			{
				ceSwitchDivs(1);
			}
		}
		
		if (frmStage == 2)
		{	
			if (sErrorMessage != "")
			{
				alert (sErrorMessage);
			}else{
				document.ceOnlineBrochureFrm.submit();
			}
		}
	}
	
	
	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the EuroTravel Form
	///////////////////////////////////////////////////////////////////////////////////////
		
	function switchEuroTravelDivs(stage)
	{
		if (stage == 1)
		{
			document.getElementById('ttETLeftForm').style.visibility = "hidden";
			document.getElementById('ttETLeftForm').style.display = "none";
	
			document.getElementById('ttETLeftForm2').style.visibility = "visible";
			document.getElementById('ttETLeftForm2').style.display = "block";
			
			document.getElementById('headerStage1').style.visibility = "hidden";
			document.getElementById('headerStage1').style.display = "none";
			
			document.getElementById('headerStage2').style.visibility = "visible";
			document.getElementById('headerStage2').style.display = "block";
		}
	}
	
	var elemfrm;
	var sErrorMessage = '';
	
	// Check form details have been correctly entered:
	function Check_EuroTravelForm(frmStage)
	{
		elemfrm = document.frmEuroTravel;
		
		if (frmStage == 1)
		{

			//alert("inside if");

				if (elemfrm.etTTDelivery.selectedIndex < 0) {
					sErrorMessage = sErrorMessage + '- Please select your method of delivery\n';
					//alert("inside etTTDelivery");
				}
				if (elemfrm.etTTMembershipNumber.value == '') {
					sErrorMessage = sErrorMessage + '- Please enter your MUFC memmbership number\n';
					//sErrorMessage = sErrorMessage + '-inside etTTMembershipNumber\n';
				}
				
				if (elemfrm.etTTMembershipNumber.value != '') {
					if(!isNumber(elemfrm.etTTMembershipNumber.value)){
						sErrorMessage = sErrorMessage + '- Your MUFC memmbership must contain just numbers\n';
						elemfrm.etTTMembershipNumber.focus();	
					}	
					else{
						if(elemfrm.etTTMembershipNumber.value.length  < 4 || elemfrm.etTTMembershipNumber.value.length > 7){
							sErrorMessage = sErrorMessage + '- Your MUFC memmbership must be between 4 and 7 characters\n';
							elemfrm.etTTMembershipNumber.focus();						
						} 
					}
									
				}
				
				if (elemfrm.etTTFirstname.value == '') {
					sErrorMessage = sErrorMessage + '- Please enter your First name name\n';
				}
				if (elemfrm.etTTSurname.value == '') {
					sErrorMessage = sErrorMessage + '- Please enter your Surname\n';
				}
								
				if (elemfrm.etNationality.value == '') {
					sErrorMessage = sErrorMessage + '- Please select your nationality\n';
				}
				
				if (elemfrm.etDOBDay.value == '' || elemfrm.etDOBMonth.value == '' || elemfrm.etDOBYear.value == '') {
					sErrorMessage = sErrorMessage + '- Please select your DOB\n';
				}
				
				if(elemfrm.etTTHours.value != '' || elemfrm.etTTMins.value != '')
				{
					
					if(!validateTime("document.frmEuroTravel", "etTTHours", "etTTMins"))
					{
						elemfrm.etTTHours.focus();
						return false;
					}
					else{
						if(elemfrm.etTTHours.value == '')
						{
							sErrorMessage = sErrorMessage + '- Please enter the time you wish to depart\n';
							elemfrm.etTTHours.focus();
						}
						if(elemfrm.etTTMins.value == '')
						{
							sErrorMessage = sErrorMessage + '- Please enter the time you wish to depart\n';
							elemfrm.etTTMins.focus();
						}
					
					}
				}				
				
										
								
				if (isDate(elemfrm.etTTDay.options[elemfrm.etTTDay.selectedIndex].value, elemfrm.etTTMonth.options[elemfrm.etTTMonth.selectedIndex].value, elemfrm.etTTYear.options[elemfrm.etTTYear.selectedIndex].value)) {
					sErrorMessage = sErrorMessage + '- Please check the date of your outbound travel\n';
				}
				else if(!isDate(elemfrm.etTTDay.options[elemfrm.etTTDay.selectedIndex].value, elemfrm.etTTMonth.options[elemfrm.etTTMonth.selectedIndex].value, elemfrm.etTTYear.options[elemfrm.etTTYear.selectedIndex].value))
				{
					date1.setFullYear(elemfrm.etTTYear.options[elemfrm.etTTYear.selectedIndex].value, elemfrm.etTTMonth.options[elemfrm.etTTMonth.selectedIndex].value - 1, elemfrm.etTTDay.options[elemfrm.etTTDay.selectedIndex].value);
				}	
				if (elemfrm.etTTDepartingFrom.value == '') {
					sErrorMessage = sErrorMessage + '- Please enter where you are departing from\n';
				}
				if(!validateTime("document.frmEuroTravel", "etTTHours", "etTTMins") || elemfrm.etTTHours.value == '' || elemfrm.etTTMins.value == '')
				{
					sErrorMessage = sErrorMessage + '- Please enter the time you wish to depart\n';
				}
		 		
				/*if (sErrorMessage != '')
				{
					alert(sErrorMessage);
					// resets error message
					sErrorMessage="";
				}else{
					switchEuroTravelDivs(1);					
				}*/
				
				if (sErrorMessage != '')
				{
					alert(sErrorMessage);
					// resets error message
					sErrorMessage="";
				}
				else
				{
					document.getElementById('ttETLeftForm2').style.display='block';
					document.getElementById('ttETLeftForm').style.display='none';
					//document.frmEuroTravel.submit();
				}
		}
		
		if (frmStage == 2)
		{	
			if (isDate(elemfrm.etTTInDay.options[elemfrm.etTTInDay.selectedIndex].value, elemfrm.etTTInMonth.options[elemfrm.etTTInMonth.selectedIndex].value, elemfrm.etTTInYear.options[elemfrm.etTTInYear.selectedIndex].value)) 
			{
				sErrorMessage = sErrorMessage + '- Please check the date of your inbound travel\n';
			}
			else if ((!isDate(elemfrm.etTTInDay.options[elemfrm.etTTInDay.selectedIndex].value, elemfrm.etTTInMonth.options[elemfrm.etTTInMonth.selectedIndex].value, elemfrm.etTTInYear.options[elemfrm.etTTInYear.selectedIndex].value)))
			{
				date2.setFullYear(elemfrm.etTTInYear.options[elemfrm.etTTInYear.selectedIndex].value, elemfrm.etTTInMonth.options[elemfrm.etTTInMonth.selectedIndex].value - 1, elemfrm.etTTInDay.options[elemfrm.etTTInDay.selectedIndex].value);
				
				if(dateClash(date1, date2) == false)
				{
					sErrorMessage = sErrorMessage + '- your inbound journey cannot be before your outbound journey\n';
				}
			}	
			if (elemfrm.etTTInDepartingFrom.value == '') 
			{
				sErrorMessage = sErrorMessage + '- Please enter where you are departing from\n';
			}
			if(!validateTime("document.frmEuroTravel", "etTTReturnHours", "etTTReturnMins") || elemfrm.etTTReturnHours.value == '' || elemfrm.etTTReturnMins.value == '')
			{
				sErrorMessage = sErrorMessage + '- Please enter the time you wish to return\n';
			}
			if (elemfrm.etTTInDestination.value == '')
			{
				sErrorMessage = sErrorMessage + '- Please enter your inbound destination\n';
			}
			
						
			if(elemfrm.etTTReturnHours.value != '' || elemfrm.etTTReturnMins.value != '')
			{
					
				if(!validateTime("document.frmEuroTravel", "etTTReturnHours", "etTTReturnMins"))
				{
					elemfrm.etTTReturnHours.focus();
					return false;
				}
				else{
					if(elemfrm.etTTReturnHours.value == '')
					{
						sErrorMessage = sErrorMessage + '- Please enter the time you wish to return\n';
						elemfrm.etTTReturnHours.focus();
					}
					if(elemfrm.etTTReturnMins.value == '')
					{
						sErrorMessage = sErrorMessage + '- Please enter the time you wish to return\n';
						elemfrm.etTTReturnMins.focus();
					}
					
				}
			}		
					
			if (sErrorMessage != '')
			{
				alert(sErrorMessage);
				// resets error message
				sErrorMessage="";
			}
			else
			{
				document.frmEuroTravel.submit();
			}
		}
		
	}


	/**********************
	 *	date clashes
	 *  makes sure that the inbound date selected cannot be 
	 *  before the outbound date
	 *
	 *  @param _date1
	 *  @param _date2
	 *
	 *  returns true or false
	 **/
	 	
	var date1 = new Date();
	var date2 = new Date();
	
	function dateClash(inDate1, inDate2)
	{
		if (date1 >= date2)
		{
			return false;			
		}
		else
			return true;
	}
	
	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;
	}
	
	///////////////////////////////////////////////////////////////////////////////////////
	//  TIME VALIDATION
	///////////////////////////////////////////////////////////////////////////////////////				
	var hourCheck;
	var minsCheck;
	/**********************
	 *	hour validation
	 *
	 *  @param _formName, name of the form
	 *  @param _elementName, name of the element
	 *  return hourCheck true or false
	 **/
	  
	 function validateHours(_formName, _elementName)
	 {
		var sHour = eval(_formName + "." + _elementName + ".value;");
		
		if (!isInteger(sHour))
		{
			alert("Hour must be a number");
			eval(_formName + "." + _elementName + ".focus();");
			return hourCheck=false;
		}
		else
		{
			if(isInteger(sHour) && (sHour>=0 && sHour<=23))
			{
				return hourCheck=true;
			}
			else
			{
				alert("hours needs to be between 0 and 23");	
				return hourCheck=false;
			}
		}		
	 }
	 
	/**********************
	 *	minutes validation
	 *
	 *  @param _formName, name of the form
	 *  @param _elementName, name of the element
	 *  return hourCheck true or false
	 **/
	 function validateMins(_formName, _elementName)
	 {
		var sMins = eval(_formName + "." + _elementName + ".value;");
		if (!isInteger(sMins))
		{
			alert("Minute must be a number");
			eval(_formName + "." + _elementName + ".focus();");
			return minsCheck=false;
		}
		else
		{
			if(isInteger(sMins) && (sMins>=0 && sMins<=59))
			{
				return minsCheck=true;
			}
			else
			{
				alert("minutes needs to be between 0 and 59");	
				return minsCheck=false;
			}
		}		
	 }
	
	/**********************
	 *	time validation
	 *
	 *  @param _formName, name of the form
	 *  @param _elementNameHours, name of the element for hours field
	 *  @param _elementNameMins, name of the element for mins field
	 *  return true 
	 **/		 
	 function validateTime(_formName, _elementNameHours, _elementNameMins)
	 {
		validateHours(_formName, _elementNameHours);
		validateMins(_formName, _elementNameMins);
		
		if(hourCheck==true && minsCheck==true)
			return true;
		else
			return false;
	 }

	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the ExecFacilitis Form
	///////////////////////////////////////////////////////////////////////////////////////
	

	function switchExecFacilitiesDivs(stage)
	{
		if (stage == 1)
		{
			document.getElementById('ttEFLeftForm').style.visibility = "hidden";
			document.getElementById('ttEFLeftForm').style.display = "none";
			
			document.getElementById('ttEFRightForm').style.visibility = "hidden";
			document.getElementById('ttEFRightForm').style.display = "none";
			
			document.getElementById('ttEFLeftForm2').style.visibility = "visible";
			document.getElementById('ttEFLeftForm2').style.display = "block";
			
			document.getElementById('ttEFRightForm2').style.visibility = "visible";
			document.getElementById('ttEFRightForm2').style.display = "block";
			
			document.getElementById('headerStage1').style.visibility = "hidden";
			document.getElementById('headerStage1').style.display = "none";
			
			document.getElementById('headerStage2').style.visibility = "visible";
			document.getElementById('headerStage2').style.display = "block";
		}
	}
		
	// Check form details have been correctly entered:
	function Check_execFacilitiesForm(frmStage)
	{
		//alert("here");
		var sErrorMessage = '';
		

		// array to hold the input field and respective field length value
		var fieldCharacterLength = new Array(14);
		fieldCharacterLength[0] = new Array(['ttEFFirstName', 100, "First Name "]);
		fieldCharacterLength[1] = new Array(['ttEFSurname', 100, "Surname "]);
		fieldCharacterLength[2] = new Array(['ttEFCoName', 200, "Company "]);
		fieldCharacterLength[3] = new Array(['ttEFJobTitle', 200, "Position "]);
		fieldCharacterLength[4] = new Array(['ttEFAddress1', 200, "Address Line 1 "]);
		fieldCharacterLength[5] = new Array(['ttEFAddress2', 200, "Address Line 2 "]);
		fieldCharacterLength[6] = new Array(['ttEFTown', 200, "Town "]);
		fieldCharacterLength[7] = new Array(['ttEFCounty', 200, "Country "]);
		fieldCharacterLength[8] = new Array(['ttEFPostCode', 20, "Post Code "]);
		fieldCharacterLength[9] = new Array(['ttEFDaytimeTel', 50, "Daytime Telephone "]);
		fieldCharacterLength[10] = new Array(['ttEFEveningTel', 50, "Eveningtime Telephone "]);
		fieldCharacterLength[11] = new Array(['ttEFMobNo', 50, "Mobile Telephone "]);
		fieldCharacterLength[12] = new Array(['ttEFEmail', 255, "Email "]);
		
		if (frmStage == 1)
		{
			var elemfrm = document.frmExecFacReg;
			var elemIdFromArray;
			var elemMaxLengthFromArray;
			var	elemFieldNameFromArray;
			
			var maxCharFlag = 0;
			
				for (x in fieldCharacterLength)
				{
					
					elemIdFromArray = fieldCharacterLength[x][0][0];
					elemMaxLengthFromArray = fieldCharacterLength[x][0][1];
					elemFieldNameFromArray = fieldCharacterLength[x][0][2];
			
					//if(document.getElementById(elemIdFromArray).textLength > elemMaxLengthFromArray)
					if(eval("document.forms.frmExecFacReg." + elemIdFromArray + ".value.length") > elemMaxLengthFromArray)
					{
						alert("Maximum character length exceeded.\n\n" +
								"Field: " + elemFieldNameFromArray + "\n" +
								"Character Length entered: " + eval("document.forms.frmExecFacReg." + elemIdFromArray + ".value.length") + "\n" +
								"Maxmium Length allowed: " + elemMaxLengthFromArray + "\n\n" +
								"Please correct this and try again.\n");
								
						maxCharFlag = -1;
								
					}
					
				}
				
				
				if(maxCharFlag == 0)
				{
					if (elemfrm.ttEFFirstName.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your first name\n';
					}
					if (elemfrm.ttEFSurname.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your surname\n';
					}
					if (elemfrm.ttEFDaytimeTel.value == '' || validatePhoneNumber(elemfrm.ttEFDaytimeTel.value)==false) {
						sErrorMessage = sErrorMessage + '- Please enter your daytime phone number\n';
					}
					if (isValidEmail(elemfrm.ttEFEmail.value) == false) {
						sErrorMessage = sErrorMessage + '- Please enter your email address\n';
					}
					if (sErrorMessage != "")
					{
						alert(sErrorMessage);
					}else{
						switchExecFacilitiesDivs(1);
					}
				}
		}
		
		if (frmStage == 2)
		{	
			if (sErrorMessage != "")
			{
				alert (sErrorMessage);
			}else{
				document.frmExecFacReg.submit();
			}
		}
	}
	
	
	////////////////////////////////////////////////////////////////////////
	////	CHECK MUTV FORM
	////////////////////////////////////////////////////////////////////////
	
	// Check form details have been correctly entered:
	function Check_mutvForm()
	{
		var sErrorMessage = '';
		var elemfrm = document.MutvYourViews;

			if (elemfrm.ttEFFirstName.value == '') {
				sErrorMessage = sErrorMessage + '- Please enter your first name\n';
			}
			if (elemfrm.txtsurname.value == '') {
				sErrorMessage = sErrorMessage + '- Please enter your surname\n';
			}
			
			if (isValidEmail(elemfrm.txtemail.value) == false) {
				sErrorMessage = sErrorMessage + '- Please enter your email valid address\n';
			}
			
			if (sErrorMessage != '')
			{
				alert (sErrorMessage);
			}else{
				document.MutvYourViews.submit();
			}			
		
	}
	
	
   /**************************************************
	*	makes sure only integer can be enetered.
	*	returns true/false
	***/
	function validatePhoneNumber( _elementName)
	{
		if (!isInteger(_elementName))
		{
			alert("Phone number entry must be numeric");
			return false;
		}
		else
			return true;
	}
	
///////////////////////////////////////////////////////////////////////////////////////
// JS function for the New Quadrants Register Interest Form
///////////////////////////////////////////////////////////////////////////////////////
	
function switchSeasonTicketsDivs(stage)
{
	if (stage == 1)
	{
		document.getElementById('ttSTLeftForm').style.visibility = "hidden";
		document.getElementById('ttSTLeftForm').style.display = "none";
			
		document.getElementById('ttSTRightForm').style.visibility = "hidden";
		document.getElementById('ttSTRightForm').style.display = "none";
		
		document.getElementById('ttSTLeftForm2').style.visibility = "visible";
		document.getElementById('ttSTLeftForm2').style.display = "block";
			
		document.getElementById('ttSTRightForm2').style.visibility = "visible";
		document.getElementById('ttSTRightForm2').style.display = "block";
			
		document.getElementById('headerStage1').style.visibility = "hidden";
		document.getElementById('headerStage1').style.display = "none";
			
		document.getElementById('headerStage2').style.visibility = "visible";
		document.getElementById('headerStage2').style.display = "block";
	}
}
	
// Check form details have been correctly entered:
function Check_SeasonTicketFrm(frmStage)
{
	var error_txt = "";
	var flag = 0;
	
	if (frmStage == 1)
	{
		var sEmail = document.getElementById("ttSTEmail").value;
		
		if(document.getElementById("ttSTFirstName").value == "")
		{
			error_txt += "Please enter your FirstName. \n";
		}
		if(document.getElementById("ttSTSurname").value == "")
		{
			error_txt += "Please enter your SurName. \n";
		}
		if(document.getElementById("ttSTPhone").value == "")
		{
			error_txt += "Please enter your SurName. \n";
		}
		if(document.getElementById("ttSTAddress1").value == "")
		{
			error_txt += "Please enter your Address. \n";
		}
		if(document.getElementById("ttSTTown").value == "")
		{
			error_txt += "Please enter Town/City. \n";
		}

		if(dateValidation(document.getElementById("day").value, document.getElementById("month").value, document.getElementById("year").value)== false)
		{
			error_txt += "Please enter your D.O.B. \n";
		}
		
		if(document.getElementById("ttSTPostCode").value == "")
		{
			error_txt += "Please enter your PostCode. \n";
		}
		if((sEmail == "") || (sEmail.indexOf('@') == -1) || (sEmail.indexOf('.')== -1))
		{
			error_txt += "Please enter a valid email address. \n";
		}
		
		if (error_txt != "")
		{
			alert (error_txt);
		}else{
			switchSeasonTicketsDivs(1);
		}
	}
 
	if (frmStage == 2)
	{	
		if (error_txt != "")
		{
			alert (error_txt);
		}else{
			//switchSeasonTicketsDivs(2);
			document.frmSeasonTicketReg.submit();
		}
	}
	
	if (frmStage == 3)
	{	
		if (error_txt != "")
		{
			alert (error_txt);
		}else{
			document.frmNewQuadsReg.submit();
		}
	}

}


var dayCheck;
var monthCheck;
var yearCheck;

function validateDay(_elementDay)
{
	if (!isInteger(_elementDay))
	{
		alert("Day field must be a number");
		return dayCheck=false;
	}
	else
	{
		if(isInteger(_elementDay) && (_elementDay>=1 && _elementDay<=31))
		{
			return dayCheck=true;
		}
		else
		{
			if(_elementDay!="")
			{
				alert("Day entered needs to be between 1 and 31");	
				return dayCheck=false;
			}
		}
	}		
}

function validateMonth(_elementMonth)
{
	if (!isInteger(_elementMonth))
	{
		alert("Month field must be a number");
		return monthCheck=false;
	}
	else
	{
		if(isInteger(_elementMonth) && (_elementMonth>=1 && _elementMonth<=12))
		{
			return monthCheck=true;
		}
		else
		{
			if(_elementMonth!="")
			{
				alert("Month entered needs to be between 1 and 12");	
				return monthCheck=false;
			}
		}
	}		
}

function validateYear(_elementYear)
{
	if (!isInteger(_elementYear))
	{
		alert("Year field must be a number");
		return yearCheck=false;
	}
	else
	{
		if(isInteger(_elementYear) && (_elementYear>=1900 && _elementYear<=2007))
		{
			return yearCheck=true;
		}
		else
		{
			if(_elementYear!="")
			{
				alert("Year entered needs to be between 1900 and 2007");	
				return yearCheck=false;
			}
		}
	}		
}	

function dateValidation(_elementDay, _elementMonth, _elementYear)
{
		validateDay(_elementDay);
		validateMonth(_elementMonth);
		validateYear(_elementYear);
		
		if(dayCheck==true && monthCheck==true && yearCheck==true)
			return true;
		else
			return false;
}

	///////////////////////////////////////////////////////////////////////////////////////
	// 
	///////////////////////////////////////////////////////////////////////////////////////
	
	function emailCheck (emailStr) {

	/* The following variable tells the rest of the function whether or not
	to verify that the address ends in a two-letter country or well-known
	TLD.  1 means check it, 0 means don't. */

	var checkTLD=1;

	/* The following is the list of known TLDs that an e-mail address must end with. */

	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;

	/* The following pattern is used to check if the entered e-mail address
	fits the user@domain format.  It also is used to separate the username
	from the domain. */

	var emailPat=/^(.+)@(.+)$/;

	/* The following string represents the pattern for matching all special
	characters.  We don't want to allow special characters in the address. 
	These characters include ( ) < > @ , ; : \ " . [ ] 
	
	! “ # $ % & ‘ * / = { | }
	*/

	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]\!\“\#\$\%\&\‘\*\/\=\{\|\}";

	/* The following string represents the range of characters allowed in a 
	username or domainname.  It really states which chars aren't allowed.*/

	var validChars="\[^\\s" + specialChars + "\]";

	/* The following pattern applies if the "user" is a quoted string (in
	which case, there are no rules about which characters are allowed
	and which aren't; anything goes).  E.g. "jiminy cricket"@disney.com
	is a legal e-mail address. */

	var quotedUser="(\"[^\"]*\")";

	/* The following pattern applies for domains that are IP addresses,
	rather than symbolic names.  E.g. joe@[123.124.233.4] is a legal
	e-mail address. NOTE: The square brackets are required. */

	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;

	/* The following string represents an atom (basically a series of non-special characters.) */

	var atom=validChars + '+';

	/* The following string represents one word in the typical username.
	For example, in john.doe@somewhere.com, john and doe are words.
	Basically, a word is either an atom or quoted string. */

	var word="(" + atom + "|" + quotedUser + ")";

	// The following pattern describes the structure of the user

	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");

	/* The following pattern describes the structure of a normal symbolic
	domain, as opposed to ipDomainPat, shown above. */

	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");

	/* Finally, let's start trying to figure out if the supplied address is valid. */

	/* Begin with the coarse pattern to simply break up user@domain into
	different pieces that are easy to analyze. */

	var matchArray=emailStr.match(emailPat);

	if (matchArray==null) {

	/* Too many/few @'s or something; basically, this address doesn't
	even fit the general mould of a valid e-mail address. */

	alert("Email address seems incorrect (check @ and .'s)");
	return false;
	}
	var user=matchArray[1];
	var domain=matchArray[2];

	// Start by checking that only basic ASCII characters are in the strings (0-127).

	for (i=0; i<user.length; i++) {
	if (user.charCodeAt(i)>127) {
	alert("Ths username contains invalid characters.");
	return false;
	   }
	}
	for (i=0; i<domain.length; i++) {
	if (domain.charCodeAt(i)>127) {
	alert("Ths domain name contains invalid characters.");
	return false;
	   }
	}

	// See if "user" is valid 

	if (user.match(userPat)==null) {

	// user is not valid

	alert("The username doesn't seem to be valid.");
	return false;
	}

	/* if the e-mail address is at an IP address (as opposed to a symbolic
	host name) make sure the IP address is valid. */

	var IPArray=domain.match(ipDomainPat);
	if (IPArray!=null) {

	// this is an IP address

	for (var i=1;i<=4;i++) {
	if (IPArray[i]>255) {
	alert("Destination IP address is invalid!");
	return false;
	   }
	}
	return true;
	}

	// Domain is symbolic name.  Check if it's valid.
	 
	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
	for (i=0;i<len;i++) {
	if (domArr[i].search(atomPat)==-1) {
	alert("The domain name does not seem to be valid.");
	return false;
	   }
	}

	/* domain name seems valid, but now make sure that it ends in a
	known top-level domain (like com, edu, gov) or a two-letter word,
	representing country (uk, nl), and that there's a hostname preceding 
	the domain or country. */

	if (checkTLD && domArr[domArr.length-1].length!=2 && 
	domArr[domArr.length-1].search(knownDomsPat)==-1) {
	alert("The address must end in a well-known domain or two letter " + "country.");
	return false;
	}

	// Make sure there's a host name preceding the domain.

	if (len<2) {
	alert("This address is missing a hostname!");
	return false;
	}

	// If we've gotten this far, everything's valid!
	return true;
	}
	
	
	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the Casual Work Form
	///////////////////////////////////////////////////////////////////////////////////////
	

	function validate_email(field)
			{
			
			with (field)
			{
			apos=value.indexOf("@")
			dotpos=value.lastIndexOf(".")
			if (apos<1||dotpos-apos<2) 
			  {return false}
			else {return true}
			}
			}
					
					function members_onsubmit() { return submitbrochure3() }
					
					function submitbrochure3()
					{					
					var status = true					
					if (document.getElementById('ceEFFirstName').value == "") 
						{
						alert("Please enter your first name")						
						//document.getElementById('ceEFFirstName').focus()						
											
						return false
						} 
					else if (document.getElementById('ceEFSurname').value == "") 
					    {
						alert("Please enter your surname")
						document.getElementById('ceEFSurname').focus()
						return false
						}					
					else if (document.getElementById('ceEFAddress1').value == "") 
					    {
						alert("Please enter your address")
						document.getElementById('ceEFAddress1').focus()
						return false
						}		
					else if (document.getElementById('ceEFTown').value == "") 
					    {
						alert("Please enter your town/city name")
						document.getElementById('ceEFTown').focus()
						return false
						} 
					else if (document.getElementById('ceEFPostCode').value == "") 
					    {
						alert("Please enter your postcode")
						document.getElementById('ceEFPostCode').focus()
						return false
						}							
					else if (document.getElementById('ceEFEmail').value == "") 
					    {
					    
						alert("Please enter your Email Address.")
						document.getElementById('ceEFEmail').focus()
						return false
						}
					else if (!validate_email(document.getElementById('ceEFEmail'))) {						
						alert("Please enter a valid email address")
						document.getElementById('ceEFEmail').focus()
						return false
					    } 		
					/*else if (document.getElementById('ceEFDaytimeTel').value == "") 
					    {
						alert("Please enter your daytime telephone number name")
						document.getElementById('ceEFDaytimeTel').focus()
						return false
						} */
					else if (document.getElementById('ceEFMobNo').value == "") 
					    {
						alert("Please enter mobile number")
						document.getElementById('ceEFMobNo').focus()
						return false
						} 
						
					else if (!isNumber(document.getElementById('ceEFMobNo').value))
						{
							alert("Mobile field must contain just numbers.");
							document.getElementById('ceEFMobNo').focus();
							return false;
						}
		    
					else if (document.getElementById('ceAreaWork').value == "") 
					    {
						alert("Please enter your current area of work")
						document.getElementById('ceAreaWork').focus()
						return false
						} 
					else if (document.getElementById('cePos').value == "") 
					    {
						alert("Please enter your current position")
						document.getElementById('cePos').focus()
						return false
						} 	
						
					else if (document.getElementById('cePref').value.replace(/ /g,"") != "") 
					    {
							if(document.getElementById('txtArea1').value.replace(/ /g,"") == "")
							{
								alert("Please state your reasons for wanting to move position");
								document.getElementById('txtArea1').focus();
								return false
							}
						} 	
							
					 if (document.getElementById('tick').checked == false) 
					    {
						alert("Please tick to submit")
						document.getElementById('tick').focus()
						return false
						} 			
										
			
					if (status=true)
						{
							document.frmCasReg.submit();
						}							
					
					
					}
					
	
	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the Sponsor Opportunities Form
	///////////////////////////////////////////////////////////////////////////////////////
	

	function validate_email(field)
			{
			
			with (field)
			{
			apos=value.indexOf("@")
			dotpos=value.lastIndexOf(".")
			if (apos<1||dotpos-apos<2) 
			  {return false}
			else {return true}
			}
			}
					
					function members_onsubmit() { return submitbrochure5() }
					
					function submitbrochure5()
					{	
					loopSelected()				
					var status = true
					if (document.getElementById('fName').value == "") 
						{
						alert("Please enter your name")						
						document.getElementById('fName').focus()						
											
						return false
						} 
					else if (document.getElementById('companyName').value == "") 
					    {
						alert("Please enter your company name")
						document.getElementById('companyName').focus()
						return false
						}					
					else if (document.getElementById('companyPos').value == "") 
					    {
						alert("Please enter your company positon")
						document.getElementById('companyPos').focus()
						return false
						}
					else if (document.getElementById('contEmail').value == "") 
					    {					    
						alert("Please enter Email Address.")
						document.getElementById('contEmail').focus()
						return false
						}				
					else if (!validate_email(document.getElementById('contEmail'))) {						
						alert("Please enter a valid email address")
						document.getElementById('contEmail').focus()
						return false
					    } 			
					else if (document.getElementById('contPhone').value == "") 
					    {
						alert("Please enter your contact phone number")
						document.getElementById('contPhone').focus()
						return false
						} 
					else if (document.getElementById('companyType').value == "") 
					    {
						alert("Please select your company type")
						document.getElementById('companyType').focus()
						return false
						} 				
						if (status=true)
						{
							document.frmSponsOp.submit();
						}							
					
					
					}
	
				function loopSelected()
				{
				  var txtSelectedValuesObj = document.getElementById('txtSelectedValues');
				  var selectedArray = new Array();
				  var selObj = document.getElementById('box1');
				  var i;
				  var count = 0;
				  for (i=0; i<selObj.options.length; i++) {
				    if (selObj.options[i].selected) {
				      selectedArray[count] = selObj.options[i].value;
				      count++;
				    }
				  }
				  txtSelectedValuesObj.value = selectedArray;
				}		
				
	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the Audi, VIAGOGO AND ONE UNITED(Register your interest) Form
	///////////////////////////////////////////////////////////////////////////////////////
	

			
	// Check form details have been correctly entered:
	function Check_AudiFormForm(frmStage)
	{
		//alert("here");
		var sErrorMessage = '';
		

		// array to hold the input field and respective field length value
		var fieldCharacterLength = new Array(9);
		fieldCharacterLength[0] = new Array(['ttEFFirstName', 100, "First Name "]);
		fieldCharacterLength[1] = new Array(['ttEFSurname', 100, "Surname "]);		
		fieldCharacterLength[2] = new Array(['ttEFAddress1', 200, "Address "]);
		fieldCharacterLength[3] = new Array(['ttEFAddress2', 200, " "]);
		fieldCharacterLength[4] = new Array(['ttEFTown', 200, "Town/City "]);		
		fieldCharacterLength[5] = new Array(['ttEFPostCode', 20, "Postcode "]);
		fieldCharacterLength[6] = new Array(['day', 2, "day "]);
		fieldCharacterLength[7] = new Array(['month', 2, "month "]);
		fieldCharacterLength[8] = new Array(['year', 4, "year "]);	
		fieldCharacterLength[9] = new Array(['ttEFEmail', 255, "Email Address "]);
		fieldCharacterLength[10] = new Array(['ttEFTelephone', 100, "Telephone Number "]);
		
		if (frmStage == 1)
		{
			var elemfrm = document.frmAudiReg;
			var elemIdFromArray;
			var elemMaxLengthFromArray;
			var	elemFieldNameFromArray;
			
			var maxCharFlag = 0;
			
				for (x in fieldCharacterLength)
				{
					
					elemIdFromArray = fieldCharacterLength[x][0][0];
					elemMaxLengthFromArray = fieldCharacterLength[x][0][1];
					elemFieldNameFromArray = fieldCharacterLength[x][0][2];
			
					//if(document.getElementById(elemIdFromArray).textLength > elemMaxLengthFromArray)
					if(eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") > elemMaxLengthFromArray)
					{
						alert("Maximum character length exceeded.\n\n" +
								"Field: " + elemFieldNameFromArray + "\n" +
								"Character Length entered: " + eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") + "\n" +
								"Maxmium Length allowed: " + elemMaxLengthFromArray + "\n\n" +
								"Please correct this and try again.\n");
								
						maxCharFlag = -1;
								
					}
					
				}
				
				
				if(maxCharFlag == 0)
				{
					if (elemfrm.ttEFFirstName.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your first name\n';
					}
					if (elemfrm.ttEFSurname.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your surname\n';
					}
					if (elemfrm.ttEFAddress1.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your address\n';
					}
					if (elemfrm.ttEFTown.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your town/city\n';
					}
					if (elemfrm.ttEFPostCode.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your postcode\n';
					}									
					if (elemfrm.day.value == '') {
						sErrorMessage = sErrorMessage + '- Day must between 1 and 31\n';
					}
					if (elemfrm.month.value == '') {
						sErrorMessage = sErrorMessage + '- Month must between 1 and 12\n';
					}
					if (elemfrm.year.value == '') {
						sErrorMessage = sErrorMessage + '- Year must be 4 digit number greater than 1900\n';
					}
					if (elemfrm.ttEFEmail.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your email\n';
					}
					
					if (elemfrm.ttEFEmail.value != '') {						
						if(!isValidEmail(elemfrm.ttEFEmail.value)){
							sErrorMessage = sErrorMessage + "- Email address seems incorrect (check @ and .'s)\n";
						}
					}
					if (elemfrm.ttEFTelephone.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your telephone number\n';
					}
					
					if (elemfrm.day.value != '' && elemfrm.month.value != '' && elemfrm.year.value != '') {						
						if(!isNumber(elemfrm.day.value) || !isNumber(elemfrm.month.value) || !isNumber(elemfrm.year.value)){
							sErrorMessage = sErrorMessage + "- The field DOB needs to be a number";
							elemfrm.day.focus();
						}
						if(elemfrm.year.value.length < 3){
							sErrorMessage = sErrorMessage + "- Year must be at last 4 digits";
							elemfrm.year.focus();
						}
					}
					
					if (sErrorMessage != "")
					{
						alert(sErrorMessage);					
					}else{
					    
						frmStage = 2;
					}	
				}
		}
		
		if (frmStage == 2)
		{	
			if (sErrorMessage != "")
			{
				alert (sErrorMessage);
			}else{
				document.frmAudiReg.submit();
			}
		}
	}			
	
	
	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the Hi Seoul Form
	///////////////////////////////////////////////////////////////////////////////////////
	
	// Check form details have been correctly entered:
	function Check_HiSeoulForm(frmStage)
	{
		//alert("here");
		var sErrorMessage = '';
		

		// array to hold the input field and respective field length value
		var fieldCharacterLength = new Array(10);
		fieldCharacterLength[0] = new Array(['ttEFFirstName', 100, "First Name "]);
		fieldCharacterLength[1] = new Array(['ttEFSurname', 100, "Surname "]);		
		fieldCharacterLength[2] = new Array(['ttEFAddress1', 200, "Address "]);
		fieldCharacterLength[3] = new Array(['ttEFAddress2', 200, " "]);
		fieldCharacterLength[4] = new Array(['ttEFTown', 200, "Town/City "]);		
		fieldCharacterLength[5] = new Array(['ttEFPostCode', 20, "Postcode "]);
		fieldCharacterLength[6] = new Array(['day', 2, "day "]);
		fieldCharacterLength[7] = new Array(['month', 2, "month "]);
		fieldCharacterLength[8] = new Array(['year', 4, "year "]);	
		fieldCharacterLength[9] = new Array(['ttEFEmail', 255, "Email Address "]);		
		
		if (frmStage == 1)
		{
			var elemfrm = document.frmAudiReg;
			var elemIdFromArray;
			var elemMaxLengthFromArray;
			var	elemFieldNameFromArray;
			
			var maxCharFlag = 0;
			
				for (x in fieldCharacterLength)
				{
					
					elemIdFromArray = fieldCharacterLength[x][0][0];
					elemMaxLengthFromArray = fieldCharacterLength[x][0][1];
					elemFieldNameFromArray = fieldCharacterLength[x][0][2];
			
					//if(document.getElementById(elemIdFromArray).textLength > elemMaxLengthFromArray)
					if(eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") > elemMaxLengthFromArray)
					{
						alert("Maximum character length exceeded.\n\n" +
								"Field: " + elemFieldNameFromArray + "\n" +
								"Character Length entered: " + eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") + "\n" +
								"Maxmium Length allowed: " + elemMaxLengthFromArray + "\n\n" +
								"Please correct this and try again.\n");
								
						maxCharFlag = -1;
								
					}
					
				}
				
				
				if(maxCharFlag == 0)
				{
					if (elemfrm.ttEFFirstName.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your first name\n';
					}
					if (elemfrm.ttEFSurname.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your surname\n';
					}
					if (elemfrm.ttEFAddress1.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your address\n';
					}
					if (elemfrm.ttEFTown.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your town/city\n';
					}
					if (elemfrm.ttEFPostCode.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your postcode\n';
					}										
					if (elemfrm.day.value == '') {
						sErrorMessage = sErrorMessage + '- Day must between 1 and 31\n';
					}
					if (elemfrm.month.value == '') {
						sErrorMessage = sErrorMessage + '- Month must between 1 and 12\n';
					}
					if (elemfrm.year.value == '') {
						sErrorMessage = sErrorMessage + '- Year must be 4 digit number greater than 1900\n';
					}
					if (elemfrm.ttEFEmail.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your email\n';
					}
					
					if (elemfrm.ttEFEmail.value != '') {						
						if(!isValidEmail(elemfrm.ttEFEmail.value)){
							sErrorMessage = sErrorMessage + "- Email address seems incorrect (check @ and .'s)\n";
						}
					}
										
					if (sErrorMessage != "")
					{
						alert(sErrorMessage);					
					}else{
					    
						frmStage = 2;
					}	
				}
		}
		
		if (frmStage == 2)
		{	
			if (sErrorMessage != "")
			{
				alert (sErrorMessage);
			}else{
				document.frmAudiReg.submit();
			}
		}
	}		
	
	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the US TOUR Form
	///////////////////////////////////////////////////////////////////////////////////////
	
	// Check form details have been correctly entered:
	function Check_UsTourForm(frmStage)
	{
		//alert("here");
		var sErrorMessage = '';
		

		// array to hold the input field and respective field length value
		var fieldCharacterLength = new Array(12);
		fieldCharacterLength[0] = new Array(['ttEFFirstName', 100, "First Name "]);
		fieldCharacterLength[1] = new Array(['ttEFSurname', 100, "Surname "]);	
		fieldCharacterLength[2] = new Array(['day', 2, "day "]);
		fieldCharacterLength[3] = new Array(['month', 2, "month "]);
		fieldCharacterLength[4] = new Array(['year', 4, "year "]);	
		fieldCharacterLength[5] = new Array(['ttEFAddress1', 200, "Address "]);
		//fieldCharacterLength[6] = new Array(['ttEFAddress2', 200, " "]);
		fieldCharacterLength[7] = new Array(['ttEFTown', 200, "Town/City "]);
		fieldCharacterLength[8] = new Array(['ttCounty', 200, "State "]);			
		fieldCharacterLength[9] = new Array(['ttEFPostCode', 20, "Postcode "]);			
		fieldCharacterLength[10] = new Array(['ttEFEmail', 255, "Email Address "]);	
				
		
		if (frmStage == 1)
		{
			var elemfrm = document.frmAudiReg;
			var elemIdFromArray;
			var elemMaxLengthFromArray;
			var	elemFieldNameFromArray;
			
			var maxCharFlag = 0;
			
				for (x in fieldCharacterLength)
				{
					
					elemIdFromArray = fieldCharacterLength[x][0][0];
					elemMaxLengthFromArray = fieldCharacterLength[x][0][1];
					elemFieldNameFromArray = fieldCharacterLength[x][0][2];
			
					//if(document.getElementById(elemIdFromArray).textLength > elemMaxLengthFromArray)
					if(eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") > elemMaxLengthFromArray)
					{
						alert("Maximum character length exceeded.\n\n" +
								"Field: " + elemFieldNameFromArray + "\n" +
								"Character Length entered: " + eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") + "\n" +
								"Maxmium Length allowed: " + elemMaxLengthFromArray + "\n\n" +
								"Please correct this and try again.\n");
								
						maxCharFlag = -1;
								
					}
					
					
					
				}
				
				
				if(maxCharFlag == 0)
				{
					if (elemfrm.ttEFTitle.value == 'Other') {
					    if(document.getElementById('ttOtherTitle').value == ''){					        
					        sErrorMessage = sErrorMessage + '- Please enter your title\n';
					        document.getElementById('ttOtherTitle').focus();
					    }						
					}
					
					if (elemfrm.ttEFFirstName.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your first name\n';
					}
					if (elemfrm.ttEFSurname.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your surname\n';
					}
					if (elemfrm.day.value == '') {
						sErrorMessage = sErrorMessage + '- Day must between 1 and 31\n';
					}
					if (elemfrm.day.value != '') {
						if(!isNumeric(elemfrm.day.value,false)){
							sErrorMessage = sErrorMessage + '- Day must be numeric\n';							
						}
						else{						
							if(elemfrm.day.value.length < 2)
								sErrorMessage = sErrorMessage + '- Day must be at least 2 characters\n';
						}
					}
					
					if (elemfrm.month.value == '') {
						sErrorMessage = sErrorMessage + '- Month must between 1 and 12\n';
					}
					if (elemfrm.month.value != '') {
						if(!isNumeric(elemfrm.month.value,false)){
							sErrorMessage = sErrorMessage + '- Month must be numeric\n';							
						}
						else{						
							if(elemfrm.month.value.length < 2)
								sErrorMessage = sErrorMessage + '- Month must be at least 2 characters\n';
						}
					}
					
					if (elemfrm.year.value == '') {
						sErrorMessage = sErrorMessage + '- Year must be 4 digit number greater than 1900\n';
					}
					if (elemfrm.year.value != '') {
						if(!isNumeric(elemfrm.year.value,false)){
							sErrorMessage = sErrorMessage + '- Year must be numeric\n';							
						}
						else{						
							if(elemfrm.year.value.length < 4)
								sErrorMessage = sErrorMessage + '- Year must be at least 4 characters\n';
						}
					}
					
					if (elemfrm.ttEFAddress1.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your address\n';
					}
					if (elemfrm.ttEFTown.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your town/city\n';
					}
					if (elemfrm.ttCounty.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your state\n';
					}	
					if (elemfrm.ttEFPostCode.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your zip code\n';
					}										
					
					if (elemfrm.ttEFEmail.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your email\n';
					}
					
					if (elemfrm.ttEFEmail.value != '') {						
						if(!isValidEmail(elemfrm.ttEFEmail.value)){
							sErrorMessage = sErrorMessage + "- Email address seems incorrect (check @ and .'s)\n";
						}
					}
					
					
															
					if (sErrorMessage != "")
					{
						alert(sErrorMessage);					
					}else{
					    
						frmStage = 2;
					}	
				}
		}
		
		if (frmStage == 2)
		{	
			if (sErrorMessage != "")
			{
				alert (sErrorMessage);
			}else{
				document.frmAudiReg.submit();
			}
		}
	}		
	
	
	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the Nike Red Form
	///////////////////////////////////////////////////////////////////////////////////////
	
	// Check form details have been correctly entered:
	function Check_NikeRedForm(frmStage)
	{
		//alert("here");
		var sErrorMessage = '';
		

		// array to hold the input field and respective field length value
		var fieldCharacterLength = new Array(12);
		fieldCharacterLength[0] = new Array(['ttEFFirstName', 100, "First Name "]);
		fieldCharacterLength[1] = new Array(['ttEFSurname', 100, "Surname "]);	
		fieldCharacterLength[7] = new Array(['day', 2, "day "]);
		fieldCharacterLength[8] = new Array(['month', 2, "month "]);
		fieldCharacterLength[9] = new Array(['year', 4, "year "]);	
		fieldCharacterLength[2] = new Array(['ttEFAddress1', 200, "Address "]);
		fieldCharacterLength[3] = new Array(['ttEFAddress2', 200, " "]);
		fieldCharacterLength[4] = new Array(['ttEFTown', 200, "Town/City "]);
		//fieldCharacterLength[5] = new Array(['ttCounty', 200, "State "]);			
		fieldCharacterLength[6] = new Array(['ttEFPostCode', 20, "Postcode "]);			
		fieldCharacterLength[10] = new Array(['ttEFEmail', 255, "Email Address "]);	
				
		
		if (frmStage == 1)
		{
			var elemfrm = document.frmAudiReg;
			var elemIdFromArray;
			var elemMaxLengthFromArray;
			var	elemFieldNameFromArray;
			
			var maxCharFlag = 0;
			
				for (x in fieldCharacterLength)
				{
					
					elemIdFromArray = fieldCharacterLength[x][0][0];
					elemMaxLengthFromArray = fieldCharacterLength[x][0][1];
					elemFieldNameFromArray = fieldCharacterLength[x][0][2];
			
					//if(document.getElementById(elemIdFromArray).textLength > elemMaxLengthFromArray)
					if(eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") > elemMaxLengthFromArray)
					{
						alert("Maximum character length exceeded.\n\n" +
								"Field: " + elemFieldNameFromArray + "\n" +
								"Character Length entered: " + eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") + "\n" +
								"Maxmium Length allowed: " + elemMaxLengthFromArray + "\n\n" +
								"Please correct this and try again.\n");
								
						maxCharFlag = -1;
								
					}
					
				}
				
				
				if(maxCharFlag == 0)
				{
					if (elemfrm.ttEFTitle.value == 'Other') {
					    if(document.getElementById('ttOtherTitle').value == ''){					        
					        sErrorMessage = sErrorMessage + '- Please enter your title\n';
					        document.getElementById('ttOtherTitle').focus();
					    }						
					}
					
					if (elemfrm.ttEFFirstName.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your first name\n';
					}
					if (elemfrm.ttEFSurname.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your surname\n';
					}
					if (elemfrm.day.value == '') {
						sErrorMessage = sErrorMessage + '- Day must between 1 and 31\n';
					}
					if (elemfrm.day.value != '') {
						if(!isNumeric(elemfrm.day.value,false)){
							sErrorMessage = sErrorMessage + '- Day must be numeric\n';							
						}
						else{						
							if(elemfrm.day.value.length < 2)
								sErrorMessage = sErrorMessage + '- Day must be at least 2 characters\n';
						}
					}
					
					if (elemfrm.month.value == '') {
						sErrorMessage = sErrorMessage + '- Month must between 1 and 12\n';
					}
					if (elemfrm.month.value != '') {
						if(!isNumeric(elemfrm.month.value,false)){
							sErrorMessage = sErrorMessage + '- Month must be numeric\n';							
						}
						else{						
							if(elemfrm.month.value.length < 2)
								sErrorMessage = sErrorMessage + '- Month must be at least 2 characters\n';
						}
					}
					
					if (elemfrm.year.value == '') {
						sErrorMessage = sErrorMessage + '- Year must be 4 digit number greater than 1900\n';
					}
					if (elemfrm.year.value != '') {
						if(!isNumeric(elemfrm.year.value,false)){
							sErrorMessage = sErrorMessage + '- Year must be numeric\n';							
						}
						else{						
							if(elemfrm.year.value.length < 4)
								sErrorMessage = sErrorMessage + '- Year must be at least 4 characters\n';
						}
					}
					if (elemfrm.ttEFAddress1.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your address\n';
					}
					if (elemfrm.ttEFTown.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your town/city\n';
					}
					//if (elemfrm.ttCounty.value == '') {
					//	sErrorMessage = sErrorMessage + '- Please enter your state\n';
					//}	
					if (elemfrm.ttEFPostCode.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your post/zip code\n';
					}										
					
					if (elemfrm.ttEFEmail.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your email address\n';
					}
					
					if (elemfrm.ttEFTelephone.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your mobile telephone number\n';
					}
					
					if (elemfrm.ttEFEmail.value != '') {						
						if(!isValidEmail(elemfrm.ttEFEmail.value)){
							sErrorMessage = sErrorMessage + "- Email address seems incorrect (check @ and .'s)\n";
						}
					}
					
															
					if (sErrorMessage != "")
					{
						alert(sErrorMessage);					
					}else{
					    
						frmStage = 2;
					}	
				}
		}
		
		if (frmStage == 2)
		{	
			if (sErrorMessage != "")
			{
				alert (sErrorMessage);
			}else{
				document.frmAudiReg.submit();
			}
		}
	}		
	
	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the Mascot Form
	///////////////////////////////////////////////////////////////////////////////////////
	
	// Check form details have been correctly entered:
	function Check_MascotForm(frmStage)
	{
		//alert("here");
		var sErrorMessage = '';
		

		// array to hold the input field and respective field length value
		var fieldCharacterLength = new Array(12);
		fieldCharacterLength[0] = new Array(['ttEFFirstName', 100, "First Name "]);
		fieldCharacterLength[1] = new Array(['ttEFSurname', 100, "Surname "]);	
		fieldCharacterLength[7] = new Array(['day', 2, "day "]);
		fieldCharacterLength[8] = new Array(['month', 2, "month "]);
		fieldCharacterLength[9] = new Array(['year', 4, "year "]);	
		fieldCharacterLength[2] = new Array(['ttEFAddress1', 200, "Address "]);
		fieldCharacterLength[3] = new Array(['ttEFAddress2', 200, " "]);
		fieldCharacterLength[4] = new Array(['ttEFTown', 200, "Town/City "]);
		//fieldCharacterLength[5] = new Array(['ttCounty', 200, "State "]);			
		fieldCharacterLength[6] = new Array(['ttEFPostCode', 20, "Postcode "]);			
		fieldCharacterLength[10] = new Array(['ttEFEmail', 255, "Email Address "]);	
				
		
		if (frmStage == 1)
		{
			var elemfrm = document.frmAudiReg;
			var elemIdFromArray;
			var elemMaxLengthFromArray;
			var	elemFieldNameFromArray;
			
			var maxCharFlag = 0;
			
				for (x in fieldCharacterLength)
				{
					
					elemIdFromArray = fieldCharacterLength[x][0][0];
					elemMaxLengthFromArray = fieldCharacterLength[x][0][1];
					elemFieldNameFromArray = fieldCharacterLength[x][0][2];
			
					//if(document.getElementById(elemIdFromArray).textLength > elemMaxLengthFromArray)
					if(eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") > elemMaxLengthFromArray)
					{
						alert("Maximum character length exceeded.\n\n" +
								"Field: " + elemFieldNameFromArray + "\n" +
								"Character Length entered: " + eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") + "\n" +
								"Maxmium Length allowed: " + elemMaxLengthFromArray + "\n\n" +
								"Please correct this and try again.\n");
								
						maxCharFlag = -1;
								
					}
					
				}
				
				
				if(maxCharFlag == 0)
				{
					if (elemfrm.ttEFTitle.value == 'Other') {
					    if(document.getElementById('ttOtherTitle').value == ''){					        
					        sErrorMessage = sErrorMessage + '- Please enter your title\n';
					        document.getElementById('ttOtherTitle').focus();
					    }						
					}
					
					if (elemfrm.ttEFFirstName.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your first name\n';
					}
					if (elemfrm.ttEFSurname.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your surname\n';
					}
					if (elemfrm.day.value == '') {
						sErrorMessage = sErrorMessage + '- Day must between 1 and 31\n';
					}
					if (elemfrm.day.value != '') {
						if(!isNumeric(elemfrm.day.value,false)){
							sErrorMessage = sErrorMessage + '- Day must be numeric\n';							
						}
						else{						
							if(elemfrm.day.value.length < 2)
								sErrorMessage = sErrorMessage + '- Day must be at least 2 characters\n';
						}
					}
					
					if (elemfrm.month.value == '') {
						sErrorMessage = sErrorMessage + '- Month must between 1 and 12\n';
					}
					if (elemfrm.month.value != '') {
						if(!isNumeric(elemfrm.month.value,false)){
							sErrorMessage = sErrorMessage + '- Month must be numeric\n';							
						}
						else{						
							if(elemfrm.month.value.length < 2)
								sErrorMessage = sErrorMessage + '- Month must be at least 2 characters\n';
						}
					}
					
					if (elemfrm.year.value == '') {
						sErrorMessage = sErrorMessage + '- Year must be 4 digit number greater than 1900\n';
					}
					if (elemfrm.year.value != '') {
						if(!isNumeric(elemfrm.year.value,false)){
							sErrorMessage = sErrorMessage + '- Year must be numeric\n';							
						}
						else{						
							if(elemfrm.year.value.length < 4)
								sErrorMessage = sErrorMessage + '- Year must be at least 4 characters\n';
						}
					}
					if (elemfrm.ttEFAddress1.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your address\n';
					}
					if (elemfrm.ttEFTown.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your town/city\n';
					}
					//if (elemfrm.ttCounty.value == '') {
					//	sErrorMessage = sErrorMessage + '- Please enter your state\n';
					//}	
					if (elemfrm.ttEFPostCode.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your post/zip code\n';
					}										
					
					if (elemfrm.ttEFEmail.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your email address\n';
					}
					
					if (elemfrm.ttEFTelephone.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your mobile telephone number\n';
					}
					
					if (elemfrm.ttEFEmail.value != '') {						
						if(!isValidEmail(elemfrm.ttEFEmail.value)){
							sErrorMessage = sErrorMessage + "- Email address seems incorrect (check @ and .'s)\n";
						}
					}
					
					if (elemfrm.ttChildFirstName.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter the Childs First Name\n';
					}
					
					if (elemfrm.child_day.value == '') {
						sErrorMessage = sErrorMessage + "- Child's day must between 1 and 31\n";
					}
					if (elemfrm.child_day.value != '') {
						if(!isNumeric(elemfrm.child_day.value,false)){
							sErrorMessage = sErrorMessage + "- Child's day must be numeric\n";							
						}
						else{						
							if(elemfrm.child_day.value.length < 2)
								sErrorMessage = sErrorMessage + "- Child's day must be at least 2 characters\n";
						}
					}
					
					if (elemfrm.child_month.value == '') {
						sErrorMessage = sErrorMessage + "- Child's month must between 1 and 12\n";
					}
					if (elemfrm.child_month.value != '') {
						if(!isNumeric(elemfrm.child_month.value,false)){
							sErrorMessage = sErrorMessage + "- Child's month must be numeric\n";							
						}
						else{						
							if(elemfrm.child_month.value.length < 2)
								sErrorMessage = sErrorMessage + "- Child's month must be at least 2 characters\n";
						}
					}
					
					if (elemfrm.child_year.value == '') {
						sErrorMessage = sErrorMessage + "- Child's year must be 4 digit number greater than 1900\n";
					}
					if (elemfrm.child_year.value != '') {
						if(!isNumeric(elemfrm.child_year.value,false)){
							sErrorMessage = sErrorMessage + "- Child's year must be numeric\n";							
						}
						else{						
							if(elemfrm.child_year.value.length < 4)
								sErrorMessage = sErrorMessage + "- Child's year must be at least 4 characters\n";
						}
					}
															
					if (sErrorMessage != "")
					{
						alert(sErrorMessage);					
					}else{
					    
						frmStage = 2;
					}	
				}
		}
		
		if (frmStage == 2)
		{	
			if (sErrorMessage != "")
			{
				alert (sErrorMessage);
			}else{
				document.frmAudiReg.submit();
			}
		}
	}	
	
	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for HOSPITALITY Form
	///////////////////////////////////////////////////////////////////////////////////////
	
	// Check form details have been correctly entered:
	function Check_HospitalityForm(frmStage)
	{
		//alert("here");
		var sErrorMessage = '';
		

		// array to hold the input field and respective field length value
		var fieldCharacterLength = new Array(12);
		fieldCharacterLength[0] = new Array(['ttEFFirstName', 100, "First Name "]);
		fieldCharacterLength[1] = new Array(['ttEFSurname', 100, "Surname "]);	
		fieldCharacterLength[2] = new Array(['day', 2, "day "]);
		fieldCharacterLength[3] = new Array(['month', 2, "month "]);
		fieldCharacterLength[4] = new Array(['year', 4, "year "]);	
		fieldCharacterLength[5] = new Array(['ttEFAddress1', 200, "Address "]);
		fieldCharacterLength[6] = new Array(['ttEFAddress2', 200, " "]);
		fieldCharacterLength[7] = new Array(['ttCounty', 200, "Town/City "]);
		//fieldCharacterLength[5] = new Array(['ttCounty', 200, "State "]);			
		fieldCharacterLength[8] = new Array(['ttEFPostCode', 20, "Postcode "]);			
		//fieldCharacterLength[9] = new Array(['ttEFEmail', 255, "Email Address "]);	
				
		
		if (frmStage == 1)
		{
			var elemfrm = document.frmAudiReg;
			var elemIdFromArray;
			var elemMaxLengthFromArray;
			var	elemFieldNameFromArray;
			
			var maxCharFlag = 0;
			
				for (x in fieldCharacterLength)
				{
					
					elemIdFromArray = fieldCharacterLength[x][0][0];
					elemMaxLengthFromArray = fieldCharacterLength[x][0][1];
					elemFieldNameFromArray = fieldCharacterLength[x][0][2];
			
					//if(document.getElementById(elemIdFromArray).textLength > elemMaxLengthFromArray)
					if(eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") > elemMaxLengthFromArray)
					{
						alert("Maximum character length exceeded.\n\n" +
								"Field: " + elemFieldNameFromArray + "\n" +
								"Character Length entered: " + eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") + "\n" +
								"Maxmium Length allowed: " + elemMaxLengthFromArray + "\n\n" +
								"Please correct this and try again.\n");
								
						maxCharFlag = -1;
								
					}
					
				}
				
				
				if(maxCharFlag == 0)
				{
					if (elemfrm.ttEFTitle.value == 'Other') {
					    if(document.getElementById('ttOtherTitle').value == ''){					        
					        sErrorMessage = sErrorMessage + '- Please enter your title\n';
					        document.getElementById('ttOtherTitle').focus();
					    }						
					}
					
					if (elemfrm.ttEFFirstName.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your first name\n';
					}
					if (elemfrm.ttEFSurname.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your surname\n';
					}
					
					if (elemfrm.ttEFAddress1.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your address\n';
					}
					
					if (elemfrm.ttEFTown.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your town/city\n';
					}
					
					if (elemfrm.ttCounty.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your County\n';
					}	
					if (elemfrm.ttEFPostCode.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your post code\n';
					}	
					
					if (elemfrm.day.value == '') {
						sErrorMessage = sErrorMessage + '- Day must between 1 and 31\n';
					}
					if (elemfrm.day.value != '') {
						if(!isNumeric(elemfrm.day.value,false)){
							sErrorMessage = sErrorMessage + '- Day must be numeric\n';							
						}
						else{						
							if(elemfrm.day.value.length < 2)
								sErrorMessage = sErrorMessage + '- Day must be at least 2 characters\n';
						}
					}
					
					if (elemfrm.month.value == '') {
						sErrorMessage = sErrorMessage + '- Month must between 1 and 12\n';
					}
					if (elemfrm.month.value != '') {
						if(!isNumeric(elemfrm.month.value,false)){
							sErrorMessage = sErrorMessage + '- Month must be numeric\n';							
						}
						else{						
							if(elemfrm.month.value.length < 2)
								sErrorMessage = sErrorMessage + '- Month must be at least 2 characters\n';
						}
					}
					
					if (elemfrm.year.value == '') {
						sErrorMessage = sErrorMessage + '- Year must be 4 digit number greater than 1900\n';
					}
					if (elemfrm.year.value != '') {
						if(!isNumeric(elemfrm.year.value,false)){
							sErrorMessage = sErrorMessage + '- Year must be numeric\n';							
						}
						else{						
							if(elemfrm.year.value.length < 4)
								sErrorMessage = sErrorMessage + '- Year must be at least 4 characters\n';
						}
					}
													
					if (sErrorMessage != "")
					{
						alert(sErrorMessage);					
					}else{
					    
						frmStage = 2;
					}	
				}
		}
		
		if (frmStage == 2)
		{	
			if (sErrorMessage != "")
			{
				alert (sErrorMessage);
			}else{
				document.frmAudiReg.submit();
			}
		}
	}	
	
	
	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the SPANISH Form
	///////////////////////////////////////////////////////////////////////////////////////
	
	// Check form details have been correctly entered:
	function Check_SpanishForm(frmStage)
	{
		//alert("here");
		var sErrorMessage = '';
		

		// array to hold the input field and respective field length value
		var fieldCharacterLength = new Array(12);
		fieldCharacterLength[0] = new Array(['ttEFFirstName', 100, "First Name "]);
		fieldCharacterLength[1] = new Array(['ttEFSurname', 100, "Surname "]);	
		fieldCharacterLength[7] = new Array(['day', 2, "day "]);
		fieldCharacterLength[8] = new Array(['month', 2, "month "]);
		fieldCharacterLength[9] = new Array(['year', 4, "year "]);	
		//fieldCharacterLength[2] = new Array(['ttEFAddress1', 200, "Address "]);
		//fieldCharacterLength[3] = new Array(['ttEFAddress2', 200, " "]);
		//fieldCharacterLength[4] = new Array(['ttEFTown', 200, "Town/City "]);
		//fieldCharacterLength[5] = new Array(['ttCounty', 200, "State "]);			
		//fieldCharacterLength[6] = new Array(['ttEFPostCode', 20, "Postcode "]);			
		fieldCharacterLength[10] = new Array(['ttEFEmail', 255, "Email Address "]);	
		fieldCharacterLength[11] = new Array(['ttEFTelephone', 255, "Mobile Telephone "]);		
		
		if (frmStage == 1)
		{
			var elemfrm = document.frmAudiReg;
			var elemIdFromArray;
			var elemMaxLengthFromArray;
			var	elemFieldNameFromArray;
			
			var maxCharFlag = 0;
			
				for (x in fieldCharacterLength)
				{
					
					elemIdFromArray = fieldCharacterLength[x][0][0];
					elemMaxLengthFromArray = fieldCharacterLength[x][0][1];
					elemFieldNameFromArray = fieldCharacterLength[x][0][2];
			
					//if(document.getElementById(elemIdFromArray).textLength > elemMaxLengthFromArray)
					if(eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") > elemMaxLengthFromArray)
					{
						alert("Maximum character length exceeded.\n\n" +
								"Field: " + elemFieldNameFromArray + "\n" +
								"Character Length entered: " + eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") + "\n" +
								"Maxmium Length allowed: " + elemMaxLengthFromArray + "\n\n" +
								"Please correct this and try again.\n");
								
						maxCharFlag = -1;
								
					}
					
				}
				
				
				if(maxCharFlag == 0)
				{
					if (elemfrm.ttEFTitle.value == 'Other') {
					    if(document.getElementById('ttOtherTitle').value == ''){					        
					        sErrorMessage = sErrorMessage + '- Escriba su titulo por favor\n';
					        document.getElementById('ttOtherTitle').focus();
					    }						
					}
					
					if (elemfrm.ttEFFirstName.value == '') {
						sErrorMessage = sErrorMessage + '- Escriba su nombre por favor\n';
					}
					if (elemfrm.ttEFSurname.value == '') {
						sErrorMessage = sErrorMessage + '- Escriba su(s) apellidos por favor\n';
					}
					if (elemfrm.day.value == '') {
						sErrorMessage = sErrorMessage + '- Fecha del mes entre el 1 y el 31\n';
					}
					if (elemfrm.month.value == '') {
						sErrorMessage = sErrorMessage + '- Mes del año entre el 1 y el 12\n';
					}
					if (elemfrm.year.value == '') {
						sErrorMessage = sErrorMessage + '- El año tiene que ser un número de 4 cifras y más que 1900\n';
					}
					/*if (elemfrm.ttEFAddress1.value == '') {
						sErrorMessage = sErrorMessage + '- Escriba por favor su dirección\n';
					}
					if (elemfrm.ttEFTown.value == '') {
						sErrorMessage = sErrorMessage + '- Escriba por favor su ciudad\n';
					}
					if (elemfrm.ttCounty.value == '') {
						sErrorMessage = sErrorMessage + '- Escriba por favor su estado\n';
					}	
					if (elemfrm.ttEFPostCode.value == '') {
						sErrorMessage = sErrorMessage + '- Escriba por favor su código postal/ZIP\n';
					}		*/								
					
					if (elemfrm.ttEFEmail.value == '') {
						sErrorMessage = sErrorMessage + '- Escriba por favor su dirección email\n';
					}
					
					if (elemfrm.ttEFEmail.value != '') {						
						if(!isValidEmail(elemfrm.ttEFEmail.value)){
							sErrorMessage = sErrorMessage + "- Escriba por favor su dirección email (check @ and .'s)\n";
						}
					}
					
					if (elemfrm.ttEFTelephone.value == '') {
						sErrorMessage = sErrorMessage + '- Escriba por favor su número de teléfono celular\n';
					}
										
					if (sErrorMessage != "")
					{
						alert(sErrorMessage);					
					}else{
					    
						frmStage = 2;
					}	
				}
		}
		
		if (frmStage == 2)
		{	
			if (sErrorMessage != "")
			{
				alert (sErrorMessage);
			}else{
				document.frmAudiReg.submit();
			}
		}
	}		
	
	
	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the Education Form
	///////////////////////////////////////////////////////////////////////////////////////
		
			
	// Check form details have been correctly entered:
	function Check_EducationForm()
	{
		var sErrorMessage = '';
		var elemfrm = document.frmEducationBooking;								

		if (elemfrm.EducJobTitle.value == '') {
			sErrorMessage = sErrorMessage + '- Please enter the job title\n';
		}
		if (elemfrm.EducDaytimeTel.value == '') {
			sErrorMessage = sErrorMessage + '- Please enter your contact number\n';
		}
		if (isValidEmail(elemfrm.EducEmail.value) == false) {
			sErrorMessage = sErrorMessage + '- Please enter your email address\n';
		}
		
		if (elemfrm.EducNumberPupils.value == '') {
			sErrorMessage = sErrorMessage + '- Please enter the number of pupils in group\n';
		}
		
					
		if (sErrorMessage != "")
		{
			alert (sErrorMessage);
		}else{			
			document.frmEducationBooking.submit();				
		}
		
		
	}	

	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the OT 100 Memories Form
	///////////////////////////////////////////////////////////////////////////////////////
				
	// Check form details have been correctly entered:
	function Check_ot100Form(frmStage)
	{
		//alert("here");
		var sErrorMessage = '';
		
		// array to hold the input field and respective field length value
		var fieldCharacterLength = new Array(10);
		fieldCharacterLength[0] = new Array(['ttEFFirstName', 100, "First Name "]);
		fieldCharacterLength[1] = new Array(['ttEFSurname', 100, "Surname "]);		
		fieldCharacterLength[2] = new Array(['ttEFAddress1', 200, "Address "]);
		fieldCharacterLength[3] = new Array(['ttEFTown', 200, "Town/City "]);		
		fieldCharacterLength[4] = new Array(['ttEFPostCode', 20, "Postcode "]);
		fieldCharacterLength[5] = new Array(['day', 2, "day "]);
		fieldCharacterLength[6] = new Array(['month', 2, "month "]);
		fieldCharacterLength[7] = new Array(['year', 4, "year "]);	
		fieldCharacterLength[8] = new Array(['ttEFEmail', 60, "Email Address "]);
		fieldCharacterLength[9] = new Array(['otMemory', 8000, "Old Trafford Memory "]);
				
		if (frmStage == 1)
		{
			var elemfrm = document.frmAudiReg;
			var elemIdFromArray;
			var elemMaxLengthFromArray;
			var	elemFieldNameFromArray;
			
			var maxCharFlag = 0;
			
				for (x in fieldCharacterLength)
				{
					elemIdFromArray = fieldCharacterLength[x][0][0];
					elemMaxLengthFromArray = fieldCharacterLength[x][0][1];
					elemFieldNameFromArray = fieldCharacterLength[x][0][2];
			
					//if(document.getElementById(elemIdFromArray).textLength > elemMaxLengthFromArray)
					if(eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") > elemMaxLengthFromArray)
					{
						alert("Maximum character length exceeded.\n\n" +
								"Field: " + elemFieldNameFromArray + "\n" +
								"Character Length entered: " + eval("document.forms.frmAudiReg." + elemIdFromArray + ".value.length") + "\n" +
								"Maxmium Length allowed: " + elemMaxLengthFromArray + "\n\n" +
								"Please correct this and try again.\n");
								
						maxCharFlag = -1;
					}
				}
								
				if(maxCharFlag == 0)
				{
					
					if (elemfrm.ttEFFirstName.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your first name\n';
					}
					if (elemfrm.ttEFSurname.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your surname\n';
					}
					if (elemfrm.ttEFAddress1.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your address\n';
					}
					if (elemfrm.ttEFTown.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your town/city\n';
					}
					if (elemfrm.ttEFPostCode.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your postcode\n';
					}										
					if (elemfrm.day.value == '') {
						sErrorMessage = sErrorMessage + '- Day must be between 1 and 31\n';
					}
					if (elemfrm.month.value == '') {
						sErrorMessage = sErrorMessage + '- Month must be between 1 and 12\n';
					}
					if (elemfrm.year.value == '') {
						sErrorMessage = sErrorMessage + '- Year must be 4 digit number greater than 1900\n';
					}
					if (elemfrm.ttEFEmail.value == '') {
						sErrorMessage = sErrorMessage + '- Please enter your email\n';
					}
					
					if (elemfrm.ttEFEmail.value != '') {						
						if(!isValidEmail(elemfrm.ttEFEmail.value)){
							sErrorMessage = sErrorMessage + "- Email address seems incorrect (check @ and .'s)\n";
						}
					}
									
					if (elemfrm.day.value != '' && elemfrm.month.value != '' && elemfrm.year.value != '') {						
						if(!isNumber(elemfrm.day.value) || !isNumber(elemfrm.month.value) || !isNumber(elemfrm.year.value)){
							sErrorMessage = sErrorMessage + "- The field DOB needs to be a number";
							elemfrm.day.focus();
						}
					}
					if (elemfrm.otMemory.value == '' || elemfrm.otMemory.value == 'Write your memory here...') {
						sErrorMessage = sErrorMessage + '- Please enter your Old Trafford Memory details\n';
					}
					
					if (sErrorMessage != ""){
						alert(sErrorMessage);					
					}else{
					    frmStage = 2;
						document.getElementById('stage').value = '1';
					}	
				}			
		}
		
		if (frmStage == 2)
		{	
			if (sErrorMessage != ""){
				alert (sErrorMessage);
			}else{
				document.frmAudiReg.submit();			
			}
		}
	}			
	
	///////////////////////////////////////////////////////////////////////////////////////
	// JS function for the LIVE CHAT FORM
	///////////////////////////////////////////////////////////////////////////////////////
	// Check form details have been correctly entered:
	function Check_liveChatForm(frmStage)
	{
		//alert("here");
		var sErrorMessage = '';
		
		if (frmStage == 1)
		{
			//var elemfrm = document.frmLiveChatPre;						
			var elemfrm = document.frmLiveChat;								
			if (elemfrm.txtQuestionPre.value == '') {
				sErrorMessage = sErrorMessage + '- Please enter your question\n';
			}
			//if (elemfrm.questionTo.value == '') {
				//sErrorMessage = sErrorMessage + '- Please select the person you would like to send the question\n';
			//}
								
			if (sErrorMessage != "")
			{
				alert(sErrorMessage);					
			}else{
					    
				frmStage = 3;
			}	
				
		}
		
		if (frmStage == 2)
		{
			var elemfrm = document.frmLiveChat;						
										
			if (elemfrm.txtQuestion.value == '') {
				sErrorMessage = sErrorMessage + '- Please enter your question\n';
			}
			//if (elemfrm.questionTo.value == '') {
				//sErrorMessage = sErrorMessage + '- Please select the person you would like to send the question\n';
			//}
								
			if (sErrorMessage != "")
			{
				alert(sErrorMessage);					
			}else{
					    
				frmStage = 3;
			}	
				
		}
		
		if (frmStage == 3)
		{	
			if (sErrorMessage != "")
			{
				alert (sErrorMessage);
			}else{
				document.frmLiveChat.submit();
			}
		}
	}	
	
