function el(a)    { return document.createElement(a); }
function add(a,b) { a.appendChild(b); return a; }
function txt(a)   { return document.createTextNode(a); }
function set(a,k,v) { a[k] = v === undefined ? '' : v; return a; }
function add_option(sel, opt, old_val)
{
    var o = el('option');
    if (typeof(opt) == 'string')
        o.appendChild(txt(o.value = opt));
    else
    {
        o.appendChild(txt(opt.name));
        if (opt['id'] !== undefined)
            o.value = opt.id;
        else
            o.value = opt.name;
    }
    if (old_val !== undefined && old_val == o.value)
        o.selected = true;
    sel.appendChild(o);
    return sel;
}
function set_options(n, sel, opts)
{
    var old_val = sel.value;
    sel.innerHTML = '';
    if (!opts)
        opts = [];
    if (opts.length > 1 || opts.length == 1 && opts[0] == '' || opts.length == 0)
        add_option(sel, {id:'',name:selns[n]}, old_val);
    if (opts[0] == '')
        opts.shift();
    for (var i in opts)
        add_option(sel, opts[i], old_val);
    if (n == 'cat')
        add_option(sel, {id:-1,name:'Артикул/ID'}, old_val);
    return sel;
}
