// VARIOUS FORM MANIPULATION AND READING SCRIPTS
// HISTORY
// 22/09/2005 - PSB - Created (mostly for delivery instructions)

//safe function to hide an element with a specified id
function hideelement(elementid) {
  if (document.getElementById) { // DOM3 = IE5, NS6
    if (document.getElementById(elementid)) {
      dropdownval = document.getElementById(elementid).style.display = 'none';
    }
  }
  else {
    if (document.layers) { // Netscape 4
      if (document.elementid) {
        dropdownval = document.elementid.style.display = 'none';
      }
    }
    else { // IE 4
      if (document.all.elementid) {
        dropdownval = document.all.elementid.style.display = 'none';
      }
    }
  }
}
//safe function to show an element with a specified id
function showelement(elementid) {
  if (document.getElementById) { // DOM3 = IE5, NS6
    if (document.getElementById(elementid)) {
      dropdownval = document.getElementById(elementid).style.display = 'block';
    }
  }
  else {
    if (document.layers) { // Netscape 4
      if (document.elementid) {
        dropdownval = document.elementid.style.display = 'block';
      }
    }
    else { // IE 4
      if (document.all.elementid) {
        dropdownval = document.all.elementid.style.display = 'block';
      }
    }
  }
}
//safe function to get the value of an element
function getelementvalue(elementid) {
  if (document.getElementById) { // DOM3 = IE5, NS6
    if (document.getElementById(elementid)) {
      return document.getElementById(elementid).value;
    } else {
      return '';
    }
  }
  else {
    if (document.layers) { // Netscape 4
      if (document.elementid) {
        return document.elementid.value;
      } else {
        return '';
      }
    }
    else { // IE 4
      if (document.all.elementid) {
        return document.all.elementid.value;
      } else {
        return '';
      }
    }
  }
}

//safe function to set the value of an element
function setelementvalue(elementid,elemval) {
  if (document.getElementById) { // DOM3 = IE5, NS6
    if (document.getElementById(elementid)) {
      document.getElementById(elementid).value = elemval;
      return true;
    } else {
      return false;
    }
  }
  else {
    if (document.layers) { // Netscape 4
      if (document.elementid) {
        document.elementid.value = elemval;
        return true;
      } else {
        return false;
      }
    }
    else { // IE 4
      if (document.all.elementid) {
        document.all.elementid.value = elemval;
        return true;
      } else {
        return false;
      }
    }
  }
}


//safe function to hide an element with a specified id
function toggledeliveryfields() {
  //set up variables
  var dropdownval = '';
  dropdownval = getelementvalue('del_instr_dropdown');

  //trick to test if people have JavaScript enabled
  setelementvalue('supportsjavascript','true');

  //show dropdown list for JavaScript enabled users, always
  showelement('del_instr_dropdown_label');
  showelement('del_instr_dropdown');

  if (dropdownval == '') {
    //We must be on "Other (please specify)...", so show free text delivery instructions and label
    showelement('del_instr');
    showelement('del_instr_label');
  }
  else {
    //hide instructions textbox and label
    hideelement('del_instr');
    hideelement('del_instr_label');
  }
}