
var login_sent = 0;

function sendMD5Login(submit_as_md5) {

	if (!document.getElementById('FORMPWD_INP')) {
		return false;
	}

	var obj_inp = document.getElementById('FORMPWD_INP');

	var passwd  = obj_inp.value;

	// check if neither name nor password was given
	if (document.login.FORMNAME.value == "" || obj_inp.value == "") {
		return false;
	}

	// check if password has been modified already
	if (login_sent == 1)
	{
		return false;
	}
	login_sent = 1;

	// hide plain text password
	var dummy = "****************************************";
	obj_inp.value = dummy.substr(0, passwd.length);

	// build hash from password
	if (window.location.protocol == "http:") {
		document.login.FORMPWD.value = MD5(passwd);
	}
	else {
		document.login.FORMPWD.value = passwd;
	}

	return true;
}

function sendMD5Loginguest()
{

	// build hash from password
	if (window.location.protocol == "http:")
	{
		document.guest.F_REGISTER_PWD.value = MD5(document.guest.F_REGISTER_PWD.value);
	}
//	document.guest.F_REGISTER_PWD.value = MD5(document.guest.F_REGISTER_PWD.value);

	return true;
}

function check()
{

	if ( checkdatatype( "CHAR", document.user.F_REGISTER_LNAME.value, "P" ) == false )
	{
	   alert("Bitte Loginnamen eingeben \nplease specify loginname");
	   document.user.F_REGISTER_LNAME.focus();
	   return false;
	}

	if ( checkdatatype( "CHAR", document.user.F_REGISTER_PWD.value, "P" ) == false )
	{
	   alert("Bitte Passwort eingeben \nplease specify password");
	   document.user.F_REGISTER_PWD.focus();
	   return false;
	}

	return true;

}

function sendMD5Loginuser()
{

	if (check()==false)
	{
	  return false;
	}

	// build hash from password
	document.user.F_REGISTER_PWD.value = MD5(document.user.F_REGISTER_PWD.value);

	return true;
}


function switchLanguage(lang, id)
{
	document.LANGCHANGE.LG.value = lang;
	document.LANGCHANGE.action   = 'index.php?script=' + id;
	document.LANGCHANGE.submit();
	return true;
}





//////////////////////////
//                      //
//  ANIMATED LOGIN BOX  //
//                      //
//////////////////////////

// ### param pre definition ###
var login_centered_x  = false;
var login_outer_pos_x = 0;
var login_outer_pos_y = 0;
var login_inner_pos_x = 0;
var login_inner_pos_y = 0;
var login_scroll_speed_x = 0;
var login_scroll_speed_y = 0;
// ############################


var login_offset_x = 0;

function reposLogin()
{
	return true;
}


function scrollLogIn()
{
  var l  = document.getElementById("login");
  var tx = parseInt(l.style.left);
  var ty = parseInt(l.style.top);
  var move_on = false;

  if ( (tx + login_scroll_speed_x) < (login_inner_pos_x + login_offset_x))
  {
  	l.style.left = tx + login_scroll_speed_x;
  	move_on = true;
  }
  if ( (ty + login_scroll_speed_y) < login_inner_pos_y )
  {
  	l.style.top  = ty + login_scroll_speed_y;
  	move_on = true;
  }

  if ( move_on == true )
  {
	window.setTimeout("scrollLogIn()", 4);
  }
  else
  {
    l.style.left = (login_inner_pos_x + login_offset_x);
    l.style.top  = login_inner_pos_y;
    document.login.FORMNAME.focus();
  }
}

function scrollLogOut()
{
  var l = document.getElementById("login");
  var tx = parseInt(l.style.left);
  var ty = parseInt(l.style.top);
  var move_on = false;
  if ( (tx - login_scroll_speed_x) > (login_outer_pos_x + login_offset_x))
  {
  	l.style.left = tx - login_scroll_speed_x;
  	move_on = true;
  }
  if ( (ty - login_scroll_speed_y) > login_outer_pos_y )
  {
  	l.style.top  = ty - login_scroll_speed_y;
  	move_on = true;
  }

  if ( move_on == true )
  {
  	window.setTimeout("scrollLogOut()", 4);
  }
  else
  {
    l.style.left = (login_outer_pos_x + login_offset_x);
    l.style.top  = login_outer_pos_y;
    l.style.display = "none";
//    l.style.visibility = "hidden";
//    window.clearInterval(rpl);
  }
}

function show_login(dir)
{
  var l = document.getElementById("login");

	if (login_centered_x)
	{
		login_offset_x = getCenteredLeft(0);
	}
	else
	{
		login_offset_x = 0;
	}

  if (dir == 1 && ( parseInt(l.style.left) != (login_inner_pos_x + login_offset_x) || parseInt(l.style.top) != login_inner_pos_y) )
  {
    l.style.left = (login_outer_pos_x + login_offset_x);
    l.style.top  = login_outer_pos_y;
    l.style.display = "block";
//    l.style.visibility = "visible";
    scrollLogIn();
    //document.login.FORMNAME.focus();
  }
  else
  {
    document.login.FORMNAME.blur();
    scrollLogOut();
  }
}


//////////////////////
//  JS-KEY-CATCHER  //
//////////////////////

function catchKey(taste)
{
  if (window.event) { return senden(window.event.keyCode); }
  else if (taste)   { return senden(taste.which); }
}

function senden(k)
{
  if (k == 13)
  {
    if (sendMD5Login() == true)
    {
      document.login.submit();
    }
  }

  if (k == 27)
  {
    show_login(-1);
  }
}

document.onkeydown = catchKey;




