googleMaps = new Array();

function lsLoadGoogleMap(mapID, mapIdent) {
 if((typeof(googleMapsCenters) == 'object')&&(typeof(googleMapsCenters[mapIdent]) == 'object')) {
  googleMaps[mapIdent] = new GMap2(document.getElementById(mapID));
  googleMaps[mapIdent].addControl(new GSmallMapControl());
  googleMaps[mapIdent].setCenter(new GLatLng(googleMapsCenters[mapIdent]['latitude'], googleMapsCenters[mapIdent]['longitude']), googleMapsCenters[mapIdent]['zoom']);
  lsLoadGoogleMarkers();
 };
};

function lsLoadGoogleMarkers() {
 if(typeof(googleMapsMarkers) == 'object') {
  for(var i = 1; i < googleMapsMarkers.length; i++) {
   var point = new GLatLng(googleMapsMarkers[i]['latitude'], googleMapsMarkers[i]['longitude']);
   var marker = new GMarker(point);
   marker.desc = googleMapsMarkers[i]['desc'];
   GEvent.addListener(marker, "click", function() {
    this.openInfoWindowHtml(this.desc);
   });
   for(var j in googleMaps) {
    if(typeof(googleMaps[j].addOverlay) == 'function') {
     googleMaps[j].addOverlay(marker);
    };
   };
  };
 };
};

function lsGoogleMapPanTo(markerID, mapIdent) {
 if(typeof(googleMaps[mapIdent]) == 'object') {
  if(typeof(googleMapsMarkers) == 'object') {
   if(typeof(googleMapsMarkers[markerID]) == 'object') {
    var point = new GLatLng(googleMapsMarkers[markerID]['latitude'], googleMapsMarkers[markerID]['longitude']);
    googleMaps[mapIdent].panTo(point);
   };
  };
 };
};

function lsFindGoogleMap() {
 if (GBrowserIsCompatible()) {
  var mapInfo = false;
  var mapID = false;
  var divs = document.getElementsByTagName('div');
  for(var i = 0; i < divs.length; i++) {
   mapInfo = divs[i].getAttribute('GoogleMap');
   if(mapInfo) {
    mapID = divs[i].getAttribute('id');
    if(mapID) {
     lsLoadGoogleMap(mapID, mapInfo);
    };
   };
   mapInfo = false
   mapID = false
  };
 };
};

if(document.documentElement.attachEvent) {
 window.attachEvent('onload', lsFindGoogleMap);
} else {
 window.addEventListener('load', lsFindGoogleMap, false);
};
