function doChangeBanket(force, rtype, mtype, baseurl, city_url) {
    if (rtype[0] == 'a') {
        var address = null;
        if (document.getElementById('addr_sugg')) {
            if (document.getElementById('addr_sugg').value != 'Улица, дом') {
                address = $.base64Encode(document.getElementById('addr_sugg').value);
            }
        }

        var ur = new String(document.location.href);

        if ((ur + '').indexOf('.addr', 0) != -1) {
            ur = ur.substring(0, (ur + '').indexOf('.addr', 0));
        }

        if ((ur + '').indexOf('.lngt', 0) != -1) {
            ur = ur.substring(0, (ur + '').indexOf('.lngt', 0));
        }

        ur += '.s-1.addr-' + address;

        document.getElementById("found_right").innerHTML = '<a href="' + ur + '"><strong>Показать</strong></a>';
        return 0;
    }


    if (typeof city_url == 'undefined') {
        city_url = '';
    }

    document.getElementById("found_right").innerHTML = '<img src="http://img.rlx.by/images/new-design/al.gif" style="padding-top: 10px;">';
    $('#addr_sugg').val($.base64Encode($('#addr_sugg').val()));
    var no_addr = 0;
    if ($('#addr_sugg').val() == '0KPQu9C40YbQsCwg0LTQvtC8') {
        $('#addr_sugg').val('');
        no_addr = 1;
    }
    $.post('http://www.banket.relax.by/ajax/.hash-32350a01ec20b879763b7a08146588a8', $('#banket_search_form').serialize(), function(data) {

        data = eval("(" + data + ")");

        if (data.show_enabled) {
            $('.b-show').show();
        } else {
            $('.b-show').hide();
        }

        $('#found_bottom').html(data.lnk);
        if (rtype[0] == 'a') {
            document.getElementById("found_right").innerHTML = data.pok;
        } else {
            $('#found_right').html(data.lnk);
        }
    });
    if (no_addr == 1) {
        $('#addr_sugg').val($.base64Decode('0KPQu9C40YbQsCwg0LTQvtC8'));
    }
    $('#addr_sugg').val($.base64Decode($('#addr_sugg').val()));
}




// Вызывается по тайм-ауту или при щелчке на кнопке.
function doChangeType(force, rtype, mtype, baseurl, city_url) {
    if (rtype[0] == 'a') {
        if (document.getElementById('addr_sugg')) {
            if (document.getElementById('addr_sugg').value != 'Улица, дом') {
                address = $.base64Encode(document.getElementById('addr_sugg').value);
            }
        }

        var ur = new String(document.location.href);

        if ((ur + '').indexOf('.addr', 0) != -1) {
            ur = ur.substring(0, (ur + '').indexOf('.addr', 0));
        }
        if ((ur + '').indexOf('.lngt', 0) != -1) {
            ur = ur.substring(0, (ur + '').indexOf('.lngt', 0));
        }
        
        ur += '.s-1.addr-' + address;

        document.getElementById("found_right").innerHTML = '<a href="' + ur + '"><strong>Показать</strong></a>';
        return 0;
    }


    if (typeof city_url == 'undefined') {
        city_url = '';
    }


    document.getElementById("found_right").innerHTML = '<img src="http://img.rlx.by/images/new-design/al.gif" style="padding-top: 10px;">';
    var numCooks = document.getElementsByName('cooks');
    var cook = null;
    var sleep = "";
    var len = "";


    var wt = 0;
    if (document.getElementById('wt')) {
        wt = document.getElementById('wt').value;
    }


    var address = 0;
    if (document.getElementById('addr_sugg')) {
        if (document.getElementById('addr_sugg').value != 'Улица, дом') {
            address = $.base64Encode(document.getElementById('addr_sugg').value);
        }
    }

    var rest_type = 0;
    if (document.getElementById('rest_type')) {
        rest_type = document.getElementById('rest_type').value + '.type-841320';
    }

    var country = 0;
    if (document.getElementById('strana')) {
        country = document.getElementById('strana').value + '.type-841320';
    }

    var city = 0;
    if (document.getElementById('gorod')) {
        city = document.getElementById('gorod').value + '.type-841320';
    }

    var price = 0;
    if (document.getElementById('price')) {
        price = document.getElementById('price').value + '.type-841320';
    }

    var curr = 0;
    if (document.getElementById('curr')) {
        curr = document.getElementById('curr').value + '.type-841320';
    }


    var sc;
    if (document.getElementById('sc')) {
        sc = document.getElementById('sc').value;
    }
    var str;
    if (document.getElementById('str')) {
        str = document.getElementById('str').value;
    }


    if (document.getElementById('sleep')) {
        sleep = document.getElementById('sleep').value;
    }
    if (document.getElementById('length')) {
        len = document.getElementById('length').value;
    }
    var opt = new Array();
    for (var x = 0;
            x < numCooks.length;
            x++) {
        if (numCooks[x].checked) {
            cook = numCooks[x].value;
        }
    }
    // national cookery
    //if (cook == 'nat') cook = document.getElementById('nat').value;
    if (document.getElementById('nat')) {
        cook = document.getElementById('nat').value;
    }

    var numOpt = document.getElementsByName('ent[]');
    for (x in
            numOpt) {
        if (numOpt[x].checked) {
            opt.push(numOpt[x].value);
        }
    }
    /*
     var addOpt = '';
     var addOpts = new Array();
     if (document.getElementById('addopts') && opt.length > 0)
     {
     addOpt = document.getElementById('addopts').value;
     if (addOpt.length > 0)
     {
     addOpts = addOpt.split(',');

     for (x = 0; x < addOpts.length; x++)
     {
     isOptExists = false;
     for (z = 0; z < opt.length; z++)
     if (opt[z] == addOpts[x])
     {
     isOptExists = true;
     break;
     }
     if (!isOptExists)
     opt.push(addOpts[x]);
     }
     }
     }
     if (opt.length == 0) document.getElementById('addopts').value = '';
     */
    // Создаем новый объект JSHttpRequest.
    var req = new Subsys_JsHttpRequest_Js();

    // Код, АВТОМАТИЧЕСКИ вызываемый при окончании загрузки.
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
            if (req.responseJS) {
                document.getElementById("found_bottom").innerHTML = req.responseJS.link + '<br>' + req.responseJS.tlink;
                if (rtype[0] == 'a') {
                    document.getElementById("found_right").innerHTML = req.responseJS.pok;
                } else {
                    document.getElementById("found_right").innerHTML = req.responseJS.link;
                }

                //alert(req.responseJS.link + req.responseJS.tlink);
                /*if (document.getElementById("qry_str"))
                 {
                 keystreet = document.getElementById("qry_str").value;
                 keyhouse = document.getElementById("qry_house").value;
                 }*/




                /*items.each(function(i){
                 if ($(this).is("select")) {
                 $(this).bind("change", function(){
                 posFound($(this));
                 });
                 }
                 else if ($(this).is("input")) {
                 $(this).bind("click", function(){
                 posFound($(this).parent());
                 });
                 }
                 });*/




                document.getElementById("show_button").onclick = function() {
                    /*if (document.getElementById("qry_str"))	{
                     keystreet = document.getElementById("qry_str").value;
                     keyhouse = document.getElementById("qry_house").value;
                     }*/
                    location.href = req.responseJS.show_link;
                };
                //	document.getElementById("show_button").onclick = new Function('location.href=\''+req.responseJS.show_link+'\'');


                if (req.responseJS.show_enabled) {
                    $('.b-show').show();
                }
                //document.getElementById("show_button").disabled = false;
                else {
                    $('.b-show').hide();
                }
                //document.getElementById("show_button").disabled = true;
                //if (req.responseJS.bottomlink)
                //document.getElementById("found_bottom").innerHTML = "<table width=\"100%\"><tr><td style=\"padding:3px;\" nowrap=\"nowrap\"><b>Смотреть с такими же параметрами:</b> </td><td style=\"padding:3px;\" nowrap=\"nowrap\">" + req.responseJS.bottomlink + "</td><td width=\"100%\">&nbsp;</td></tr></table>";
                //else document.getElementById("found_bottom").innerHTML = "";

            }
        }
    };
    // Разрешаем кэширование (чтобы при одинаковых запросах
    // не обращаться к серверу несколько раз).
    req.caching = false;
    // Подготваливаем объект.

    req.open('GET', 'http://' + location.hostname + '/' + baseurl + city_url + '.rtype-' + rtype + '.mtype-' + mtype + '.cook-' + cook + '.sleep-' + sleep + '.len-' + len + '.str-' + str + '.sc-' + sc + '.opt-' + opt + '.sajax-1.wt-' + wt + '.addr-' + address + '.rest-' + rest_type + '.country-' + country + '.rest_city-' + city + '.price-' + price + '.curr-' + curr, true); //+'.keystreet-'+keystreet+'.keyhouse-'+keyhouse
    // Посылаем данные запроса (задаются в виде хэша).
    req.send({cook:cook, opt:opt.join(","), sajax:1, wt:wt});
}

(function($) {

    var keyString = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";

    var uTF8Encode = function(string) {
        string = string.replace(/\x0d\x0a/g, "\x0a");
        var output = "";
        for (var n = 0;
                n < string.length;
                n++) {
            var c = string.charCodeAt(n);
            if (c < 128) {
                output += String.fromCharCode(c);
            } else if ((c > 127) && (c < 2048)) {
                output += String.fromCharCode((c >> 6) | 192);
                output += String.fromCharCode((c & 63) | 128);
            } else {
                output += String.fromCharCode((c >> 12) | 224);
                output += String.fromCharCode(((c >> 6) & 63) | 128);
                output += String.fromCharCode((c & 63) | 128);
            }
        }
        return output;
    };

    var uTF8Decode = function(input) {
        var string = "";
        var i = 0;
        var c = 0;
        var c2 = 0;
        var c3 = 0;

        while (i < input.length) {
            c = input.charCodeAt(i);
            if (c < 128) {
                string += String.fromCharCode(c);
                i++;
            } else if ((c > 191) && (c < 224)) {
                c2 = input.charCodeAt(i + 1);
                string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
                i += 2;
            } else {
                c2 = input.charCodeAt(i + 1);
                c3 = input.charCodeAt(i + 2);
                string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
                i += 3;
            }
        }
        return string;
    };

    $.extend({
        base64Encode: function(input) {
            var output = "";
            var chr1, chr2, chr3, enc1, enc2, enc3, enc4;
            var i = 0;
            input = uTF8Encode(input);
            while (i < input.length) {
                chr1 = input.charCodeAt(i++);
                chr2 = input.charCodeAt(i++);
                chr3 = input.charCodeAt(i++);
                enc1 = chr1 >> 2;
                enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
                enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
                enc4 = chr3 & 63;
                if (isNaN(chr2)) {
                    enc3 = enc4 = 64;
                } else if (isNaN(chr3)) {
                    enc4 = 64;
                }
                output = output + keyString.charAt(enc1) + keyString.charAt(enc2) + keyString.charAt(enc3) + keyString.charAt(enc4);
            }
            return output;
        },
        base64Decode: function(input) {
            var output = "";
            var chr1, chr2, chr3;
            var enc1, enc2, enc3, enc4;
            var i = 0;
            input = input.replace(/[^A-Za-z0-9\+\/=]/g, "");
            while (i < input.length) {
                enc1 = keyString.indexOf(input.charAt(i++));
                enc2 = keyString.indexOf(input.charAt(i++));
                enc3 = keyString.indexOf(input.charAt(i++));
                enc4 = keyString.indexOf(input.charAt(i++));
                chr1 = (enc1 << 2) | (enc2 >> 4);
                chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
                chr3 = ((enc3 & 3) << 6) | enc4;
                output = output + String.fromCharCode(chr1);
                if (enc3 != 64) {
                    output = output + String.fromCharCode(chr2);
                }
                if (enc4 != 64) {
                    output = output + String.fromCharCode(chr3);
                }
            }
            output = uTF8Decode(output);
            return output;
        }
    });
})(jQuery);

