var map


 function startGMap(address,title,todo, setup,lat,lon) {
    if (GBrowserIsCompatible()) {
        map = new GMap2(document.getElementById("gmap"));
        map.addControl(new GLargeMapControl());
	    map.addControl(new GMapTypeControl());
        var zoom = 15;
      
	    var callb = function(point) {
	        if (!point) {
	          point = new GLatLng(50, 10);
	          zoom = 5;
	        }
	        map.setCenter(point, zoom);
	        var marker = new GMarker(point, {draggable: setup});
	        
	        if (setup) {
				GEvent.addListener(marker, "dragstart", function() {
				  map.closeInfoWindow();
				});			
				GEvent.addListener(marker, "dragend", function() {
				  //marker.openInfoWindowHtml("Just bouncing along..."+ marker.getPoint().x + "<br>"+ marker.getPoint().y);
				  document.forms['mainf'].elements['latitude'].value = marker.getPoint().x;			  
				  document.forms['mainf'].elements['longitude'].value = marker.getPoint().y;			  
				});            
				document.forms['mainf'].elements['latitude'].value = marker.getPoint().x;			  
			  	document.forms['mainf'].elements['longitude'].value = marker.getPoint().y;
		  	}			  
		
	        map.addOverlay(marker);
	        
	        if (title) {
		        if (todo) {
		        	var tip = "<div class='gmapinfo'><strong>"+title+"</strong><br>"+todo+"</div>";
		        	marker.openInfoWindowHtml(tip);
		        } else {
		        	marker.openInfoWindow(title);
		        }
	        }
	        	
	        
	        
	   }
	   
	   //var lat = document.forms['mainf'].elements['latitude'].value;
	   //var lon = document.forms['mainf'].elements['longitude'].value;
	      
	   if (lat=="") {
	       geocoder = new GClientGeocoder();
		   geocoder.getLatLng(address,callb);        
		} else {
			callb(new GLatLng(lon, lat));
		}
    }
  }
