var item_suggest_count=0;
var item_suggest_selected=0;
var input_initial_value='';
var shop_opensearch_url="http://kolomenka.ru/opensearch/items/?txt=";
var this_element;
var item_price_element;

$(window).load(function(){
        //if(!search_suggestion_url)return;
        var typingTimer;                //timer identifier
        var doneTypingInterval = 42;  //time in ms

        if(document.getElementById('search_suggestion')==null){
              //  $("body").append($('<textarea id="debug" style="width:600px; height:500px;"></textarea>'));
                //pa=document.getElementById('suggest_address');
                //rr=getDim(pa);
                var pos_left = 0;
                var pos_top = 0;
                $('<ul id="search_suggestion"></ul>').appendTo('body').css({'display':'none','position':'absolute','left':pos_left,'top':Math.ceil(pos_top)});
        }

        //$("#suggest_address").focus();
        //$("#suggest_address").select();

        //Если keyup, start the countdown
        $(".suggest_item").live("keyup",function(I){
                switch(I.keyCode) {
                        case 18:case 9: break;
                        case 38:case 40:break;
                        default: typingTimer = setTimeout(item_doneTyping, doneTypingInterval);
                        break;
                }
        });

        $('html').click(function(){
                item_price_element=undefined;
                $('#search_suggestion').hide();
        });

        $('#search_suggestion').click(function(event){
                if(suggest_count)
                        $('#search_suggestion').show();
                event.stopPropagation();
        });

        $(".suggest_item").live("focusin",function(){
                this_element=this;
                item_price_element=$(this).parent().next().next().next().children('.item_price');
                reposition_search_suggestion(this);
                typingTimer = setTimeout(item_doneTyping, doneTypingInterval);
                if(suggest_count)
                        $('#search_suggestion').show();
        });

        $("#suggest_address").live("focusin",function(){
                item_price_element=undefined;
        });

        $(".suggest_item").live("click",function(event){
                this_element=this;
                $(this).next('.item_price').attr('value','test');
                item_price_element=$(this).parent().next().next().next().children('.item_price');
                reposition_search_suggestion(this);
                if(suggest_count)
                        $('#search_suggestion').show();
                if(suggest_selected>0){
                        $('#search_suggestion li').eq(suggest_selected-1).removeClass('active');
                        suggest_selected=0;
                        $(this).attr('value',input_initial_value);
                }
                event.stopPropagation();
        });
        $(".suggest_item").live("keypress",function(J){
         //       alert('test')
                switch(J.keyCode) {
                        case 13:
                                if(suggest_selected==0)
                                        $(this).closest("form").submit();
                                else {
                                        window.location=$('#search_suggestion li a').eq(suggest_selected-1).attr('href');
                                        confirm_search();
                                        J.preventDefault();
                                }
                                return false;
                        case 27:
                                return false;
                }
        });
        
        //on keydown, clear the countdown
        $(".suggest_item").live("keydown",function(I){
                this_element=this;
              //  item_price_element=$(this).parent().next().next().next().children('.item_price');
              //  reposition_search_suggestion(this);
              //  document.title=I.keyCode;
                switch(I.keyCode) {
                        case 18:case 9: $('#search_suggestion').hide();break;
                        case 38:case 40:
                                I.preventDefault();
                                if(suggest_count)
                                        key_activate(I.keyCode-39)
                        break;
                        case 13:break;
                        case 27:
                                $(this).click();
                        break;
                        default:
                                clearTimeout(typingTimer);
                        break;
                }
        });


        function item_doneTyping(){
                // shop_opensearch_url=shop_opensearch_urls_array[$('#shop_id').val()];
                if(!shop_opensearch_url){
                        $('#debug').val("Выберите магазин сначала");
                        return;
                }
                $("body").append($('<script charset="utf-8" src="'+shop_opensearch_url+escape((encode_utf8($(this_element).attr("value"))))+'&callback=item_show_suggestion">'));
        }
});

function item_show_suggestion(res){
/*        $('#debug').val(' ');
        for(i in res){
                var str=$('#debug').val();
                $('#debug').val(str+"\r\n"+i+':'+res[1]);
        }*/
        if(res[1] && res[1].length){
                input_initial_value=res[0];
                suggest_count=res[1].length;
                suggest_selected=0;
                $('#search_suggestion li').each(function(){$(this).remove()});
                for(i in res[1]){
                        if(typeof res[2][i]=='undefined' || typeof res[1][i]=='function')
                                continue;
                        var option = document.createElement("li")
                        option.innerHTML='<a href="'+res[3][i]+'">'+res[1][i]+'</a><i><b>'+unhtml(res[2][i])+'</b> р.</i>';
                        document.getElementById('search_suggestion').appendChild(option);
                }
                $('#search_suggestion').show(500);
        }
        else {
                suggest_count=0;
                $('#search_suggestion').hide();
        }
}

function count_price(){

}

