var dayFrom=null;
var dayTo=null;

$(document).ready(function() {
  $("#searchFrom").datepicker({dateFormat:"yy-mm-dd",showButtonPanel:true});
  $("#searchTo").datepicker({dateFormat:"yy-mm-dd",showButtonPanel:true});
    
  $("#dateFrom").droppable({
    accept:".day,.dayReserved3,.dayReserved4,.dayReserved5,.dayReserved6",
    drop:function(ev,ui) {
      var d=$(ui.draggable).attr("id");
      if (d.length>0) {
        $("#dateFrom").val(buildDate(d));
        var sender=$(ui.draggable); 
        sender.addClass("dayLocked");
        if (dayFrom!=null && dayFrom.attr("id")!=sender.attr("id"))
          dayFrom.removeClass("dayLocked");
        dayFrom = sender;
      }
    }
  });
  $("#dateTo").droppable({
    accept:".day,.dayReserved3,.dayReserved4,.dayReserved5,.dayReserved6",
    drop:function(ev,ui) {
      var d=$(ui.draggable).attr("id");
      if (d.length>0) {
        $("#dateTo").val(buildDate(d));
        var sender=$(ui.draggable); 
        sender.addClass("dayLocked");
        if (dayTo!=null && dayTo.attr("id")!=sender.attr("id"))
          dayTo.removeClass("dayLocked");
        dayTo = sender;

      }
    }
  });
//   $("#calendar").ajaxStart(function(){
//     $("#calendar").html("<p><br/><br/><img src='/files/gfx/progress.gif'></p>");
//   });
//   $("#calendar").ajaxStop(function(){});
  
  showCal = function() {
    var apartment=$("#apartment").val();
    $("#calendar").html("<p><br/><br/><img src='/files/gfx/progress.gif'></p>");
    $.ajax(
      {
        type:"POST",
        dataType:"text",
        url:"../../administracja/engine/ajaxCalendar.php",
        data:{reload:1,apartment:apartment},
        error:
          function(xhr) {
            alert("error "+xhr.status+" "+xhr.statusText);
          },
        
        success:
          function(data) {
            $("#calendar").html(data);
            $(".day").draggable();
            $('.day').draggable('option', 'helper', 'clone');
            $(".dayReserved5").draggable();
            $(".dayReserved5").draggable("option","helper","clone");
            $(".dayReserved3").draggable();
            $(".dayReserved3").draggable("option","helper","clone");
            $(".dayReserved4").draggable();
            $(".dayReserved4").draggable("option","helper","clone");
            $(".dayReserved6").draggable();
            $(".dayReserved6").draggable("option","helper","clone");

          }
      }
    );
  }
  
  showCal();
  
  changeCalendar = function(month) {
    var apartment=$("#apartment").val();
    $("#calendar").html("<p><br/><br/><img src='/files/gfx/progress.gif'></p>");
    $.ajax(
      {
        type:"POST",
        dataType:"text",
        url:"../../administracja/engine/ajaxCalendar.php",
        data:{change:month,apartment:apartment},
        error:
          function(xhr) {
            alert("error "+xhr.status+" "+xhr.statusText);
          },
        success:
          function(data) {
            $("#calendar").html(data);
            $(".day").draggable();
            $('.day').draggable('option', 'helper', 'clone');
            $(".dayReserved5").draggable();
            $(".dayReserved5").draggable("option","helper","clone");
            $(".dayReserved3").draggable();
            $(".dayReserved3").draggable("option","helper","clone");
            $(".dayReserved4").draggable();
            $(".dayReserved4").draggable("option","helper","clone");
            $(".dayReserved6").draggable();
            $(".dayReserved6").draggable("option","helper","clone");
          }
      }
    );
  }
  
  checkForm = function() {
    $.ajax(
      {
        type:"POST",
        dataType:"text",
        url:"../../administracja/engine/ajaxCalendar.php",
        data:{validate:1,startDate:$("#dateFrom").val(),endDate:$("#dateTo").val(),person:$("#person").val(),apartment:$("#apartment").val(),
          userName:$("#name").val(),email:$("#email").val(),phone:$("#phone").val(),zipcode:$("#zipcode").val(),
          city:$("#city").val(),question:$("#question").val()},
        error:
          function(xhr) {
            alert("error "+xhr.status+" "+xhr.statusText);
          },
        success:
          function(data) {
            var dArray = data.split("|");
            if (dArray[0]=="OK") {
              displayConfirmation(dArray[1]);
            } else {
              alert(data);
            }
//             if(data=="OK")
//               statusOK=true;
//             else
//               statusOK=false;
//             if(statusOK)
//               showCal();
//             else
//               alert(data);
          }
      }
    );
    //$("#addReservationButton").val("1");
    //document.forms["reservationForm"].submit();
  }
  
  saveReservation = function() {
    $("#calendar").html("<p><br/><br/><img src='/files/gfx/progress.gif'></p>");
    $.ajax(
      {
        type:"POST",
        dataType:"text",
        url:"../../administracja/engine/ajaxCalendar.php",
        data:{save:1,startDate:$("#dateFrom").val(),endDate:$("#dateTo").val(),person:$("#person").val(),
          apartment:$("#apartment").val(),userName:$("#name").val(),email:$("#email").val(),
          phone:$("#phone").val(),zipcode:$("#zipcode").val(),
          city:$("#city").val(),question:$("#question").val()},
        error:
          function(xhr) {
            alert("error "+xhr.status+" "+xhr.statusText);
          },
        success:
          function(data) {
            var dArray = data.split("|");
            if (dArray[0]=="OK") {
              $("#form").text("");
              $("#confirmation").html(dArray[1]);
            } else {
              alert(data);
            }
          }
      }
    );
  }  
  
  clear=function(field) {
    $("#"+field+"").val("");
  }
  
  backToForm = function() {
    var options = {};
    $("#confirmation").toggle("blind",options,1000);
    $("#form").show("blind",options,1000);
  }
  
  displayConfirmation = function(data) {
    var options={};
    $("#form").toggle("blind",options,1000);
    $("#confirmation").html(data);
    $("#confirmation").show("blind",options,1000);
  }
  
  search = function() {
    if ($("#searchFrom").val() && $("#searchTo").val())
      document.forms["searchForm"].submit();
  }

});


  
buildDate = function(day) {
    
  var dateArray=day.split("_");
  day=dateArray[1];
  month=dateArray[2];
  year=dateArray[3];
  if (day<10)
    day = "0"+day;
  
  return year+"-"+month+"-"+day;
}
