arrRegions = [{"intRegionId":"79","strRegionName":"Devon","arrLocations":[{"intLocationId":"1637","strLocationName":"Axminster","strLocationNameWithPrefix":"Axminster","strRegionName":"Devon"},{"intLocationId":"989","strLocationName":"Barnstaple","strLocationNameWithPrefix":"Barnstaple","strRegionName":"Devon"},{"intLocationId":"997","strLocationName":"Beaworthy","strLocationNameWithPrefix":"Beaworthy","strRegionName":"Devon"},{"intLocationId":"1007","strLocationName":"Bideford","strLocationNameWithPrefix":"Bideford","strRegionName":"Devon"},{"intLocationId":"1030","strLocationName":"Braunton","strLocationNameWithPrefix":"Braunton","strRegionName":"Devon"},{"intLocationId":"1039","strLocationName":"Brixham","strLocationNameWithPrefix":"Brixham","strRegionName":"Devon"},{"intLocationId":"1046","strLocationName":"Buckfastleigh","strLocationNameWithPrefix":"Buckfastleigh","strRegionName":"Devon"},{"intLocationId":"1660","strLocationName":"Bude","strLocationNameWithPrefix":"Bude","strRegionName":"Devon"},{"intLocationId":"1049","strLocationName":"Budleigh Salterton","strLocationNameWithPrefix":"Budleigh Salterton","strRegionName":"Devon"},{"intLocationId":"1077","strLocationName":"Chulmleigh","strLocationNameWithPrefix":"Chulmleigh","strRegionName":"Devon"},{"intLocationId":"1091","strLocationName":"Colyton","strLocationNameWithPrefix":"Colyton","strRegionName":"Devon"},{"intLocationId":"1100","strLocationName":"Crediton","strLocationNameWithPrefix":"Crediton","strRegionName":"Devon"},{"intLocationId":"1107","strLocationName":"Cullompton","strLocationNameWithPrefix":"Cullompton","strRegionName":"Devon"},{"intLocationId":"1118","strLocationName":"Dartmouth","strLocationNameWithPrefix":"Dartmouth","strRegionName":"Devon"},{"intLocationId":"1120","strLocationName":"Dawlish","strLocationNameWithPrefix":"Dawlish","strRegionName":"Devon"},{"intLocationId":"1687","strLocationName":"Dulverton","strLocationNameWithPrefix":"Dulverton","strRegionName":"Devon"},{"intLocationId":"1154","strLocationName":"Exeter","strLocationNameWithPrefix":"Exeter","strRegionName":"Devon"},{"intLocationId":"1155","strLocationName":"Exmouth","strLocationNameWithPrefix":"Exmouth","strRegionName":"Devon"},{"intLocationId":"1708","strLocationName":"Holsworthy","strLocationNameWithPrefix":"Holsworthy","strRegionName":"Devon"},{"intLocationId":"1227","strLocationName":"Honiton","strLocationNameWithPrefix":"Honiton","strRegionName":"Devon"},{"intLocationId":"1236","strLocationName":"Ilfracombe","strLocationNameWithPrefix":"Ilfracombe","strRegionName":"Devon"},{"intLocationId":"1265","strLocationName":"Ivybridge","strLocationNameWithPrefix":"Ivybridge","strRegionName":"Devon"},{"intLocationId":"1278","strLocationName":"Kingsbridge","strLocationNameWithPrefix":"Kingsbridge","strRegionName":"Devon"},{"intLocationId":"1725","strLocationName":"Launceston","strLocationNameWithPrefix":"Launceston","strRegionName":"Devon"},{"intLocationId":"1304","strLocationName":"Lifton","strLocationNameWithPrefix":"Lifton","strRegionName":"Devon"},{"intLocationId":"1738","strLocationName":"Lyme Regis","strLocationNameWithPrefix":"Lyme Regis","strRegionName":"Devon"},{"intLocationId":"1353","strLocationName":"Lynmouth","strLocationNameWithPrefix":"Lynmouth","strRegionName":"Devon"},{"intLocationId":"1739","strLocationName":"Lynton","strLocationNameWithPrefix":"Lynton","strRegionName":"Devon"},{"intLocationId":"1402","strLocationName":"Newton Abbot","strLocationNameWithPrefix":"Newton Abbot","strRegionName":"Devon"},{"intLocationId":"1410","strLocationName":"North Tawton","strLocationNameWithPrefix":"North Tawton","strRegionName":"Devon"},{"intLocationId":"1413","strLocationName":"Okehampton","strLocationNameWithPrefix":"Okehampton","strRegionName":"Devon"},{"intLocationId":"1417","strLocationName":"Ottery St. Mary","strLocationNameWithPrefix":"Ottery St. Mary","strRegionName":"Devon"},{"intLocationId":"1419","strLocationName":"Paignton","strLocationNameWithPrefix":"Paignton","strRegionName":"Devon"},{"intLocationId":"1440","strLocationName":"Plymouth","strLocationNameWithPrefix":"Plymouth","strRegionName":"Devon"},{"intLocationId":"1479","strLocationName":"Salcombe","strLocationNameWithPrefix":"Salcombe","strRegionName":"Devon"},{"intLocationId":"1492","strLocationName":"Seaton","strLocationNameWithPrefix":"Seaton","strRegionName":"Devon"},{"intLocationId":"1500","strLocationName":"Sidmouth","strLocationNameWithPrefix":"Sidmouth","strRegionName":"Devon"},{"intLocationId":"1504","strLocationName":"South Brent","strLocationNameWithPrefix":"South Brent","strRegionName":"Devon"},{"intLocationId":"1776","strLocationName":"South Molton","strLocationNameWithPrefix":"South Molton","strRegionName":"Devon"},{"intLocationId":"1783","strLocationName":"Taunton","strLocationNameWithPrefix":"Taunton","strRegionName":"Devon"},{"intLocationId":"1547","strLocationName":"Tavistock","strLocationNameWithPrefix":"Tavistock","strRegionName":"Devon"},{"intLocationId":"1550","strLocationName":"Teignmouth","strLocationNameWithPrefix":"Teignmouth","strRegionName":"Devon"},{"intLocationId":"1562","strLocationName":"Tiverton","strLocationNameWithPrefix":"Tiverton","strRegionName":"Devon"},{"intLocationId":"1565","strLocationName":"Torquay","strLocationNameWithPrefix":"Torquay","strRegionName":"Devon"},{"intLocationId":"1566","strLocationName":"Torrington","strLocationNameWithPrefix":"Torrington","strRegionName":"Devon"},{"intLocationId":"1567","strLocationName":"Totnes","strLocationNameWithPrefix":"Totnes","strRegionName":"Devon"},{"intLocationId":"1580","strLocationName":"Umberleigh","strLocationNameWithPrefix":"Umberleigh","strRegionName":"Devon"},{"intLocationId":"1793","strLocationName":"Wellington","strLocationNameWithPrefix":"Wellington","strRegionName":"Devon"},{"intLocationId":"1605","strLocationName":"Winkleigh","strLocationNameWithPrefix":"Winkleigh","strRegionName":"Devon"},{"intLocationId":"1610","strLocationName":"Woolacombe","strLocationNameWithPrefix":"Woolacombe","strRegionName":"Devon"},{"intLocationId":"1616","strLocationName":"Yelverton","strLocationNameWithPrefix":"Yelverton","strRegionName":"Devon"}]}]

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

