/**
  * Scripts - Gmap
  *
  * @access public
  * @version $LastChangedRevision: 109 $ $LastChangedDate: 2008-06-18 11:25:34 +0200 (Mi, 18 Jun 2008) $
  * @author $Author: ttrautmann $, $LastChangedBy: ttrautmann $
  * @copyright 2008 TMT
  * @package obermain-tagblatt.de
  *
  */


var gmapobj = null;
var geocoder = null;
var gmapstartpos = null;
var GMListenerEvent = new Array();

function GMload(type, gps1, gps2, zoom, domark) {
   if (GBrowserIsCompatible() && document.getElementById("gmap")) {
      gmapobj = new GMap2(document.getElementById("gmap"));
      gmapobj.addControl(new GSmallMapControl());
      gmapobj.removeMapType(G_SATELLITE_MAP);
      gmapobj.addMapType(G_PHYSICAL_MAP);
      gmapobj.addControl(new GMapTypeControl());


      if (type == 'gps') {
         var gm_kood = new GLatLng(gps1, gps2);
         gmapstartpos = gm_kood;
         gmapobj.setCenter(gm_kood, zoom, G_PHYSICAL_MAP);
         if (domark == 1) {
            gmapobj.addOverlay(new GMarker(gm_kood));
         }
         geocoder = new GClientGeocoder();
      } else if (type == 'adresse') {
         geocoder = new GClientGeocoder();
      }
   }
}


function GMshowAddress(id, address, docenter, zoom, infotext) {
   if (geocoder) {
      geocoder.getLatLng(
      address,
      function(point) {
         if (!point) {
            alert(address + " nicht gefunden.");
         } else {
            if (docenter == 1) {
               gmapobj.setCenter(point, zoom, G_PHYSICAL_MAP);
            }
            var marker = new Array();
            marker = new GMarker(point);
            gmapobj.addOverlay(marker);
            if (infotext != '') {
               GEvent.addListener(marker, "click", function() {
                  marker.openInfoWindowHtml(infotext);
               });
            }
         }
      }
      );
   }
}

function GMshowGPSKoordinade(id, north, south, zoom, docenter, infotext) {

   if (geocoder) {
      var point = new GLatLng(north, south);
      if (docenter == 1) {
         gmapobj.setCenter(point, zoom);
      }
      var marker = new Array();
      marker = new GMarker(point);
      gmapobj.addOverlay(marker);
      if (infotext != '') {
         GEvent.addListener(marker, "click", function() {
            marker.openInfoWindowHtml(infotext);
         });
      }
   }
}


function GMObermainKommunen() {
   if (geocoder) {
   var mMrkO1 = new Array();
   var mMrk01_points = new Array();

   mMrk01_points[0] = new Array();
   mMrk01_points[0]["lat"] = "50.12398998584184";
   mMrk01_points[0]["lon"] = "11.250944137573242";
   mMrk01_points[0]["txt"] = "Gemeinde Altenkunstadt";
   GMListenerEvent[0] = '1';

   mMrk01_points[1] = new Array();
   mMrk01_points[1]["lat"] = "50.1019184753389";
   mMrk01_points[1]["lon"] = "11.001176834106445";
   mMrk01_points[1]["txt"] = "Stadt Bad Staffelstein";
   GMListenerEvent[1] = '1';

   mMrk01_points[2] = new Array();
   mMrk01_points[2]["lat"] = "50.140743227835976";
   mMrk01_points[2]["lon"] = "11.252102851867676";
   mMrk01_points[2]["txt"] = "Stadt Burgkunstadt";
   GMListenerEvent[2] = '1';

   mMrk01_points[3] = new Array();
   mMrk01_points[3]["lat"] = "50.06675368826453";
   mMrk01_points[3]["lon"] = "10.958647727966309";
   mMrk01_points[3]["txt"] = "Marktgemeinde Ebensfeld";
   GMListenerEvent[3] = '1';

   mMrk01_points[4] = new Array();
   mMrk01_points[4]["lat"] = "50.15003888372618";
   mMrk01_points[4]["lon"] = "11.1710786819458";
   mMrk01_points[4]["txt"] = "Gemeinde Hochstadt am Main";
   GMListenerEvent[4] = '1';

   mMrk01_points[5] = new Array();
   mMrk01_points[5]["lat"] = "50.145611296624516";
   mMrk01_points[5]["lon"] = "11.059584617614746";
   mMrk01_points[5]["txt"] = "Stadt Lichtenfels";
   GMListenerEvent[5] = '1';

   mMrk01_points[6] = new Array();
   mMrk01_points[6]["lat"] = "50.18321898241381";
   mMrk01_points[6]["lon"] = "11.195368766784668";
   mMrk01_points[6]["txt"] = "Marktgemeinde Marktgraiz";
   GMListenerEvent[6] = '1';

   mMrk01_points[7] = new Array();
   mMrk01_points[7]["lat"] = "50.166673046997616";
   mMrk01_points[7]["lon"] = "11.166315078735352";
   mMrk01_points[7]["txt"] = "Marktgemeinde Marktzeuln";
   GMListenerEvent[7] = '1';

   mMrk01_points[8] = new Array();
   mMrk01_points[8]["lat"] = "50.16238446114938";
   mMrk01_points[8]["lon"] = "11.111984252929688";
   mMrk01_points[8]["txt"] = "Gemeinde Michelau";
   GMListenerEvent[8] = '1';

   mMrk01_points[9] = new Array();
   mMrk01_points[9]["lat"] = "50.17500170078666";
   mMrk01_points[9]["lon"] = "11.20429515838623";
   mMrk01_points[9]["txt"] = "Gemeinde Redwitz a.d. Rodach";
   GMListenerEvent[9] = '1';

   mMrk01_points[10] = new Array();
   mMrk01_points[10]["lat"] = "50.084958885657535";
   mMrk01_points[10]["lon"] = "11.240043640136719";
   mMrk01_points[10]["txt"] = "Stadt Weismain";
   GMListenerEvent[10] = '1';

   for (i=0; i<mMrk01_points.length; i++) {
      eval('var M'+i+'icon = new GIcon();');
      eval('M'+i+'icon.image = "http://obermain.tmt-cms.de/gfx/gmap/'+(i+1)+'.png";');
      eval('M'+i+'icon.shadow = "http://obermain.tmt-cms.de/gfx/gmap/shadow.png";');
      eval('M'+i+'icon.iconSize = new GSize(20, 26);');
      eval('M'+i+'icon.shadowSize = new GSize(42, 26);');
      eval('M'+i+'icon.iconAnchor = new GPoint(6, 26);');
      eval('M'+i+'icon.infoWindowAnchor = new GPoint(6, 26);');

      eval('markerOptions = { clickable:true, icon:M'+i+'icon };');
      eval('mMrkO1['+i+'] = new GMarker(new GLatLng('+mMrk01_points[i]["lat"]+', '+mMrk01_points[i]["lon"]+'), markerOptions);');
      eval('gmapobj.addOverlay(mMrkO1['+i+']);');
      eval('GEvent.addListener(mMrkO1['+i+'], "click", function() { GMListenerZoomTo(i, new GLatLng('+mMrk01_points[i]["lat"]+', '+mMrk01_points[i]["lon"]+'), 14, gmapstartpos, 11); });');
   }

   }

}


function GMListenerZoomTo(point, kood, zoom, orig_kood, orig_zoom) {
   if (geocoder) {
      if (GMListenerEvent[point] == '1') {
         gmapobj.setCenter(kood, zoom);
         GMListenerEvent[point] = '2';
      } else {
         gmapobj.setCenter(orig_kood, orig_zoom);
         GMListenerEvent[point] = '1';
      }
   }
}

