/* /static/js/nl.js */ /* UTF8 COOKIE éà */

function	nlClass(ajaxUrl)
{
	this.ajaxUrl = ajaxUrl;
}


nlClass.prototype.onSubscribeClick = function()
{
	var	email, confirm;

	if(!vkDom.el('NL_EMAIL') || !vkDom.el('NL_EMAIL_CONFIRM'))
		return false;

	email = vkDom.el('NL_EMAIL').value;
	confirm = vkDom.el('NL_EMAIL_CONFIRM').value;

	if(!email.length)
	{
		alert('Veuillez saisir votre adresse E-mail.');
		return false;
	}

	if(!confirm.length)
	{
		alert('Veuillez confirmer votre adresse E-mail.');
		return false;
	}

	if(email != confirm)
	{
		alert('Les deux adresses E-mail saisies sont différentes.');
		return false;
	}

	vkDom.visibility('NL_BUTTON', false);

	this.subscribe();

	return false;
}


nlClass.prototype.subscribe = function()
{
	var	self = this;

	//vkDebug.enable();
	getAjax();
	ajax.debug = true;
	ajax.onLoad = function(status, data)
	{
		if(data != null && typeof(data) == 'number')
		{
			switch(data)
			{
				case 0:	// Okay
					vkDom.el('NL_SUBSCRIBE_FORM_BLOCK').style.display = 'none';
					vkDom.el('NL_SUBSCRIBE_SUCCESS_BLOCK').style.display = 'block';
					break;

				case 1:
					alert('Merci de bien vouloir renseigner votre adresse E-mail.');
					vkDom.visibility('NL_BUTTON', true);
					vkDom.focus('NL_EMAIL');
					break;

				case 2: // Incorrect email address
					alert('L\'adresse E-mail saisie n\'est pas valide.\nMerci de bien vouloir saisir votre adresse E-mail.');
					vkDom.visibility('NL_BUTTON', true);
					vkDom.select('NL_EMAIL');
					break;

				case 3:	// Limit reached
					alert(
						'Vous avez dépassé la limite du nombre de demandes d\'inscription.\n'+
						'Veuillez renouveller votre demande ultérieurement.'
					);
					vkDom.visibility('NL_BUTTON', true);
					break;

				default:
					self.problem();
					break;
			}
		}
		else
			self.problem();
	}

	ajax.onTimeout = function()
	{
		self.problem();
	}

	ajax.post(
		this.ajaxUrl,
		{	NL_EMAIL	:	vkDom.el('NL_EMAIL').value	},
		15000
	);

	return false;
}





nlClass.prototype.onUnsubscribeClick = function()
{
	var	email, confirm;

	if(!vkDom.el('NL_EMAIL'))
		return false;

	if(!vkDom.el('NL_EMAIL').value.length)
	{
		alert('Veuillez saisir votre adresse E-mail.');
		return false;
	}

	vkDom.visibility('NL_BUTTON', false);

	this.unsubscribe();

	return false;
}


nlClass.prototype.unsubscribe = function()
{
	var	self = this;

	//vkDebug.enable();
	getAjax();
	ajax.debug = true;
	ajax.onLoad = function(status, data)
	{
		if(data != null && typeof(data) == 'number')
		{
			switch(data)
			{
				case 0:	// Okay
					vkDom.el('NL_UNSUBSCRIBE_FORM_BLOCK').style.display = 'none';
					vkDom.el('NL_UNSUBSCRIBE_SUCCESS_BLOCK').style.display = 'block';
					break;

				case 1:
					alert('Merci de bien vouloir renseigner votre adresse E-mail.');
					vkDom.visibility('NL_BUTTON', true);
					vkDom.focus('NL_EMAIL');
					break;

				case 2: // Incorrect email address
					alert('L\'adresse E-mail saisie n\'est pas valide.\nMerci de bien vouloir saisir votre adresse E-mail.');
					vkDom.visibility('NL_BUTTON', true);
					vkDom.select('NL_EMAIL');
					break;

				case 3:	// Already unsubscribed / not in the database
					vkDom.el('NL_UNSUBSCRIBE_FORM_BLOCK').style.display = 'none';
					vkDom.el('NL_UNSUBSCRIBE_ALREADY_BLOCK').style.display = 'block';
					break;

				default:
					self.problem();
					break;
			}
		}
		else
			self.problem();
	}

	ajax.onTimeout = function()
	{
		self.problem();
	}

	ajax.post(
		this.ajaxUrl,
		{	NL_EMAIL	:	vkDom.el('NL_EMAIL').value	},
		15000
	);

	return false;
}

nlClass.prototype.problem = function()
{
	alert('Un problème inattendu s\'est produit.\nMerci de bien vouloir réessayer ultérieurement.');
	vkDom.visibility('NL_BUTTON', true);
}





