var map = null;
var geocoder = null;

function initialize(id) {
	if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById(id));
		geocoder = new GClientGeocoder();
	}
}

function LoadMap(id, address, direction_address) {
	if (geocoder) {
		geocoder.getLatLng(
			address,
			function(point) {
				if (!point) {
					alert(address + " not found");
				} else {
          map.addControl(new GSmallMapControl());
          map.addControl(new GMapTypeControl());
          map.addControl(new GOverviewMapControl());
					map.setCenter(point, 13);
        
					var marker = new GMarker(point);
          var html = '<b>' + address + '</b>';
          if (direction_address) {
         var html = html + '<form action="http:\/\/maps.google.com\/maps" method="get" target="_blank">'
      + 'Get driving directions<br \/>'
      + '<b>From:&nbsp;<\/b><input name="saddr" class=med \/>'
      + '<input type="hidden" name="f" value="d" \/><input type="hidden" name="hl" value="en" \/><input type="hidden" name="om" value="1" \/>'
      + '<input type="hidden" name="layer" value="" \/><input type="hidden" name="ie" value="UTF8" \/><input type="hidden" name="z" value="" \/>'
      + '<input type="hidden" name="daddr" value="' + direction_address + '" \/>'
      + '<center><input class="btn_primary" type="submit" value="Get directions" \/><\/center><\/form><\/div>';
      }
    GEvent.addListener(marker, "click", function() {
      marker.openInfoWindowHtml(html);
    });
    map.addOverlay(marker);
    marker.openInfoWindowHtml(html);
					//map.addOverlay(marker);
					//marker.openInfoWindowHtml(address);
				}
			}
		);
	}
}
/*function LoadMap() {
  
  if (GBrowserIsCompatible()) {
    var map = new GMap2($('map'));
    map.addControl(new GSmallMapControl());
    map.addControl(new GMapTypeControl());
    map.addControl(new GOverviewMapControl());
    var point = new GLatLng(<?= $CONFIG['map_lat'] ?>, <?= $CONFIG['map_lng'] ?>);
    map.setCenter(point, 13);
    var marker = new GMarker(point);
    var html = '<form action="http:\/\/maps.google.com\/maps" method="get" target="_blank">'
      + 'Get driving directions<br \/>'
      + '<b>From:&nbsp;<\/b><input name="saddr" class=med \/>'
      + '<input type="hidden" name="f" value="d" \/><input type="hidden" name="hl" value="en" \/><input type="hidden" name="om" value="1" \/>'
      + '<input type="hidden" name="layer" value="" \/><input type="hidden" name="ie" value="UTF8" \/><input type="hidden" name="z" value="" \/>'
      + '<input type="hidden" name="daddr" value="<?= $CONFIG['address']['google'] ?>" \/>'
      + '<center><input class="btn_primary" type="submit" value="Get directions" \/><\/center><\/form><\/div>';
    GEvent.addListener(marker, "click", function() {
      marker.openInfoWindowHtml(html);
    });
    map.addOverlay(marker);
    //marker.openInfoWindowHtml(html);
  }
}*/
function ShowMap(id, address, direction_address) {
  if (GBrowserIsCompatible()) {
  
   if ($(id).style.display == 'none') {
			$(id + '-link').update('Close Map');
      new Effect.BlindDown(id, {afterFinish: function() {
				initialize(id);
				LoadMap(id, address, direction_address);
			}});
   } else {
      new Effect.BlindUp(id, {});
			$(id + '-link').update('View Map');
    }
    
    
    return false;
  } else {
    return true;
  }
}
window.onunload = function() {
  GUnload();
}
