function switchToDiv( grp, id )
{
	var blocks = [ 'loginblock', 'hibablock' ];
	for( var i = 0; i < blocks.length; i++ )
	{
		var block = document.getElementById( grp + '_' + blocks[i] );
		if( ! block ) alert( "hiányzó block" );
		if( id == blocks[ i ] )
		{
			block.style.display = "";
		} else
		{
			block.style.display = "none";
		}
	}
}

function showMessage( formid, msg )
{
	var messages = [ '_login_hiba', '_newpsw_hiba', '_newpsw_ok' ];
	var mdiv;
	for( var i = 0; i < messages.length; i++ )
	{
		mdiv = document.getElementById( formid + messages[i] );
		if( mdiv )
		{
			if( msg == messages[i] )
			{
				mdiv.style.display = "";
			} else
			{
				mdiv.style.display = "none";
			}
		}
	}
	switchToDiv( formid, "hibablock" );
}
	
//osztály létrehozás
LoginHandler.prototype = {
	formid: null,

	//visszatérésnél ez hívódik meg
	checkuser: function( response )
	{
		if( response == "hiba" )
		{
			showMessage( this.formid, "_login_" + response );
		} else
		{
			var oForm = document.forms[ this.formid ];
			oForm.action = response;
			oForm.submit();
		}
	},

	//visszatérésnél ez hívódik meg
	newpassword: function( response )
	{
		showMessage( this.formid, "_newpsw_" + response );
	}

}

function LoginHandler()
{
}

function getLoginHandler( formid )
{
	var handler = new LoginHandler( )
	handler.formid = formid;
	var a = new lcopublic_server( handler );
	a.timeout = 6000;

    // Ignore timeouts
    a.clientErrorFunc = function(e) {
        if ( e.code =! 1003 ) {
            alert(e);
			var btn = document.getElementById( formid + '_button' );
			btn.disabled = false;
       }
    }
	return a;
}

function handleLogin( formid, tanar )
{
	var btn = document.getElementById( formid + '_button' );
	btn.disabled = true;
	var handler = getLoginHandler( formid );
	var aE = document.forms[ formid ].elements;
	var iid = selectobj_value( formid, 'instance' );
	aE['passwmd5'].value = MD5( aE['password0'].value );
	handler.checkuser( iid, aE['username'].value, aE['passwmd5'].value, tanar );
	return false;
}

function forgetPassword( formid, tanar )
{
	var handler = getLoginHandler( formid );
	var aE = document.forms[ formid ].elements;
	var iid = selectobj_value( formid, 'instance' );
	handler.newpassword( iid, aE['username'].value, tanar );
	return false;
}

function showLoginForm( formid )
{
	switchToDiv( formid, 'loginblock' );
	var btn = document.getElementById( formid + '_button' );
	btn.disabled = false;
}
