    //<![CDATA[
    var map;
    var geocoder;
	var address;
	
    function initialize() {
      if (GBrowserIsCompatible()) {
        geocoder = new GClientGeocoder();
        map = new GMap2(document.getElementById('map'));
        map.addControl(new GSmallMapControl());
        map.addControl(new GMapTypeControl());
        map.setCenter(new GLatLng(-27.994167,134.866944), 3);
      }
    }

    function searchLocations() {
     var addressinput = document.getElementById('addressInput').value + "Australia";
			   var sidebar = document.getElementById('sidebar');
		   
	geocoder.getLocations(addressinput, function(locations){
	//sidebar.innerHTML =  locations.Placemark.length;
	if (locations.Placemark.length > 1){
		sidebar.innerHTML = '<h3>Did you mean...</h3>';
		for (var k=0; k<locations.Placemark.length; k++) {
		sidebar.innerHTML += '<p><a href="javascript:searchSelected('+ "'" + locations.Placemark[k].address+ "'" + ');">'+locations.Placemark[k].address+'</a></p>';
		
		}
	
	}else if(locations.Placemark.length == 1){
		// sidebar.innerHTML = '=1';
		 
			var p =locations.Placemark[0].Point.coordinates
			 //sidebar.innerHTML += '<p>p0(lat)='+p[0]+'</p>';
			// sidebar.innerHTML += '<p>p1(lng)='+p[1]+'</p>';
			 
			 searchLocationsNear(new GLatLng(p[1], p[0], true));
		   
		 
	}else{		
		 //  sidebar.innerHTML = '<1';
	alert(addressinput + ' not found');}
	 });
   }
	
	function searchSelected(address){
		document.getElementById('addressInput').value = address;
		geocoder.getLatLng(address, function(latlng) {
		   if (!latlng) {
			 alert(address + ' not found');
		   } else {
			 searchLocationsNear(latlng);
		   }
		 });
	}

   function searchLocationsNear(center) 
   {
       var radius = document.getElementById('radiusSelect').value;
       var searchUrl = '../includes/phpsqlsearch_genxml.php?lat=' + center.lat() + '&lng=' + center.lng() + '&radius=' + radius +'&address=' + document.getElementById('addressInput').value + " Australia" ;

       GDownloadUrl(searchUrl, function(data) {
		   
		   var xml = GXml.parse(data);
		   var markers = xml.documentElement.getElementsByTagName('marker');
		   map.clearOverlays();
		   
		   var sidebar = document.getElementById('sidebar');
		   sidebar.innerHTML = '';
				
			var inRadius = false;
			//sidebar.innerHTML += 'Data: ';
			//sidebar.innerHTML += data;
			//sidebar.innerHTML += '    XML: ';
			//sidebar.innerHTML += xml ;
			
			var bounds = new GLatLngBounds();
			bounds.extend(center);
			
			var sidebarheight =11;
			
			for (var i = 0; i < markers.length; i++) {
					 
				 if (i>=3){ break; }
							var address = markers[i].getAttribute('address');
				 var lng= markers[i].getAttribute('lng');
				 var lat= markers[i].getAttribute('lat');
				 var email= markers[i].getAttribute('email');
				 var phone= markers[i].getAttribute('phone');
				 var fax= markers[i].getAttribute('fax');
				 var type= markers[i].getAttribute('type');
				 var name = markers[i].getAttribute('name');
				  var distance= parseFloat(markers[i].getAttribute('distance'));
							
					var location = new GLatLng(lat, lng);
	 
					var html = "<h4>";
					
					
					if (name !="" && name != null)		
					{
						html+= name;
					}				
									
					if (type =="Branch")		
					{
						html+= '&nbsp;<img src="../images/_logo_thumb.gif"/>'
					}
					if (type =="Distributor")		
					{
						html+= " <i>(Distributor)</i> "
					}
					
					html+="</h4>"
					html += '<b>' + address + '</b> (' + distance.toFixed(1) + 'km)';
				
							if (email !="")
								{ html+= '<br/><b>Email: </b>'+email;}
							if (phone !="")
								{ html+= '<br/><b>Phone: </b>'+phone;}
							if (fax !="")
								{ html+= '<br/><b>Fax: </b>'+fax;}
							
							
							var marker = createMarker(location, html);
												
												
							map.addOverlay(marker);
							
							//createSidebarEntry(marker,address, distance) ;
							///sidebar entry
							  var div = document.createElement('div');
							
							  div.innerHTML = html;
							  div.style.cursor = 'pointer';
							  div.style.marginBottom = '5px';
							  div.style.marginTop = '5px';
							  div.style.padding = '5px';
							  div.style.broderBottom = 'solid 1px #444455';
							  if (type =="Branch")		
								{
									div.style.backgroundColor="#ffffff";
								}
							 /* GEvent.addDomListener(div, 'click', function() {
								GEvent.trigger(marker, 'click');
								  });
							  GEvent.addDomListener(div, 'mouseover', function() {
								div.style.backgroundColor = '#eee';
	
							  });
							  GEvent.addDomListener(div, 'mouseout', function() {
								div.style.backgroundColor = '#fff';
	
							  });*/

							
							sidebar.appendChild(div);
								bounds.extend(location);
							inRadius=true;
	
						
				
			
			
			} 
			if (inRadius==false){
						sidebar.innerHTML += 'No results found.';
					
						 map.setCenter(new GLatLng(-27.994167,134.866944), 3);
						 return;
					}
					else
					{
				
					sidebar.innerHTML += '<a href="files/locations.php?passed_address='+ document.getElementById('addressInput').value + ' Australia&passed_radius=' + radius + '">Veiw More...</a>';
						map.setCenter(bounds.getCenter(), map.getBoundsZoomLevel(bounds));
											var searchUrl ='../../includes/phpsqladd_search.php?address=' + document.getElementById('addressInput').value + '&datetime=' + Date();
						   
					   GDownloadUrl(searchUrl, function(data) {
					  
						});
					}	
			
		});
   }

     function getDistance(address1, address2)
	  {
	     
		
		
	  }

    function createSidebarEntry(marker,address, distance) {
      sidebar.innerHTML +=' in sidebar entry  '; 
	  var div = document.createElement('div');
      var html = '<b>'+ addresss +'</b> (' + distance.toFixed(1) + ')';
      div.innerHTML = html;
      div.style.cursor = 'pointer';
      div.style.marginBottom = '5px'; 
      GEvent.addDomListener(div, 'click', function() {
        GEvent.trigger(marker, 'click');
      });
      GEvent.addDomListener(div, 'mouseover', function() {
        div.style.backgroundColor = '#eee';
      });
      GEvent.addDomListener(div, 'mouseout', function() {
        div.style.backgroundColor = '#fff';
      });
      return div;
    }
	
	function createMarker(point, address) {
      var marker = new GMarker(point);
      var html = '<b>' + address + '</b>';
      GEvent.addListener(marker, 'click', function() {
        marker.openInfoWindowHtml(html);
      });
      return marker;
    }

	
    //]]>
