    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){};
    }
    
    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;
                    if (lang=="en") document.getElementById("DateSpacer").innerHTML = "&nbsp;to&nbsp;";
                    else 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;
                    if (lang=="en") document.getElementById("DateSpacer").innerHTML = "&nbsp;to&nbsp;";
                    else 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);
        document.getElementById(controlid + "_" + objid).style.border ="1px solid #3366cc";
        
        if (days>0){
            if (highlightDays(days))
            {
                if (lang=="en") 
                {
                    document.getElementById("SelectedDays").innerHTML = ", duration: <b>" + days;
                    document.getElementById("SelectedDays").innerHTML += " day";
                    if (days>1) document.getElementById("SelectedDays").innerHTML += "s";
                    document.getElementById("SelectedDays").innerHTML += "</b>";
                }
                else 
                {
                    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>";
                }
            }
        }
        parent.updateForm('CalendarEvent');
    }
    
    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]);
      
      var wrongCells = 0;
      var lastDayIsMarked = false;
      var firstDayIsMarked = false;
      
      for (i=0; i<countdays; i++) 
      {
        var day = addDays(startdate, i);
        try{
            document.getElementById("Calender1_" + day).style.border ="1px solid #3366cc";
            if (document.getElementById("Calender1_" + day).className=='holidayCellSelected1') 
            {
                if (i==0) firstDayIsMarked = true;
                if (i==(countdays-1)) lastDayIsMarked = true;
                wrongCells++;
            }
        }
        catch(e){}
        try{
            document.getElementById("Calender2_" + day).style.border ="1px solid #3366cc";
            if (document.getElementById("Calender2_" + day).className=='holidayCellSelected1')
            {
                if (i==0) firstDayIsMarked = true;
                if (i==(countdays-1)) lastDayIsMarked = true;
                wrongCells++;
            }
        }
        catch(e){}
        try{
            document.getElementById("Calender3_" + day).style.border ="1px solid #3366cc";
            if (document.getElementById("Calender3_" + day).className=='holidayCellSelected1')
            {
                if (i==0) firstDayIsMarked = true;
                if (i==(countdays-1)) lastDayIsMarked = true;
                wrongCells++;
            }
        }
        catch(e){}
      }
      
      if (wrongCells>0) 
      {
        if ( (firstDayIsMarked && lastDayIsMarked && wrongCells==2) || ((firstDayIsMarked && lastDayIsMarked==false) && wrongCells==1) || ((firstDayIsMarked==false && lastDayIsMarked==true) && wrongCells==1) )
        {
        }
        else
        {
            if (lang=="en") 
            {
                alert(unescape("Selected days not bookable. For some days in your selected period the choosen pitch is already booked."));
            }
            else
            {
                alert(unescape("Eine Reservierung %FCber diesen Zeitraum ist nicht m%F6glich,\nda einige Tage innerhalb Ihrer Auswahl bereits fest belegt sind."));
            }
            document.getElementById("SelectedDays").innerHTML = "";
            document.getElementById("DateSpacer").innerHTML = "";
            document.getElementById("FromDate").innerHTML = "";
            document.getElementById("ToDate").innerHTML = "";
            clearAllDays(countdays);
            document.getElementById("fromdatehidden").value = "";
            document.getElementById("todatehidden").value = "";
            document.getElementById("fromdatecontrolhidden").value = "";
            document.getElementById("todatecontrolhidden").value = "";
            return false;
        }
      }
      return true;
    }
    
    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());
    } 


