﻿$(function() {
    var cache = {};
    var cachePQ = {};
    /*
    $("#txtCityName").autocomplete({
        minLength: 2,
        delay: 1000,
        source: function(request, response) {
            if (request.term in cache) {
                response(cache[request.term]);
                return;
            }
            $.ajax({
                // Callback - JSONP
                url: "http://partners.clickhotels.com/AJAX/DestinationsJSONP?idioma=esp",
                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);
            $("#txtCityName").val(ui.item.desc);
            $("#destination").val(ui.item.dest_id);
            $("#city").val(ui.item.city_id);
            $("#country").val(ui.item.country_id);
            return false;
        }
    }).data("autocomplete")._renderItem = function(ul, item) {
        return $("<li></li>")
			    .data("item.autocomplete", item)
			    .append($("<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=esp",
                url: "http://partners.clickhotels.com/AJAX/AirportsJSONP?idioma=esp",
                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);
    };
    /*
    $("#ciudades").autocomplete({
        minLength: 2,
        delay: 1000,
        source: function(request, response) {
            if (request.term in cache) {
                response(cache[request.term]);
                return;
            }
            $.ajax({
                // Callback - JSONP
                url: "http://partners.clickhotels.com/AJAX/DestinationsJSONP?idioma=esp",
                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);
            $("#ciudades").val(ui.item.desc);
            $("#HADestino").val(ui.item.dest_id);
            return false;
        }
    }).data("autocomplete")._renderItem = function(ul, item) {
        return $("<li></li>")
			    .data("item.autocomplete", item)
			    .append($("<a></a>, ").text(item.desc))
			    .appendTo(ul);
    };

    $("#bLeavingfrom").autocomplete({
        minLength: 2,
        delay: 1000,
        source: function(request, response) {
            if (request.term in cachePQ) {
                response(cachePQ[request.term]);
                return;
            }
            $.ajax({
                url: "http://partners.clickhotels.com/AJAX/AirportsJSONP?idioma=esp",
                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);
            $("#bLeavingfrom").val(ui.item.desc);
            $("#bCodeAirport").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);
    };

    $("#bciudades").autocomplete({
        minLength: 2,
        delay: 1000,
        source: function(request, response) {
            if (request.term in cachePQ) {
                response(cachePQ[request.term]);
                return;
            }
            $.ajax({
                url: "http://partners.clickhotels.com/AJAX/AirportsJSONP?idioma=esp",
                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);
            $("#bciudades").val(ui.item.desc);
            $("#bClav_Ciudad").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);
    };
    */
});
