// ************
// Notdienst DB
// ************


    // Offset for 2011 Start Year (starts with "H")
    var apoStartOffset = 7; // Globus Apotheke
    

	// Array Init
	var a=0,b=0;
    var apoNotRounds=22;	
	var apodb=new Array(apoNotRounds);
    
	for (a=0; a<=apoNotRounds-1; a++)
	{
		apodb[a]=new Array(4);
		for (b=0; b<=3; b++)
			apodb[a][b] = new Array(2);		
	}


	// A
	apodb[0][0][0]="Sonnen-Apotheke, Am Kirchplatz 1, Kelkheim-Münster, Tel. 06195/2266"; 
	apodb[0][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"4895\",\"Sonnen%20Apotheke\",\"941294\",\"6460912\")'";
	apodb[0][1][0]="Apotheke am Westerbach, Westerbacher Str. 23, Kronberg, Tel. 06173/2025";
	apodb[0][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"21022\",\"Apotheke%20am%20Westerbach\",\"947884\",\"6469346\")'";
	apodb[0][2][0]="";
	apodb[0][2][1]="";
    apodb[0][3][0]="";
	apodb[0][3][1]="";


	// B
	apodb[1][0][0]="Dr. Haas Apotheke, Chinonplatz 6-12, Hofheim, Tel. 06192/2060669";
	apodb[1][0][1]="";
	apodb[1][1][0]="Schloss-Apotheke, Friedrichstr. 69, Kr.-Schönberg, Tel. 06173/5119";
	apodb[1][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"18703\",\"Schlo%DF%20Apotheke\",\"946831\",\"6470539\")'";
    apodb[1][2][0]="";
	apodb[1][2][1]="";
    apodb[1][3][0]="";
	apodb[1][3][1]="";


	// C
	apodb[2][0][0]="Lorsbacher-Apotheke, Hofheimer Strasse 5, Lorsbach, Tel. 06192/26326";
	apodb[2][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"12037\",\"Lorsbacher%20Apotheke\",\"936764\",\"6458895\")'";
	apodb[2][1][0]="Quellen-Apotheke, Quellenpark 45, Bad Soden, Tel. 06196/21311";
	apodb[2][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"21584\",\"Quellen%20Apotheke\",\"945091\",\"6463790\")'";
	apodb[2][2][0]="";
	apodb[2][2][1]="";
    apodb[2][3][0]="";
	apodb[2][3][1]="";


	// D
	apodb[3][0][0]="Löwenapotheke, Hauptstr. 416, Niederhöchstadt, Tel. 06173/62525";
	apodb[3][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"1582\",\"L%F6wen%20Apotheke\",\"951370\",\"6464769\")'";
	apodb[3][1][0]="Apotheke am Markt, Frankenallee 1, Kelkheim, Tel. 06195/6773250";
	apodb[3][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"71992\",\"Apotheke%20am%20Markt\",\"1\",\"1\")'";
    apodb[3][2][0]="";
	apodb[3][2][1]="";
    apodb[3][3][0]="";
	apodb[3][3][1]="";


	// E
	apodb[4][0][0]="Brunnen-Apotheke, Weilbacherstr. 5, Diedenbergen, Tel. 06192/39666";
	apodb[4][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"20863\",\"Brunnen%20Apotheke\",\"936325\",\"6449336\")'";
	apodb[4][1][0]="Falkenstein-Apotheke, Alt Falkenstein 47, Falkenstein, Tel. 06174/931770"; 
	apodb[4][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"4620\",\"Falkenstein%20Apotheke\",\"941336\",\"6470896\")'";
	apodb[4][2][0]="";
	apodb[4][2][1]="";
    apodb[4][3][0]="";
	apodb[4][3][1]="";


	// F
	apodb[5][0][0]="Hof-Apotheke, Alte Bleiche 9, Hofheim, Tel. 06192/27482";
	apodb[5][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"4641\",\"Br%FCcken%20Apotheke\",\"939127\",\"6453780\")'";
	apodb[5][1][0]="Pinguin Apotheke, Avrillestr. 3, Schwalbach, Tel. 06196/83722";
	apodb[5][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"5513\",\"Pinguin%20Apotheke\",\"948478\",\"6465733\")'";
	apodb[5][2][0]="Glaskopf Apotheke, Limburgerstr. 29, Glashütten, Tel. 06174/63737";
	apodb[5][2][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"14480\",\"Glaskopf%20Apotheke\",\"934404\",\"6476227\")'";
    apodb[5][3][0]="";
	apodb[5][3][1]="";


	// G
	apodb[6][0][0]="Rats-Apotheke, Rathausplatz 30, Eschborn, Tel. 06196/42131";
	apodb[6][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"17787\",\"Rats%20Apotheke\",\"953185\",\"6463368\")'";
	apodb[6][1][0]="Goldbach-Apotheke, Hauptstrasse 67, Vockenhausen, Tel. 06198/9628";
	apodb[6][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"11386\",\"Goldbach%20Apotheke\",\"931610\",\"6464701\")'";
	apodb[6][2][0]="Brunnen-Apotheke, Alt Oberliederbach 35, Liederbach, Tel. 069/3140411";
	apodb[6][2][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"4627\",\"Brunnen%20Apotheke\",\"944635\",\"6459760\")'";
    apodb[6][3][0]="";
	apodb[6][3][1]="";


	// H
	apodb[7][0][0]="Globus-Apotheke, Seilerbahn 2-4, Hofheim, Tel. 06192/99250";
	apodb[7][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"3358\",\"Globus%20Apotheke\",\"939073\",\"6453863\")'";
	apodb[7][1][0]="Hof-Apotheke, Friedrich-Ebert-Str. 16, Kronberg, Tel. 06173/79771";
	apodb[7][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"9106\",\"Hof%20Apotheke\",\"946086\",\"6470226\")'";
    apodb[7][2][0]="";
	apodb[7][2][1]="";
    apodb[7][3][0]="";
	apodb[7][3][1]="";


	// J
	apodb[8][0][0]="Klosterberg-Apotheke, Frankfurter Str. 4, Kelkheim, Tel. 06195/2728";
	apodb[8][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"8904\",\"Klosterberg%20Apotheke\",\"940782\",\"6461134\")'";
	apodb[8][1][0]="Sonnen-Apotheke, Hauptstr. 74, Eschborn, Tel. 06196/41193";
	apodb[8][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"10786\",\"Sonnen%20Apotheke\",\"951370\",\"6464769\")'";
	apodb[8][2][0]=""; 
	apodb[8][2][1]="";
    apodb[8][3][0]="";
	apodb[8][3][1]="";


	// K
	apodb[9][0][0]="Rosen-Apotheke, Rheingaustr. 45, Hofheim-Marxheim, Tel. 06192/96790";
	apodb[9][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"18034\",\"Rosen%20Apotheke\",\"938238\",\"6452341\")'";
	apodb[9][1][0]="Taunus-Apotheke, Friedrich-Ebert-Str. 4, Schwalbach, Tel. 06196/86070";
	apodb[9][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"9090\",\"Taunus%20Apotheke\",\"948353\",\"6465628\")'";
	apodb[9][2][0]="Löwen-Apotheke, Kelkheimerstr. 10, Fischbach, Tel. 06195/61586";
	apodb[9][2][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"13075\",\"L%F6wen%20Apotheke\",\"937148\",\"6464505\")'";
    apodb[9][3][0]="";
	apodb[9][3][1]="";


	// L
	apodb[10][0][0]="Kur-Apotheke, Alleestr.1, Bad Soden, Tel. 06196/23605";
	apodb[10][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"4583\",\"Kur%20Apotheke\",\"945293\",\"6463453\")'";
	apodb[10][1][0]="Rats-Apotheke, Borbgasse 2, Oberhöchstadt, Tel. 06173/61522";
	apodb[10][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"6981\",\"Rats%20Apotheke\",\"949378\",\"6471004\")'";
    apodb[10][2][0]="Rosen-Apotheke im Center, Untertorstraße 13, 65795 Hattersheim";
	apodb[10][2][1]="";
    apodb[10][3][0]="";
	apodb[10][3][1]="";


	// M
	apodb[11][0][0]="Rosen-Apotheke, Frankfurter Str. 17, Hattersheim, Tel. 06190/2214";
	apodb[11][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"8876\",\"Rosen%20Apotheke\",\"944505\",\"6451543\")'";
	apodb[11][1][0]="Limes-Apotheke, Marktplatz 23, Schwalbach, Tel. 06196/779980";
	apodb[11][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"2488\",\"Limes%20Apotheke\",\"948192\",\"6465792\")'";
    apodb[11][2][0]="Apotheke am Kreisel, Bischoff-Kaller-Strasse 1a, 61462 Königstein, Tel. 06174/9552570";
	apodb[11][2][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"73617\",\"Apotheke%20am%20Kreisel\",\"942250\",\"6470112\")'";
    apodb[11][3][0]="";
	apodb[11][3][1]="";


    // N
	apodb[12][0][0]="Staufen-Apotheke, Frankfurter Str. 48, Kelkheim, Tel. 06195/2440";
	apodb[12][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"8896\",\"Staufen%20Apotheke\",\"940782\",\"6461134\")'";
	apodb[12][1][0]="Central-Apotheke, Götzenstr. 47/55, Eschborn, Tel. 06196/42521";
	apodb[12][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"9686\",\"Central%20Apotheke\",\"952730\",\"6463544\")'";
    apodb[12][2][0]="";
	apodb[12][2][1]="";
    apodb[12][3][0]="";
	apodb[12][3][1]="";


    // O
	apodb[13][0][0]="Kreuz-Apotheke, Frankfurter Str. 14, Kriftel, Tel. 06192/42100"; 
	apodb[13][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"8886\",\"Kreuz%20Apotheke\",\"942100\",\"6453927\")'";
	apodb[13][1][0]="Marien-Apotheke, Georg-Pingler-Str. 5, Königstein, Tel. 06174/21597";
	apodb[13][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"9443\",\"Marien%20Apotheke\",\"941483\",\"6470740\")'";
	apodb[13][2][0]="Apotheke im real, Ginnheimer Str. 8-18, Eschborn, Tel. 06196/887997";
	apodb[13][2][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"72599\",\"Apotheke%20im%20Real Eschborn\",\"954143\",\"6463563\")'";
	apodb[13][3][0]="";
    apodb[13][3][1]="";


	// P
	apodb[14][0][0]="Stein´sche-Apotheke, Wilhelmstr. 2, Hofheim, Tel. 06192/6221";
	apodb[14][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"21259\",\"Stein%27sche%20Apotheke\",\"939205\",\"6455755\")'";
	apodb[14][1][0]="Marien-Apotheke, Königsteiner Str. 51, Bad Soden, Tel. 06196/22308";
	apodb[14][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"13579\",\"Marien%20Apotheke\",\"945079\",\"6464446\")'";
    apodb[14][2][0]="";
	apodb[14][2][1]="";
    apodb[14][3][0]="";
	apodb[14][3][1]="";

    
    // R
	apodb[15][0][0]="St. Barbara-Apotheke, Hauptstr. 50, Sulzbach, Tel. 06196/71891";
	apodb[15][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"68213\",\"St.Barbara Apotheke\",\"946542\",\"6463205\")'";
	apodb[15][1][0]="Burg-Apotheke, Frankfurter Str. 7, 61462 Königstein, Tel. 06174/7528"; 
	apodb[15][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"8868\",\"Burg%20Apotheke\",\"942092\",\"6470393\")'";
	apodb[15][2][0]="Vitus-Apotheke, Frankfurter Str. 32, Kriftel, Tel. 06192/46600";
	apodb[15][2][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"8900\",\"Vitus%20Apotheke\",\"942100\",\"6453927\")'";
    apodb[15][3][0]="";
	apodb[15][3][1]="";


    // S
	apodb[16][0][0]="Bahnhof-Apotheke, Berliner Str. 31-35, Eschborn, Tel. 06196/42277"; 
	apodb[16][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"540\",\"Bahnhof%20Apotheke\",\"952244\",\"6463328\")'";
	apodb[16][1][0]="Hornauer-Apotheke, Hornauer Str. 85, Kelkheim, Tel. 06195/61065";
	apodb[16][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"12219\",\"Hornauer%20Apotheke\",\"939682\",\"6463087\")'";
    apodb[16][2][0]="";
	apodb[16][2][1]="";
	apodb[16][3][0]=""; 
	apodb[16][3][1]="";


    // T
 	apodb[17][0][0]="Rathaus-Apotheke, Alte Schulstr. 2, Bremthal, Tel. 06198/7535";
	apodb[17][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"4675\",\"Rathaus%20Apotheke\",\"929543\",\"6463075\")'";
	apodb[17][1][0]="Kur-Apotheke, Frankfurter Str. 15, Kronberg, Tel. 06173/940980";
	apodb[17][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"8903\",\"Kur%20Apotheke\",\"946778\",\"6470064\")'";
    apodb[17][2][0]="Easy-Apotheke am Kriftler Markt, Kapellenstraße 48a, 65830 Kriftel, Tel. 06192/206710";
	apodb[17][2][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"73316\",\"Easy-Apotheke%20am%20Krifteler%20Markt\",\"940318\",\"6453178\")'";
    apodb[17][3][0]="";
	apodb[17][3][1]="";
   

    // U
 	apodb[18][0][0]="Park-Apotheke, Hainstr. 2, Kronberg, Tel. 06173/79021";
	apodb[18][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"10099\",\"Park%20Apotheke\",\"946294\",\"6471897\")'";
	apodb[18][1][0]="DocMorris-Apotheke, Am Marktplatz 5, 65779 Kelkheim, Tel. 06195/673760";
	apodb[18][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"73297\",\"Apotheke%20DocMorris%20Neue%20Mitte\",\"939436\",\"6463417\")'";
    apodb[18][2][0]="";
	apodb[18][2][1]="";
    apodb[18][3][0]="";
	apodb[18][3][1]="";
   

    // W
	apodb[19][0][0]="Stadt-Apotheke, Hauptstr. 24, Hattersheim, Tel. 06190/3651";
	apodb[19][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"10505\",\"Stadt%20Apotheke\",\"943808\",\"6451103\")'";
	apodb[19][1][0]="Dreilinden-Apotheke, Hauptstr. 19, Neuenhain, Tel. 06196/22937";
	apodb[19][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"10886\",\"Dreilinden%20Apotheke\",\"944250\",\"6466664\")'";
    apodb[19][2][0]="";
	apodb[19][2][1]="";
	apodb[19][3][0]=""; 
	apodb[19][3][1]="";


    // X
	apodb[20][0][0]="Schwanen-Apotheke, Alte Bleiche 4, Hofheim, Tel. 06192/901307";
	apodb[20][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"57\",\"Schwanen%20Apotheke\",\"939127\",\"6453780\")'";
	apodb[20][1][0]="Thermen-Apotheke, Am Bahnhof 7, Bad Soden, Tel. 06196/6519990"; 
	apodb[20][1][1]="";
	apodb[20][2][0]="";
	apodb[20][2][1]="";
    apodb[20][3][0]="";
	apodb[20][3][1]="";

    
    // Y
    apodb[21][0][0]="Sonnenschein-Apotheke, Eichhopfallee 55a, 65835 Liederbach, Tel. 069/764310";
	apodb[21][0][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"73298\",\"Sonnenschein%20Apotheke\",\"943992\",\"6460787\")'";
	apodb[21][1][0]="Alte Apotheke, Limburger Str. 1a, Königstein, Tel. 06174/21264";
	apodb[21][1][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"14478\",\"Alte%20Apotheke\",\"941463\",\"6471605\")'";
 	apodb[21][2][0]="Burg-Apotheke, Burgstr. 18, Eppstein, Tel. 06198/8615";
	apodb[21][2][1]="'javascript:openanfahrt(\"http://mapguide.aponet.de/mgweb/aponet/\",\"7433\",\"Burg%20Apotheke\",\"933099\",\"6463367\")'";
    apodb[21][3][0]="";
	apodb[21][3][1]="";
   
   

	// Minuten von Mitternacht an bis zum Dienstwechsel
	var NotdienstWechselMin=8*60+30; 
    var ApoNotStart="8:30";
    var ApoNotStartYear=2011; 
        
    // Notdienst Apotheke
	var ApoNotLetter=7;
	var ApoName="Globus-Apotheke, Hofheim";
        
    // Index Init    
    var ApoNotIndex=0;




// **********
// Funktionen
// **********	

function ShowCurrApo()
{
    // *********************************************
    // Gibt die aktuellen Notdienst-Apotheken zurück
    // *********************************************

    var myDate = new Date();
    var myLetter=0, i=0;

    if (myDate.getFullYear() < ApoNotStartYear)
    {
        // Fehlermeldung
        return "<tr valign=\"top\">" +
                 "   <td class=\"text\">Diese Funktionalität ist erst am 1.1.2010 ab " + ApoNotStart + " Uhr verf&uuml;gbar!</td>" +
                 "</tr>" + 
                 "<tr>" + 
                        "<td class=\"text\" align=\"left\"><a href=\"notdienste.php\">Zurück zur &Uuml;bersicht</a></td>" + 
                 "</tr>";

    }
    else
    {		
            // Letter ermitteln		
            myLetter = (DaysFromApoNotStartYear(myDate.getDate(), (myDate.getMonth()+1), myDate.getFullYear(), myDate.getHours(), myDate.getMinutes(), true)%apoNotRounds);	

            // Prüfen ob eigene Apotheke Notdienst hat und Überschrift erzeugen
            if ((myLetter == ApoNotLetter) && ((myDate.getHours()*60+myDate.getMinutes()) >= NotdienstWechselMin))
            {
                    tmp = "<tr valign=\"top\"> " + 
                                            "<td colspan=\"3\" class=\"text\">Die <a href=\"anfahrt.php\">" + ApoName + "</a> hat heute und am darauf folgenden Tag bis " + ApoNotStart + " Uhr für Sie Notdienst.<br><br>" +
                                                                             "Zus&auml;tzlich stehen Ihnen die folgenden weitere Apotheken zur Verf&uuml;gung:</td></tr>"; 
            }

            if (myLetter == ApoNotLetter && myDate.getHours()*60+myDate.getMinutes() < NotdienstWechselMin)
            {
                    tmp = "<tr valign=\"top\"> " + 
                                            "<td colspan=\"3\" class=\"text\">Die <a href=\"anfahrt.php\">" + ApoName + "</a> hat heute für Sie Notdienst bis " + ApoNotStart + " Uhr Notdienst.<br><br>" +
                                                                             "Zus&auml;tzlich stehen Ihnen die folgende weiteren Apotheken zur Verf&uuml;gung:</td></tr>";
            }

                        
            // 1. Standard-Überschrift erzeugen
            if (myLetter != ApoNotLetter && myDate.getHours()*60+myDate.getMinutes() >= NotdienstWechselMin)
            {
                    tmp = "<tr valign=\"top\"> " + 
                                            "<td colspan=\"3\" class=\"text\">Die folgenden Apotheken haben heute und am darauf folgenden Tag bis " + ApoNotStart + " Uhr für Sie Notdienst:</td>" + 
                                    "</tr>";
            }
            if (myLetter != ApoNotLetter && myDate.getHours()*60+myDate.getMinutes() < NotdienstWechselMin)
            {
                    tmp = "<tr valign=\"top\"> " + 
                                            "<td colspan=\"3\" class=\"text\">Die folgenden Apotheken haben heute bis " + ApoNotStart + " Uhr für Sie Notdienst:</td>" + 
                                    "</tr>";
            }	
                            
            // Apotheken anzeigen
            tmp +="<tr><td class=\"text\"><ul style=\"list-style-position:outside;list-style-type:disc;\">";
            for (i=0; i<=3; i++)
            {
                    if (apodb[myLetter][i][0] != "")
                    {
                            if (myLetter != ApoNotLetter) 
                            {
                                    if (apodb[myLetter][i][1] != "")
                                            tmp +="<li><a href=" + apodb[myLetter][i][1] + ">" + apodb[myLetter][i][0] + "</a></li>";	
                                    else
                                            tmp +="<li>" + apodb[myLetter][i][0] + "</li>";	
                            }
                            else
                            {
                                    if (i != ApoNotIndex)
                                    {
                                            if (apodb[myLetter][i][1] != "")
                                                    tmp +="<li><a href=" + apodb[myLetter][i][1] + ">" + apodb[myLetter][i][0] + "</a></li>";	
                                            else
                                                    tmp +="<li>" + apodb[myLetter][i][0] + "</li>";	
                                    }					
                            }
                    }
            }								
            tmp += "</ul></td></tr>";					
                                    
            // 2. Überschrift
            if (myDate.getHours()*60+myDate.getMinutes() < NotdienstWechselMin) 
            {
                    // Letter ermitteln		
                    myLetter = (DaysFromApoNotStartYear(myDate.getDate(), (myDate.getMonth()+1), myDate.getFullYear(), myDate.getHours(), myDate.getMinutes(), false)%apoNotRounds);	

                    if (myLetter != ApoNotLetter)
                    {
                       tmp += 
                                            "<tr>" + 
                                                    "<td colspan=\"2\" class=\"text\">Anschließend stehen Ihnen ab " + ApoNotStart + " Uhr folgende Apotheken zur Verf&uuml;gung:</td>" +
                                            "</tr>";
                    }
                    else
                    {
                       tmp += 
                                            "<tr>" + 
                                                    "<td colspan=\"2\" class=\"text\">Anschließend steht Ihnen ab " + ApoNotStart + " Uhr die <a href=\"anfahrt.php\">" + ApoName + "</a> für den Notdienst zur Verf&uuml;gung. " + 
                                                    "<br><br>Zus&auml;tzlich haben die folgenden Apotheken ab " + ApoNotStart + " Uhr Notdienst:</td>" + 
                                            "</tr>";				
                    }
                                            
                    // Apotheken 2
                    tmp +="<tr><td><ul style=\"list-style-position:outside;list-style-type:disc;\">";
                    for (i=0; i<=3; i++)
                    {
                            if (apodb[myLetter][i][0] != "")
                            {
                                    if (myLetter != ApoNotLetter) 
                                    {
                                            if (apodb[myLetter][i][1] != "")
                                                    tmp +="<li><a href=" + apodb[myLetter][i][1] + ">" + apodb[myLetter][i][0] + "</a></li>";	
                                            else
                                                    tmp +="<li>" + apodb[myLetter][i][0] + "</li>";	
                                    }
                                    else
                                    {
                                            if (i != ApoNotIndex)
                                            {
                                                    if (apodb[myLetter][i][1] != "")
                                                            tmp +="<li><a href=" + apodb[myLetter][i][1] + ">" + apodb[myLetter][i][0] + "</a></li>";	
                                                    else
                                                            tmp +="<li>" + apodb[myLetter][i][0] + "</li>";	
                                            }					
                                    }
                            }
                    }								
                    tmp += "</ul></td></tr>";										
            }
    
            // Globus Apotheke
            if (myLetter != ApoNotLetter) 
            {							 
                     tmp +="<tr><td class=\"text\" colspan=\"2\">Der Notdienst der <a href=\"anfahrt.php\">" + ApoName + "</a> steht Ihnen wieder am " + 
                                     ShowNextOwnApoDate() + " ab " + ApoNotStart + " Uhr zur Verf&uuml;gung.</td></tr>" +				
                               "<tr><td colspan=\"2\">&nbsp</td></tr>";
            }
            
            tmp += "<tr><td class=\"text\" align=\"left\" colspan=\"2\">Alle Angaben werden auf Basis der lokalen Systemzeit Ihres PCs ermittelt und sind ohne Gew&auml;hr!</td></tr>";
            tmp += "<tr><td class=\"text\" align=\"left\" colspan=\"2\">&nbsp;</td></tr>";
            tmp += "<tr><td class=\"text\" align=\"left\" colspan=\"2\"><a href=\"notdienste.php\">Zur&uuml;ck zur &Uuml;bersicht</a></td></tr>";
            tmp += "<tr><td class=\"text\" align=\"left\" colspan=\"2\">&nbsp;</td></tr>";
    }
    return tmp;								
}


function ShowSelDate()
{
	// Monat und Jahr ermitteln
	var myDay, MyMonth, myYear;
	var loc = new String(window.location);
	var idx = loc.indexOf('?');
	var params = new Array();

	idx = loc.indexOf('?');
	if (idx != -1)
	{
		var pairs = loc.substring(idx+1, loc.length).split('&');	
		for (var i=0; i<pairs.length; i++) 
		{
			nameVal = pairs[i].split('=');
			params[nameVal[0]] = nameVal[1];
   	}
		myYear = params['jahr'];
		myMonth = params['monat'];
		myDay = params['tag'];
	}
	return myDay + "." + myMonth + "." + myYear	
}

	
function ShowSelApo()
{
	// ******************************************************************
	// Liefert alle Notdienst-Apotheken für einen selektierten Tag zurück
	// ******************************************************************

	var myDate = new Date();
	var myLetter=0, daysOfMonth = 0;
	var tmp="", myMonth="", myYear="", myDay="", nameVal, myLetter1, myLetter2; 


	// Monat und Jahr ermitteln
	var loc = new String(window.location);
	var idx = loc.indexOf('?');
	var params = new Array();

	idx = loc.indexOf('?');
	if (idx != -1)
	{
		var pairs = loc.substring(idx+1, loc.length).split('&');	
		for (var i=0; i<pairs.length; i++) 
		{
			nameVal = pairs[i].split('=');
			params[nameVal[0]] = nameVal[1];
   	}
		myYear = params['jahr'];
		myMonth = params['monat'];
		myDay = params['tag'];
	}
	
	// Fehlermeldung
	if (parseInt(myYear) < ApoNotStartYear)
	{
		return "<tr valign=\"top\">" +
				 "   <td class=\"text\">Diese Funktionalität ist erst für Tage ab dem 1.1.2010 verf&uuml;gbar!</td>" +
				 "</tr>" + 
				 "<tr valign=\"top\">" +
				 "   <td class=\"text\"><a href=\"notdienste.php\">Zur&uuml;ck zur &Uuml;bersicht</a></td>" +
				 "</tr>";
	}

	// Letter ermitteln		
	myLetter = DaysFromApoNotStartYear(parseInt(myDay), parseInt(myMonth), parseInt(myYear), 8, 0, true)%apoNotRounds;
	myLetter1 = myLetter;
			
	// †berschrift "selektierter Tag bis 8:30 Uhr"
	tmp = "<tr valign=\"top\"><td colspan=\"3\" class=\"text\">Bis " + ApoNotStart + " Uhr:</td></tr>";
				
	// Apotheken anzeigen
	tmp += "<tr><td class=\"text\"><ul style=\"list-style-position:outside;list-style-type:disc;\">";
	for (i=0; i<=3; i++)
	{
		if (apodb[myLetter][i][0] != "")
		{
			if (apodb[myLetter][i][1] != "")
	 			tmp += "<li><a href=" + apodb[myLetter][i][1] + ">" + apodb[myLetter][i][0] + "</a></li>";	
			else
				tmp += "<li>" + apodb[myLetter][i][0] + "</li>";	
		}
	}								
	tmp += "</ul></td></tr>";					
			
	// Letter ab 8:30 ermitteln 		
	myLetter = (DaysFromApoNotStartYear(parseInt(myDay), parseInt(myMonth), parseInt(myYear), 10, 0, true)%apoNotRounds);	
	myLetter2 = myLetter;
		
	// Überschrift "selektierter Tag" ab 8:30 Uhr
	tmp += "<tr valign=\"top\"><td>und ab " + ApoNotStart + " Uhr bis zum Folgetag um " + ApoNotStart + " Uhr:</td></tr>";
		
	// Apotheken anzeigen
	tmp += "<tr><td class=\"text\"><ul style=\"list-style-position:outside;list-style-type:disc;\">";
	for (i=0; i<=3; i++)
	{
		if (apodb[myLetter][i][0] != "")
		{
			if (apodb[myLetter][i][1] != "")
	 			tmp += "<li><a href=" + apodb[myLetter][i][1] + ">" + apodb[myLetter][i][0] + "</a></li>";	
			else
				tmp += "<li>" + apodb[myLetter][i][0] + "</li>";	
		}
	}								
	tmp += "</ul></td></tr>";					
																	
	//  Apotheke
	if (myLetter1 != ApoNotLetter && myLetter2 != ApoNotLetter) 
	{							
	   tmp +=  
				"<tr>" + 
					"<td class=\"text\" colspan=\"2\">Der Notdienst der <a href=\"anfahrt.php\">" + ApoName + "<\a> steht Ihnen wieder am " + 
					ShowNextOwnApoDate(parseInt(myDay), parseInt(myMonth), parseInt(myYear)) + " ab " + ApoNotStart + " Uhr sowie am Folgetag bis " + ApoNotStart + " Uhr zur Verfügung.</td>" +
				"</tr>" +				
			   "<tr>" + 
					"<td colspan=\"2\">&nbsp</td>" +			
				"</tr>";
	}
	
	tmp += "<tr><td class=\"text\" align=\"left\" colspan=\"2\">Alle Angaben sind ohne Gew&auml;hr!</td></tr>"				
    tmp += "<tr><td class=\"text\" align=\"left\" colspan=\"2\">&nbsp;</td></tr>"									
	tmp += "<tr><td class=\"text\" align=\"left\" colspan=\"2\"><a href=\"aponot_kalender.php?jahr=" + myYear + "&monat=" + myMonth +"\">Zur&uuml;ck zum Notdienst-Kalender</a></td></tr>";			
	return tmp;
}	


function ShowApo4Month()
{
	// ******************************************************************
	// Liefert alle Notdienst-Apotheken für einen bestimmten Monat zurück
	// ******************************************************************
	
	var myDate = new Date();
	var myLetter=0, daysOfMonth = 0;
	var tmp="", myMonth="", myYear="", nameVal; 

	// Monat und Jahr ermitteln
	var loc = new String(window.location);
	var idx = loc.indexOf('?');
	var params = new Array();

	idx = loc.indexOf('?');
	if (idx != -1)
	{
		var pairs = loc.substring(idx+1, loc.length).split('&');	
		for (var i=0; i<pairs.length; i++) 
		{
			nameVal = pairs[i].split('=');
			params[nameVal[0]] = nameVal[1];
   	}
		myYear = params['jahr'];
		myMonth = new String (params['monat']);
		idx = myMonth.indexOf('#');
		if (idx != -1)
			myMonth = myMonth.substring(0, idx);
	}
		
	if (parseInt(myYear) < ApoNotStartYear)
	{
		// Fehlermeldung
		return "<tr valign=\"top\">" +
				 "   <td class=\"text\">Diese Funktionalit&auml;t ist erst für Monate ab dem 1.1.2010 verf&uuml;gbar!</td>" +
				 "</tr>" + 
				 "<tr valign=\"top\">" +
				 "   <td class=\"text\"><a href=\"notdienste.php\">Zur&uuml;ck zur &Uuml;bersicht</a></td>" +
				 "</tr>";
	}
	else
	{		
		// Tage des gewählten Monats ermitteln
		daysOfMonth = DaysOfMonth(parseInt(myMonth), parseInt(myYear));
									
		// Ausgabe erzeugen
		tmp="";
		for (var i=1; i<=daysOfMonth; i++)
		{
			// Letter ermitteln		
			myLetter = (DaysFromApoNotStartYear(i, parseInt(myMonth), parseInt(myYear), myDate.getHours(), myDate.getMinutes(), false)%apoNotRounds);	
					
			// Datum
			tmp += 
				   "<tr>" + 
                                        "<td colspan=\"2\">" + i + "." + myMonth + "." + myYear + "</td>" +			
                                    "</tr>";

			// Notdienst Apotheken ausgeben
			tmp += 
				   "<tr>" +
                                        "<td colspan=\"2\">" + 
                                            "<ul style=\"list-style-position:outside;list-style-type:disc;\">";
			
			for (var j=0; j<=3; j++)
			{
				if (apodb[myLetter][j][0] != "")
				{
					if (apodb[myLetter][j][1] != "")
						tmp += "<li><a href=" + apodb[myLetter][j][1] + ">" + apodb[myLetter][j][0] + "</a></li>";
					else
						tmp += "<li>" + apodb[myLetter][j][0] + "</li>";
				}		
			}
			
			tmp +=              "</ul>" +
                                        "</td>" + 
                                    "</tr>";							
		}
		
		// Weitere Angaben
		tmp += "<tr height=\"40\"><td colspan=\"2\" align=\"center\">Alle Angaben ohne Gew&auml;hr!</td><tr>"; 
		tmp += "<tr><td width=\"300\" align=\"center\"><a href=\"aponot_monat.php?jahr=" + myYear + "&monat=" + myMonth + "#anfang\">Zum Anfang</a></td>";
		tmp += "<td width=\"300\" align=\"center\"><a href=\"aponot_kalender.php?jahr=" + myYear + "&monat=" + myMonth + "\">Zum Notdienst-Kalender</a></td><tr>";
        	
		return tmp;		
	}	
}
	

function ShowNextOwnApoDate()
{
	// *****************************************************
	// Liefert das Datum des Notdiensts der eigenen Apotheke
	// *****************************************************
	
	var myDate = new Date();
	
	a = ShowNextOwnApoDate.arguments;
	if (a.length > 0)
	{
		myDate.setDate(a[0]);
		myDate.setMonth(a[1]-1);
		myDate.setFullYear(a[2]);
	}	
	
	while (DaysFromApoNotStartYear(myDate.getDate(), myDate.getMonth()+1, myDate.getFullYear(), 0, 0, false)%apoNotRounds != ApoNotLetter)
		myDate.setDate(myDate.getDate()+1);
			
	return myDate.getDate() + "." + (myDate.getMonth()+1) + "." + myDate.getFullYear();			
}


function ShowFlashlight(Pos)
{
	// ***********************************************
	// Zeigt Blaulicht an, wenn Apotheke Notdienst hat
	// ***********************************************
	
	var myDate = new Date();
	
	// Letter ermitteln		
	myLetter = (DaysFromApoNotStartYear(myDate.getDate(), (myDate.getMonth()+1), myDate.getFullYear(), myDate.getHours(), myDate.getMinutes(), true)%apoNotRounds);	
	
	// Aktuellen Notdienst prüfen
	if (myLetter == ApoNotLetter)
		return "<img src=\"./bilder/blaulicht.gif\" width=\"16\" height=\"16\" border=\"0\">&nbsp;<a href=\"aponot.php\">Heute<br>Notdienst!<a>";
	else
		return "&nbsp;";		
}


function IsLeapYear(myYear)
{
	// ***********************************************
	// Prüft ob das angegebene Jahr ein Schaltjahr ist
	// ***********************************************

	return (myYear%4==0 && myYear%100!=0 || myYear%400==0 && myYear%100==0);
}


function DayOfYear(myDay, myMonth, myYear)
{
	// ******************************************************
	// Ermittelt den Tag des Jahres für ein angegebenes Datum
	// ******************************************************
	
	var tmpDays;

	switch (myMonth)
	{
		case 1:
			tmpDays=0;
			break;
		case 2:
			tmpDays=31;
			break;
		case 3:
			tmpDays=59;
			break;
		case 4:
			tmpDays=90;
			break;
		case 5:
			tmpDays=120;
			break;
		case 6:
			tmpDays=151;
			break;
		case 7:
			tmpDays=181;
			break;
		case 8:
			tmpDays=212;
			break;
		case 9:
			tmpDays=243;
			break;
		case 10:
			tmpDays=273;
			break;
		case 11:
			tmpDays=304;
			break;
		case 12:
			tmpDays=334;
			break;			
	}
	if (IsLeapYear(myYear) && myMonth > 2) tmpDays++;
	return (myDay + tmpDays);	
}


function DaysOfMonth(myMonth, myYear)
{
	// *****************************************************
	// Liefert die Anzahl der Tage für einen gegebenen Monat
	// *****************************************************
	
	if (myMonth == 1 || myMonth == 3 || myMonth == 5 || myMonth == 7 || myMonth == 8 || myMonth == 10 || myMonth == 12)
		return 31;
	
	if (myMonth == 4 || myMonth == 6 || myMonth == 9 || myMonth == 11)
		return 30;
		
	if (myMonth == 2)
	{
		if (IsLeapYear(myYear))
			return 29;
		else
			return 28;		
	}
}


function DaysFromApoNotStartYear(myDay, myMonth, myYear, myHours, myMinutes, SubDay)
{
	// ************************************************************
	// Ermittelt die Anzahl der Tage für ein Datum ab dem Jahr 2010
	// ************************************************************
	
	var totalLastDays = 0, totalCurrDays = 0, totalLYears = 0;
	var i, myDate = new Date();
	
	// Uhrzeit berücksichtigen 
	// (vor 8:30 Uhr morgens zählt der Vortag für den Notdienst)	
	if ((myHours*60+myMinutes < NotdienstWechselMin) && SubDay) 
	{		
		if (myDay == 1)
		{
			// Monat korregieren
			if (myMonth == 1)
			{
				myMonth = 12;
				myYear--;
			}
			else
				myMonth--;
			
			// Tag korregieren			
			switch (myMonth)
			{
				case 4:
				case 6:
				case 9:
				case 11:
					myDay=30;
					break;
				case 2:
					if (IsLeapYear(myYear))
						myDay=29;
					else
						myDay=28;
					break;
				default:
					myDay=31;
					break;
			}					
		}
		else
			// Tag korregieren
			myDay--;					
	}

	// Tage im aktuellen Jahr berechnen
	totalCurrDays = DayOfYear(myDay, myMonth, myYear);	
	
	// Tage ohne aktuelles Jahr zählen
	totalLastDays = ((myYear - ApoNotStartYear) * 365);

	// Schaltjahre ohne aktuelles Jahr zählen
	for (i=ApoNotStartYear; i < myYear; i++)
		if (IsLeapYear(i)) totalLYears++;				

	// Gesamttage berechnen
	return (totalLastDays + totalCurrDays + totalLYears + apoStartOffset- 1);
}


function ShowCurrMonthYear()
{
	// **********************************************
	// Ermittelt den Monatsnamen aus der Monatsnummer
	// **********************************************

	var myMonth, myYear, tmp;
	var loc = new String(window.location);
	var idx = loc.indexOf('?');
	var params = new Array();

	idx = loc.indexOf('?');
	if (idx != -1)
	{
		var pairs = loc.substring(idx+1, loc.length).split('&');	
		for (var i=0; i<pairs.length; i++) 
		{
			nameVal = pairs[i].split('=');
			params[nameVal[0]] = nameVal[1];
   	}
		myYear = params['jahr'];
		myMonth = new String (params['monat']);
		idx = myMonth.indexOf('#');
		if (idx != -1)
			myMonth = myMonth.substring(0, idx);
	}
	
	switch(parseInt(myMonth))
	{
		case 1:
			tmp = "Januar";
			break;
		case 2:
			tmp = "Februar";
			break;
		case 3:
			tmp = "März";
			break;
		case 4:
			tmp = "April";
			break;
		case 5:
			tmp = "Mai";
			break;
		case 6:
			tmp = "Juni";
			break;
		case 7:
			tmp = "Juli";
			break;
		case 8:
			tmp = "August";
			break;
		case 9:
			tmp = "September";
			break;
		case 10:
			tmp = "Oktober";
			break;
		case 11:	
			tmp = "November";
			break;
		case 12:
			tmp = "Dezember";
			break;
	}

	return tmp + ", " + myYear; 
}
