var httpReq;
function joinMailingList(region) {
	if(!validate())
		return;

	var postinfo = 'function=profilerformsubmit';
	postinfo += '&email=' + encodeURI(document.getElementById('mail').value);
	postinfo += '&opted_in=1';
	var page="default.aspx";
	if(window.location.href.indexOf('_preview') >= 0)
		page='_preview.aspx';
	var id=183;
	if(region=='ca')
		id=185;
	
	sendPost((page+'?pageid='+id), postinfo);
}

function validate()
{
	var email = document.getElementById('mail');
	var regex = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
	if (!regex.test(email.value)) {
		alert('Please provide a valid email address');
		return false;
	}
	return true;
}

  function sendPost(url, parameters) {
      httpReq = false;
      if (window.XMLHttpRequest) { // Mozilla, Safari,...
         httpReq = new XMLHttpRequest();
         if (httpReq.overrideMimeType) {
            httpReq.overrideMimeType('text/html');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            httpReq = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               httpReq = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }
      if (!httpReq) {
         alert('Cannot create XMLHTTP instance');
         return false;
      }
      
      httpReq.onreadystatechange = handleStateChange;
      httpReq.open('POST', url, true);
      httpReq.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      httpReq.setRequestHeader("Content-length", parameters.length);
      httpReq.setRequestHeader("Connection", "close");
      httpReq.send(parameters);
   }
   
   function handleStateChange() {
      if (httpReq.readyState == 4) {
         if (httpReq.status == 200) {
			if(httpReq.responseText == 'success') {
				document.getElementById('newsletter-content').innerHTML = '<div class="mail-thank">Thank you for signing up for our newsletter!</div>';            
			} else {
				alert('There was a problem handing your request.  Please try again later.');
			}
            
         } else {
            alert('There was a problem with the request.');
         }
      }
   }
