arrRegions = [{"intRegionId":"6","strRegionName":"Bristol","arrLocations":[{"intLocationId":"143","strLocationName":"Almondsbury","strLocationNameWithPrefix":"Almondsbury"},{"intLocationId":"141","strLocationName":"Avonmouth","strLocationNameWithPrefix":"Avonmouth"},{"intLocationId":"144","strLocationName":"Aztec West","strLocationNameWithPrefix":"Aztec West"},{"intLocationId":"152","strLocationName":"Bishopston","strLocationNameWithPrefix":"Bishopston"},{"intLocationId":"154","strLocationName":"Bradley Stoke","strLocationNameWithPrefix":"Bradley Stoke"},{"intLocationId":"145","strLocationName":"Bristol","strLocationNameWithPrefix":"Bristol"},{"intLocationId":"150","strLocationName":"Bristol (City Centre)","strLocationNameWithPrefix":"Bristol (City Centre)"},{"intLocationId":"149","strLocationName":"Chipping Sodbury","strLocationNameWithPrefix":"Chipping Sodbury"},{"intLocationId":"151","strLocationName":"Clevedon","strLocationNameWithPrefix":"Clevedon"},{"intLocationId":"146","strLocationName":"Clifton","strLocationNameWithPrefix":"Clifton"},{"intLocationId":"153","strLocationName":"Filton","strLocationNameWithPrefix":"Filton"},{"intLocationId":"156","strLocationName":"Nailsea","strLocationNameWithPrefix":"Nailsea"},{"intLocationId":"159","strLocationName":"Other","strLocationNameWithPrefix":"Other"},{"intLocationId":"142","strLocationName":"Patchway","strLocationNameWithPrefix":"Patchway"},{"intLocationId":"147","strLocationName":"Portishead","strLocationNameWithPrefix":"Portishead"},{"intLocationId":"148","strLocationName":"Thornbury","strLocationNameWithPrefix":"Thornbury"},{"intLocationId":"155","strLocationName":"Weston-super-Mare","strLocationNameWithPrefix":"Weston-super-Mare"}]},{"intRegionId":"46","strRegionName":"The South West","arrLocations":[{"intLocationId":"143","strLocationName":"Almondsbury","strLocationNameWithPrefix":"Almondsbury"},{"intLocationId":"141","strLocationName":"Avonmouth","strLocationNameWithPrefix":"Avonmouth"},{"intLocationId":"144","strLocationName":"Aztec West","strLocationNameWithPrefix":"Aztec West"},{"intLocationId":"157","strLocationName":"Bath","strLocationNameWithPrefix":"Bath"},{"intLocationId":"158","strLocationName":"Bath (City Centre)","strLocationNameWithPrefix":"Bath (City Centre)"},{"intLocationId":"152","strLocationName":"Bishopston","strLocationNameWithPrefix":"Bishopston"},{"intLocationId":"133","strLocationName":"Bradford on-Avon","strLocationNameWithPrefix":"Bradford on-Avon"},{"intLocationId":"154","strLocationName":"Bradley Stoke","strLocationNameWithPrefix":"Bradley Stoke"},{"intLocationId":"145","strLocationName":"Bristol","strLocationNameWithPrefix":"Bristol"},{"intLocationId":"150","strLocationName":"Bristol (City Centre)","strLocationNameWithPrefix":"Bristol (City Centre)"},{"intLocationId":"149","strLocationName":"Chipping Sodbury","strLocationNameWithPrefix":"Chipping Sodbury"},{"intLocationId":"151","strLocationName":"Clevedon","strLocationNameWithPrefix":"Clevedon"},{"intLocationId":"146","strLocationName":"Clifton","strLocationNameWithPrefix":"Clifton"},{"intLocationId":"153","strLocationName":"Filton","strLocationNameWithPrefix":"Filton"},{"intLocationId":"134","strLocationName":"Melksham","strLocationNameWithPrefix":"Melksham"},{"intLocationId":"137","strLocationName":"Midsomer Norton","strLocationNameWithPrefix":"Midsomer Norton"},{"intLocationId":"156","strLocationName":"Nailsea","strLocationNameWithPrefix":"Nailsea"},{"intLocationId":"159","strLocationName":"Other","strLocationNameWithPrefix":"Other"},{"intLocationId":"140","strLocationName":"Other","strLocationNameWithPrefix":"Other"},{"intLocationId":"142","strLocationName":"Patchway","strLocationNameWithPrefix":"Patchway"},{"intLocationId":"147","strLocationName":"Portishead","strLocationNameWithPrefix":"Portishead"},{"intLocationId":"138","strLocationName":"Radstock","strLocationNameWithPrefix":"Radstock"},{"intLocationId":"148","strLocationName":"Thornbury","strLocationNameWithPrefix":"Thornbury"},{"intLocationId":"132","strLocationName":"Trowbridge","strLocationNameWithPrefix":"Trowbridge"},{"intLocationId":"136","strLocationName":"Warminster","strLocationNameWithPrefix":"Warminster"},{"intLocationId":"139","strLocationName":"Wells","strLocationNameWithPrefix":"Wells"},{"intLocationId":"135","strLocationName":"Westbury","strLocationNameWithPrefix":"Westbury"},{"intLocationId":"155","strLocationName":"Weston-super-Mare","strLocationNameWithPrefix":"Weston-super-Mare"}]},{"intRegionId":"59","strRegionName":"Somerset","arrLocations":[{"intLocationId":"157","strLocationName":"Bath","strLocationNameWithPrefix":"Bath"},{"intLocationId":"158","strLocationName":"Bath (City Centre)","strLocationNameWithPrefix":"Bath (City Centre)"},{"intLocationId":"133","strLocationName":"Bradford on-Avon","strLocationNameWithPrefix":"Bradford on-Avon"},{"intLocationId":"134","strLocationName":"Melksham","strLocationNameWithPrefix":"Melksham"},{"intLocationId":"137","strLocationName":"Midsomer Norton","strLocationNameWithPrefix":"Midsomer Norton"},{"intLocationId":"140","strLocationName":"Other","strLocationNameWithPrefix":"Other"},{"intLocationId":"138","strLocationName":"Radstock","strLocationNameWithPrefix":"Radstock"},{"intLocationId":"132","strLocationName":"Trowbridge","strLocationNameWithPrefix":"Trowbridge"},{"intLocationId":"136","strLocationName":"Warminster","strLocationNameWithPrefix":"Warminster"},{"intLocationId":"139","strLocationName":"Wells","strLocationNameWithPrefix":"Wells"},{"intLocationId":"135","strLocationName":"Westbury","strLocationNameWithPrefix":"Westbury"}]}]

AddPageLoadFunction(
	function(){
		var objVarElement = document.getElementById("QuickSearchRegion");
		
		if(objVarElement != null && objVarElement.options){			
			var objOption, objTextNode;

			var intCurrentRegionId = objVarElement.options[objVarElement.selectedIndex].value;		
			objVarElement.innerHTML="";
			
			var intNumRegions = arrRegions.length;
			var bolRegionFound = false;
			
			for(var i=0; i<intNumRegions;i++){
				objOption = document.createElement("option");
				objOption.value = arrRegions[i]["intRegionId"];
				if(intCurrentRegionId == arrRegions[i]["intRegionId"]){
					objOption.selected = "selected";
					bolRegionFound = true;
				}
				objTextNode = document.createTextNode(arrRegions[i]["strRegionName"]);
				objOption.appendChild(objTextNode);
				objVarElement.appendChild(objOption);
			}
			
			if(!bolRegionFound){
				intCurrentRegionId = objVarElement.options[objVarElement.selectedIndex].value;				
				QuickChangeRegionById(intCurrentRegionId);
			}					
			
			var objMyRules = { 
				"#QuickSearchRegion" : function(objElement){
					addEvent(objElement,"change",QuickChangeRegion);
				}
			};
			Behaviour.register(objMyRules);
			Behaviour.apply(objMyRules);
		}
	}
)

function QuickChangeRegion(objEvent){
	objEvent = PrepareEvent(objEvent);
	var intCurrentRegionId = objEvent.objTarget.options[objEvent.objTarget.selectedIndex].value;
	QuickChangeRegionById(intCurrentRegionId);
}

function QuickChangeRegionById(intRegionId){
	var objOption, objTextNode;
	
	var objVarElement = document.getElementById("QuickSearchLocation");
	objVarElement.innerHTML="";

	objOption = document.createElement("option");
	objOption.value = 0;
	objTextNode = document.createTextNode("All Locations");
	objOption.appendChild(objTextNode);
	objVarElement.appendChild(objOption);

	var intNumRegions = arrRegions.length;
	for(var i=0; i<intNumRegions;i++){
		if(intRegionId == arrRegions[i]["intRegionId"]){
			intCurrentRegion = i;
		}
	}
	
	var intNumLocations = arrRegions[intCurrentRegion]["arrLocations"].length;

	for(var i=0; i<intNumLocations;i++){
		objOption = document.createElement("option");
		objOption.value = arrRegions[intCurrentRegion]["arrLocations"][i]["intLocationId"];		
		objTextNode = document.createTextNode(arrRegions[intCurrentRegion]["arrLocations"][i]["strLocationName"]);
		objOption.appendChild(objTextNode);
		objVarElement.appendChild(objOption);
	}
}
