$(function(){
    $("#lSlide").click(function(){
       var close=$("#lSlide img").attr("src").indexOf("Close")>0;
       if(close){
         $("#dOverlay").animate({"left": "+=375px"}, {duration: 400,
         complete: function() {
           $("#dOverlay #dOverlayContent").hide();
           $("#dOverlay #dBar2").hide();
           $("#lSlide img").attr("src","assets/i/panelOpen.gif");
         }});
       }else{
         $("#dOverlay #dOverlayContent").show();
         $("#dOverlay #dBar2").show();

         $("#dOverlay").animate({"left": "-=375px"}, {duration: 400,
         complete: function() {
           $("#lSlide img").attr("src","assets/i/panelClose.gif");
         }});
       }
       return false;
    });

    $("#lBook img, #lMakeBooking img, #lConfirmBooking img").hover(
      function() {this.src = this.src.replace("_off","_on");},
      function() {this.src = this.src.replace("_on","_off");}
    );

    Date.firstDayOfWeek = 6;

    if($('#dBookCal').length>0)
        $.ajax({dataType : "json",  url: "book/calData.php",
         success: function(data){      
              $('#dBookCal').datePickerMultiMonth({
        			numMonths: 4,
        			inline: true,
                    selectWeek:true,
                    selectMultiple:true,
        			renderCallback:function($td, thisDate, month, year)	{
                        var m=(month+1);
                        m=((m<10)?'0':'')+m;
                        var bookedM=data.data[m+'-'+year];
                        if(bookedM){
                            var dateVal=bookedM['d'+thisDate.asString('dd')];
                            if(dateVal){
                                $td.addClass('disabled');
                                if(dateVal=='b')
                                    $td.addClass('booked');
                            }
                        }
        			}
        		}
        	  );
         },
         error: function(){
            showAlert("We are unable read booking data, please try again later.");
         }         
       }); 

    if ($('#dContentMakeBooking').length>0) setupMakeBookingPage();

    $("#lMakeBooking").click(function(){submitDates(); return false;});
});

function submitDates(){
    var selWeeks=$('#dBookCal').dpmmGetSelected();
    var weeks=selWeeks.length

    var okToBook=false;
    if(weeks==0){
        showAlert("must select a week");
    }else
    if(weeks>2){
        showAlert("if you would like to book more than 2 weeks, please call us");
    }else
    if(weeks==2){
        var daysBet=selWeeks[1].getDayOfYear()-selWeeks[0].getDayOfYear();
        if(Math.abs(daysBet)==7)
            okToBook=true;
        else
            showAlert("you must book consecutive weeks");
        
    }else okToBook=true;


    if(okToBook){   
        var f=$("#fBook");
        $("#week1",f).val(selWeeks[0].asString('yyyy-mm-dd'));
        if(weeks==2) $("#week2",f).val(selWeeks[1].asString('yyyy-mm-dd')); else $("#week2",f).val('');
        f.submit();
    }
}

function setupMakeBookingPage(){
    var fromDate=Date.fromString($("#frmMakeBooking #week1").val(),'yyyy-mm-dd');
    var wk2=$("#frmMakeBooking #week2").val();
    var toDate=Date.fromString($("#frmMakeBooking #week"+((wk2.length>0)?'2':'1')).val(),'yyyy-mm-dd');
    toDate.addDays(7);        

    $("#lblFromDate").html(fromDate.asString('dd mmmm'));
    $("#lblToDate").html(toDate.asString('dd mmmm yyyy'));

    $("#lTandCs").click(function(){$("#dlgTandC").modal({overlayClose:true, minHeight : 400, minWidth : 600}); return false;});
    $("#lnkTandCCancel").click(function(){$.modal.close(); return false;});

    $("#lnkBedCancel").click(function(){$("#frmMakeBooking #bedding").attr("checked",false);$.modal.close(); return false;});
    $("#lnkBedOK").click(function(){$.modal.close(); return false;});

    $("#frmMakeBooking #lWhatIsFoodHamper").click(function() { 
        $("#dlgWhatIsFoodHamper").modal({overlayClose:true, minWidth:400, minHeigh:200});
        return false;
    });


    $("#frmMakeBooking #foodHamper").click(function() { 
        if ($(this).attr("checked") == true){
            $("#foodHamperPrice").html("&pound; 99");
        }else{
            $("#foodHamperPrice").html("");
        }
    });


    $("#frmMakeBooking #bedding").click(function() { 
        if ($(this).attr("checked") == true){
            $("#dlgBedding").modal({overlayClose:true, minWidth:400, minHeigh:200, onClose: function (dialog) {
         		$.modal.close();
            }});
        }else{
        }
    });

    $("#frmMakeBooking").validate();
    $("#lConfirmBooking").click(function(){makeBooking(); return false;});
}

function makeBooking(){
   if($("#frmMakeBooking").valid()){
       var formData=$("#frmMakeBooking :input").serialize(); 
       $("#frmMakeBooking :input").attr("disabled", "disabled");
       $.ajax({
         type: "post",
         dataType : "json",
         url: "/book/doBooking.php",
         data: formData,
         success: function(data){      
            if(data.result=="ok"){
               showAlert("Booking taken");
            }else 
               showAlert(data.result);
         },
         error: function(){
            showAlert("There was an error making your booking");
         }
       });   
       $("#frmMakeBooking :input").removeAttr("disabled");
   }
}

function showAlert(message){
    alert(message);
}





