// Mise � jour du message destin� � l'utilisateur sans recharger la page
function update_status( text, img )
{
    document.getElementById("message").innerHTML = "<img id='status' src='theme/" + img + ".gif'>" + text;
}


// Manipulation de la requ�te d'identification de mani�re asynchrone
function handle_login()
{
    var loginRequest = null;

    update_status( "Votre requête est en cours de traitement ...", "handle");

    // D�finition du connecteur en fonction du navigateur :
    if (window.XMLHttpRequest)
    {
        loginRequest = new XMLHttpRequest();
        if (loginRequest.overrideMimeType)
        {
            loginRequest.overrideMimeType('text/xml');
        }
    }
    else if (window.ActiveXObject)
    {
        try {
            loginRequest = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e)	{
            try {
                loginRequest = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {
                update_status( "Impossible de communiquer avec le serveur", "handle");
            }
        }
    }

    // le secret d'AJAX r�side en partie dans la r�ception et le traitement des r�sultats en background :
    loginRequest.onreadystatechange = function()
    {
        update_status( "Veuillez patienter pendant le processus d'authentification ...", "busy");
        if( loginRequest.readyState == 4 )
        {
            if( loginRequest.status == 200 )
            {
                if ( loginRequest.responseText == "good" )
                {
                    update_status( "Identification réussie !" , loginRequest.responseText );
                    setTimeout("window.location.href='liste.inc.php'", 500)
                } else if ( loginRequest.responseText == "wrong" )  {
                    update_status( "Le mot de passe est erroné	 !" , loginRequest.responseText );
                    } else {
                        update_status( loginRequest.responseText , "handle" );
                    }
            }
            else
            {
                update_status( "Une erreur est survenue : " + loginRequest.status + " " + loginRequest.statusText, "handle");
            }
        }
    };

    username = document.getElementById('username').value;
    password = document.getElementById('password').value;

    // le secret d'AJAX r�side �galement dans l'envoi de la requ�te en background ( sans recharger la page ) :
    loginRequest.open("GET", "php/login.php?username=" + username + "&password=" + password, true);
    loginRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    loginRequest.send(null);
}