  
        
        // Gestion de Fechas
        //==============================================
        
        var aFinMes = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

        function finMes(nMes, nAno){
           return aFinMes[nMes - 1] + (((nMes == 2) && (nAno % 4) == 0)? 1: 0);
        }
         
        function padNmb(nStr, nLen, sChr){
            var sRes = String(nStr);
            for (var i = 0; i < nLen - String(nStr).length; i++)
             sRes = sChr + sRes;
            return sRes;
        }
         
        function makeDateFormat(nDay, nMonth, nYear){
            var sRes;
            sRes = padNmb(nDay, 2, "0") + "/" + padNmb(nMonth, 2, "0") + "/" + padNmb(nYear, 4, "0");
            return sRes;
        }
         
        function incDate(sFec0){
           var nDia = parseInt(sFec0.substr(0, 2), 10);
           var nMes = parseInt(sFec0.substr(3, 2), 10);
           var nAno = parseInt(sFec0.substr(6, 4), 10);
           nDia += 1;
           if (nDia > finMes(nMes, nAno)){
            nDia = 1;
            nMes += 1;
            if (nMes == 13){
             nMes = 1;
             nAno += 1;
            }
           }
           return makeDateFormat(nDia, nMes, nAno);
        }
         
        function addToDate(sFec0, sInc){
           var nInc = Math.abs(parseInt(sInc));
           var sRes = sFec0;
           for (var i = 0; i < nInc; i++) sRes = incDate(sRes);
           return sRes;
        }
      
        function CheckDate(_field) {           
            var num_noches = $("#num_noches").val();                                                             
            strOptions="";                      
            var oREGEXP = new RegExp("^\(d*[0-9])+$", strOptions);                  
            if (oREGEXP.test(num_noches)) {                    
               num_noches=parseInt($("#num_noches").val());
                if (num_noches > $.variables.num_fechas) {
                    $("#num_noches").val($.variables.num_fechas);
                    num_noches = $.variables.num_fechas;
                } else if (num_noches == 0){
                    $("#num_noches").val(0);
                    num_noches = 0;   
                }
            } else {            
                $("#num_noches").val(0);
                num_noches = 0;
            }
            fechaIni=$("#fechaIni").val();            
            if (fechaIni!="") {                                                                             
                $("#fechaFin").val(addToDate(fechaIni,num_noches));
            }             
        }

        function actualiza_fecha(cal) {
            var p = cal.params;
            if (p == undefined) return;
            var update = (cal.dateClicked || p.electric);
            if (update && p.inputField) {
                p.inputField.value = cal.date.print(p.ifFormat);
                if (typeof p.inputField.onchange == "function")
                    p.inputField.onchange();
            }
            if (update && p.displayArea)
                p.displayArea.innerHTML = cal.date.print(p.daFormat);
            if (update && typeof p.onUpdate == "function")
                p.onUpdate(cal);
            if (update && p.flat) {
                if (typeof p.flatCallback == "function")
                    p.flatCallback(cal);
            }

            if (update && p.singleClick && cal.dateClicked) {                
                CheckDate(p.inputField.id);
                cal.callCloseHandler();
            }
        };

    $(document).ready(function () {             
        Calendar.setup(
            {
                inputField   : "fechaIni",
                button       : "f-trigger-fechaIni",
                ifFormat     : "%d/%m/%Y",
                daFormat     : "%d/%m/%Y",          
                weekNumbers  : false,
        		align        : "Tl",
        		singleClick  : true,
                firstDay     : 1,                
                onSelect      : actualiza_fecha
            }   
        );
    
        $.variables = {}    
        $(".submit").click(function() {
            var form = $("form")[0]
            form.submit();
        });   

        $(".check_date").change(function() {            
            CheckDate(this.name);
        }); 
        
    });    
    
