function getRadioValue(elem)
{
  if(elem.length)
  {
    for(var i=0; i<elem.length; i++)
    {
      if(elem[i].checked) return elem[i].value;
    }
  }
  else
  {
    if(elem.checked) return elem.value;
  }
  return null;
}

function getSelectValue(elem) {
  if(elem.selectedIndex>=0) {
    return elem.options[elem.selectedIndex].value;
  }
  return null;
}

function getCheckboxValue(elem)
{
  var results=new Array();
  if(elem.length)
  {
    for(var i=0; i<elem.length; i++)
    {
      if(elem[i].checked) results.push(elem[i].value);
    }
  }
  else
  {
    if(elem.checked) results.push(elem[i].value);
  }
  
  if(results.length==0) return null;
  return results;
}

function checkMax(elem, n)
{
  var frm=elem.form;
  var lst=frm.elements[elem.name];
  
  var cnt=0;
  if(lst.length)
  {
    for(var i=0; i<lst.length; i++)
    {
      if(lst[i].checked) cnt++;
    }
  }
  
  if(cnt>n)
  {
    alert("Please choose only "+n+" answers.");
    elem.checked=false;
  }
}
function showReason(elem)
{
  var id=elem.name.substring(elem.name.lastIndexOf("_")+1);
  var rDiv=document.getElementById("reason_"+id);
  if(rDiv!=null)
  {
    rDiv.style.display="";
  }
}
function hideReason(elem)
{
  var id=elem.name.substring(elem.name.lastIndexOf("_")+1);
  var rDiv=document.getElementById("reason_"+id);
  var inp=document.getElementById("input_"+id);
  if(rDiv!=null)
  {
    rDiv.style.display="none";
  }
  if(inp!=null)
  {
    inp.value="";
  }
} 

function showhide(src, val, trg) {
  if(src!=""&&src==val) {
    document.getElementById(trg).style.display="block";
  } else {
    document.getElementById(trg).style.display="none";
  }
}
function showhideInv(src, val, trg) {
  if(src==""||src==val) {
    document.getElementById(trg).style.display="none";
  } else {
    document.getElementById(trg).style.display="block";
  }
}