	var IsValid;
	var Errors;

	function ValidateRequiredField(Field, FieldDisplayName){
		if( Field.value=="" || Field.value =="$" ){
			Errors = Errors + "\nPlease fill in required information [" + FieldDisplayName + "]";
			Field.focus();
			IsValid = false;
		}
	}

	function ValidateSelectedField(Field, FieldDisplayName){
		if( Field.value==""){
			Errors = Errors + "\nPlease select the " + FieldDisplayName;
			//Field.focus();
			IsValid = false;
		}
	}

	function ValidateListRequirements(FieldName, FieldDisplayName){


		var numChecked = countDotNetListChecked(FieldName);
		if (numChecked < 1)
		{
			Errors = Errors + "\nPlease select at least one " + FieldDisplayName;
			IsValid = false;
		}
	}

	function ValidateForm(){

               if (typeof ClickTaleExec == "function") {
                        ClickTaleExec("ValidateForm()");
                }

		try{
				var f = document.forms[0];
				IsValid = true;
				Errors = "";

//				validateOverAge();
				ValidateListRequirements("ctrlCompareSearchFrame_chklDestination","destination");

				if(f.ctrlCompareSearchFrame_emailAddress && f.ctrlCompareSearchFrame_emailAddress.value!="" && !ValidEmail(f.ctrlCompareSearchFrame_emailAddress.value)){
					Errors = Errors + "\nPlease enter valid Email Address ";
					IsValid = false;
				}

				if(Errors.length>0){
					alert(Errors);
					return IsValid;
				}
				else
				{
					/* Artog-016, remove captcha check
					//check that CAPTCHA was at least attempted
					if(f.ctrlCompareSearchFrame_capcheck.value.length < 6)
					{
						WrongCaptcha();
						f.ctrlCompareSearchFrame_capcheck.focus();
						IsValid = false;
					}
					*/
				}

				return IsValid;
			}catch(e){
				alert(e);
				alert("Error in ValidateSubFormEdit ["+e.Message+"]");
				return false;
			}
	}

	function WrongCaptcha(){
		alert("Please enter the 6 digit number from the grey image box.");
	}

	function mailToSelfButton(buttonRef)
	{
               
                if (typeof ClickTaleExec == "function") {ClickTaleExec("mailToSelfButton('"+buttonRef+"')");}
		
                toggleLayer('userDetailsDiv');
                  //toggleLayer('mailButtonDiv','inline');
		toggleLayer('searchButtonDiv','inline');
             
		//if(buttonRef) buttonRef.style.visibility='hidden';
                
                //urchinTracker('/travel_insurance/special/email_me_these_results.html');
                //pageTracker._trackPageview('/travel_insurance/special/email_me_these_results.html');
	}


        function doNoDisplayMaxAge()
	{
//              if (typeof ClickTaleExec == "function") {ClickTaleExec("doNoDisplayMaxAge()");}
//               document.getElementById("divMaxAge").style['display'] = "none";
	}

       function isCheck(){

//              var isOverAged = document.getElementById('ctrlCompareSearchFrame_rblOverAge_0').checked;
//              var notOverAged = document.getElementById('ctrlCompareSearchFrame_rblOverAge_1').checked;

//              if (isOverAged===true && notOverAged===false) return true;

//              return false;
        }


	function validateOverAge()
	{
		if (typeof ClickTaleExec == "function") {ClickTaleExec("validateOverAge()");}
                if(document.forms[0])
                {
                    var f = document.forms[0];


                    var isOverAged = f.ctrlCompareSearchFrame_rblOverAge_0.checked;
                    var notOverAged = f.ctrlCompareSearchFrame_rblOverAge_1.checked;

                    var maxAgeValue = f.ctrlCompareSearchFrame_txtMaxAge.value;

                    if (!isOverAged && !notOverAged)
                    {
                            IsValid = false;
                            Errors += "\nPlese select answer for [Are any adults over 40?]";
                    }
                    else if (isOverAged && (maxAgeValue == ""))
                    {
                            IsValid = false;
                            Errors += "\nPlease enter the age of the oldest traveller in the group";
                    }
                    else if (isOverAged && ( (parseInt(maxAgeValue,0)<=40) || (parseInt(maxAgeValue,0)>120) ))
                    {
                            IsValid = false;
                            Errors += "\nEntered age must be over 40 and under 80 ";
                    }
                }
	}

	function highlightRow(rowID, highlightOn)
	{
		highlightCell("td_prem_" + rowID,highlightOn);
		highlightCell("td_exc_" + rowID,highlightOn);
		highlightCell("td_premEX_" + rowID,highlightOn);
		highlightCell("td_lug_" + rowID,highlightOn);
		highlightCell("td_med_" + rowID,highlightOn);
		highlightCell("td_canc_" + rowID,highlightOn);
		highlightCell("td_pers_" + rowID,highlightOn);
		highlightCell("td_more_" + rowID,highlightOn);
	}

	function highlightCell(cellID,highlightOn)
	{
		var td = returnObjById(cellID);

		if(highlightOn)
		{
			td.style.backgroundColor='#ace78b';
		}
		else
		{
			td.style.backgroundColor='';
		}
	}

	function highlightRows(rows,highlightOn)
	{
		var rowIDs = rows.split(",")
		var i;

		for(i=0; i<rowIDs.length; i++)
		{
			if(rowIDs[i] != "")
			{
				highlightRow(rowIDs[i],highlightOn);

			}
		}
	}

function returnObjById( id )
{
	if (document.getElementById)
		var returnVar = document.getElementById(id);
	else if (document.all)
		var returnVar = document.all[id];
	else if (document.layers)
		var returnVar = document.layers[id];
	return returnVar;
}

	function resetAllHighlights()
	{
		basics = getFieldByControl_fieldName('hidBudgetRows');
		comprehensives = getFieldByControl_fieldName('hidComprehensiveRows');

		if(returnObjById("lnk_reset"))
		{
			returnObjById("lnk_basic").style.fontWeight = "normal";
			returnObjById("lnk_compr").style.fontWeight = "normal";
		}
		highlightRows(basics.value,false);
		highlightRows(comprehensives.value,false);
	}

	function highlightBasics()
	{
		getFieldByControl_fieldName('hidHighlightState').value = "HL_BASIC"
		doHighlight();

	}

	function highlightComprehensives()
	{
		getFieldByControl_fieldName('hidHighlightState').value = "HL_COMPR"
		doHighlight();

	}

	function highlightNone()
	{
		getFieldByControl_fieldName('hidHighlightState').value = ""
		doHighlight();
	}

	function doHighlight()
	{
		state = getFieldByControl_fieldName('hidHighlightState').value;
		resetAllHighlights();
		if(state == "HL_BASIC")
		{
			basics = getFieldByControl_fieldName('hidBudgetRows');
			returnObjById("lnk_basic").style.fontWeight = "bold";
			highlightRows(basics.value,true)
		}
		else if(state == "HL_COMPR")
		{
			comprehensives = getFieldByControl_fieldName('hidComprehensiveRows');
			returnObjById("lnk_compr").style.fontWeight = "bold";
			highlightRows(comprehensives.value,true);
		}
	}
