	/* Search Markers*/
	var map;
    var geocoder;
	var baseIconDemonstration;
	
	baseIconDemonstration = new GIcon();
	baseIconDemonstration.image = "images/marker_plaize.png";
	baseIconDemonstration.shadow = "images/sign_shadow.png";
	baseIconDemonstration.iconSize = new GSize(28, 28);
	baseIconDemonstration.shadowSize = new GSize(40, 28);
	baseIconDemonstration.iconAnchor = new GPoint(28, 28);
	baseIconDemonstration.infoWindowAnchor = new GPoint(24, 2);
	baseIconDemonstration.infoShadowAnchor = new GPoint(18, 25);
	
	function initialize() {
      map = new GMap2(document.getElementById("map_canvas"));
      map.setCenter(new GLatLng(34, 0), 1);
      geocoder = new GClientGeocoder();
    }
	function addAddressToMap(response) {
      map.clearOverlays();
      if (!response || response.Status.code != 200) {
        alert("Sorry, that place cannot be found");
	  } else {
	    place = response.Placemark[0];
        point = new GLatLng(place.Point.coordinates[1],
                            place.Point.coordinates[0]);
        marker = new GMarker(point,baseIconDemonstration);
		var zoomlevel=12;
		map.setCenter(point, zoomlevel);
        map.addOverlay(marker);
		if(document.getElementById('tresult').value == 1)
			var markerhtml = '<div id="infowindow">' + place.address + '<br>' + '<b>' + response.name + '</b><br><a href="register.php?locationname=' + response.name + '&latval='+place.Point.coordinates[1]+'&lngval='+place.Point.coordinates[0]+'&countryval='+document.getElementById('country').value+'">Redefine ' + response.name + '</a></div>';
		else
			var markerhtml = '<div id="infowindow">' + place.address + '<br>' + '<b>' + response.name + '</b><br><a href="#" onClick="zoomout_map();">Zoom out</a></div>';
		GEvent.addListener(marker, "click", function() { marker.openInfoWindowHtml(markerhtml); });
		marker.openInfoWindowHtml(markerhtml);
		/* Insert Datafields */
		if(document.getElementById('tresult').value == '1'){
			document.getElementById('congrats').innerHTML = '<a href="#" onclick="redirectRegister();" class="plaizelink">Congratulations! '+response.name+' is available. Click here to define it now.</a>';
			document.getElementById('latval').value = place.Point.coordinates[1];
			document.getElementById('lngval').value = place.Point.coordinates[0];
			document.getElementById('countryval').value = document.getElementById('country').value;
			document.getElementById('detailfeilds').style.display = 'block';
		}
	  }
    }

    function showLocation() {
      var address = document.getElementById('searchbox').value;
	  var country = document.getElementById('country').value;
	  geocoder.setBaseCountryCode(country);
	  geocoder.getLocations(address, addAddressToMap);
	}

    function findLocation(address) {
      document.getElementById('searchbox').value = address;
      showLocation();
	}
	
  	/* Get and display all markers */
	function createMarker(point,html) {
		var marker = new GMarker(point,baseIconDemonstration);
		GEvent.addListener(marker, "mouseover", function() { marker.openInfoWindowHtml(html); });
		GEvent.addListener(marker, "click", function() {  var zoomlevel=10;
		map.setCenter(point, zoomlevel); });
		return marker;
	}
	
	function getMarks(url) { 
		map.closeInfoWindow(); /*close any InfoWindows that happen to be open  */
		map.clearOverlays();
		
		var request = GXmlHttp.create(); /* use the XML methods  */
    	request.open("GET", url , true);
    	request.onreadystatechange = function() {
     	if (request.readyState == 4) {	
		var xmlDoc = request.responseXML; /* php returns 'XML' */
		var markers = xmlDoc.documentElement.getElementsByTagName("marker"); 
		
		for (var loop1=0;loop1<markers.length;loop1++){
			var lat = parseFloat(markers[loop1].getAttribute("lat"));  /* data is string. */
			var lng = parseFloat(markers[loop1].getAttribute("lng")); 
			var point = new GLatLng(lat,lng);
			var html = markers[loop1].getAttribute("html");
			var marker = createMarker(point,html);
			map.addOverlay(marker);
			}
		}
		};
	request.send(null);

	}
	function zoomout_map(){
		window.location = 'index.php';	
	}
