<!--
function ID_to_PortalName_Apo(Town_ID)
{
   if(Town_ID == "AZ") return "Apotheken-Alzey.de";
   if(Town_ID == "BD") return "Apotheken-Bad-Duerkheim.de";
   if(Town_ID == "BI") return "Apotheken-Bingen.de";
   if(Town_ID == "BK") return "Apotheken-Bad-Kreuznach.de";
   if(Town_ID == "FT") return "Apotheken-Frankenthal.de";
   if(Town_ID == "GH") return "Apotheken-Germersheim.de";
   if(Town_ID == "GR") return "Apotheken-Gruenstadt.de";
   if(Town_ID == "HD") return "Apotheken-Heidelberg.de";
   if(Town_ID == "HS") return "Apotheken-Hassloch.de";
   if(Town_ID == "IN") return "Apotheken-Ingelheim.de";
   if(Town_ID == "KL") return "Apotheken-Kaiserslautern.de";
   if(Town_ID == "KO") return "Apotheken-in-Koblenz.de";
   if(Town_ID == "LD") return "Apotheken-Landau.de";
   if(Town_ID == "LU") return "Apotheken-Ludwigshafen.de";
   if(Town_ID == "MA") return "Apotheken-Mannheim.de";
   if(Town_ID == "MZ") return "Apotheken-Mainz.de";
   if(Town_ID == "PS") return "Apotheken-Pirmasens.de";
   if(Town_ID == "SB") return "Apotheken-in-Saarbruecken.de";
   if(Town_ID == "SP") return "Apotheken-Speyer.de";
   if(Town_ID == "TR") return "Apotheken-in-Trier.de";
   if(Town_ID == "WO") return "Apotheken-Worms.de";
   if(Town_ID == "ZW") return "Apotheken-Zweibruecken.de";

   if(Town_ID == "KUS") return "Apotheken-Kusel.de";
   if(Town_ID == "DA")  return "Apotheken-Darmstadt.com";
   if(Town_ID == "WI")  return "Apotheken-Wiesbaden.com";
   if(Town_ID == "KA")  return "Apotheken-Karlsruhe.com";
   if(Town_ID == "HB")  return "Apotheken-Heilbronn.de";
   if(Town_ID == "S")   return "Apotheken-Stuttgart.com";
   if(Town_ID == "F")   return "Apotheken-Frankfurt.com";
   if(Town_ID == "M")   return "Apotheken-Muenchen.com";
   if(Town_ID == "N")   return "Apotheken-Nuernberg.com";
   if(Town_ID == "W")   return "Apotheken-Wuerzburg.com";
}
//end of ID_to_Town_URL

function ID_to_Town_URL(Town_ID)
{
   if(Town_ID == "AZ") return "Alzey";
   if(Town_ID == "BD") return "Bad-Duerkheim";
   if(Town_ID == "BI") return "Bingen";
   if(Town_ID == "BK") return "Bad-Kreuznach";
   if(Town_ID == "FT") return "Frankenthal";
   if(Town_ID == "GH") return "Germersheim";
   if(Town_ID == "GR") return "Gruenstadt";
   if(Town_ID == "HD") return "Heidelberg";
   if(Town_ID == "HS") return "Hassloch";
   if(Town_ID == "IN") return "Ingelheim";
   if(Town_ID == "KL") return "Kaiserslautern";
   if(Town_ID == "KO") return "Koblenz";
   if(Town_ID == "LD") return "Landau";
   if(Town_ID == "LU") return "Ludwigshafen";
   if(Town_ID == "MA") return "Mannheim";
   if(Town_ID == "MZ") return "Mainz";
   if(Town_ID == "PS") return "Pirmasens";
   if(Town_ID == "SB") return "Saarbruecken";
   if(Town_ID == "SP") return "Speyer";
   if(Town_ID == "TR") return "Trier";
   if(Town_ID == "WO") return "Worms";
   if(Town_ID == "ZW") return "Zweibruecken";

   if(Town_ID == "KUS") return "Kusel";
   if(Town_ID == "DA")  return "Darmstadt";
   if(Town_ID == "WI")  return "Wiesbaden";
   if(Town_ID == "KA")  return "Karlsruhe";
   if(Town_ID == "HB")  return "Heilbronn";
   if(Town_ID == "S")   return "Stuttgart";
   if(Town_ID == "F")   return "Frankfurt";
   if(Town_ID == "M")   return "Muenchen";
   if(Town_ID == "N")   return "Nuernberg";
   if(Town_ID == "W")   return "Wuerzburg";
}
//end of ID_to_Town_URL


function ID_to_Town_URL_Gi(Town_ID, Town_ID_from)
{
   if( (Town_ID == Town_ID_from) ) return "..";

   if(Town_ID != "MZ")
   {
      return "http://www.Gesundheit-in-" + ID_to_Town_URL(Town_ID) + ".de";
   }
   else
   {
      return "http://www.Gesund-in-Mainz.de";
   }
}
//end of ID_to_Town_URL_Gi

function MoveMarker()
{
   Clear_GMap_Radius();

   var marker = new google.maps.Marker(center, {draggable: true});

   google.maps.Event.addListener(marker, "dragstart", function()
   {
     map.closeInfoWindow();
   });

   google.maps.Event.addListener(marker, "dragend", function()
   {
     var point = marker.getPoint();
     var lat   = point.lat();
     var lng   = point.lng();

     //marker.openInfoWindowHtml("<BR>\$GMap_lat{} = " + lat + ";<br>\$GMap_lng{} = " + lng + ";");
     marker.openInfoWindowHtml("<BR>lat = " + lat + ";<br>lng = " + lng + ";");
   });

   map.addOverlay(marker);
}
//end of MoveMarker

function CreateMarker_NeuzugangPopup(markers, i, Town_ID_from, icon)
{
   point = new google.maps.LatLng(parseFloat(markers[i].getAttribute("lat")),
                                  parseFloat(markers[i].getAttribute("lng")));

   bounds.extend(point);

   var marker = new google.maps.Marker(point, icon);
   //var marker = new google.maps.Marker(point, icon_N);

   //var marker = new google.maps.Marker(point);

   var opts = new Object();
   //opts.pixelOffset = new google.maps.Size(32,5);
   opts.maxWidth = 175;

   google.maps.Event.addListener(marker, "click", function()
   {
      var Town_ID   = markers[i].getAttribute("town_id");
      var Name      = markers[i].getAttribute("name").replace(/#/g, "&");
      var Strasse   = markers[i].getAttribute("strasse").replace(/#/g, "&");
      var PLZ       = markers[i].getAttribute("plz");
      var V_Tel     = markers[i].getAttribute("v_tel");
      var Tel       = markers[i].getAttribute("tel");
      var Ort       = markers[i].getAttribute("ort").replace(/#/g, "&");
      var OK_URL    = markers[i].getAttribute("ok_url");
      var URL       = markers[i].getAttribute("url");
      var File_Name = markers[i].getAttribute("file_name");
      var Fach      = markers[i].getAttribute("fach").replace(/#/g, "&");;

      var url_info_site = ID_to_Town_URL_Gi(Town_ID, Town_ID_from);

      var Info_site = "<a href='" + url_info_site  + "/" + File_Name +
                      "/info.php4' Target='_blank'>Info-Site</a>";

      if(OK_URL == 0)
      {
         var Homepage = "Homepage";
      }
      else
      {
         var Homepage = "<a href='" + url_info_site  + "/" + File_Name +
                         "/' Target='_blank'>Homepage</a>";
      }

      //var homepage = "Homepage";

      marker.openInfoWindowHtml(Name    + "<BR>" +
                                "-&nbsp;" + Fach  + "&nbsp;-<BR>" +
                                Strasse + "<BR>" +
                                PLZ     + " " +
                                Ort     + "<BR>" + "Tel.: " +
                                V_Tel   + " / "  +
                                Tel     + "<BR>" +
                                "[ " + Info_site + " | " + Homepage + " ]", opts
                                );
   }
   );

   return marker;
}
//end of CreateMarker_NeuzugangPopup


function createMarker_Apo(markers, i, Town_ID_from, icon)
{
   point = new google.maps.LatLng(parseFloat(markers[i].getAttribute("lat")),
                                  parseFloat(markers[i].getAttribute("lng")));

   var marker = new google.maps.Marker(point, icon);
   //var marker = new google.maps.Marker(point);

   google.maps.Event.addListener(marker, "click", function()
   {
      var Name      = markers[i].getAttribute("name").replace(/#/g, "&");
      var Strasse   = markers[i].getAttribute("strasse").replace(/#/g, "&");
      var PLZ       = markers[i].getAttribute("plz");
      var V_Tel     = markers[i].getAttribute("v_tel");
      var Tel       = markers[i].getAttribute("tel");
      var Ort       = markers[i].getAttribute("ort").replace(/#/g, "&");
      var OK_URL    = markers[i].getAttribute("ok_url");
      var URL       = markers[i].getAttribute("url");
      var File_Name = markers[i].getAttribute("file_name");

      if(OK_URL == 0)
      {
         var Homepage = "Homepage";
      }
      else
      {
         var Homepage = "<a href='http://" + URL + "' Target='_blank'>Homepage</a>";
      }

      if(File_Name == "")
      {
         var Dienstplan = "Dienstplan";
      }
      else
      {
         var Dienstplan = "<a href='../ApothekenNotdienst/" + File_Name + "/' Target='_blank'>Dienstplan</a>";
      }

      marker.openInfoWindowHtml("- " + Name    + " -<BR>" +
                                Strasse + "<BR>" +
                                PLZ     + " " +
                                Ort     + "<BR>" + "Tel.: " +
                                V_Tel   + " / "  +
                                Tel     + "<BR>" +
                                "[ "    + Dienstplan + " | " + Homepage + " ]"
                                );
   }
   );

   return marker;
}
//end of createMarker_Apo

function createMarker_Town(markers, i, Town_ID_from, GMap_lat, GMap_lng)
{
   point = new google.maps.LatLng(parseFloat(GMap_lat), parseFloat(GMap_lng));

   var marker = new google.maps.Marker(point, icon_K);
   //var marker = new google.maps.Marker(point);

   google.maps.Event.addListener(marker, "click", function()
   {
      var Name      = markers[i].getAttribute("name").replace(/#/g, "&");
      var Strasse   = markers[i].getAttribute("strasse").replace(/#/g, "&");
      var PLZ       = markers[i].getAttribute("plz");
      var V_Tel     = markers[i].getAttribute("v_tel");
      var Tel       = markers[i].getAttribute("tel");
      var Ort       = markers[i].getAttribute("ort").replace(/#/g, "&");
      var OK_URL    = markers[i].getAttribute("ok_url");
      var URL       = markers[i].getAttribute("url");

      if(OK_URL == 0)
      {
         var Homepage = "Homepage";
      }
      else
      {
         var Homepage = "<a href='http://" + URL + "' Target='_blank'>Homepage</a>";
      }

      marker.openInfoWindowHtml(Name    + "<BR>" +
                                Strasse + "<BR>" +
                                PLZ     + " "    +
                                Ort     + "<BR>" + "Tel.: " +
                                V_Tel   + " / "  +
                                Tel     + "<BR>" +
                                "[ "    + Homepage + " ]"
                                );
   }
   );

   return marker;
}
//end of createMarker_Town

function Neuzugang(Modus_Clear, Town_ID_from, Modus_BoundsExtend)
{
   Modus_AK      = "N";
   Modus_Clear_N = Modus_Clear;

   if(Modus_Clear) map.clearOverlays();

   google.maps.DownloadUrl("Neuzugang.xml", function(data, responseCode)
   {
     var xml     = google.maps.Xml.parse(data);
     var markers = xml.documentElement.getElementsByTagName("adress");

     //alert("length: " + markers.length);

     if(markers.length == 0) return;

     for (var i = 0; i < markers.length; i++)
     {
        CreateMarker_NeuzugangPopup_(markers, i, Town_ID_from, icon_N);
     }

      if( (Modus_BoundsExtend == 1) && (markers.length > 1) )
      {
         //map.setZoom(map.getBoundsZoomLevel(bounds));

         //map.setZoom(map.getBoundsZoomLevel(bounds));
         //alert("zoom: " + map.getBoundsZoomLevel(bounds));
         if(map.getBoundsZoomLevel(bounds) > 19) map.setZoom(11);
         //map.setZoom(13);

         map.setCenter(bounds.getCenter());

         map.savePosition();
      }
      else if( (Modus_BoundsExtend == 1) )
      {
         //map.setZoom(map.getBoundsZoomLevel(bounds));
         map.setCenter(bounds.getCenter());

         map.savePosition();
      }
   }
   );
   RedrawCircle();
}
//end of Neuzugang

function createMarker_Klinik_Popup(markers, i, Town_ID_from, icon_HP0, icon_HP1)
{
   point = new google.maps.LatLng(parseFloat(markers[i].getAttribute("lat")),
                                  parseFloat(markers[i].getAttribute("lng")));

   var Name      = markers[i].getAttribute("name").replace(/#/g, "&");
   var Strasse   = markers[i].getAttribute("strasse").replace(/#/g, "&");
   var PLZ       = markers[i].getAttribute("plz");
   var V_Tel     = markers[i].getAttribute("v_tel");
   var Tel       = markers[i].getAttribute("tel");
   var Ort       = markers[i].getAttribute("ort").replace(/#/g, "&");
   var OK_URL    = markers[i].getAttribute("ok_url");
   var URL       = markers[i].getAttribute("url");

   if(OK_URL == 0)
   {
      var marker = new google.maps.Marker(point, icon_HP0);
   }
   else
   {
      var marker = new google.maps.Marker(point, icon_HP1);
   }

   google.maps.Event.addListener(marker, "click", function()
   {
      if(OK_URL == 0)
      {
         var Homepage = "Homepage";
      }
      else
      {
         var Homepage = "<a href='http://" + URL + "' Target='_blank'>Homepage</a>";
      }

      marker.openInfoWindowHtml(Name    + "<BR>" +
                                Strasse + "<BR>" +
                                PLZ     + " " +
                                Ort     + "<BR>" + "Tel.: " +
                                V_Tel   + " / "  +
                                Tel     + "<BR>" +
                                "[ "    + Homepage + " ]"
                                );
   }
   );

   return marker;
}
//end of createMarker_Klinik_Popup

function Kliniken(Modus_Clear, Town_ID_from)
{
   Modus_AK      = "K";
   Modus_Clear_K = Modus_Clear;

   if(Modus_Clear) map.clearOverlays();

   google.maps.DownloadUrl("Kliniken.xml", function(data, responseCode)
   {
     var xml     = google.maps.Xml.parse(data);
     var markers = xml.documentElement.getElementsByTagName("adress");

     for (var i = 0; i < markers.length; i++)
     {
        createMarker_Klinik_Popup_(markers, i, Town_ID_from, icon_K_HP0, icon_K_HP1);
     }
   }
   );
   RedrawCircle();
}
//end of Kliniken

function Apotheken_Neuzugang(Modus_Clear, Town_ID_from, Modus_BoundsExtend, Start, End)
{
   if(Modus_Clear) map.clearOverlays();

   if(Start == End)
   {
      Start = 0;
      End   = 1;
   }

   Apotheken_Split(0, Town_ID_from, Modus_BoundsExtend, Start, End);
   Neuzugang(0, Town_ID_from, Modus_BoundsExtend);

   Modus_AK = "AN";
}
//end of Apotheken_Neuzugang

function Kliniken_Neuzugang(Modus_Clear, Town_ID_from, Modus_BoundsExtend)
{
   if(Modus_Clear) map.clearOverlays();

   Kliniken(0, Town_ID_from);
   Neuzugang(0, Town_ID_from, Modus_BoundsExtend);

   Modus_AK = "KN";
}
//end of Kliniken_Neuzugang

function Clear_GMap_Radius()
{
   map.clearOverlays();

   for(var i = 0; i < Circle_Radius.length; i++)
   {
      Circle_OK[i] = 0;
   }
}
//end of Clear_GMap


function Clear_GMap()
{
   map.clearOverlays();
}
//end of Clear_GMap

function drawCircle(center, radius, color, thickness, opacity, CircleQ)
{
	var CircleQuality = 6;			//1 is best but more points, 5 looks pretty good, too

	var M  = Math.PI / 180;			//Create Radian conversion constant
	var L  = map.getBounds();		//Holds copy of map bounds for use below
	var sw = L.getSouthWest();
	var ne = L.getNorthEast();

	var CircleSquish = (ne.lng() - sw.lng()) / (ne.lat() - sw.lat());
   //alert("CircleSquish: " + CircleSquish + " CircleQ: " + CircleQ);
	CircleSquish = CircleSquish / CircleQ;

	var points = [];
	for(var i = 0; i < 360; i += CircleQuality)
	{
		var P = new google.maps.LatLng
		(
			center.lat() + (radius * Math.sin(i * M)),
			center.lng() + (radius * Math.cos(i * M)) * CircleSquish
		);
		points.push(P);
	}

	points.push(points[0]);
	var circle_overlay = new google.maps.Polyline(points, color, thickness, opacity);
	map.addOverlay(circle_overlay);
}
//end of drawCircle

function SetCenter_S(Radius_KM, GMap_lat_C, GMap_lng_C, CircleQ, Color)
{
   var Point_C = new google.maps.LatLng(GMap_lat_C, GMap_lng_C);
   //var Radius_Deg = 0.00898052973 * Radius_KM; //(1 Kilometer) * x
   var Radius_Deg = 0.00899321606 * Radius_KM; //(1 Kilometer) * x
   //drawCircle(Point_C, Radius_Deg, Color, 4, 0.5, CircleQ);
   drawCircle(Point_C, Radius_Deg, Color, 3, 0.5, CircleQ);

   //alert("SetCenter_S Color: " + Color);

   SetCircle(Radius_KM);
}
//end of SetCenter

function SetCircle(Radius_KM)
{
   for(var i = 0; i < Circle_Radius.length; i++)
   {
      if(Circle_Radius[i] == Radius_KM)
      {
         Circle_OK[i] = 1;
         return;
      }
   }
}
//end of SetCircle

function RedrawCircle()
{
   for(var i = 0; i < Circle_Radius.length; i++)
   {
      if(Circle_OK[i] == 1)
      {
         SetCenter_S(Circle_Radius[i], Circle_lat_C, Circle_lng_C, Circle_Q, Circle_Color[i]);
         //alert("RedrawCircle color: " + Circle_Color[i]);
      }
   }
}
//end of RedrawCircle

function Apotheken(Modus_Clear, Town_ID_from, Start, End)
{
   if(Modus_Clear) map.clearOverlays();

   //alert("FileName: " + FileName);

   google.maps.DownloadUrl("Apotheken.xml", function(data, responseCode)
   {
     var xml     = google.maps.Xml.parse(data);
     var markers = xml.documentElement.getElementsByTagName("adress");

     //alert("Start: " + Start + " End: " + End + " Anzahl: " + markers.length);
     //alert("Start: " + Start + " End: " + End + " Anzahl: " + markers.length);
     //alert(" Anzahl: " + markers.length);

     for (var i = 0; i < markers.length; i++)
     {
        var R = markers[i].getAttribute("r");
//R liegt sortiert vor
        if(R < Start) continue;

        if(R > End)
        {
           RedrawCircle();
           return;
           //break;
        }

        map.addOverlay(createMarker_Apo(markers, i, Town_ID_from, icon_A));
     }
   }
   );

   RedrawCircle();
}
//end of Apotheken

function Apotheken_Split(Town_ID_from, Portal_ID, Modus_Clear, Start, End)
{
   if(Modus_Clear) map.clearOverlays();

   Split_A_Start = Start;
   Split_A_End   = End;
   Modus_Clear_A = Modus_Clear;
   Modus_AK      = "A";
   //map.savePosition();

   if(Start < 10)
   {
      var Start_string = "0" + Start;
   }
   else
   {
      var Start_string = Start;
   }

   if(End < 10)
   {
      var End_string = "0" + End;
   }
   else
   {
      var End_string = End;
   }

   var FileName = "Apotheken_" + Start_string + "_" + End_string + ".xml";
   //alert("FileName: " + FileName);


   google.maps.DownloadUrl(FileName, function(data, responseCode)
   //google.maps.DownloadUrl("Apotheken.xml", function(data, responseCode)
   {
     var xml     = google.maps.Xml.parse(data);
     var markers = xml.documentElement.getElementsByTagName("adress");

     //alert("Start: " + Start + " End: " + End + " Anzahl: " + markers.length);
     //alert("Start: " + Start + " End: " + End + " Anzahl: " + markers.length);
     //alert(" Anzahl: " + markers.length);

     for (var i = 0; i < markers.length; i++)
     {
        createMarkerApoPopup_(markers, i, Town_ID_from, Portal_ID, icon_Apo_HP0, icon_Apo_HP1);
     }
   }
   );

   RedrawCircle();
}
//end of Apotheken_Split

function createMarkerApoPopup(markers, i, Town_ID_from, Portal_ID, icon_HP0, icon_HP1)
{
   point = new google.maps.LatLng(parseFloat(markers[i].getAttribute("lat")),
                                  parseFloat(markers[i].getAttribute("lng")));

   //alert("createMarkerApoPopup");

   var Name      = markers[i].getAttribute("name").replace(/#/g, "&");
   var Strasse   = markers[i].getAttribute("strasse").replace(/#/g, "&");
   var PLZ       = markers[i].getAttribute("plz");
   var V_Tel     = markers[i].getAttribute("v_tel");
   var Tel       = markers[i].getAttribute("tel");
   var Ort       = markers[i].getAttribute("ort").replace(/#/g, "&");
   var OK_URL    = markers[i].getAttribute("ok_url");
   var URL       = markers[i].getAttribute("url");
   var Town_ID   = markers[i].getAttribute("town_id");
   var FileName  = markers[i].getAttribute("file_name");

   //var myPopupMarker = 0;
   //alert("i: " + i + " | Name: " + Name);

//        zIndexProcess : function( overlay ){ return 10000000 }

   if(myPopupMarker)
   {
      if(OK_URL == 0)
      {
         var markerP = new google.maps.Marker(point, icon_HP0);
         var classP = "Popup0";
      }
      else
      {
         var markerP = new google.maps.Marker(point, icon_HP1);
         var classP = "Popup1";
      }
   }
   else
   {
      if(OK_URL == 0)
      {
         var markerP = new google.maps.Marker(point, icon_HP0);
         var classP = "Popup0";
      }
      else
      {
         var markerP = new google.maps.Marker(point, icon_HP1);
         var classP = "Popup1";
      }
   }


   if(myPopupMarker)
   {
      if( (Town_ID_from == Town_ID) && (Portal_ID == 2) )
      {
         var Dienstplan = "<a href='../ApothekenNotdienst/" + FileName +
                          "/' Target='_blank'><span class='" + classP + "'>" + Name + "</span></a>";
      }
      else
      {  var PortalName = ID_to_PortalName_Apo(Town_ID);
         var Dienstplan = "<a href='http://www."  + PortalName +
                          "/ApothekenNotdienst/" + FileName   +
                          "/' Target='_blank'><span class='" + classP + "'>" + Name + "</span></a>";
      }

        //textcolor: "3333ff",
        //bgColor: "ffffcc"

      var optPopup =
      {
        text: Dienstplan,
        bgColor: "ffffcc"
      };

      var markerP = new PopupMarker(point, optPopup);
      //GEvent.addListener(markerP, "click", function(){markerP.hidePopup();});
      map.addOverlay(markerP);
   }

   google.maps.Event.addListener(markerP, "click", function()
   {
      if(OK_URL == 0)
      {
         var Homepage = "Homepage";
      }
      else
      {
         var Homepage = "<a href='" + URL + "' Target='_blank'>Homepage</a>";
      }

      if( (Town_ID_from == Town_ID) && (Portal_ID == 2) )
      {
         var Dienstplan = "<a href=../ApothekenNotdienst/" + FileName + "/ Target='_blank'>Dienstplan</a>";
      }
      else
      {  var PortalName = ID_to_PortalName_Apo(Town_ID);
         var Dienstplan = "<a href='http://www."  + PortalName +
                          "/ApothekenNotdienst/" + FileName   + "/' Target='_blank'>Dienstplan</a>";
      }

      markerP.openInfoWindowHtml("-&nbsp;" + Name       + "&nbsp;-<BR>" + Strasse  + "<BR>" +
                                 PLZ      + " "        + Ort           +            "<BR>" +
                                 "Tel.: " + V_Tel      + " / "         + Tel      + "<BR>" +
                                 "[ "     + Dienstplan + " | "         + Homepage + " ]"
                                 );
   }
   );

   if(myPopupMarker)
   {
      map.addOverlay(markerP);
   }
   else
   {
      map.addOverlay(markerP);
   }
}
//end of createMarkerApoPopup


function createMarkerApoPopup_(markers, i, Town_ID_from, Portal_ID, icon_HP0, icon_HP1)
{
   point = new google.maps.LatLng(parseFloat(markers[i].getAttribute("lat")),
                                  parseFloat(markers[i].getAttribute("lng")));

   var Name      = markers[i].getAttribute("name").replace(/#/g, "&");
   var Strasse   = markers[i].getAttribute("strasse").replace(/#/g, "&");
   var PLZ       = markers[i].getAttribute("plz");
   var V_Tel     = markers[i].getAttribute("v_tel");
   var Tel       = markers[i].getAttribute("tel");
   var Ort       = markers[i].getAttribute("ort").replace(/#/g, "&");
   var OK_URL    = markers[i].getAttribute("ok_url");
   var URL       = markers[i].getAttribute("url");
   var Town_ID   = markers[i].getAttribute("town_id");
   var FileName  = markers[i].getAttribute("file_name");


   //var myPopupMarker = 1;
   //alert("i: " + i + " | Name: " + Name);

   if(myPopupMarker)
   {
      if(OK_URL == 0)
      {
         var classP = "Popup0";
      }
      else
      {
         var classP = "Popup1";
      }

      if( (Town_ID_from == Town_ID) && (Portal_ID == 2) )
      {
         var Dienstplan = "<a href='../ApothekenNotdienst/" + FileName +
                          "/' Target='_blank'><span class='" + classP + "'>" + Name + "</span></a>";
      }
      else
      {  var PortalName = ID_to_PortalName_Apo(Town_ID);
         var Dienstplan = "<a href='http://www."  + PortalName +
                          "/ApothekenNotdienst/" + FileName   +
                          "/' Target='_blank'><span class='" + classP + "'>" + Name + "</span></a>";
      }

      //Dienstplan = "Dienstplan";
      //alert("i: " + i + " | Dienstplan: " + Dienstplan);

      //textcolor: "3333ff",
      //bgColor: "ffffcc"
      //zIndexProcess : function( overlay ){ return 10000000 }
      var optPopup =
      {
        text: Dienstplan,
        bgColor: "ffffcc"
      };

      var markerP = new PopupMarker(point, optPopup);
      //GEvent.addListener(markerP, "click", function(){markerP.hidePopup();});
      //map.addOverlay(markerP);
   }

   if(OK_URL == 0)
   {
      var markerN = new google.maps.Marker(point, icon_HP0);
   }
   else
   {
      var markerN = new google.maps.Marker(point, icon_HP1);
   }

   if(myPopupMarker)
   {
      var markerT = markerP;
   }
   else
   {
      var markerT = markerN;
   }

   google.maps.Event.addListener(markerT, "click", function()
   {
      if(OK_URL == 0)
      {
         var Homepage = "Homepage";
      }
      else
      {
         var Homepage = "<a href='" + URL + "' Target='_blank'>Homepage</a>";
      }

      if( (Town_ID_from == Town_ID) && (Portal_ID == 2) )
      {
         var Dienstplan = "<a href='../ApothekenNotdienst/" + FileName + "/' Target='_blank'>Dienstplan</a>";
      }
      else
      {  var PortalName = ID_to_PortalName_Apo(Town_ID);
         var Dienstplan = "<a href='http://www."  + PortalName +
                          "/ApothekenNotdienst/" + FileName   + "/' Target='_blank'>Dienstplan</a>";
      }

      markerT.openInfoWindowHtml("-&nbsp;" + Name       + "&nbsp;-<BR>" + Strasse  + "<BR>" +
                                 PLZ       + " "        + Ort           +            "<BR>" +
                                 "Tel.: "  + V_Tel      + " / "         + Tel      + "<BR>" +
                                 "[ "      + Dienstplan + " | "         + Homepage + " ]"
                                 );
   }
   );

     if(myPopupMarker)
     {
        map.addOverlay(markerP);
        map.addOverlay(markerN);
     }
     else
     {
        map.addOverlay(markerN);
     }
}
//end of createMarkerApoPopup_

function createMarker_Klinik_Popup_(markers, i, Town_ID_from, icon_HP0, icon_HP1)
{
   point = new google.maps.LatLng(parseFloat(markers[i].getAttribute("lat")),
                                  parseFloat(markers[i].getAttribute("lng")));

   var Name      = markers[i].getAttribute("name").replace(/#/g, "&");
   var Strasse   = markers[i].getAttribute("strasse").replace(/#/g, "&");
   var PLZ       = markers[i].getAttribute("plz");
   var V_Tel     = markers[i].getAttribute("v_tel");
   var Tel       = markers[i].getAttribute("tel");
   var Ort       = markers[i].getAttribute("ort").replace(/#/g, "&");
   var OK_URL    = markers[i].getAttribute("ok_url");
   var URL       = markers[i].getAttribute("url");

   //var myPopupMarker = 0;
   //alert("myPopupMarker: " + myPopupMarker);

   if(myPopupMarker)
   {
      if(OK_URL == 0)
      {
         var Homepage = "<span class='Popup0'>" + Name + "</span>";
      }
      else
      {
         var Homepage = "<a href='http://" + URL + "' Target='_blank'><span class='Popup1'>" +
                                  Name + "</span></a>";
      }

      //textcolor: "3333ff",
      //bgColor: "ffffcc"
      //zIndexProcess : function( overlay ){ return 10000000 }
      var optPopup =
      {
        text: Homepage,
        bgColor: "ffffcc"
      };

      var markerP = new PopupMarker(point, optPopup);
      //GEvent.addListener(markerP, "click", function(){markerP.hidePopup();});
      //map.addOverlay(markerP);
   }
   //end of if(myPopupMarker)

   if(OK_URL == 0)
   {
      var markerN = new google.maps.Marker(point, icon_HP0);
   }
   else
   {
      var markerN = new google.maps.Marker(point, icon_HP1);
   }

   if(myPopupMarker)
   {
      var markerT = markerP;
   }
   else
   {
      var markerT = markerN;
   }

   google.maps.Event.addListener(markerT, "click", function()
   {
      if(OK_URL == 0)
      {
         var Homepage = "Homepage";
      }
      else
      {
         var Homepage = "<a href='http://" + URL + "' Target='_blank'>Homepage</a>";
      }

      markerT.openInfoWindowHtml(Name    + "<BR>" +
                                 Strasse + "<BR>" +
                                 PLZ     + " " +
                                 Ort     + "<BR>" + "Tel.: " +
                                 V_Tel   + " / "  +
                                 Tel     + "<BR>" +
                                 "[ "    + Homepage + " ]"
                                 );
   }
   );

     if(myPopupMarker)
     {
        map.addOverlay(markerP);
        map.addOverlay(markerN);
     }
     else
     {
        map.addOverlay(markerN);
     }

   //return marker;
}
//end of createMarker_Klinik_Popup_


function CreateMarker_NeuzugangPopup_(markers, i, Town_ID_from, icon)
{
   point = new google.maps.LatLng(parseFloat(markers[i].getAttribute("lat")),
                                  parseFloat(markers[i].getAttribute("lng")));

   bounds.extend(point);

   var Town_ID   = markers[i].getAttribute("town_id");
   var Name      = markers[i].getAttribute("name").replace(/#/g, "&");
   var Strasse   = markers[i].getAttribute("strasse").replace(/#/g, "&");
   var PLZ       = markers[i].getAttribute("plz");
   var V_Tel     = markers[i].getAttribute("v_tel");
   var Tel       = markers[i].getAttribute("tel");
   var Ort       = markers[i].getAttribute("ort").replace(/#/g, "&");
   var OK_URL    = markers[i].getAttribute("ok_url");
   var URL       = markers[i].getAttribute("url");
   var File_Name = markers[i].getAttribute("file_name");
   var Fach      = markers[i].getAttribute("fach").replace(/#/g, "&");;

   var url_info_site = ID_to_Town_URL_Gi(Town_ID, Town_ID_from);

   var Info_site = "<a href='" + url_info_site  + "/" + File_Name +
                   "/info.php4' Target='_blank'>Info-Site</a>";

   var InfoSite  = "<a href='" + url_info_site  + "/" + File_Name +
                   "/info.php4' Target='_blank'>" + Name + " | " + Fach + "</a>";

   if(myPopupMarker)
   {
      if(OK_URL == 0)
      {
         var InfoSiteP = "<span class='Popup0'>" + InfoSite + "</span>";
      }
      else
      {
         var InfoSiteP = "<span class='Popup1'>" + InfoSite + "</span>";
      }


      //textcolor: "3333ff",
      //bgColor: "ffffcc"
      //zIndexProcess : function( overlay ){ return 10000000 }
      var optPopup =
      {
        text: InfoSiteP,
        bgColor: "ffffcc"
      };

      var markerP = new PopupMarker(point, optPopup);
      //GEvent.addListener(markerP, "click", function(){markerP.hidePopup();});
      //map.addOverlay(markerP);
   }
   //end of if(myPopupMarker)


   var markerN = new google.maps.Marker(point, icon);
   //var marker = new google.maps.Marker(point, icon_N);

   //var marker = new google.maps.Marker(point);

   var opts = new Object();
   //opts.pixelOffset = new google.maps.Size(32,5);
   opts.maxWidth = 175;

   if(myPopupMarker)
   {
      var markerT = markerP;
   }
   else
   {
      var markerT = markerN;
   }

   google.maps.Event.addListener(markerT, "click", function()
   {
      if(OK_URL == 0)
      {
         var Homepage = "Homepage";
      }
      else
      {
         var Homepage = "<a href='" + url_info_site  + "/" + File_Name +
                         "/' Target='_blank'>Homepage</a>";
      }

      //var homepage = "Homepage";

      markerT.openInfoWindowHtml(Name    + "<BR>" +
                                 "-&nbsp;" + Fach  + "&nbsp;-<BR>" +
                                 Strasse + "<BR>" +
                                 PLZ     + " " +
                                 Ort     + "<BR>" + "Tel.: " +
                                 V_Tel   + " / "  +
                                 Tel     + "<BR>" +
                                 "[ " + Info_site + " | " + Homepage + " ]", opts
                                 );
   }
   );

     if(myPopupMarker)
     {
        map.addOverlay(markerP);
        map.addOverlay(markerN);
     }
     else
     {
        map.addOverlay(markerN);
     }

   //return marker;
}
//end of CreateMarker_NeuzugangPopup_

//http://www.google.de/mapfiles/tiny_marker.gif
//-->

