var bupdatedlookingfor = false;

function updatelookingforpostcode(){
	if (!bupdatedlookingfor){
		document.userform.lookingfor_post_code.value = document.userform.area_code.value;
		checkpostcode();
	}else{
		document.userform.lookingfor_post_code.value = document.userform.area_code.value;
	}
}

function manualupdatelookingforpostcode(){
	bupdatedlookingfor = true;
}
 
 
function alertPostCode(pc){
    if(document.userform.area_code.className.indexOf("quickregerr") < 0 ){
        // error class doesn't already exist.
        document.userform.area_code.className='quickregerr';
    }
  
    if(document.userform.area_code.value.indexOf("is not a valid post code") < 0){
        document.userform.area_code.maxLength='100';
        // error message doesn't already eist so add it
       document.userform.area_code.value=pc+' is not a valid post code.'; 
    }

    // reset the max length to 4
    document.userform.area_code.maxLength='4';

	var lbl = document.getElementsByTagName('label');
	for (j=0; j<lbl.length; j++){
		forval=lbl[j].getAttribute('for')?lbl[j].getAttribute('for'):lbl[j].getAttribute('htmlFor');
		if (forval == 'area_code'){
			labelword = lbl[j].childNodes[0].nodeValue;
			lbl[j].className='labelerr';
			break;
		}
		//lbl[j].style.color="black";
	}
}

function CheckTownLocationRefresh(item)
{
	var acode = document.userform.area_code.value;
	var ckey = document.userform.country_key.value;
	if (item.value == 'refresh') refreshcodes(acode, acode, ckey, bupdatedlookingfor)
}

function checkpostcode(){
	var oldareacode = document.userform.area_code_hidden.value;
	var newareacode = document.userform.area_code.value;
	var countrykey = document.userform.country_key.value;
	if (newareacode!=oldareacode && newareacode!='') { 
		refreshcodes(newareacode, oldareacode, countrykey, bupdatedlookingfor);
		updatehiddenpostcode(newareacode);
	}
}

function refreshcodes(ncode, ocode, ckey, bUlf){
	if (canexecuteRequest()) {
		executeRequest('wce=RegPostCodeSwap,area_code='+ncode+',old_code='+ocode+',country_key='+ckey+',bUlf='+bUlf,7);		
	} else {
		swappostcode();
	}
}

function updatehiddenpostcode(pc){
	document.userform.area_code_hidden.value=pc;
}

function displayregions(obj, prefix){

	var countrycode = eval(document.userform[obj].value);
	var lay_183 = document.getElementById(prefix+'_183');
	var lay_125 = document.getElementById(prefix+'_125');
	var lay_160 = document.getElementById(prefix+'_160');

	switch (countrycode) 
	{ 
   		case 183 : 
			layerdisplayon(lay_183);
			layerdisplayoff(lay_125);
			layerdisplayoff(lay_160);
      			break; 
   		case 125 : 
			layerdisplayoff(lay_183);
			layerdisplayon(lay_125);
			layerdisplayoff(lay_160);
		      	break; 
		case 160 :
			layerdisplayoff(lay_183);
			layerdisplayoff(lay_125);
			layerdisplayon(lay_160);
		      	break; 
   		default : 
			layerdisplayoff(lay_183);
			layerdisplayoff(lay_125);
			layerdisplayoff(lay_160);
		} 
	return;
}

function gocountry(){
	
	var f = document.country;
	var v = f.countryselect.value;

alert(v);
alert(f);
	if (v=='UK'){
		alert('please select a country');
	} else {
		f.submit();
	}

}

function switchcountries(){

	var countrycode = eval(document.userform.country.value);

	switch (countrycode) 
	{ 
   		case 183 : 
			subregionon(1, 183);
			subregionon(2, 183);
			subregionoff(1, 125);
			subregionoff(2, 125);
			subregionoff(1, 160);
			subregionoff(2, 160);
      			break; 
   		case 125 : 
			subregionoff(1, 183);
			subregionoff(2, 183);
			subregionon(1, 125);
			subregionon(2, 125);
			subregionoff(1, 160);
			subregionoff(2, 160);
		      	break; 
   		case 160 : 
			subregionoff(1, 183);
			subregionoff(2, 183);
			subregionoff(1, 125);
			subregionoff(2, 125);
			subregionon(1, 160);
			subregionon(2, 160);
		      	break; 
   		default : 
			subregionoff(1, 183);
			subregionoff(2, 183);
			subregionoff(1, 125);
			subregionoff(2, 125);
			subregionoff(1, 160);
			subregionoff(2, 160);
			break;
		} 
	return;

}

function switchcountrieslooking(){

	var countrycode = eval(document.userform.lookingfor_country.value);

	switch (countrycode) 
	{ 
   		case 183 : 
			subregionon(3, 183);
			subregionoff(3, 125);
			subregionoff(3, 160);
      			break; 
   		case 125 : 
			subregionoff(3, 183);
			subregionon(3, 125);
		      	subregionoff(3, 160);
			break; 
   		case 160 : 
			subregionoff(3, 183);
			subregionoff(3, 125);
		      	subregionon(3, 160);
			break; 

   		default : 
			subregionoff(3, 183);
			subregionoff(3, 125);
			subregionoff(3, 160);
			break;
		} 
	return;

}


function subregionon(i,c){
	layerdisplayon(document.getElementById('region'+i+'_'+c));
}

function subregionoff(i,c){
	layerdisplayoff(document.getElementById('region'+i+'_'+c));
}


/* functions for version  3.0.0 onwards */

function regstage2swapcountry(el, doexecute){
	var thiscountry = parseInt(el.value);
	switch (thiscountry){
		case 183: 
			elementdisplayon('trpostcode1_holder');
			document.getElementById('trpostcode1_holder').style.display="block";
			elementdisplayoff('trregion');
			elementdisplayon('trtownlocation_holder');
			document.getElementById('trtownlocation_holder').style.display="block";
			elementdisplayoff('trtown');
			//UpdateInnerHTML('pcexamplelabel', '<b>Post code (first part only)</b><br><small>We just need the first 3 or 4 characters</small>');
			UpdateInnerHTML('pcexample', 'First part only (e.g. LA1, CR8) to protect your privacy');
			addClass(document.getElementById('town_location_key'), 'required');
			addClass(document.getElementById('area_code'), 'required');
			removeClass(document.getElementById('county_key'), 'required');
			removeClass(document.getElementById('town'), 'required');
			break;

		case 9:
			elementdisplayon('trpostcode1_holder');
			document.getElementById('trpostcode1_holder').style.display="block";
			elementdisplayoff('trregion');
			elementdisplayon('trtownlocation_holder');
			document.getElementById('trtownlocation_holder').style.display="block";
			elementdisplayoff('trtown');
			//UpdateInnerHTML('pcexamplelabel', '<b>Post code</b><br>');//<small>e.g. 6151, 3052</small>');
			UpdateInnerHTML('pcexample', 'e.g. 3052, 6151');
			addClass(document.getElementById('town_location_key'), 'required');
			addClass(document.getElementById('area_code'), 'required');
			removeClass(document.getElementById('county_key'), 'required');
			removeClass(document.getElementById('town'), 'required');
			break;

		case 125: 
			elementdisplayoff('trpostcode1_holder');
			elementdisplayon('trregion');
			document.getElementById('trregion').style.display="block";
			elementdisplayoff('trtownlocation_holder');
			elementdisplayon('trtown');
			document.getElementById('trtown').style.display="block";
			removeClass(document.getElementById('town_location_key'), 'required');
			removeClass(document.getElementById('area_code'), 'required');
			addClass(document.getElementById('county_key'), 'required');
			addClass(document.getElementById('town'), 'required');
			if (doexecute) executeRequest('wci=register,wce=fillregions,country_key='+thiscountry, 6);
			break;
		
		default:
			elementdisplayoff('trpostcode1_holder');
			elementdisplayoff('trregion');
			elementdisplayoff('trtownlocation_holder');
			elementdisplayon('trtown');
			document.getElementById('trtown').style.display="block";
			removeClass(document.getElementById('town_location_key'), 'required');
			removeClass(document.getElementById('area_code'), 'required');
			removeClass(document.getElementById('county_key'), 'required');
			addClass(document.getElementById('town'), 'required');
			break;
	}
}


function regstage2swapcountrylookingfor(el, doexecute){
	var thiscountry = parseInt(el.value);
	switch (thiscountry){
		case 183: 
			elementdisplayon('trlookingfordistance_holder');
			document.getElementById('trlookingfordistance_holder').style.display="block";
			elementdisplayoff('trlookingforregion');
			UpdateInnerHTML('pcexample_looking', 'first part of my postcode e.g. KT3');
			UpdateInnerHTML('distancelabel_looking','miles of ');
			break;
		case 9:
			elementdisplayon('trlookingfordistance_holder');
			document.getElementById('trlookingfordistance_holder').style.display="block";
			elementdisplayoff('trlookingforregion');
			UpdateInnerHTML('pcexample_looking', 'my postcode e.g. 3052, 6151');
			UpdateInnerHTML('distancelabel_looking','kms of ');
			break;

		 case 125:
			//elementdisplayoff('trlookingforpostcode');
			elementdisplayoff('trlookingfordistance_holder');
			elementdisplayon('trlookingforregion');
			document.getElementById('trlookingforregion').style.display="block";
			if (doexecute) executeRequest('wci=register,wce=fillregionslookingfor,lookingfor_country='+thiscountry, 6);
			break;
		default:
			//elementdisplayoff('trlookingforpostcode');
			elementdisplayoff('trlookingfordistance_holder');
			elementdisplayoff('trlookingforregion');
			break;
	}
}


function searchresultscountryswitch(el, doexecute){
	var thiscountry = parseInt(el.value);
	switch (thiscountry){
		case 183: 
			elementdisplayon('areacode');
			elementdisplayoff('countydiv');
			UpdateInnerHTML('pcexample_looking', 'your postcode eg W3, SE10, TN8');
			UpdateInnerHTML('distancelabel_looking','miles');
			break;

		case 9:
			elementdisplayon('areacode');
			elementdisplayoff('countydiv');
			UpdateInnerHTML('pcexample_looking', 'your postcode eg 2060, 3052, 6151');
			UpdateInnerHTML('distancelabel_looking','kms');
			break;

		case 125:
			elementdisplayoff('areacode');
			elementdisplayon('countydiv');
			if (doexecute) executeRequest('wce=SearchResultsCountrySwap,country_key='+thiscountry, 7);
			break;
		default:
			elementdisplayoff('areacode');
			elementdisplayoff('countydiv');
			break;
	}
}

function setCountry(path){
	if (!path){path='';}
	try{
		switch(request('loc').toUpperCase()){
		case 'AU':
			document.forms[0].action='http://www.friendsreuniteddating.com.au/'+path;
			if (document.forms[0].lookingfor_country){
				document.forms[0].lookingfor_country.value=9;
			}
			if (document.forms[0].country_key){
				document.forms[0].country_key.value=9;
			}
			document.getElementById('postcode').style.visibility="visible";
			document.forms[0].lookingfor_post_code.value='eg. 4352';
			break;
		case 'NZ':
			document.forms[0].action='http://www.friendsreuniteddating.co.nz/'+path;
			if (document.forms[0].lookingfor_country){
				document.forms[0].lookingfor_country.value=125;
			}
			if (document.forms[0].country_key){
				document.forms[0].country_key.value=125;
			}
			document.getElementById('postcode').style.visibility="hidden";
			break;
		default:
			document.forms[0].action='http://www.friendsreuniteddating.co.uk/'+path;
			if (document.forms[0].lookingfor_country){
				document.forms[0].lookingfor_country.value=183;
			}
			if (document.forms[0].country_key){
				document.forms[0].country_key.value=183;
			}
			document.getElementById('postcode').style.visibility="visible";
			document.forms[0].lookingfor_post_code.value='eg. SW10';
			break;
		}
	}
	catch(err){}
}

function changeCountry(countryKey, path){
	if (!path){path='';}
	try{
		switch(countryKey){
		case '183':
			document.forms[0].action='http://www.friendsreuniteddating.co.uk/'+path;
			document.getElementById('postcode').style.visibility="visible";
			document.forms[0].lookingfor_post_code.value='eg. SW10';
			break;
		case '125':
			document.forms[0].action='http://www.friendsreuniteddating.co.nz/'+path;
			document.getElementById('postcode').style.visibility="hidden";
			document.forms[0].lookingfor_post_code.value='';
			break;
		case '9':
			document.forms[0].action='http://www.friendsreuniteddating.com.au/'+path;
			document.getElementById('postcode').style.visibility="visible";
			document.forms[0].lookingfor_post_code.value='eg. 4352';
			break;
		default:
			document.forms[0].action='http://www.friendsreuniteddating.co.uk/'+path;
			document.getElementById('postcode').style.visibility="hidden";
			document.forms[0].lookingfor_post_code.value='';
			break;
		}
	}
	catch(err){}

}