google.load('maps','2.x');
var map     = false;
var center;

function init_gmap(lat,lng,zoom) {
  if (typeof lat == 'undefined')  lat = 0;
  if (typeof lng == 'undefined')  lng = 0;
  if (typeof zoom == 'undefined') zoom = 10;

  map     = new google.maps.Map2(document.getElementById('GMap'));
  center  = new GLatLng(lat,lng);
  map.addControl(new GLargeMapControl());
  map.addControl(new GHierarchicalMapTypeControl());
  map.enableScrollWheelZoom();
  map.setCenter(center,zoom);

  var minMapScale = 10;
  var maxMapScale = 16;
  // get array of map types
  var mapTypes = map.getMapTypes();
  // overwrite the getMinimumResolution() and getMaximumResolution() methods for each map type
  for (var i=0; i<mapTypes.length; i++) {
    mapTypes[i].getMinimumResolution = function() {return minMapScale;}
    mapTypes[i].getMaximumResolution = function() {return maxMapScale;}
  }
  return true;
}
