

$(document).ready(function(){

  /***	Toggle Visibility Country List	***/
  $("#moreAirportShow").livequery("click",function (event) {
    event.preventDefault();
    //Reset validation
    $("#searchForm").validate().resetForm();
    $("#departureAirportList").rules("add",{required:true});
    $("#arrivalAirportList").rules("add",{required:true});
    //Set components visibility/enability
    $("#moreAirportShow").hide();
    $("#singleAirportShow").show();
    $("#moreAirportBody").show("slow");
    //TextBox Destionations
    $("#departureAirport").attr("disabled", "true");
    $("#departureAirport").addClass("disabled")
    $("#arrivalAirport").attr("disabled", "true");
    $("#arrivalAirport").addClass("disabled")
    $("#body-flight-destination-airports select").attr("disabled", "true");

  });
  
  $("#singleAirportShow").livequery("click",function (event) {
    event.preventDefault();
    //Reset validation
    $("#searchForm").validate().resetForm();
    $("#departureAirportList").rules("remove");
    $("#arrivalAirportList").rules("remove");
    //Set components visibility/enability
    $("#singleAirportShow").hide();
    $("#moreAirportShow").show();
    $("#moreAirportBody").hide("slow");
    //TextBox Destionations
    $("#departureAirport").removeAttr("disabled");
    $("#departureAirport").removeClass("disabled")
    $("#arrivalAirport").removeAttr("disabled");
    $("#arrivalAirport").removeClass("disabled")
    $("#body-flight-destination-airports select").removeAttr("disabled");
    
    
  });

  /***	Toggle Visibility Advanced Search	***/
  $("#showAdvancedSearch").livequery("click",function (event) {
    event.preventDefault();
    $(this).hide();
    $("#hideAdvancedSearch").show();
    $("#boxAdvancedSearch").show();

  });
  $("#hideAdvancedSearch").livequery("click",function (event) {
    event.preventDefault();
    $(this).hide();
    $("#showAdvancedSearch").show();
    $("#boxAdvancedSearch").hide();

  });

  /***  Flight Type Selections  ***/
  $("#tripTypeRound").livequery("click",function () {
//    if($("#moreAirportBody").is(':hidden'))
//    {
//      $("#arrivalAirport").removeAttr("disabled");
//    }
//    $("#inboundDate").removeAttr("disabled");
//    $("#inboundDateImg").removeAttr("disabled");
    $("#inboundDate").rules("add",{required:true});
    $("#flight-arrival-date").show("slow");
    //$("#arrivalAirportList").removeAttr("disabled");
    //$("#arrivalAirportCountryList").removeAttr("disabled");
    //Reset error messages
    $("#searchForm").validate().resetForm();

  });
  $("#tripTypeOneway").livequery("click",function () {
    //$("#arrivalAirport").attr("disabled", "true");
//    $("#inboundDate").attr("disabled", "true");
//    $("#inboundDateImg").attr("disabled", "true");
    $("#inboundDate").rules("remove");
    $("#flight-arrival-date").hide("slow");

//    $("#arrivalAirportList").attr("disabled", "true");
//    $("#arrivalAirportCountryList").attr("disabled", "true");
    //Reset error messages
    $("#searchForm").validate().resetForm();
  });

  /***  Default Validation  **/
  $("#searchForm").validate({
    onkeyup: false,
    rules: {
      departureAirport: {
        required:true,
        notEqualTo: siteSpecificOptions.defaultDepartureText,
        minlength: 4,
        remote:{
          url: "ajax.htm",
          type: "post",
          data: {
            action: "validateAirportName",
            airportPattern: function() { return $("#departureAirport").val(); },
            airportCode: function() { return $("#departureAirportCode").val(); }
          }
        }
      },
      arrivalAirport: {
        required:true,
        notEqualTo: siteSpecificOptions.defaultDepartureText,
        minlength: 4,
        remote:{
          url: "ajax.htm",
          type: "post",
          data: {
            action: "validateAirportName",
            airportPattern: function() { return $("#arrivalAirport").val(); },
            airportCode: function() { return $("#arrivalAirportCode").val(); }
          }
        }
      },
      outboundDate: {
        required:true
      },
      inboundDate: {
        required:true
      },
    //  email: function(element) {
    //  if ( element.attr("value") != "Inserisci indirizzo email")
    //    email: true;
    //   else
    //   email:false;
    // },
      nrAdults: {
        checksum : [["nrAdults","nrChildren","nrInfants"],9]
      },
      nrChildren: {
        checksum : [["nrAdults","nrChildren","nrInfants"],9]
      },
      nrInfants: {
        checksum : [["nrAdults","nrChildren","nrInfants"],9]
      }
    },
    groups: {
      passengerCount : "nrAdults nrChildren nrInfants"
    },
    errorPlacement: function(error, element) {
      idElement = element.attr("id");
      if(idElement == "nrAdults" || idElement == "nrChildren" || idElement == "nrInfants")
        error.appendTo($("#error-message"));
      else
        error.appendTo( element.parent());
   }
  });
  /***  DatePicker  ***/
  $("#outboundDate").datepicker({
    minDate: siteSpecificOptions.minDayDepature,
    onSelect: function(dateText, inst) {
      $("#inboundDate").datepicker( 'option' , "minDate" , $("#outboundDate").datepicker('getDate') )
    }
  });
  $("#inboundDate").datepicker({
    minDate: siteSpecificOptions.minDayDepature + 7,
    onSelect: function(dateText, inst) {
      $("#outboundDate").datepicker( 'option' , "maxDate" , $("#inboundDate").datepicker('getDate') )
    }
  });
});
