function trim(str) {
   return str.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
}

function clearErrors() {
   document.getElementById("nameTitle").className="";
   document.getElementById("emailTitle").className="";
   document.getElementById("confirmTitle").className="";
}

function setSuccessMessage(message) {
   var div;
   
   clearErrors();
   document.getElementById("showMessage").className="show";
   div=document.getElementById("message");
   div.className="success";
   if(div.hasChildNodes())
    div.childNodes[0].nodeValue=message;
   else
    div.appendChild(document.createTextNode(message));
}

function setErrorMessage(message, fields) {
   var field, div;
   
   clearErrors();
   for(field in fields)
    document.getElementById(fields[field]).className="error";
   
   if(message==null)
    document.getElementById("showMessage").className="hide";
   else {
    document.getElementById("showMessage").className="show";
    div=document.getElementById("message");
    div.className="error";
    if(div.hasChildNodes())
     div.childNodes[0].nodeValue=message;
    else
     div.appendChild(document.createTextNode(message));
   }
}

function mailingAdd() {
   var name=trim(document.getElementById("name").value);
   var email=trim(document.getElementById("email").value);
   var confirm=trim(document.getElementById("confirm").value);
   var fields=[];
   var form;
   
   if(name=="" || email=="" || confirm=="") {
    if(name=="")
     fields=fields.concat(["nameTitle"]);
    if(email=="")
     fields=fields.concat(["emailTitle"]);
    if(confirm=="")
     fields=fields.concat(["confirmTitle"]);
    setErrorMessage("Please fill in required fields", fields);
   }
   else if(email.indexOf("@")==-1)
    setErrorMessage("Invalid email address", ["emailTitle"]);
   else if(email.toUpperCase()!=confirm.toUpperCase())
    setErrorMessage("The email addresses do not match", ["emailTitle", "confirmTitle"]);
   else {
    form=document.getElementById("mailingForm");
    form.action="ContactSubscribePage.pl";
    form.submit();    
   }
}


