		MsjAirport="Ciudad o Aeropuerto";
    MsjCiudad="Especifique una ciudad";
    altMsjCiudad="Por favor especifique una ciudad";
		altMsjAirport="Por favor seleccione un aeropuerto de origen.";
		altMsjDate="Debe Seleccionar una Fecha de Salida";
		NFOrigen="Por favor seleccione un aeropuerto de origen.";
		NFDestino="Por favor seleccione un aeropuerto de destino."
		PosadaAllIclusive="Puede seleccionar como m\u00E1ximo 4 personas por habitaci\u00F3n.";
		FalseHotel="Por favor seleccione un hotel";
		FormatO="dd/mm/yyyy";
		IndexMM=1;
		IndexDD=0;
		MsjAllInclusive="M\u00E1ximo 4 personas por habitaci\u00F3n, incluyendo ni\u00F1os.";
		MsjHotel="Seleccione un hotel por favor.";
		IDioMA="es";
    var cache = {};
    var cachePQ = {};
		jQuery(document).ready(function() {
      jQuery("#txtCityName").autocomplete({
          minLength: 2,
          delay: 1000,
          source: function(request, response) {
              if (request.term in cache) {
                  response(cache[request.term]);
                  return;
              }
              jQuery.ajax({
                  //url: "/test/generic/ajax?",
                 // url: "/AJAX/?",
                  //dataType: "json",
                  //---
                  // Callback - JSONP
                  url: "http://partners.clickhotels.com/AJAX/DestinationsJSONP?idioma=" + "es",
                  dataType: "jsonp",
                  //---
                  data: request,
                  success: function(data) {
                      cache[request.term] = data;
                      response(data);
                  }
              });
          },
          select: function(event, ui) {
              //alert("selection: " + ui.item.key + " : " + ui.item.label + " : " + ui.item.country);
              jQuery("#txtCityName").val(ui.item.desc);
              jQuery("#destination").val(ui.item.dest_id);
              jQuery("#city").val(ui.item.city_id);
              jQuery("#country").val(ui.item.country_id);
              return false;
          }
      }).data("autocomplete")._renderItem = function(ul, item) {
          return jQuery("<li></li>")
      .data("item.autocomplete", item)
      .append(jQuery("<a></a>, ").text(item.desc))
      .appendTo(ul);
      };
			$("#Leavingfrom").autocomplete({
				minLength: 2,
				delay: 1000,
				source: function(request, response) {
					if (request.term in cachePQ) {
						response(cachePQ[request.term]);
						return;
					}
					$.ajax({
						// Callback - JSONP
						//	                url: "http://partners.clickhotels.com/AJAX/DestinationsJSONP?idioma=<%= Resources.General.LanguageId %>",
						url: "http://partners.clickhotels.com/AJAX/AirportsJSONP?idioma="+IDioMA,
						dataType: "jsonp",
						data: request,
						success: function(data) {
							cachePQ[request.term] = data;
							response(data);
						}
					});
				},
				select: function(event, ui) {
					//alert("selection: " + ui.item.id + " : " + ui.item.desc_name + " : " + ui.item.desc);
					$("#Leavingfrom").val(ui.item.desc);
					$("#CodeAirport").val(ui.item.id);
					return false;
				}
			}).data("autocomplete")._renderItem = function(ul, item) {
				return $("<li></li>")
			    .data("item.autocomplete", item)
			    .append($("<a></a>, ").text(item.desc))
			    .appendTo(ul);
			};
      jQuery("#ciudades").autocomplete({
          minLength: 2,
          delay: 1000,
          source: function(request, response) {
              if (request.term in cache) {
                  response(cache[request.term]);
                  return;
              }
              jQuery.ajax({
                  // Callback - JSONP
                  url: "http://partners.clickhotels.com/AJAX/DestinationsJSONP?idioma="+IDioMA,
                  dataType: "jsonp",
                  data: request,
                  success: function(data) {
                      cache[request.term] = data;
                      response(data);
                  }
              });
          },
          select: function(event, ui) {
              //alert("selection: " + ui.item.key + " : " + ui.item.label + " : " + ui.item.country);
              jQuery("#ciudades").val(ui.item.desc);
              jQuery("#HADestino").val(ui.item.dest_id);
              return false;
          }
      }).data("autocomplete")._renderItem = function(ul, item) {
          return jQuery("<li></li>")
      .data("item.autocomplete", item)
      .append(jQuery("<a></a>, ").text(item.desc))
      .appendTo(ul);
      };
      jQuery('select').customStyle();
		});
    
			jQuery(document).ready(function(){
				jQuery(".rbxDateFrom").each(function(){
					jQuery(this).datepick({
						dateFormat: FormatO,
						showOnFocus: true,
						//defaultDate: +7,
						selectDefaultDate: true,
						minDate:0,
						maxDate:"+1y",
						monthsToShow: 1,
						//showTrigger: "#GalFrom",
						onSelect: customRange
					});
				});

				jQuery(".rbxDateTo").each(function(){
					jQuery(this).datepick({
						dateFormat: FormatO,
						showOnFocus: true, 
						//defaultDate: +14,
						selectDefaultDate: true,
						minDate:+3,
						maxDate:"+1y +1d",
						monthsToShow: 1,
						//showTrigger: "#GalTo",
						onSelect: customRange
					});
				});
				/*
				jQuery(".extra #mnSel :nth-child(1)").click(function(){
					jQuery(".extra").removeClass("imgpack");
					jQuery(".extra #mnSel").addClass("DhoteL");
				});
				jQuery(".Sel2").click(function(){
					jQuery(".extra").addClass("imgpack");
					jQuery(".extra #mnSel").removeClass("DhoteL");
					
				});*/
			});
			function customRange(dates) { 
				var FormA=jQuery(this).parent(0).parent(1).attr('id');
				var xFchA=jQuery(this).attr('class');
				var xCDTGn='#'+FormA+" .rbxDateTo"; //xCalendarDateToGeneric 
				var xCDFGn='#'+FormA+" .rbxDateFrom"; //xCalendarDateFromGeneric 
				var xOCDTGn=jQuery(xCDTGn);
				var xOCDFGn=jQuery(xCDFGn);
				xCDTGn=xOCDTGn.val();
				xCDFGn=xOCDFGn.val();
			//ESTA SECCIÓN IDENTIFICA A QUE CALENDARIO SE LE DA CLICK
				if (xFchA.indexOf('rbxDateFrom')>=0){
					var DatesFromDateFrm=jQuery(this).val();
					var DatesFromDateTo=xCDTGn;
					var date = new Date(dates[0]); 
					jQuery.datepick.add(date,'+3', 'd'); 
					DatesFromDateTo==""?xOCDTGn.val(jQuery.datepick.formatDate(date)):xOCDTGn.val(xOCDTGn.val());
					var tempDFrm=DatesFromDateFrm.split("/");
					//alert(tempDFrm);
					var tempDTo=DatesFromDateTo.split("/");
					var tempNewDFrm=tempDFrm[2]+"/"+tempDFrm[1]+"/"+tempDFrm[0];
					var tempNewDTo=tempDTo[2]+"/"+tempDTo[1]+"/"+tempDTo[0];
					tempNewDFrm>=tempNewDTo ? xOCDTGn.val(jQuery.datepick.formatDate(date)) : xOCDTGn.val(xOCDTGn.val()) ;
					var DateFrmx=jQuery.datepick.formatDate(dates[0]);
					var DateTox=xOCDTGn.val();
					var ArrayDateFrmx=DateFrmx.split("/");
					var ArrayDateTox=DateTox.split("/");
					//ELEMENTOS CALENDARIO ANTERIOR FROM
						//Dia
						jQuery("#"+FormA+' input[name=dia_desde]').val(ArrayDateFrmx[IndexDD]);
						//Mes
						jQuery("#"+FormA+' input[name=mes_desde]').val(ArrayDateFrmx[IndexMM]);
						//Anio
						jQuery("#"+FormA+' input[name=anio_desde]').val(ArrayDateFrmx[2]);
					//ELEMENTOS CALENDARIO ANTERIOR TO
						//Dia
						jQuery("#"+FormA+' input[name=dia_hasta]').val(ArrayDateTox[IndexDD]);
						//Mes
						jQuery("#"+FormA+' input[name=mes_hasta]').val(ArrayDateTox[IndexMM]);
						//Anio
						jQuery("#"+FormA+' input[name=anio_hasta]').val(ArrayDateTox[2]);
				}
				else
				{
					var DatesFromDateFrm=xCDFGn; 				//Fecha de Salida
					var DatesFromDateTo=jQuery(this).val();		//Fecha de Regreso
					var date = new Date(dates[0]); 
					jQuery.datepick.add(date,'-3', 'd'); 
					xOCDFGn.val()=="" ? xOCDFGn.val(jQuery.datepick.formatDate(date)):xOCDFGn.val(xOCDFGn.val());
					var tempDFrm=DatesFromDateFrm.split("/");
					var tempDTo=DatesFromDateTo.split("/");
					var tempNewDFrm=tempDFrm[2]+"/"+tempDFrm[1]+"/"+tempDFrm[0];
					var tempNewDTo=tempDTo[2]+"/"+tempDTo[1]+"/"+tempDTo[0];
					tempNewDTo<=tempNewDFrm ? xOCDFGn.val(jQuery.datepick.formatDate(date)): xOCDFGn.val(xOCDFGn.val());
					var DateFrmx=xOCDFGn.val();
					var DateTox= jQuery.datepick.formatDate(dates[0]);
					var ArrayDateFrmx=DateFrmx.split("/");
					var ArrayDateTox=DateTox.split("/");
					//ELEMENTOS CALENDARIO ANTERIOR FROM
						//Dia
						jQuery("#"+FormA+' input[name=dia_desde]').val(ArrayDateFrmx[IndexDD]);
						//Mes
						jQuery("#"+FormA+' input[name=mes_desde]').val(ArrayDateFrmx[IndexMM]);
						//Anio
						jQuery("#"+FormA+' input[name=anio_desde]').val(ArrayDateFrmx[2]);
					//ELEMENTOS CALENDARIO ANTERIOR TO
						//Dia
						jQuery("#"+FormA+' input[name=dia_hasta]').val(ArrayDateTox[IndexDD]);
						//Mes
						jQuery("#"+FormA+' input[name=mes_hasta]').val(ArrayDateTox[IndexMM]);
						//Anio
						jQuery("#"+FormA+' input[name=anio_hasta]').val(ArrayDateTox[2]);
				}
			}
			function newControls(obj){
				obj=obj+",.datepick-nav a";
				jQuery(obj).bind('click',function (){
					dtpkmes=jQuery('.datepick-month .datepick-month-header :nth-child(1) option:selected').html();
					dtpkanio=jQuery('.datepick-month .datepick-month-header :nth-child(2) option:selected').html();
					dtpkclose="X";
					jQuery("#datepick-nav,#datepick-month-header").remove();
					jQuery('.datepick div:first').hide();
					jQuery('.datepick-month .datepick-month-header').hide();
					jQuery('.datepick-month-row').before('<div class="datepick-month-header" id="datepick-month-header"><span id="dtpkmes">'+dtpkmes+' </span><span id="dtpkanio"> '+dtpkanio+'</span><a id="dtpkclose" href="javascript:void(0)">'+dtpkclose+'</a></div>');
					jQuery('#dtpkclose').live('click',function(){jQuery('.datepick-cmd.datepick-cmd-close').click();});
					jQuery('.datepick-ctrl').hide();
					jQuery('.datepick-ctrl').before('<div class="datepick-nav" id="datepick-nav"><a class="datepick-cmd datepick-cmd-prev" id="datepick-prev" href="javascript:void(0)">&lt;Ant</a><a class="datepick-cmd datepick-cmd-today" id="datepick-today" href="javascript:void(0)">Hoy</a><a class="datepick-cmd datepick-cmd-next" id="datepick-next" href="javascript:void(0)">Sig&gt;</a></div>');
					jQuery('.datepick-nav a').html('');
				});
			}
			jQuery(document).ready(function(){
				newControls(".cal, .hasDatepick");
//				jQuery('.mySelectBoxClass').customStyle();
			});
			jQuery('#datepick-prev').live('click',function(){
					newControls('#datepick-prev');
					jQuery('.datepick div:first .datepick-cmd.datepick-cmd-prev').click();
			});
			jQuery('#datepick-today').live('click',function(){
				newControls('#datepick-today');
				jQuery('.datepick div:first .datepick-cmd.datepick-cmd-today').click();
			});
			jQuery('#datepick-next').live('click',function(){
				newControls('#datepick-next');
				jQuery('.datepick div:first .datepick-cmd.datepick-cmd-next').click();
			});
      jQuery(document).ready(function(){
        jQuery("#extra .Sel2").click(function(){
          jQuery("#extra #mnSel").removeClass("hotel tour");
          jQuery("#extra #mnSel").addClass("paquete");
        });
        jQuery("#extra .Sel3").click(function(){
          jQuery("#extra #mnSel").removeClass("hotel paquete");
          jQuery("#extra #mnSel").addClass("tour");
        });
        jQuery(".extra #mnSel :nth-child(1)").live('click',function(){
          jQuery("#extra #mnSel").removeClass("paquete tour");
          jQuery("#extra #mnSel").addClass("hotel");
        });
      });
      function SelOpc(numero,total,form)
      {
        var x=1;
        jQuery("#mnSel a").click(function(){
          while(x<=total)
          {
            jQuery("#mnSel a:nth-child("+x+")").removeClass("Sel1A Sel2A Sel3A Sel4A Sel5A Sel6A");
            jQuery("#mnSel a:nth-child("+x+")").addClass("Sel"+x);
            x=x+1;
          }
          jQuery(this).removeClass(jQuery(this).attr('class'));
          jQuery(this).addClass("Sel"+numero+"A");
        });
        jQuery(".extra .RBCt2 .RBCt form").hide();
        jQuery(".extra .RBCt2 .RBCt #"+form).show();
      }
      jQuery(document).ready(function(){
        jQuery(".extra select[name=num_cuartos]").change(function(){
          if (jQuery(this).val()==1)
          {
            jQuery("#DivHab_2").hide();
          }
          else
          {
            jQuery("#DivHab_2").show();
          }
        });
        jQuery("#num_ninos").change(function(){
          jQuery("#DivTablaNinos_1").hide();
          if (jQuery("#num_ninos_2").val()==0){jQuery("#DivTablaNinos").hide();}
          if(jQuery(this).val()>0)
          {
            jQuery("#DivTablaNinos").show();
            jQuery("#DivTablaNinos_1").show();
          }
          if(jQuery(this).val()==1)
          {
            jQuery(".extra .Eda1").show();
            jQuery(".extra .wcs6").show();
            jQuery(".extra .Eda2").hide();
            jQuery(".extra .wcs7").hide();
          }
          if(jQuery(this).val()==2)
          {
            jQuery(".extra .Eda1").show();
            jQuery(".extra .wcs6").show();
            jQuery(".extra .Eda2").show();
            jQuery(".extra .wcs7").show();
          }
        });
        jQuery("#num_ninos_2").change(function(){
          jQuery("#DivTablaNinos_2").hide();
          if (jQuery("#num_ninos").val()==0){jQuery("#DivTablaNinos").hide();}
          if(jQuery(this).val()>0)
          {
            jQuery("#DivTablaNinos").show();
            jQuery("#DivTablaNinos_2").show();
          }
          if(jQuery(this).val()==1)
          {
            jQuery(".extra .Eda3").show();
            jQuery(".extra .wcs8").show();
            jQuery(".extra .Eda4").hide();
            jQuery(".extra .wcs9").hide();
          }
          if(jQuery(this).val()==2)
          {
            jQuery(".extra .Eda3").show();
            jQuery(".extra .wcs8").show();
            jQuery(".extra .Eda4").show();
            jQuery(".extra .wcs9").show();
          }
        });
        jQuery("#formapackage").submit(function(){
          if(jQuery("#formapackage #Leavingfrom").val()==MsjAirport)
          {
            alert(altMsjAirport);
            return(false);
          }
          if(jQuery("#formapackage #ciudades").val()==MsjAirport)
          {
            alert(NFDestino);
            return(false);
          }
          if(jQuery(".extra #formapackage .rbxDateFrom").val()==""||jQuery(".extra #formapackage .rbxDateTo").val()=="")
          {
            alert(altMsjDate);
            return(false);
          }
        });
        jQuery("#formahotel").submit(function(){
          if(jQuery("#txtCityName").val()=="" || jQuery("#txtCityName").val()==MsjCiudad)
          {
            alert(altMsjCiudad);
            return(false);
          }
          if(jQuery(".extra #formahotel .rbxDateFrom").val()==""||jQuery(".extra #formahotel .rbxDateTo").val()=="")
          {
            alert(altMsjDate);
            return(false);
          }
        });
      });
      function DfltIn(obj,dflt){
       if(obj.value==dflt){
       obj.dflt=obj.value;
       obj.value='';
       obj.onblur=DfltOut;}
      }

      function DfltOut(){ 
      if(this.value==''&&this.dflt)this.value=this.dflt;
      }
