function CMNewsletterSignup_SendEmail(id){
	var container = document.getElementById('CMNewsletterSignup_'+id);
	var result = document.getElementById('CMNewsletterSignup_Result_'+id);

	try{
		var name = document.getElementById('CMNewsletterSignup_Name_' + id);
		var mail_from = document.getElementById('CMNewsletterSignup_Email_' + id);
		var mail_to = document.getElementById('CMNewsletterSignup_MailTo_' + id);
		var question = document.getElementById('CMNewsletterSignup_Question_' + id);
		var answer = document.getElementById('CMNewsletterSignup_Answer_' + id);
		
		name = name?name.value:'';
		mail_from = mail_from?mail_from.value:'';
		mail_to = mail_to?mail_to.value:'';
		question = question?question.value:'';
		answer = answer?answer.value:'';
		
		var msg = '';
		if(name=='') msg += ' -  Please supply your name.\r\n';
		if(mail_from=='') msg += ' -  Please supply your email address.\r\n';
		else if(mail_from.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) == -1) msg += ' -  Please supply a valid email address.\r\n';
		if(answer=='') msg += ' -  Please supply an answer to the simple sum.\r\n';
		
		if(msg==''){	
			container.style.display = 'none';
			result.innerHTML = '<div>sending request...</div>';
			res = agent.call('/modules/CMNewsletterSignup/CMNewsletterSignup.ajax.php','CMNewsletterSignup_SendEmail','',id,mail_to,name,mail_from,question,answer);
			CMNewsletterSignup_SendEmailResponse(res);
		}else{
			alert('There were problems sending this form:\r\n' + msg);
		}
	}
	catch(e){
		container.innerHTML = '<div class="CMNewsletterSignup_error"><div class="CMNewsletterSignup_heading">Oops</div><div class="CMNewsletterSignup_text">There was an error sending your request.<br />' + e + '</div></div>';	
	}
}

function CMNewsletterSignup_SendEmailResponse(response){
	if(response){
		response = JSON.parse(response);
		var container = document.getElementById('CMNewsletterSignup_'+response.id);
		var result = document.getElementById('CMNewsletterSignup_Result_'+response.id);
		result.innerHTML = response.response;
		container.style.display = response.response.indexOf('CMNewsletterSignup_success')>=0?'none':'block';
	}else{
		alert('There was an error sending your request. Please try again.');
	}
}
