/**
 * /ajax/index.js
 *
 * Dragonea (http://www.dragonea.com)
 *
 * @author Jejem <jejem@phyrexia.org>
 * @copyright Jérémy 'Jejem' Desvages
**/

Event.observe(window, 'load', function() {
	$('login_login').focus();

	Event.observe('login_login', 'change', function() {
		checkLogin();
	});

	Event.observe('login_password', 'change', function() {
		checkPassword();
	});

	Event.observe('login', 'submit', function() {
		checkLogin();
		checkPassword();
		doLogin();
	});
});

function checkLogin() {
	new Ajax.Request(
		'ajax.php',
		{
			method: 'post',
			parameters: {
				request: 'login',
				check_login: 1,
				login: $('login_login').value
			},
			asynchronous: false,
			onSuccess: function(transport) {
				if (transport.responseText == 'OK')
					$('login_login').style.background = '#cfc';
				else
					$('login_login').style.background = '#fcc';
			}
		}
	);
}

function checkPassword() {
	new Ajax.Request(
		'ajax.php',
		{
			method: 'post',
			parameters: {
				request: 'login',
				check_password: 1,
				login: $('login_login').value,
				password: $('login_password').value
			},
			asynchronous: false,
			onSuccess: function(transport) {
				if (transport.responseText == 'OK')
					$('login_password').style.background = '#cfc';
				else
					$('login_password').style.background = '#fcc';
			}
		}
	);
}

function doLogin() {
	$('login_login').disabled = true;
	$('login_password').disabled = true;
	$('login_submit').disabled = true;

	new Ajax.Request(
		'ajax.php',
		{
			method: 'post',
			parameters: {
				request: 'login',
				do_login: 1,
				login: $('login_login').value,
				password: $('login_password').value
			},
			asynchronous: false,
			onSuccess: function(transport) {
				if (transport.responseText == 'OK') {
					$('login_status').innerHTML = '<p class="container_ok">Connecté(e)</p><br />';
					window.location.reload();
				} else {
					$('login_status').innerHTML = '<p class="container_error">Erreur</p><br />';
					new Effect.Shake($('loginBox'));
					setTimeout(function() {
						$('login_login').disabled = false;
						$('login_password').disabled = false;
						$('login_submit').disabled = false;
					}, 1000);
				}
			}
		}
	);
}

function forgotLogin() {
	new Ajax.Request(
		'ajax.php',
		{
			method: 'post',
			parameters: {
				request: 'login',
				forgot_login: 1
			},
			onSuccess: function(transport) {
				showInfo(transport.responseText);
			}
		}
	);
}

function doForgotLogin(email_) {
	new Ajax.Request(
		'ajax.php',
		{
			method: 'post',
			parameters: {
				request: 'login',
				do_forgot_login: 1,
				email: email_
			},
			onSuccess: function(transport) {
				if (transport.responseText == 'OK')
					showOk('Un e-mail contenant votre <strong>Identifiant</strong> vous a été envoyé');
				else
					showError(transport.responseText);
			}
		}
	);
}

function forgotPassword() {
	new Ajax.Request(
		'ajax.php',
		{
			method: 'post',
			parameters: {
				request: 'login',
				forgot_password: 1
			},
			onSuccess: function(transport) {
				showInfo(transport.responseText);
			}
		}
	);
}

function doForgotPassword(login_, email_) {
	new Ajax.Request(
		'ajax.php',
		{
			method: 'post',
			parameters: {
				request: 'login',
				do_forgot_password: 1,
				login: login_,
				email: email_
			},
			onSuccess: function(transport) {
				if (transport.responseText == 'OK')
					showOk('Un e-mail contenant votre <span style="text-decoration: underline;">nouveau</span> <strong>Mot de passe</strong> vous a été envoyé');
				else
					showError(transport.responseText);
			}
		}
	);
}
