arrRegions = [{"intRegionId":"78","strRegionName":"Cornwall","arrLocations":[{"intLocationId":"1019","strLocationName":"Bodmin","strLocationNameWithPrefix":"Bodmin","strRegionName":"Cornwall"},{"intLocationId":"1025","strLocationName":"Boscastle","strLocationNameWithPrefix":"Boscastle","strRegionName":"Cornwall"},{"intLocationId":"1660","strLocationName":"Bude","strLocationNameWithPrefix":"Bude","strRegionName":"Cornwall"},{"intLocationId":"1059","strLocationName":"Callington","strLocationNameWithPrefix":"Callington","strRegionName":"Cornwall"},{"intLocationId":"1060","strLocationName":"Calstock","strLocationNameWithPrefix":"Calstock","strRegionName":"Cornwall"},{"intLocationId":"1061","strLocationName":"Camborne","strLocationNameWithPrefix":"Camborne","strRegionName":"Cornwall"},{"intLocationId":"1062","strLocationName":"Camelford","strLocationNameWithPrefix":"Camelford","strRegionName":"Cornwall"},{"intLocationId":"1121","strLocationName":"Delabole","strLocationNameWithPrefix":"Delabole","strRegionName":"Cornwall"},{"intLocationId":"1160","strLocationName":"Falmouth","strLocationNameWithPrefix":"Falmouth","strRegionName":"Cornwall"},{"intLocationId":"1173","strLocationName":"Fowey","strLocationNameWithPrefix":"Fowey","strRegionName":"Cornwall"},{"intLocationId":"1199","strLocationName":"Gunnislake","strLocationNameWithPrefix":"Gunnislake","strRegionName":"Cornwall"},{"intLocationId":"1210","strLocationName":"Hayle","strLocationNameWithPrefix":"Hayle","strRegionName":"Cornwall"},{"intLocationId":"1215","strLocationName":"Helston","strLocationNameWithPrefix":"Helston","strRegionName":"Cornwall"},{"intLocationId":"1708","strLocationName":"Holsworthy","strLocationNameWithPrefix":"Holsworthy","strRegionName":"Cornwall"},{"intLocationId":"1725","strLocationName":"Launceston","strLocationNameWithPrefix":"Launceston","strRegionName":"Cornwall"},{"intLocationId":"1305","strLocationName":"Liskeard","strLocationNameWithPrefix":"Liskeard","strRegionName":"Cornwall"},{"intLocationId":"1736","strLocationName":"Looe","strLocationNameWithPrefix":"Looe","strRegionName":"Cornwall"},{"intLocationId":"1346","strLocationName":"Lostwithiel","strLocationNameWithPrefix":"Lostwithiel","strRegionName":"Cornwall"},{"intLocationId":"1360","strLocationName":"Marazion","strLocationNameWithPrefix":"Marazion","strRegionName":"Cornwall"},{"intLocationId":"1401","strLocationName":"Newquay","strLocationNameWithPrefix":"Newquay","strRegionName":"Cornwall"},{"intLocationId":"1418","strLocationName":"Padstow","strLocationNameWithPrefix":"Padstow","strRegionName":"Cornwall"},{"intLocationId":"1421","strLocationName":"Par","strLocationNameWithPrefix":"Par","strRegionName":"Cornwall"},{"intLocationId":"1429","strLocationName":"Penryn","strLocationNameWithPrefix":"Penryn","strRegionName":"Cornwall"},{"intLocationId":"1433","strLocationName":"Penzance","strLocationNameWithPrefix":"Penzance","strRegionName":"Cornwall"},{"intLocationId":"1434","strLocationName":"Perranporth","strLocationNameWithPrefix":"Perranporth","strRegionName":"Cornwall"},{"intLocationId":"1446","strLocationName":"Port Isaac","strLocationNameWithPrefix":"Port Isaac","strRegionName":"Cornwall"},{"intLocationId":"1463","strLocationName":"Redruth","strLocationNameWithPrefix":"Redruth","strRegionName":"Cornwall"},{"intLocationId":"1482","strLocationName":"Saltash","strLocationNameWithPrefix":"Saltash","strRegionName":"Cornwall"},{"intLocationId":"1514","strLocationName":"St. Agnes","strLocationNameWithPrefix":"St. Agnes","strRegionName":"Cornwall"},{"intLocationId":"1516","strLocationName":"St. Austell","strLocationNameWithPrefix":"St. Austell","strRegionName":"Cornwall"},{"intLocationId":"1518","strLocationName":"St. Columb","strLocationNameWithPrefix":"St. Columb","strRegionName":"Cornwall"},{"intLocationId":"1778","strLocationName":"St. Ives","strLocationNameWithPrefix":"St. Ives","strRegionName":"Cornwall"},{"intLocationId":"1560","strLocationName":"Tintagel","strLocationNameWithPrefix":"Tintagel","strRegionName":"Cornwall"},{"intLocationId":"1564","strLocationName":"Torpoint","strLocationNameWithPrefix":"Torpoint","strRegionName":"Cornwall"},{"intLocationId":"1575","strLocationName":"Truro","strLocationNameWithPrefix":"Truro","strRegionName":"Cornwall"},{"intLocationId":"1583","strLocationName":"Wadebridge","strLocationNameWithPrefix":"Wadebridge","strRegionName":"Cornwall"}]}]

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