function cat_left_sub(id)
{
    $("#" + id + " ul").toggle('medium');
    $("#" + id + " a:eq(0)").toggleClass('hover');
    $("#" + id).toggleClass('hover');    
}

function cat_left(link)
{
    $(' + ul', link).toggle(400);
}

function showPackage(name, pdf, img_src, img_width, img_height)
{
    $('#detail_info').hide().empty();
    $('#detail_info').append('<h4>' + name + '</h4><img src="' + img_src + '" width="' + img_width + '" height="' + img_height + '"><div><a href="' + pdf + '" target="_blank"><img src="/templates/www/keccorp/images/pdf_icon.gif" width="16" height="16"></a>&nbsp;&nbsp;<a href="' + pdf + '" target="_blank">Скачать PDF</a></div>').css('margin-bottom', '20px');
    window.scroll(0,0);
    $('#detail_info').show();
}

function submitSearch(mode)
{
    $('form#form1 input:hidden[name="mode"]').attr({value:0});
    var form = $('form#form1').get(0);
    form.submit();
}

function analogSearch()
{
    $('form#form1').attr({action:'/rus/search_of_analogue.html'});
    var form = $('form#form1').get(0);
    form.submit();
}

function categoriesTree(categories_tree, element_id, fields)
{
    var th = this;
    var categories, element_id, fields;
    
    this.categories = categories_tree;
    this.element_id = element_id;
    this.fields = fields;
    
    this.construct = function()
    {   
        $('#' + this.element_id).append('<div class="list_select"></div><div class="search_fields"></div>');
        this.createSelect(this.categories, 0, 1);
        this.searchFields(this.fields);
    }
    
    this.createSelect = function(list, level, is_first)
    {
        var select = $(document.createElement('select'));
        select.change(this.selectChange).attr({name:'category[' + level + ']'}).focus(function(){
            if ($.browser.msie) {
                $(this).width('auto');
            }                        
        }).blur(function(){
            if ($.browser.msie) {
                $(this).width('120px');
            }
        });
        
        
        
        var option = $(document.createElement('option'));
        option.attr({value:-1}).text('---');
        option.appendTo(select);

        var child_pos = 0;
        for (var i in list) {
            var option = $(document.createElement('option'));
            option.attr({value:list[i].id}).text(list[i].name);
            
            if (is_first && list[i].selected == 1) {
                option.attr({selected:1});
                child_pos = i;
            }
            
            option.appendTo(select);
        }
        
        var other_select = $('#' + this.element_id + ' div.list_select select');

        if (other_select.length != 0) {
            $('#' + this.element_id + ' div.list_select').append('<span class="separator">&nbsp;/&nbsp;</span>');
        }
        
        $('#' + this.element_id + ' div.list_select').append(select);
        
//        var tmp = new YAHOO.Hack.FixIESelectWidth('select_level_' + level);
        
        if (is_first && child_pos && list[child_pos].childs.length != 0) {
            this.createSelect(list[child_pos].childs, level+1, is_first);
        }
    }
    
    this.selectChange = function(e)
    {
        var select = $(e.target);
        
        if (select.attr('value') != -1) {
            th.rmSiblingsSelect(select.attr('name'));
            th.setChilds(select.attr('value'));
            
        } else {
            th.rmSiblingsSelect(select.attr('name'));
        }
    }
            
    this.rmSiblingsSelect = function(name)
    {
        $('#' + this.element_id + ' div.list_select select[name="' + name + '"] ~ *').remove();
        $('#' + th.element_id + ' div.search_fields').empty();
    }
    
    this.setChilds = function(parent_id)
    {
        var childs = this.findChilds(parent_id, this.categories);
        
        if (childs.length != 0) {
            this.createSelect(childs, childs[0].level);
        } else {
            $('#' + this.element_id + ' div.search_fields').html('<center>Загрузка...</center>');
            $.getJSON('/ajaj.php', {id:4,category:parent_id}, this.searchFields);
        }
    }    
    
    this.searchFields = function(data)
    {
        $('#' + th.element_id + ' div.search_fields').empty();

        if (typeof(data) == 'undefined') return;
        
        if (data.length == 0) {
            $('#' + th.element_id + ' div.search_fields').html('<center><b>Поиск по данной категории невозможен.</b></center>');
        } else {
            var table = $(document.createElement('table'));
            
            for (var i in data) {
                var tr = $(document.createElement('tr'));
            
                var t_h = $(document.createElement('th'));
                t_h.html(data[i].html).appendTo(tr);
                
                var td = $(document.createElement('td'));
                var input = $(document.createElement('input')).attr({name:'from[' + data[i].id + ']'}).appendTo(td);
                
                if (typeof(data[i].value) != 'undefined' && typeof(data[i].value.from) != 'undefined') {
                    input.attr({value:data[i].value.from});
                }
                
                td.appendTo(tr);
                
                $(document.createElement('td')).text('~').appendTo(tr);
                
                var td = $(document.createElement('td'));
                var input = $(document.createElement('input')).attr({name:'to[' + data[i].id + ']'}).appendTo(td);
                
                if (typeof(data[i].value) != 'undefined' && typeof(data[i].value.to) != 'undefined') {
                    input.attr({value:data[i].value.to});
                }
                
                td.appendTo(tr);                
                
                tr.appendTo(table);
            }
            
            var tr = $(document.createElement('tr')).appendTo(table);
            var td = $(document.createElement('td')).attr({colspan:4}).css({'text-align':'right'}).appendTo(tr);
            $(document.createElement('input')).css({width:'auto'}).attr({type:'submit',value:'поиск'}).appendTo(td);
            
            
            $('#' + th.element_id + ' div.search_fields').append(table);
            $('#' + th.element_id + ' div.search_fields').append();
        }
    }
    
    this.findChilds = function(id, categories)
    {
        for (var i in categories) {
            if (categories[i].id == id) {
                return categories[i].childs;
            } else {
                var res = this.findChilds(id, categories[i].childs);                
                if (typeof(res) == 'object') return res;
            }
        }
        
        return false;
    }
}
