function registerHiddenField(fieldID, value)
{
	addField('hidden', fieldID, value);
}

function addField (fieldType, fieldName, fieldValue) {
  form = document.forms[0];
  var field = getField(fieldName);
  if (field != null && field != undefined)
  {
    field.value = fieldValue;
    return;
  }


  if (document.getElementById) {
    var input = document.createElement('INPUT');
      if (document.all) { // what follows should work 
                          // with NN6 but doesn't in M14
        input.type = fieldType;
        input.id = fieldName;
        input.name = fieldName;
        input.value = fieldValue;
      }
      else if (document.getElementById) { // so here is the
                                          // NN6 workaround
        input.setAttribute('type', fieldType);
        input.setAttribute('id', fieldName);
        input.setAttribute('name', fieldName);
        input.setAttribute('value', fieldValue);
      }
    form.appendChild(input);
  }
}


function getField (fieldName) {
  form = document.forms[0];
  if (!document.all)
    return form[fieldName];
  else  // IE has a bug not adding dynamically created field 
        // as named properties so we loop through the elements array 
    for (var e = 0; e < form.elements.length; e++)
      if (form.elements[e].name == fieldName)
        return form.elements[e];
    //return eval("document.forms[0]." + fieldName);
  return null;
}   

     
function removeField (fieldName) {
  form = document.forms[0];
  var field = getField (fieldName);
  if (field && !field.length)
    field.parentNode.removeChild(field);
}


function toggleField (fieldName, value) {
  form = document.forms[0];
  var field = getField (fieldName);
  if (field)
    removeField (fieldName);
  else
    addField ('hidden', fieldName, value);
}

function describe(p,w,h,s,r)
{
	if (typeof(w)=='undefined') w=700;
	if (typeof(h)=='undefined') h=300;
	if (typeof(s)=='undefined') s=1;
	if (typeof(r)=='undefined') r=1;
	if (typeof(dw)!='undefined' && dw.close) dw.close();
	dw = window.open(p,'EffectiveDescription','width='+w+',height='+h+',location=0,toolbar=0,directories=0,status=0,menubar=0,scrollbars='+s+',resizable='+r+',channelmode=0,fullscreen=0');
	if (typeof(dw)!='undefined' && dw.focus) dw.focus();
	return false;
}