var agent=navigator.userAgent.toLowerCase();
var ie = ((agent.indexOf("msie") != -1)&&(agent.indexOf("opera")==-1));
function getArrayLength(array)
{
  var count = 0;
  for (var id in array) count++;
  return count;
}
function ListItem(id, text)
{
  this.id = id;
  this.text = text;
}
function clearSelect(sel)
{
  var len = sel.options.length;
  for(var i=0; i<len; i++) sel.remove(0);
  sel.disabled = true;
}
function disableSelect(sel)
{
  sel.disabled = true;
}
function enableSelect(sel)
{
  sel.disabled = false;
}
function addPleaseOption(sel, text)
{
  var opt = document.createElement("OPTION");
  opt.value = "0";
  opt.text = text;
  if(ie) sel.add(opt);
  else sel.add(opt, null);
}
function setupSelect(sel, opts, pls)
{
  if (opts == null)
  {
    sel.disabled = true;
    if(pls) addPleaseOption(sel, pls);
    return;
  }
  sel.disabled = false;
  fillOptions(sel, opts, pls);
}
function fillOptions(sel, vals, pls)
{
  if(pls) addPleaseOption(sel, pls);
  for (var i in vals)
  {
    var opt = document.createElement("OPTION");
    opt.value = vals[i].id;
    opt.text = vals[i].text;
    if(ie) sel.add(opt);
    else sel.add(opt, null);
  }
}
function setSelected(sel, val)
{
  for(var i = 0; i < sel.options.length; i++)
  {
    if(sel.options[i].value == val)
    {
      sel.selectedIndex = i;
      return true;
    }
  }
  return false;
}