window.onload = init;

var unmasked = false;

function init() {
  spanElems = document.getElementsByTagName("span");
  for (i=0; i<spanElems.length; i++) {
    if (spanElems[i].className == "gemail"){
          spanElems[i].addEventListener("click", unmaskEmail, false);
          }
        }
     }

function unmaskEmail(e) {
  if (!unmasked) {
         
         var spanElem = e.target;
         recipient = spanElem.firstChild.nodeValue;
         emailAddress = recipient.substring(0,recipient.indexOf("{"))+"@"+recipient.substring(recipient.indexOf("}")+1);
        
         // create the email a element
         emailLinkElem = document.createElement("a");
         emailLinkElem.appendChild(document.createTextNode(emailAddress));
         linkAttr = document.createAttribute("href");
         linkAttr.nodeValue = "mailto:" + emailAddress;
         emailLinkElem.setAttributeNode(linkAttr);
        
         // replace the span element with the a element
         spanElem.parentNode.replaceChild(emailLinkElem, spanElem);
     
  }
   unmasked = true;
}
