﻿/*
 var responseLink = null;

 function yandexAutoComplete($el, selectHandler) {
 $el.autocomplete({
 source: function(request, response) {
 var term = encodeURIComponent(request.term);
 responseLink = response;
 jQuery.getScript("http://suggest-maps.yandex.ru/suggest-geo?format=json&_=1300282255720&ll=37.609218%2C55.753559&spn=2.223358%2C0.534389&highlight=1&fullpath=1&sep=1&search_type=all&part=" + term + "&callback=callback");
 },
 minLength: 3,
 select: function(event, ui) {
 if (selectHandler) {
 selectHandler(ui.item);
 }
 }
 });


 }

 function callback() {
 var data = arguments[0];
 responseLink(jQuery.map(data[1], function(item) {
 if ((item[0] == "maps" || item[0] == "maps-sep") && (item[2].search(/(Москва|Московская область|Moscow)/) >= 0)) {
 return {
 label: item[2],
 value: item[2]
 }
 }
 }));
 }
 */
jQuery(function($) {
    function yandexAutoComplete($el) {
        if ($el.autocomplete) {
            $el.autocomplete("destroy")
        }
        $el.autocomplete({
            source: function(request, response) {
                var term = encodeURIComponent(request.term);
                $.ajax({
                    url : "http://suggest-maps.yandex.ru/suggest-geo?format=json&_=1300282255720&ll=37.609218%2C55.753559" +
                        "&spn=2.223358%2C0.534389&highlight=1&fullpath=1&sep=1&search_type=all&part=" + term,
                    dataType : "jsonp",
                    success : function(data) {
                        response($.map(data[1], function(item) {
                            if ((item[0] == "maps" || item[0] == "maps-sep") && (item[2].search(/(Москва|Московская область|Moscow)/) >= 0)) {
                                return {
                                    label: item[2],
                                    value: item[2]
                                }
                            }
                        }));
                    }
                });
            },
            minLength: 3
        });
    }

    function search() {
        var begin = $.trim($("#indexBegin").val());
        var end = $.trim($("#indexEnd").val());
        if (begin && end) {
            var searchObj = {
                begin : begin,
                end : end,
                carType    : carType
            };
            $.jStorage.set("searchObj", searchObj);
            $.cookie("searchObj", JSON.stringify(searchObj));

            window.open("/calculator-taxi", "_self");
        } else {
            if (!begin) {
                alert("Заполните, пожалуйста, улицу A");
            } else if (!end) {
                alert("Заполните, пожалуйста, улицу B");
            }
        }
    }

    var carType = 0;
    $("#indexBegin,#indexEnd").addClass("ui-widget ui-widget-content ui-corner-all");
    $("#economButton, #comfortButton, #businessButton, #premiumButton, #indexFindButton").button();
    $('#carType').selectmenu({style:'dropdown'});
    /*
     yandexAutoComplete($('#indexBegin'), function(data) {

     });
     yandexAutoComplete($('#indexEnd'), function(data) {

     });
     */
    yandexAutoComplete($('#indexBegin'));
    yandexAutoComplete($('#indexEnd'));
    $("#economButton").click(function() {
        carType = 0;
        search();
    });
    $("#comfortButton").click(function() {
        carType = 1;
        search();
    });
    $("#businessButton").click(function() {
        carType = 2;
        search();
    });
    $("#premiumButton").click(function() {
        carType = 3;
        search();
    });
});
