function is_blank(elem)
{
  var pat = new RegExp(/\w/);
  if(elem.value.match(pat)) {
    return 0;
  } else {
      return 1;
    }
}

function RequiredField(name,id,type)
{
  this.name = name; 
  this.id = id; 
  this.type = type; 
}

function check_required_fields()
{
  for (var i=0;i<required_fields.length;i++)
  {
    var req_field = required_fields[i];
    var elem = document.getElementById(req_field.id);
    if(!check_item(elem,req_field.type)) {
      alert("Please fill in a valid value for " + req_field.name);
      return false;
    }
  }
  return true;
}

function add_required_field(name,id,type)
{
  required_fields.push(new RequiredField(name,id,type));
}

function check_item(elem,type)
{
  if(type == "text")
    return check_text(elem);
  if(type == "select")
    return check_select(elem);
}

function check_text(elem)
{
  if(is_blank(elem))
    return 0;
  return 1;
}

function check_select(elem)
{
  var sel = elem.selectedIndex;
  if(elem.options[sel].value == '' || elem.options[sel].value == "0")
    return 0;
  return 1;
}



