    function ActivateForm(target)
    {
        var obj;
        if (target=="parent") obj = parent.document.forms["Form1"].elements;
        else obj = document.forms["Form1"].elements;
        for(var i=0; i<=obj.length; i++)
        {
            try{obj[i].disabled = false;}
            catch(e){}
        }
    }

    function ShowCalLink(){
        parent.document.getElementById("Ferienkalender").style.display = 'block';
    }

    function ShowCalDiv(){
        document.getElementById('CalDiv').style.left = (110) + 'px';document.getElementById('CalDiv').style.top = (400) + 'px';document.getElementById('CalDiv').style.display = 'block';
        var obj = document.forms["Form1"].elements;
        for(var i=0; i<=obj.length; i++)
        {
            try{obj[i].disabled = true;}
            catch(e){}
        }
        try{document.getElementById('wizardSubmit').style.display = 'none';}
        catch(e){}
        document.getElementById('CalDiv').style.borderBottom = "1px solid #6699cc";
    }

    function HideCalDiv(){
        parent.document.getElementById("CalDiv").style.display = "none";
        var obj = parent.document.forms["Form1"].elements;
        for(var i=0; i<=obj.length; i++)
        {
            try{obj[i].disabled = false;}
            catch(e){}
        }
        try{parent.document.getElementById("wizardSubmit").style.display = "block";}
        catch(e){}
        
        //Skireisen
        try{parent.init();}
        catch(e){}
    }
    
    function TransferData(){
        HideCalDiv();
        try{parent.document.getElementById("termin").value=document.getElementById("fromdatehidden").value;}
        catch(e){};
        try{parent.document.getElementById("termin_1").value=document.getElementById("fromdatehidden").value;}
        catch(e){};
        try{parent.document.getElementById("termin_2").value=document.getElementById("fromdatehidden").value;}
        catch(e){};
        try{parent.document.getElementById("ruecktermin").value=document.getElementById("todatehidden").value;}
        catch(e){};
        try{parent.document.getElementById("ruecktermin_1").value=document.getElementById("todatehidden").value;}
        catch(e){};
        try{parent.document.getElementById("ruecktermin_2").value=document.getElementById("todatehidden").value;}
        catch(e){};
        try{parent.document.getElementById("FromDate_1").value=document.getElementById("fromdatehidden").value;}
        catch(e){};
        try{parent.document.getElementById("FromDate_2").value=document.getElementById("fromdatehidden").value;}
        catch(e){};
        try{parent.document.getElementById("FromDate_3").value=document.getElementById("fromdatehidden").value;}
        catch(e){};
        try{parent.document.getElementById("ToDate_1").value=document.getElementById("todatehidden").value;}
        catch(e){};
        try{parent.document.getElementById("ToDate_2").value=document.getElementById("todatehidden").value;}
        catch(e){};
        try{parent.document.getElementById("ToDate_3").value=document.getElementById("todatehidden").value;}
        catch(e){};
    }
    
    function ReturnDate(controlid, objid, date)
    {
        document.getElementById("SelectedDays").innerHTML = "";
        document.getElementById("DateSpacer").innerHTML = "";

        var selectedDate = date.split(".");

        var selectedDate = new Date(selectedDate[1]+"/"+selectedDate[0]+"/"+selectedDate[2]);
        
        var tempDateFromDoc1 = document.getElementById("fromdatehidden").value;
        var tempDateFromDoc2 = document.getElementById("todatehidden").value;
        
        var tempControlFromDate = document.getElementById("fromdatecontrolhidden").value;
        var tempControlToDate = document.getElementById("todatecontrolhidden").value;
        
        tempDateFromDoc1 = tempDateFromDoc1.split(".");
        tempDateFromDoc2 = tempDateFromDoc2.split(".");
        
        var dateFromDoc1 = new Date(tempDateFromDoc1[1]+"/"+tempDateFromDoc1[0]+"/"+tempDateFromDoc1[2]);
        var dateFromDoc2 = new Date(tempDateFromDoc2[1]+"/"+tempDateFromDoc2[0]+"/"+tempDateFromDoc2[2]);
        
        if (isNaN(dateFromDoc2)){
            //toDate empty
            if (isNaN(dateFromDoc1)){
                //fromDate empty: selectedDate -> fromDate
                document.getElementById("fromdatehidden").value=selectedDate.getDate() + "." + (selectedDate.getMonth()+1) + "." + selectedDate.getFullYear();
                document.getElementById("fromdatecontrolhidden").value=controlid;
            }else{
                //fromDate is not empty
                if (selectedDate<=dateFromDoc1){ 
                    //selectedDate<=fromDate: fromDate -> todate && selectedDate -> fromDate
                    clearAllDays(diffDays(document.getElementById("fromdatehidden").value,document.getElementById("todatehidden").value));
                    document.getElementById("todatehidden").value=dateFromDoc1.getDate() + "." + (dateFromDoc1.getMonth()+1) + "." + dateFromDoc1.getFullYear();
                    document.getElementById("todatecontrolhidden").value=document.getElementById("fromdatecontrolhidden").value;
                    document.getElementById("fromdatehidden").value=selectedDate.getDate() + "." + (selectedDate.getMonth()+1) + "." + selectedDate.getFullYear();
                    document.getElementById("fromdatecontrolhidden").value=controlid;
                    document.getElementById("DateSpacer").innerHTML = "&nbsp;bis&nbsp;";
                }else{
                    //selectedDate>fromDate: selectedDate -> toDate
                    clearAllDays(diffDays(document.getElementById("fromdatehidden").value,document.getElementById("todatehidden").value));
                    document.getElementById("todatehidden").value=selectedDate.getDate() + "." + (selectedDate.getMonth()+1) + "." + selectedDate.getFullYear();
                    document.getElementById("todatecontrolhidden").value=controlid;
                    document.getElementById("DateSpacer").innerHTML = "&nbsp;bis&nbsp;";
                }
            }
        }else{
            //toDate not empty -> clear all; selectedDate -> fromDate
            clearAllDays(diffDays(document.getElementById("fromdatehidden").value,document.getElementById("todatehidden").value));
            document.getElementById("fromdatehidden").value=selectedDate.getDate() + "." + (selectedDate.getMonth()+1) + "." + selectedDate.getFullYear();
            document.getElementById("fromdatecontrolhidden").value=controlid;
            document.getElementById("todatehidden").value = "";
            document.getElementById("todatecontrolhidden").value = "";
        }

        document.getElementById("FromDate").innerHTML = document.getElementById("fromdatehidden").value;
        document.getElementById("ToDate").innerHTML = document.getElementById("todatehidden").value;
        
        var days = diffDays(document.getElementById("fromdatehidden").value,document.getElementById("todatehidden").value);

        if (days>0){
            highlightDays(days);
            document.getElementById("SelectedDays").innerHTML = ", Dauer: <b>" + days;
            document.getElementById("SelectedDays").innerHTML += " Tag";
            if (days>1) document.getElementById("SelectedDays").innerHTML += "e";
            document.getElementById("SelectedDays").innerHTML += "</b>";
        }

        document.getElementById(controlid + "_" + objid).style.border ="1px solid red";

    }
    
    function clearAllDays(countdays)
    {
      var _startdate = document.getElementById("fromdatehidden").value;
      _startdate = _startdate.split(".");
      var startdate = new Date(_startdate[1]+"/"+_startdate[0]+"/"+_startdate[2]);

      for (i=0; i<countdays; i++) 
      {
        var day = addDays(startdate, i);
        try{document.getElementById("Calender1_" + day).style.border ="1px solid #dedede";}
        catch(e){}
        try{document.getElementById("Calender2_" + day).style.border ="1px solid #dedede";}
        catch(e){}
        try{document.getElementById("Calender3_" + day).style.border ="1px solid #dedede";}
        catch(e){}
      }
    }
    
    function addDays(date, days)
    {
	    d = new Date(date.getTime() + 86400000 * days);
        return d.getDate() + "_" + (d.getMonth()+1) + "_" + d.getFullYear();
    }
    
    function highlightDays(countdays)
    {
      var _startdate = document.getElementById("fromdatehidden").value;
      _startdate = _startdate.split(".");
      var startdate = new Date(_startdate[1]+"/"+_startdate[0]+"/"+_startdate[2]);
      
      for (i=0; i<countdays; i++) 
      {
        var day = addDays(startdate, i);
        try{document.getElementById("Calender1_" + day).style.border ="1px solid red";}
        catch(e){}
        try{document.getElementById("Calender2_" + day).style.border ="1px solid red";}
        catch(e){}
        try{document.getElementById("Calender3_" + day).style.border ="1px solid red";}
        catch(e){}
      }
    }
    
    function diffDays(firstdate,seconddate)
    {
        var date1 = firstdate;
        var date2 = seconddate;
        date1 = date1.split(".");
        date2 = date2.split(".");
        var sDate = new Date(date1[1]+"/"+date1[0]+"/"+date1[2]);
        var eDate = new Date(date2[1]+"/"+date2[0]+"/"+date2[2]);
        var daysApart = Math.abs(Math.round((sDate-eDate)/86400000));
        if (isNaN(daysApart)==false) return daysApart+1;
        else return "";
    }    
    
    function formatStringAsDate(string)
    {
	    temp = new Date(getDateInt(string));
	    return temp.getDate() + " " + getMonthName(temp.getMonth());
    } 

