function formHelpers() {
  var 
  required_inputs = document.getElementsByTagName("input"),
  required_textareas = document.getElementsByTagName("textarea"),
  email,
  zip,
  phone,
  error_msg,
  error_msg_txt,
  id,
  container,
  fields = ["input","textarea","select"];

  for ( i=0,ilen = fields.length; i<ilen; i++ ) {
    collection = document.getElementsByTagName(fields[i]);
    for (j=0,jlen = collection.length; j<jlen; j++) {
      var element = collection[j];
      
      if (element.className == "required") {
        element.onblur = function() {
          id = this.getAttribute("title").replace(/ /ig,"-");
          if ( (this.value == "") ) {
            error_msg = document.createElement("p");
            error_msg_txt = document.createTextNode("Doh! Don't forget to " + this.title + ".");
            error_msg.appendChild(error_msg_txt);
            error_msg.setAttribute("class","error");
            error_msg.setAttribute("id",id);

            if ( !document.getElementById(id) ) {
              insertAfter(error_msg,this);
              this.setAttribute("style","border-color: #E54725");
            }

          } else {
            container = this.parentNode;
            if ( error_msg = document.getElementById(id) ) {
              container.removeChild(error_msg);
              this.setAttribute("style","border-color: #666");
            }
          }
        }
      }
    }
  }
}

addLoadEvent(formHelpers);