/* BEGIN */
var gHttp;
if (window.XMLHttpRequest) { 
	gHttp = new XMLHttpRequest();
} else if (window.ActiveXObject){
	gHttp = new ActiveXObject("Microsoft.XMLHTTP");
}


function checkSubscriptionForm(theForm) {

	var isAllValid = true;
	var input = document.getElementById("email");
	
	if( trim(input.value).length == 0 ) {
		invalidForm(input);
		isAllValid = false;
		
	} else {
		validForm(input);
	
	}
	if( !checkMail(input.value) ) {
		isAllValid = false;
		invalidForm(input);
	} else {
		validForm(input);
	}
	
	return isAllValid;
}

function submitSubscriptionForm() {
	var form = document.getElementById("subscription");
	if( checkSubscriptionForm(form) ) {
		var input = document.getElementById("email");
		var url = document.getElementById("url");
		var params = "";
		params += "&"+input.name +"="+ input.value +"&"+url.name +"="+ url.value;
		
		var request = "/php/news/subscription.php?operation=subscribe"+params;
		// submit the form:
		gHttp.open("POST", request, false);
		gHttp.send(null);
		
		var respons = gHttp.responseText.split("|");
		
		if( respons[0] == "OK" ) {	
			var displayText = document.getElementById("subscriptionRespons");
			displayText.style.color="#2b8613";		
			displaySubscriptionRespons(respons[2]);
		} else if( respons[0] == "ER" ) {
		var displayText = document.getElementById("subscriptionRespons");
			displayText.style.color="#c0240b";
			displaySubscriptionRespons(respons[1]);
		}
	}
}

function displaySubscriptionRespons(text) {
	var boxinscrinews = document.getElementById("boxinscrinews");
	var displayText = document.getElementById("subscriptionRespons");
	if( !displayText ) {
		displayText = document.createElement("div");
		displayText.id = "subscriptionRespons";
		displayText.innerHTML = text;
		displayText.style.display="none";
		boxinscrinews.parentNode.appendChild(displayText);
		
		Effect.Appear(displayText);
	} else {
		displayText.innerHTML = text;
	}
}



/* trim */
function trim(str) {
	var	str = str.replace(/^\s\s*/, ''),
		ws = /\s/,
		i = str.length;
	while (ws.test(str.charAt(--i)));
	return str.slice(0, i + 1);
}

function invalidForm() {

	
	var displayText = document.getElementById("subscriptionRespons");
	displayText.style.color="#c0240b";
	displayText.innerHTML="Votre adresse mail n'est pas valide";
}

function validForm(inFormElement) {
	// restore the default background
	inFormElement.style.backgroundColor="";
	inFormElement.style.color="";
	var displayText = document.getElementById("subscriptionRespons");
	displayText.style.color="#2b8613";
}

function checkMail(inEmail) {
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (filter.test(inEmail)) {
		return true;
	} else {
		return false;
	}
}