function GetTage(strDate,hin)
        {
                //funktion zum ermitteln, wieviele Tage hat der Monat
                var parts=strDate.split(".");
                if(parts[1]==2){
                        nTage=28;
                        if (parts[2] % 4 == 0)
					      nTage++;
					    if (parts[2] % 100 == 0)
					      nTage--;
					    if (parts[2] % 400 == 0)
					      nTage++;
                } else {
                        nTage=((parts[1]<=7) ^ ((parts[1] & 1)!=0))?30:31;
                }
                //bei rückreise,endet z.B. mit 5, wenn die Angebote bis 05. gehen
                lts=(hin)?(letzter_termin_hin.split(".")):(letzter_termin_rueck.split("."));
                if(lts[1]==parts[1] && lts[2]==parts[2]){
                        nTage=parseInt(lts[0],10);
                }
                return nTage;
        }

        function ChangeRueck()
        {
                d=getValue('vonTag');
                lMon=getValue('vonMonatJahr').split(".");
                var d = new Date(lMon[1],lMon[0]-1,d);
                nTime=d.getTime()+(22*86400000);
                d.setTime(nTime);
                nMon=parseInt(d.getMonth(),10)+1;
                if(nMon<10)nMon="0"+nMon;
                nDay=parseInt(d.getDate(),10);
                if(nDay<10)nDay="0"+nDay;
                SetDatum(nDay+"."+nMon+"."+d.getFullYear(),"",2);
        }

        function getValue(name)
        {
          com=eval("document.formular."+name);
          return com.options[com.selectedIndex].value;
        }

        function SetDatum(strDate, strRKenner, noMon, form)
        {
                nTage=GetTage(strDate,strRKenner!="");

                //funktion setzt aktuelles Datum + 3 Tage und füllt die select-Box für die Tage
                var com=(strRKenner)?document.formular.vonTag:document.formular.bisTag;
                var comMon=(strRKenner)?document.formular.vonMonatJahr:document.formular.bisMonatJahr;

                len=com.length;
                nMax=(len>nTage)?len:nTage;

                for(i=0;i<nMax;i++){
                        if(i<nTage){
                                if(i>=len){
                                        com.options[i]=new Option();
                                }
                                com.options[i].text=i+1;
                                com.options[i].value=i+1;
                        } else {
                                com[nTage] = null;
                        }
                }
                nSel=parseInt(strDate.split(".")[0],10);
                if(nSel>nTage)nSel = nTage;
                com.options.selectedIndex=nSel-1;
                
                if(noMon != 1){
                        firstMon=parseInt(comMon.options[0].value.split(".")[0],10);
                        nSel=strDate.split(".")[1]-firstMon;
                        if(nSel<0 || comMon.options[0].value.split(".")[1]<strDate.split(".")[2])
                          nSel+=12;
                        comMon.options.selectedIndex=nSel;
                }
                if(noMon!=2 && strRKenner!="") ChangeRueck();

        }

        function UpdateDate(strKenner)
        {
                nTag=getValue(strKenner+"Tag");
                strMon=getValue(strKenner+"MonatJahr");
                SetDatum(nTag+"."+strMon,(strKenner=="bis")?"":"dummy",2);
        }

        function SetDay(strKenner)
        {
                nTag=getValue(strKenner+"Tag");
                cMon=eval("document.formular."+strKenner+"MonatJahr");
                strMon=getValue(strKenner+"MonatJahr");
                ets=erster_termin.split(".");

                if(ets[1]+"."+ets[2]==strMon && nTag < parseInt(ets[0],10)){
                        cMon.selectedIndex=1;
                        strMon=getValue(strKenner+"MonatJahr");
                        SetDatum(nTag+"."+strMon,(strKenner=="bis")?"":"dummy",1);
                        nTag=getValue(strKenner+"Tag"); ;
                }
                if(strKenner=="von"){
                        ChangeRueck();
                }
        }

        function SetMonth(strKenner)
        {
                //funktion setzt Tag und Monat, wenn man in der select-Box auswählt
                nTag=getValue(strKenner+"Tag");
                strMonat=getValue(strKenner+"MonatJahr");
                ets=erster_termin.split(".");
                if(ets[1]+"."+ets[2]==strMonat && nTag<parseInt(ets[0],10)){
                        nTag=ets[0];
                }
                strDate=nTag+"."+strMonat;
                SetDatum(strDate,(strKenner=="bis")?"":"dummy",1);
        }

        function InitDays(hin)
        {
                nTage=GetTage((hin)?termin_hin:termin_rueck,hin);
                SelTag=(hin)?termin_hin.split(".")[0]:termin_rueck.split(".")[0];

                for(i=1;i<=nTage;i++){
                        sel=(i==SelTag)?" Selected":"";
                        document.write("<option value="+i+sel+">"+i+"</option>\n");
                }
        }

        function InitMonth(hin)
        {
                var m=new Array("Jan.","Feb.","März","April","Mai","Juni","Juli","Aug.","Sep.","Okt.","Nov.","Dez.");
                var com=document.formular.vonMonatJahr;
                ets=erster_termin.split(".");
                lts=(hin)?(letzter_termin_hin.split(".")):(letzter_termin_rueck.split("."));
                sels=(hin)?(termin_hin.split(".")):(termin_rueck.split("."));

                SelMonat=parseInt(sels[1],10);

                MinMonat=parseInt(ets[1],10);
                MaxMonat=parseInt(lts[1],10);
                MinJahr=parseInt(ets[2],10);
                MaxJahr=parseInt(lts[2],10);

                DiffJahr = 0;
                if((MaxMonat<MinMonat) || (MinJahr!=MaxJahr)){
                  DiffJahr = MaxJahr - MinJahr;
                  MaxMonat+=(12*DiffJahr);
								}
                if(SelMonat<MinMonat)SelMonat+=12;

								for(i=MinMonat;i<=MaxMonat;i++){
                        sel=(i==SelMonat)?" Selected":"";
                        if(i>12){
												        if(i>24){
																        Jahr = MinJahr+2;
                                        nMon=i-24;if(nMon<10)nMon="0"+nMon;
                                        document.write("<option value='"+nMon+"."+Jahr+"'"+sel+">"+m[i-25]+" "+Jahr.toString().substr(2)+"\n");
												        } else {
																        Jahr = MinJahr+1;
                                        nMon=i-12;if(nMon<10)nMon="0"+nMon;
                                        document.write("<option value='"+nMon+"."+Jahr+"'"+sel+">"+m[i-13]+" "+Jahr.toString().substr(2)+"\n");
												        }
                        } else {
                                nMon=i;if(nMon<10)nMon="0"+nMon;
                                document.write("<option value='"+nMon+"."+MinJahr+"'"+sel+">"+m[i-1]+" "+MinJahr.toString().substr(2)+"\n");
                        }
                }
        }
