var states = [];
var label  = {};

function showRegion(init, state)
{
    var selpays   = document.getElementById('dealer_pays');
    var selregion = document.getElementById('dealer_region');

    var paysid = selpays.options[selpays.selectedIndex].value;

    while(selregion.firstChild != null )
    {
        selregion.removeChild(selregion.firstChild);
    }

    var codepays = selpays.options[selpays.selectedIndex].getAttribute("code");

    var l = label[codepays] ;

    if (l == null)
    {
        l = "";
    }
    
    addOption (selregion, "", l + "...");

    function addOption(select, value, text, selected)
    {
        var opt = document.createElement("option");

        opt.setAttribute ("value", value);

        var t = document.createTextNode (text);
        opt.appendChild (t);

        if( selected )
        {
            opt.setAttribute("selected", "true");
        }

        select.appendChild(opt);
    }

    for(regionid in states[paysid])
    {
        var selected = false;

        if( state != null && regionid == state )
        {
            selected = true;
        }

        addOption(selregion, regionid, states[paysid][regionid], selected);
    }

    if (selregion.options.length > 1)
    {
        selregion.style.display = "inline";

        selregion.onchange = function()
        {
            if (selregion.selectedIndex > 0)
            {
                top.location = "?country=" + codepays + "&state=" + selregion.options[selregion.selectedIndex].value;
            }
        }
    }
    else
    {
        selregion.style.display = "none";

        if( !init)
        {
            top.location = "?country=" + codepays;
        }
    }
}

function addState(countryid, stateid, name)
{
    if( states[countryid] == null )
    {
        states[countryid] = {};
    }

    states[countryid][stateid] = name;
}