function fillBrands()
{
    var sBrands = new htmlSelect('sBrands');
    sBrands.deleteOptions();
    sBrands.addOption("Любая", 0);
    for (var bid in brands)
    {
        sBrands.addOption(brands[bid], bid);
    }

    var sRegions = new htmlSelect('sRegions');
    sRegions.deleteOptions();
    sRegions.addOption("Все регионы", 0);
    for (var rid in regions)
    {
        sRegions.addOption(regions[rid].name, regions[rid].region_id);
    }
}

function fillModels(brandId)
{
    if (!brandId) { return false; }

    var sModels = new htmlSelect('sModels');
    sModels.deleteOptions();
    sModels.addOption("Любая", 0);
    for (var mid in models)
    {
        if (brandId == models[mid]['brand_id'])
        {
            sModels.addOption(models[mid]['name'], mid);
        }
    }
    window.brandId = brandId;
}

function switchTab(evt)
{
    evt = evt || event;
    var elem = evt.srcElement || evt.target;
    var tabs = elem.parentNode.getElementsByTagName("td");
    for (var i=0, len=tabs.length; i<len; i++)
    {
        tabs[i].className = "passive";
        var tid = tabs[i]['id'];
        pf.elem.toggle($(tid.substr(2)+"_offers"), false)
    }
    elem.className = "active";
    pf.elem.toggle($(elem['id'].substr(2)+"_offers"), true)
    $("s_run").style.display = (elem.id=="s_new") ? "none" : "";
    document.forms['searchForm'].sType.value = elem.getAttribute('stype');
}

function restoreSearchParams(paramsList)
{
    var sform = document.forms['searchForm'];
    for (param in paramsList)
    {
        if (sform[param]) 
        {
            sform[param].value = paramsList[param];
            if (param == 'brand') fillModels(paramsList[param])
        }
    }
}

function getCompareCars()
{
    var ids = pf.cookie.get('compare');
    if (!ids) return false;
    return pf.str.toHash(ids);
    return ids.split(",");
}

function setCompareCars(cars)
{
    pf.cookie.set('compare', pf.hash.serialize(cars), '/');//  cars.join(','));
    return true;
}

function addToCompare(id, name)
{
    var cars = getCompareCars();
    if (cars) 
    {
        if (cars[id]) return false;
/*console.log("id="+id);
console.dir(cars);
        for (var i=0, len=cars.length; i<len; i++)
            if (cars[i] == id) return false;
        if (cars.length > 2)
        {
            alert ("В сравнение не может быть добавлено более трех автомобилей");
            return false;
        }*/
        if (pf.hash.getLength(cars) > 2)
        {
            alert ("В сравнение не может быть добавлено более трех автомобилей");
            return false;
        }
        cars[id]=name;
        //cars[cars.length] = id
    } else {
        cars = {};
        cars[id] = name;
    }
    setCompareCars(cars);
    var cContainer = $('compares');
    cContainer.innerHTML = '';
    for (var i=0, len=cars.length ; i<len; i++)
        cContainer.innerHTML += name+"<br/>";
    drawCompareBlock()
}

function removeFromCompare(id)
{
    var cars = getCompareCars();
    var nCars = {};
    for (var i in cars)
        if (pf.$type(cars[i]) != "function" && i!=id)
            nCars[i] = cars[i]
    setCompareCars(nCars);
    drawCompareBlock();
}

function drawCompareBlock()
{
    var cars = getCompareCars();
    var cContainer = $('compares');
    cContainer.innerHTML = '';
    if (!cars)
    {
        cContainer.innerHTML = 'Не выбраны предложения для сравнения';
        return;
    }
    pf.hash.forEach(cars, function(name,id){
        if (!name) return;
        cContainer.innerHTML += name+' (<a href="#" onclick="removeFromCompare('+id+'); return false">удалить</a>)<br/>';
    });
    var keys = pf.hash.getKeys(cars);
    var ids = [];
    var cStr = '';
    for (var i=0, len=Math.min(keys.length, 3); i<len; i++)
        ids.push("id"+(i+1)+"="+keys[i]);
    cContainer.innerHTML += '<button onclick="window.location='+"'/compare/?"+ids.join('&')+"'"+'">Сравнить</button>'
}
