
function ShowByID( aelement )
{
  	ElementId = document.getElementById( aelement );
	if( ElementId ) ElementId.style.display = 'block';
}

function HideByID( aelement )
{
  	ElementId = document.getElementById( aelement );
	if( ElementId ) ElementId.style.display = 'none';
}

function subscribe_newsletter()
{
	var form_email = "";
  	var ElementId = document.getElementById( "newsletter_email" );
	if( ElementId ) form_email = ElementId.value;
	if( form_email.length < 6 )
	{
		alert( "Please enter a valid Email address." );
		return true;
	}
	
	var myConn = new XHConn();
	if( !myConn )
	{
		alert( "We're sorry, your browser does not support AJAX." );
		return true;
	}

  	HideByID( "newsletter_form" );
  	ShowByID( "newsletter_processing" );

	var fnWhenDone = function( oXML ) 
	{ 
	  	HideByID( "newsletter_processing" );

		if( oXML.status == 200 && oXML.responseText == "subscribed" )
		{
		  	ShowByID( "newsletter_welcome" );
		}
		else if( oXML.status == 200 && oXML.responseText == "already_subscribed" )
		{
		  	ShowByID( "newsletter_already_subscribed" );
		} 
		else 
		{
		  	ShowByID( "newsletter_error" );
		}
	}

	if( myConn.connect( "newsletter_subscribe.php", "GET", "email=" + form_email, fnWhenDone ) == false )
	{
	  	HideByID( "newsletter_processing" );
	  	ShowByID( "newsletter_error" );
	}
	
	return true;
}

function unsubscribe_newsletter()
{
	var form_email = "";
  	var ElementId = document.getElementById( "newsletter_email" );
	if( ElementId ) form_email = ElementId.value;
	if( form_email.length == 0 )
	{
	  	ShowByID( "newsletter_error" );
		return true;
	}
	
	var myConn = new XHConn();
	if( !myConn ) 
	{
		alert( "We're sorry, your browser does not support AJAX." );
		return true;
	}

  	HideByID( "newsletter_already_subscribed" );
  	ShowByID( "newsletter_processing" );

	var fnWhenDone = function( oXML ) 
	{ 
	  	HideByID( "newsletter_processing" );

		if( oXML.status == 200 && oXML.responseText == "unsubscribed" )
		{
		  	ShowByID( "newsletter_unsubscribed" );
		}
		else 
		{
		  	ShowByID( "newsletter_error" );
		}
	}

	if( myConn.connect( "newsletter_unsubscribe.php", "GET", "email=" + form_email, fnWhenDone ) == false )
	{
	  	HideByID( "newsletter_processing" );
	  	ShowByID( "newsletter_error" );
	}
	
	return true;
}

function reset_newsletter_form()
{
	ShowByID( "newsletter_form" );
	HideByID( "newsletter_processing" );
	HideByID( "newsletter_welcome" );
	HideByID( "newsletter_already_subscribed" );
	HideByID( "newsletter_unsubscribed" );
	HideByID( "newsletter_error" );

  	var ElementId = document.getElementById( "newsletter_email" );
	if( ElementId ) ElementId.value = "";
}