var http = getHTTPObject(); 

//Function called on submit
function newsletterSubscribe(id_email, id_response, newsletter_type) {	
	if (!id_response) {id_response = "newsletter_subscribe_div";}
	if (!newsletter_type) {newsletter_type='bw_info';}
	email_obj = document.getElementById(id_email);
	if ( !isValidEmail(email_obj.value) ) {
		alert('The supplied email address doesn\'t seem to be valid. Please try again.');
		email_obj.focus();
		return false;
	}
		
	http.open("GET", 'newsletter-subscribe?email='+escape(email_obj.value) + '&type=' + escape( newsletter_type ) , true);
	http.onreadystatechange = function() { updateNewsletterSubscribeDiv(id_response);};
	http.send(null);
	return false;
}


//Function called on http response receiving
function updateNewsletterSubscribeDiv(id_response) {

	if (http.readyState == 4) {
		document.getElementById(id_response).prevInnerHTML = document.getElementById(id_response).innerHTML;
		document.getElementById(id_response).innerHTML = http.responseText;
	}
}


function restoreNewsletterSubscribeDiv( elem ) {
	var parent_div = $(elem).parents('div.restore-div');
	parent_div[0].innerHTML = parent_div[0].prevInnerHTML;

	if ( rehook ) {
		rehook();
	}
}