arrRegions = [{"intRegionId":"8","strRegionName":"Cambridgeshire","arrLocations":[{"intLocationId":"502","strLocationName":"Bar Hill","strLocationNameWithPrefix":"Bar Hill","strRegionName":"South Cambridgeshire"},{"intLocationId":"503","strLocationName":"Brampton","strLocationNameWithPrefix":"Brampton","strRegionName":"South Cambridgeshire"},{"intLocationId":"493","strLocationName":"Bretton","strLocationNameWithPrefix":"Bretton","strRegionName":"North Cambridgeshire"},{"intLocationId":"500","strLocationName":"Cambourne","strLocationNameWithPrefix":"Cambourne","strRegionName":"South Cambridgeshire"},{"intLocationId":"456","strLocationName":"Cambridge","strLocationNameWithPrefix":"Cambridge","strRegionName":"South Cambridgeshire"},{"intLocationId":"469","strLocationName":"Cambridge (Centre)","strLocationNameWithPrefix":"Cambridge (Centre)","strRegionName":"South Cambridgeshire"},{"intLocationId":"497","strLocationName":"Cambridge Science Park","strLocationNameWithPrefix":"Cambridge Science Park","strRegionName":"South Cambridgeshire"},{"intLocationId":"473","strLocationName":"Chatteris","strLocationNameWithPrefix":"Chatteris","strRegionName":"North Cambridgeshire"},{"intLocationId":"467","strLocationName":"Cherry Hinton","strLocationNameWithPrefix":"Cherry Hinton","strRegionName":"South Cambridgeshire"},{"intLocationId":"499","strLocationName":"Chesterton","strLocationNameWithPrefix":"Chesterton","strRegionName":"South Cambridgeshire"},{"intLocationId":"460","strLocationName":"Ely","strLocationNameWithPrefix":"Ely","strRegionName":"South Cambridgeshire"},{"intLocationId":"478","strLocationName":"Eye","strLocationNameWithPrefix":"Eye","strRegionName":"North Cambridgeshire"},{"intLocationId":"494","strLocationName":"Fengate","strLocationNameWithPrefix":"Fengate","strRegionName":"North Cambridgeshire"},{"intLocationId":"468","strLocationName":"Godmanchester","strLocationNameWithPrefix":"Godmanchester","strRegionName":"South Cambridgeshire"},{"intLocationId":"501","strLocationName":"Great Shelford","strLocationNameWithPrefix":"Great Shelford","strRegionName":"South Cambridgeshire"},{"intLocationId":"490","strLocationName":"Hampton","strLocationNameWithPrefix":"Hampton","strRegionName":"North Cambridgeshire"},{"intLocationId":"462","strLocationName":"Histon","strLocationNameWithPrefix":"Histon","strRegionName":"South Cambridgeshire"},{"intLocationId":"458","strLocationName":"Huntingdon","strLocationNameWithPrefix":"Huntingdon","strRegionName":"North Cambridgeshire"},{"intLocationId":"463","strLocationName":"Littleport","strLocationNameWithPrefix":"Littleport","strRegionName":"South Cambridgeshire"},{"intLocationId":"476","strLocationName":"March","strLocationNameWithPrefix":"March","strRegionName":"North Cambridgeshire"},{"intLocationId":"498","strLocationName":"Milton","strLocationNameWithPrefix":"Milton","strRegionName":"South Cambridgeshire"},{"intLocationId":"382","strLocationName":"Newmarket","strLocationNameWithPrefix":"Newmarket","strRegionName":"South Cambridgeshire"},{"intLocationId":"492","strLocationName":"Orton","strLocationNameWithPrefix":"Orton","strRegionName":"North Cambridgeshire"},{"intLocationId":"470","strLocationName":"Other","strLocationNameWithPrefix":"Other","strRegionName":"South Cambridgeshire"},{"intLocationId":"481","strLocationName":"Other","strLocationNameWithPrefix":"Other","strRegionName":"North Cambridgeshire"},{"intLocationId":"491","strLocationName":"Paston","strLocationNameWithPrefix":"Paston","strRegionName":"North Cambridgeshire"},{"intLocationId":"471","strLocationName":"Peterborough","strLocationNameWithPrefix":"Peterborough","strRegionName":"North Cambridgeshire"},{"intLocationId":"472","strLocationName":"Peterborough (Centre)","strLocationNameWithPrefix":"Peterborough (Centre)","strRegionName":"North Cambridgeshire"},{"intLocationId":"477","strLocationName":"Ramsey","strLocationNameWithPrefix":"Ramsey","strRegionName":"North Cambridgeshire"},{"intLocationId":"571","strLocationName":"Royston","strLocationNameWithPrefix":"Royston","strRegionName":"South Cambridgeshire"},{"intLocationId":"464","strLocationName":"Sawston","strLocationNameWithPrefix":"Sawston","strRegionName":"South Cambridgeshire"},{"intLocationId":"495","strLocationName":"Sawtry","strLocationNameWithPrefix":"Sawtry","strRegionName":"North Cambridgeshire"},{"intLocationId":"466","strLocationName":"Silicon Fen","strLocationNameWithPrefix":"Silicon Fen","strRegionName":"South Cambridgeshire"},{"intLocationId":"459","strLocationName":"Soham","strLocationNameWithPrefix":"Soham","strRegionName":"South Cambridgeshire"},{"intLocationId":"489","strLocationName":"Spalding","strLocationNameWithPrefix":"Spalding","strRegionName":"North Cambridgeshire"},{"intLocationId":"461","strLocationName":"St. Ives","strLocationNameWithPrefix":"St. Ives","strRegionName":"South Cambridgeshire"},{"intLocationId":"457","strLocationName":"St. Neots","strLocationNameWithPrefix":"St. Neots","strRegionName":"South Cambridgeshire"},{"intLocationId":"488","strLocationName":"Stamford","strLocationNameWithPrefix":"Stamford","strRegionName":"North Cambridgeshire"},{"intLocationId":"486","strLocationName":"The Deepings","strLocationNameWithPrefix":"The Deepings","strRegionName":"North Cambridgeshire"},{"intLocationId":"496","strLocationName":"Waterbeach","strLocationNameWithPrefix":"Waterbeach","strRegionName":"South Cambridgeshire"},{"intLocationId":"480","strLocationName":"Werrington","strLocationNameWithPrefix":"Werrington","strRegionName":"North Cambridgeshire"},{"intLocationId":"474","strLocationName":"Whittlesey","strLocationNameWithPrefix":"Whittlesey","strRegionName":"North Cambridgeshire"},{"intLocationId":"520","strLocationName":"Whittlesford","strLocationNameWithPrefix":"Whittlesford","strRegionName":"South Cambridgeshire"},{"intLocationId":"475","strLocationName":"Wisbech","strLocationNameWithPrefix":"Wisbech","strRegionName":"North Cambridgeshire"},{"intLocationId":"479","strLocationName":"Yaxley","strLocationNameWithPrefix":"Yaxley","strRegionName":"North Cambridgeshire"}]}]

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);
	}
}
