function registration()

{
   var retVal = ean(); 
    var txtArea =   document.getElementById("tx");

//    txtArea.innerHTML = retVal;



    if (retVal != "ok")
     return;
     
     
     retVal="";




    var nick =document.getElementById("nick").value;

    var email =document.getElementById("nick").value;
    var email2 = document.getElementById("email").value;
 

    var pass=document.getElementById("pass").value;
    var pass2 = document.getElementById("pass2").value;
    
    
   
//    var email2 = document.getElementById("email2").value;

    var AtPos = email.indexOf("@")
    var StopPos = email.lastIndexOf(".")
    
    if (AtPos == -1 || StopPos == -1) {
        alert('please enter a valid email address');
        return;
     }





    if (email != email2){
	alert('verify the entered email address');
	return;
     }

    if (pass.length < 1){
        alert('please enter a password');
        return;
     }
    

    if (pass != pass2){
	alert('please enter the same password');
	return;
     }




    strSource = 'http://mdlrsoft.de/login/register.php?nick='+nick+'&pass='+pass+'&pass2='+pass2+'&email='+email+'&accept=yes';
      strData = "";
      intType= 0; //GET
      intID = 1;
      
      
    txtArea.innerHTML = "Registration in process .... Please wait ";

      sendRequest(strSource,strData,intType,intID);
      
      
      
}



function enableFields2()
{
enableFields();
document.getElementById("pass2").disabled=false;
document.getElementById("email").disabled=false;
document.getElementById("email").disabled=false;
//document.getElementById("email2").disabled=false;
}




function enableFields()
{
document.getElementById("nick").disabled=false;
document.getElementById("pass").disabled=false;
document.getElementById("isJavaOn").style.position="absolute";
document.getElementById("isJavaOn").style.top="-100px";
}

function turnOffMessage()
{
document.getElementById("isJavaOn").style.position="absolute";
document.getElementById("isJavaOn").style.top="-100px";
}



function getScore()
{

var url="http://mdlrsoft.de/myscore/getScore.php";


self.location.href = url;
return;

 fenster=window.open(url, "_self", "");
 fenster.focus();
 return false;
}




function getXMLRequester( )
{
    var xmlHttp = false; //Variable initialisieren
  try
    {
        // Der Internet Explorer stellt ein ActiveXObjekt zur Verfügung
        if( window.ActiveXObject )
        {
            // Versuche die neueste Version des Objektes zu laden
            for( var i = 5; i; i-- )
            {
                try
                {
                    //Wenn keine neuere geht, das alte Objekt verwenden
                    if( i == 2 )
                    {
                        xmlHttp = new ActiveXObject( "Microsoft.XMLHTTP" );    
                    }
                    // Sonst die neuestmögliche Version verwenden
                    else
                    {
                        
                        xmlHttp = new ActiveXObject( "Msxml2.XMLHTTP." + i + ".0" );
                    }
                    break; //Wenn eine Version geladen wurde, unterbreche Schleife
                }
                catch( excNotLoadable )
                {                        
                    xmlHttp = false;
                }
            }
        }
        // alle anderen Browser
        else if( window.XMLHttpRequest )
        {
            xmlHttp = new XMLHttpRequest();
        }
    }
    // loading of xmlhttp object failed
    catch( excNotLoadable )
    {
     alert('Error in xmlhttp');        xmlHttp = false;
    }



    return xmlHttp ;



}



var REQUEST_GET        = 0;
var REQUEST_POST        = 2;
var REQUEST_HEAD    = 1;
var REQUEST_XML        = 3;

function sendRequest( strSource, strData, intType, intID )


   
{

    // Falls strData nicht gesetzt ist, als Standardwert einen leeren String setzen
    if( !strData )
        strData = '';

    // Falls der Request-Typ nicht gesetzt ist, standardmäßig auf GET setzen
    if( isNaN( intType ) )
        intType = 0;






    // wenn ein vorhergehender Request noch nicht beendet ist, beenden
    if( xmlHttp && xmlHttp.readyState )
    {
        xmlHttp.abort( );
        xmlHttp = false;
    }



    // wenn möglich, neues XMLHttpRequest-Objekt erzeugen, sonst abbrechen
    if( !xmlHttp )
    {
        xmlHttp = getXMLRequester( );
        if( !xmlHttp )
            return;
    }
    


    



    
// Falls die zu sendenden Daten mit einem & oder einem ? beginnen, erstes Zeichen abschneiden
    if( intType != 1 && ( strData && strData.substr( 0, 1 ) == '&' || strData.substr( 0, 1 ) == '?' ) )
        strData = strData.substring( 1, strData.length );

// Als Rückgabedaten die gesendeten Daten, oder die Zieladresse setzen
    var dataReturn = strData ? strData : strSource;





    
    switch( intType )
    {
        case 1:    //Falls Daten in XML-Form versendet werden, xml davorschreiben
            strData = "xml=" + strData;
        case 2: // falls Daten per POST versendet werden
            // Verbindung öffnen 
            xmlHttp.open( "POST", strSource, true );
            xmlHttp.setRequestHeader( 'Content-Type', 'application/x-www-form-urlencoded' );
            xmlHttp.setRequestHeader( 'Content-length', strData.length );
            break;
        case 3: // Falls keine Daten versendet werden
            // Verbindung zur Seite aufbauen
            xmlHttp.open( "HEAD", strSource, true );
            strData = null;
            break;
        default: // Falls Daten per GET versendet werden
            //Zieladresse zusammensetzen aus Adresse und Daten
            var strDataFile = strSource + (strData ? '?' + strData : '' );
            // Verbindung aufbauen
            xmlHttp.open( "GET", strDataFile, true );
            strData = null;
    }
    

      // die Funktion processResponse als Event-handler setzen, wenn sich der Verarbeitungszustand der Anfrage ändert
    xmlHttp.onreadystatechange = new Function( "", "processResponse(" + intID + ")" ); ;

    // Anfrage an den Server setzen
    xmlHttp.send( strData );    //strData enthält nur dann Daten, wenn die Anfrage über POST passiert

    


    // gibt die gesendeten Daten oder die Zieladresse zurück
    return dataReturn;
}


function processResponse( intID )
{
    //aktuellen Status prüfen



    switch( xmlHttp.readyState )
    {




        //nicht initialisiert
        case 0:
        // initialisiert
        case 1:
        // abgeschickt
        case 2:
        // ladend
        case 3:
            break;
        // fertig
        case 4:    
            // Http-Status überprüfen




            if( xmlHttp.status == 200 )    // Erfolg
            {
                processData( xmlHttp, intID ); //Daten verarbeiten
            }
            //Fehlerbehandlung
            else
            {
                if( window.handleAJAXError )
                    handleAJAXError( xmlHttp, intID );
                else
                    alert( "ERROR\n HTTP status = " + xmlHttp.status + "\n" + xmlHttp.statusText ) ;
            }
    }
}

// handle response errors
function handleAJAXError( xmlHttp, intID )
{
alert("AJAX Error");
}



function processData( xmlHttp, intID )
{


    var txtArea =   document.getElementById("tx");
//    alert(txtArea.innerHTML);
    var resp = xmlHttp.responseText;//
//    alert(resp);

txtArea.innerHTML = resp;



}


// globales XMLHttpRequest-Objekt erzeugen
var xmlHttp = getXMLRequester();

//Request aufrufen
function login()
{
   var retVal = ean();


    var txtArea =   document.getElementById("tx");
    txtArea.innerHTML = "Login in process .... Please wait ";


    
// not necessary    txtArea.innerHTML = retVal;

    if (retVal != "ok")
     return;

   var nick =document.getElementById("nick").value;
    var pass=document.getElementById("pass").value;
    strSource = 'http://mdlrsoft.de/login/loginGET.php?nick='+nick+'&pass='+pass+'&Login=1';

      strData = "";
      intType= 0; //GET
      intID = 1;

       sendRequest(strSource,strData,intType,intID);
}



function logout()
{



    var nick =document.getElementById("nick").value;
    var pass=document.getElementById("pass").value;
    strSource = 'http://mdlrsoft.de/login/logout.php';
//	alert(strSource );

//ajax.php";
      strData = "";
      intType= 0; //GET
      intID = 1;

       sendRequest(strSource,strData,intType,intID);

}

