/**************************************************************
 * Kalender erzeugen
 * Monat = Aktueller Monat
 * Jahr = Aktuelles Jahr
 **************************************************************/

    var Monatsname     = new Array ("Januar","Februar","M&auml;rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember");
    var Tag            = new Array ("Mo","Di","Mi","Do","Fr","Sa","So");

 function Kalender(Monat,Jahr) {
    var maxMonth = 12;
    Monat = Monat*1;
    var KSchrArt = "Verdana,Arial"; /* Schriftart Kalenderkopf */
    var KSchrGroesse = 1;           /* Schriftgroesse 1-7 Kalenderkopf */
    var KSchrFarbe = "#000";     /* Schriftfarbe Kalenderkopf */
    var Khgrund = "#120066";        /* Hintergrundfarbe Kalenderkopf */
    var TSchrArt = "Verdana,Arial"; /* Schriftart Tagesanzeige */
    var TSchrGroesse = 1;           /* Schriftgroesse 1-7 Tagesanzeige */
    var TSchrFarbe = "#000";     /* Schriftfarbe Tagesanzeige */
    var Thgrund = "#FFF";        /* Hintergrundfarbe Tagesanzeige */
    var SoFarbe = "#FFF";        /* Schriftfarbe f. Sonntage */
    var Sohgrund = "/images/GEW/kal_bg2.gif";       /* Hintergrund f. Sonntage */
    var KoSohgrund = "/images/GEW/kal_bg2.gif";       /* Hintergrund f. Sonntage */
    var Ahgrund = "#FFF";        /* Hintergrundfarbe f. heutigen Tag */
    var Mohgrund = "#120066";		/* Hintergrundfarbe f. MonatsangGEWe */

    var jetzt = new Date();

    var DieserMonat = jetzt.getMonth()+1;
    var DiesesJahr = jetzt.getYear();
    if(DiesesJahr < 999) DiesesJahr+=1900;
    var DieserTag = jetzt.getDate();
    var Zeit = new Date(Jahr,Monat-1,1);
    var Start = Zeit.getDay();
    if(Start > 0) Start--;
    else Start = 6;
    var Stop = 31;
    if(Monat==4 ||Monat==6 || Monat==9 || Monat==11 ) --Stop;
    if(Monat==2) {
     Stop = Stop - 3;
     if(Jahr%4==0) Stop++;
     if(Jahr%100==0) Stop--;
     if(Jahr%400==0) Stop++;
    }
       // var xJahr = Jahr*1;
      //  if (xJahr<DiesesJahr || xJahr>(DiesesJahr+1)) {
       //     Jahr = DiesesJahr;
       // }

        //var xMonth = Monat*1;
        //if ((xMonth<DieserMonat && xJahr==DiesesJahr) || xMonth<1 || xMonth>12) {
       //     Monat = DieserMonat;
        //}

    var oDateMax = new Date(DiesesJahr,(DieserMonat+11),DieserTag);
    var lastMonth = oDateMax.getMonth();
    var lastYear  = oDateMax.getFullYear();
    if (lastYear<=999) {
    	lastYear += 1900;
    }
    var showName  = Monatsname[Monat-1];

    sCalHTML +='<table onclick="return false;" border="0" cellspacing="0" cellpadding="1" style="background:#EEE;background-position:0px 16px;">';
    var Monatskopf ="<table border='0' cellspacing='0' cellpadding='0' width='100%' style='background:#6D003A;'><tr style='height:16px;'>";
    if (Zeit.getMonth()>jetzt.getMonth() || Zeit.getFullYear()>jetzt.getFullYear()){
        Monatskopf += "<td width='14' align='right' style='cursor:pointer;vertical-align:middle;' onClick='MM_CalchgDsp(0);'><img src=\"/images/GEW/kalender_pfeil_zurueck.gif\" style=\"margin-top:3px;\" align=\"GEWsmiddle\" border=\"0\">";
    } else { Monatskopf += '<td width="14">'; }
    Monatskopf +="</td><td align='center' style='vertical-align:middle;'><font size='1' color='#ECDE08' face='Verdana'><b>"+ showName + " " + Jahr+"</b></font></td>";
    if (Zeit.getMonth()<lastMonth || Zeit.getFullYear()<lastYear){
        Monatskopf +="<td width='14' align='left' style='cursor:pointer;vertical-align:middle;' onClick='MM_CalchgDsp(1);'><img src=\"/images/GEW/kalender_pfeil_vor.gif\" style=\"margin-top:3px;\" align=\"GEWsmiddle\" border=\"0\">";
    } else { Monatskopf += '<td width="14">'; }
        Monatskopf +="</td></tr></table>";
        SchreibeKopf(Monatskopf,Khgrund,KSchrFarbe,KSchrGroesse,KSchrArt);
    var Tageszahl = 1;

    if (iCalType==0) {
        var iAdd = 1;
    } else {
        var iAdd = 3;
    }

    if ((DieserTag+iAdd)>Stop) {
        var iTmp1  = (DieserTag+iAdd) - Stop;
        if (Monat==12) {
            var iTmp2 = 1;
            var iTmp3 = DiesesJahr+1;
        } else {
            var iTmp2 = DieserMonat+1;
            var iTmp3 = DiesesJahr;
        }
    } else {
        var iTmp1 = (DieserTag+iAdd);
        var iTmp2 = DieserMonat;
        var iTmp3 = DiesesJahr;
    }

    for(var i=0;i<=5;i++) { // DOWNSTEP
          sCalHTML +="<tr>";
          for(var j=0;j<=5;j++) { // RIGHTSTEP
                if((i==0)&&(j < Start))
                  SchreibeLeereZelle('',''); // Noch nicht gültig
                else {
                      if(Tageszahl > Stop)
                            SchreibeLeereZelle('',''); // Nicht mehr gültig
                      else {
                            if((Jahr==DiesesJahr)&&(Monat==DieserMonat)&&(Tageszahl==DieserTag)) {
                                SchreibeLeereZelle(Tageszahl,'#6D003A','#FFF');  //Heute
                            } else if ((Jahr<=iTmp3)&&(Monat<=iTmp2)&&(Tageszahl<iTmp1)&&(Tageszahl!=DieserTag)) {
                                if (j==5) {
                                    SchreibeLeereZelle(Tageszahl,'#C1C1C1','#6D003A');
                                } else {
                                    SchreibeLeereZelle(Tageszahl,'','#6D003A');
                                }
                            } else if ((Jahr<=DiesesJahr)&&(Monat<=DieserMonat)&&(Tageszahl<DieserTag)) {
                                if (j==5) {
                                    SchreibeLeereZelle(Tageszahl,'#C1C1C1','#6D003A');
                                } else {
                                    SchreibeLeereZelle(Tageszahl,'','#6D003A');
                                }
                            } else
                                if (j == 5){
                                    SchreibeZelle(Tageszahl,'#C1C1C1','#6D003A',TSchrGroesse,TSchrArt); // Schreiben
                                }else{
                                    SchreibeZelle(Tageszahl,'','#6D003A',TSchrGroesse,TSchrArt); // Schreiben
                                }
                            Tageszahl++;
                      }
                }
           }
            if(Tageszahl > Stop)
                SchreibeLeereZelle(''); // SchreibeZelle("&#160;",'',SoFarbe,TSchrGroesse,TSchrArt); // Nicht mehr gültig
            else {
                  if((Jahr==DiesesJahr)&&(Monat==DieserMonat)&&(Tageszahl==DieserTag)) {
                        SchreibeZelle(Tageszahl,'#6D003A','#FFF',TSchrGroesse,TSchrArt); // Heute Sonntag
                  } else if ((Jahr<=iTmp3)&&(Monat<=iTmp2)&&(Tageszahl<iTmp1)&&(Tageszahl!=DieserTag)) {
                        SchreibeLeereZelle(Tageszahl,'#C1C1C1','#6D003A');
                  } else if ((Jahr<=DiesesJahr)&&(Monat<=DieserMonat)&&(Tageszahl<DieserTag)) {
                        SchreibeLeereZelle(Tageszahl,'#C1C1C1','#6D003A');
                  } else
                        SchreibeZelle(Tageszahl,'#C1C1C1','#6D003A',TSchrGroesse,TSchrArt); // Sonntag > Heute
                  Tageszahl++;
            }
            sCalHTML +="<\/tr>";
      }
    sCalHTML +="<\/table>";
    sCalHTML +="<div style='color:#FFF;height:14px;vertical-align:top;padding:0px;background:#C1C1C1;width:133px;text-align:center;margin-top:0px;'><a name='closeCal' href='#closeCal' style='margin:0px;padding:0px;font-size:10px;font-weight:bold;color:#ECDE08;' onclick='MM_hideCal("+iCalType+",1);'>Schlie&szlig;en</a></div>";
}

/**************************************************************
 * Erzeugt den KalenderKopf
 * Monatstitel = Aktueller Monat
 * HgFarbe = Aktuelles Jahr
 * SchrFarbe = Aktuelles Jahr
 * SchrGroesse = Aktuelles Jahr
 * SchrArt = Aktuelles Jahr
 **************************************************************/
function SchreibeKopf(Monatstitel,HgFarbe,SchrFarbe,SchrGroesse,SchrArt) {
    var Mohgrund = "#C1C1C1";		/* Hintergrundfarbe f. MonatsangGEWe */
    var KoSohgrund = "/images/GEW/kal_bg2.gif";       /* Hintergrund f. Sonntage */
    sCalHTML +="<tr>";
    sCalHTML +='<td align="center" colspan="7" valign="middle" style="color:#6D003A;" bgcolor="'+Mohgrund+'">';
    sCalHTML +='<b>';
    sCalHTML +=Monatstitel;
    sCalHTML +="</b><\/td><\/tr>";
    sCalHTML +="<tr>";
    var sFarbe = '#EEE';
    HgFarbe = '';
    var iTmp = 1;
    for(var i=0;i<=6;i++){
      if (i > 4){ HgFarbe='#C1C1C1'; sFarbe='#6D003A'; iTmp=2; } else {
      	//HgFarbe='#120066';
      	sFarbe='#6D003A';
      }
      SchreibeZelle2(Tag[i],HgFarbe,sFarbe,SchrGroesse,SchrArt,iTmp);
    }
    sCalHTML +="<\/tr>";
}

/**************************************************************
 * Erzeugt eine Zelle
 * Monatstitel = Aktueller Monat
 * HgFarbe = Aktuelles Jahr
 * SchrFarbe = Aktuelles Jahr
 * SchrGroesse = Aktuelles Jahr
 * SchrArt = Aktuelles Jahr
 * Href = Link
 **************************************************************/
function SchreibeZelle(Inhalt,HgFarbe,SchrFarbe,SchrGroesse,SchrArt,Href) {
    var sTmp = '';
    if (HgFarbe!='') {
        sTmp = 'background:'+HgFarbe+';';
    }
    sCalHTML +='<td align="center" valign="middle" style="border-bottom:1px solid #FFF;" width=18 height=18>';
    if (Href != 1 && Inhalt != '&#160;'){
        sCalHTML +='<a class="none" href=\"#\" style="'+sTmp+'display:block;margin:1px;margin-left:0px;height:16px;width:16px;text-decoration:none;font-size:10px;font-weight:normal;color:'+SchrFarbe+';" onClick=\"MM_CalWriteDate('+Inhalt+')\">';
    }else{
        sCalHTML +='<span style="'+sTmp+'display:block;margin:1px;margin-left:0px;height:16px;width:16px;text-decoration:none;font-size:10px;font-weight:normal;color:'+SchrFarbe+';">';
    }
    sCalHTML +=Inhalt;
    if (Href != 1 && Inhalt != '&#160;'){
        sCalHTML +='</a>';
    }else{
        sCalHTML +='</span>';
    }
    sCalHTML +="<\/td>";
}

/**************************************************************
 * Erzeugt eine leere Zelle
 * Monatstitel = Aktueller Monat
 * HgFarbe = Aktuelles Jahr
 * SchrFarbe = Aktuelles Jahr
 * SchrGroesse = Aktuelles Jahr
 * SchrArt = Aktuelles Jahr
 * Href = Link
 **************************************************************/
function SchreibeLeereZelle(iNr,HgFarbe,SchrFarbe) {
    var sTmp = '';
    if (HgFarbe!='') {
        sTmp = 'background:'+HgFarbe+';';
    }
    sCalHTML += '<td align="center" style="overflow:hidden;font-size:10px;color:'+SchrFarbe+';border-bottom:1px solid #FFF" width=18 height=18>';
    if (iNr=='') {
        sCalHTML += '<div style="display:block;margin:1px;margin-left:0px;height:16px;width:16px;text-decoration:none;font-size:10px;font-weight:normal;color:'+SchrFarbe+';'+sTmp+'">&nbsp;</div>';
    } else {
        sCalHTML += '<div style="display:block;margin:1px;margin-left:0px;height:16px;width:16px;text-decoration:none;font-size:10px;font-weight:normal;color:'+SchrFarbe+';'+sTmp+'">'+iNr+'</div>';
    }
    sCalHTML += "</td>";
}

/**************************************************************
 * Erzeugt eine Zelle
 * Monatstitel = Aktueller Monat
 * HgFarbe = Aktuelles Jahr
 * SchrFarbe = Aktuelles Jahr
 * SchrGroesse = Aktuelles Jahr
 * SchrArt = Aktuelles Jahr
 * Href = Link
 **************************************************************/
function SchreibeZelle2(Inhalt,HgFarbe,SchrFarbe,SchrGroesse,SchrArt,Href) {
    var sTmp = '';
    if (HgFarbe!='') {
        sTmp = 'background:'+HgFarbe+';';
    }
    sCalHTML +='<td align="center" valign="middle" style="border-top:2px solid;border-bottom:1px solid #FFF" width=18 height=18>';
    //sCalHTML +='<font size="'+SchrGroesse+'" style="color:'+SchrFarbe+';" face="'+SchrArt+'">';
    if (Href != 1 && Href!=2 && Inhalt != '&#160;'){
        sCalHTML +='<a href=\"#\" style="display:block;width:16px;heigth:16px;margin:1px;margin-left:0px;font-size:10px;color:#FFF;'+sTmp+'" onClick=\"MM_CalWriteDate('+Inhalt+')\">';
    }else{
        if (Href==2) {
            sCalHTML +='<b title="Nicht m&ouml;glich" style="display:block;width:16px;heigth:16px;margin:1px;margin-left:0px;font-size:10px;color:'+SchrFarbe+';'+sTmp+'">';
        } else {
            sCalHTML +='<b title="Nicht m&ouml;glich" style="display:block;width:16px;heigth:16px;margin:1px;margin-left:0px;font-size:10px;color:'+SchrFarbe+';'+sTmp+'">';
        }
    }
    sCalHTML +=Inhalt;
    if (Href != 1 && Inhalt != '&#160;'){
        sCalHTML +='</a>';
    }else{
        sCalHTML +='</b>';
    }
    sCalHTML +="<\/td>";
}
