  function CheckFieldLength(fn,wn) {
  var len = fn.value.length;
  if (len <= 95) {
    document.getElementById(wn).innerHTML = 'Characters left: ' + (95 - len);
  }
  if (len > 95) {
    fn.value = fn.value.substring(0, 95);
  }
}
function validatenum(fieldRef,fieldLen,fieldDescription) {
    if(fieldRef.value.length != fieldLen) {
      alert('Please enter only '+fieldLen+' characters in the "'+fieldDescription+'" field.');
      fieldRef.focus();
      return (false);
    }
   return checknum(fieldRef,fieldLen,fieldDescription);
}
function checknum(fieldRef,fieldLen,fieldDescription) {
  var checkOK = "0123456789";
  var checkStr = fieldRef.value;
  var allValid = true;
  var decPoints = 0;
  var allNum = "";
  for (i = 0;  i < checkStr.length;  i++)
  {
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length)
    {
      allValid = false;
      break;
    }
    allNum += ch;
  }
  if (!allValid)
  {
    alert('Please enter only digit characters in the "'+fieldDescription+'" field.');
    fieldRef.focus();
    return (false);
  }
    return true;
}
function validate(what) {
   if (what.message.value == "") {
     alert("No message entered!");
     what.message.focus();
     return false;
   }
   if (what.provider.value == "") {
     alert("Please select a provider!");
     what.provider.focus();
     return false;
   }
   if (what.number.value == "") {
      alert("No telephone number entered!");
     what.number.focus();
     return false;
   }
   var phone = what.number.value;
   if (phone.length != 10) {
     alert("Phone number must be 10 digits, no spaces or dashes please!");
     what.number.focus();
     return false;
   } else {
     if(validatenum(what.number,10,'telephone number') == false) {
        return false;
     }
   }
   loadXMLDoc('rssms');
   return true;
}