//Einrichten der Login-Oberfläche
document.observe("dom:loaded", function() {

	var loginmask = (document.getElementsByTagName("body")[0]).select('#loginformular')[0];
	var blendlayer = (document.getElementsByTagName("body")[0]).select('.blendlayer')[0];

	//Positionierung und Einrichtung
	if(loginmask && blendlayer) {
		
		//Blende ausweiten
		blendlayer.setStyle({ 
			width: getDocWidth() + "px",
			height: getDocHeight() + "px"
		});	
		
		leftvalue = Math.round((document.viewport.getWidth() / 2) - (loginmask.offsetWidth / 2))  + "px";
		topvalue = Math.round((document.viewport.getHeight() / 2) - (loginmask.offsetHeight / 2))  + "px";
		
		//Login positionieren
		loginmask.setStyle({ 
			left: leftvalue,
			top: topvalue
		});
		
		
		//Fokus
		document.login.username.value = "";
		document.login.password.value = "";
		document.login.username.focus();

		
		//Events
		var formular = loginmask.select("#login")[0];
		formular.observe("keydown", function(event) {
			
			if(event.keyCode == 13) checkForLogin();
		});
		
		//OK-Button => Login checken
		document.login.ok.onclick = function() { checkForLogin(); };

		//Abbrechen-Schaltfläche
		document.login.cancel.onclick = function() { 
			
			  Effect.Fade(loginmask.id, { duration: 0.2 });
			  window.setTimeout(function() {
				  loginmask.remove();
				  blendlayer.remove();
			  },300);
		};
		
		
		function checkForLogin() {
			
			
			
			
			var res = 0;
			new Ajax.Request( "fjhasf9e8q/login/enterdata" , {
				  method:'post',
				  parameters: { username: document.login.username.value, password: document.login.password.value },
				  requestHeaders: {Accept: 'text/plain'},
				  onSuccess: function(transport) {
					  res = transport.responseText;
					  //alert(res);
				  },
				  onComplete: function() {
					  
					  loginmask.blur();
					  
					  if(res == "login_error") {
						
						  Effect.Shake(loginmask.id);
						  
					  } else {
						  Effect.Fade(loginmask.id, { duration: 0.3 });
						  window.setTimeout(function() {
							  loginmask.remove();
							  blendlayer.remove();
							  location.reload();
						  },500);
					  }
						
				  },
				  onFailure: function(){ 
					  loginmask.blur();
					  alert("Fehler 614: Ein Fehler beim Versenden des Formulars ist aufgetreten !"); 
				  }
			});	
		}
		
		
	};
});


function getDocHeight()
{
    var D = document;
    return Math.max(
        Math.max(D.body.scrollHeight, D.documentElement.scrollHeight),
        Math.max(D.body.offsetHeight, D.documentElement.offsetHeight),
        Math.max(D.body.clientHeight, D.documentElement.clientHeight)
    );
};


function getDocWidth() 
{
	var D = document;
    return Math.max(
        Math.max(D.body.scrollWidth, D.documentElement.scrollWidth),
        Math.max(D.body.offsetWidth, D.documentElement.offsetWidth),
        Math.max(D.body.clientWidth, D.documentElement.clientWidth)
    );
};







function onClickAccessData(event) {
	

	Event.stop(event);
	var _body = (document.getElementsByTagName("body")[0]);

	
	
	
	var blende = document.createElement('div');
	blende.addClassName("blendlayer");
	blende.id="accessdata_blende";
	
	//Blende ausweiten
	blende.setStyle({ 
		width: getDocWidth() + "px",
		height: getDocHeight() + "px"
	});	

	
	var formular = "<div id=\"accessdata\">	<div class=\"dialog_content\">	<span class=\"headline\">Zugangsdaten setzen</span>	<form name=\"accessdata\" id=\"login\">		<p><span class=\"label\">alter Benutzername:</span><input type=\"text\" maxlength=\"50\" tabindex=\"1\" name=\"oldusername\"/></p>		<p><span class=\"label\">altes Passwort:</span><input type=\"password\" maxlength=\"50\" tabindex=\"2\" name=\"oldpassword\"/></p>		<p><span class=\"label\">neuer Benutzername:</span><input type=\"text\" maxlength=\"50\" tabindex=\"3\" name=\"newusername\"/></p>		<p><span class=\"label\">neues Passwort:</span><input type=\"password\" maxlength=\"50\" tabindex=\"4\" name=\"newpassword\"/></p>		<input name=\"ok\" type=\"button\" tabindex=\"5\" value=\"   OK   \"><input name=\"cancel\" tabindex=\"6\" type=\"button\" value=\"Abbrechen\">	</form>	</div></div>";
	blende.innerHTML = formular;
	_body.appendChild(blende);
	
	var accessdata = blende.select("#accessdata")[0];
	
	document.accessdata.oldusername.value = "";
	document.accessdata.oldpassword.value = "";
	document.accessdata.newusername.value = "";
	document.accessdata.newpassword.value = "";
	
	document.accessdata.oldusername.focus();
	
	leftvalue = Math.round((document.viewport.getWidth() / 2) - (accessdata.offsetWidth / 2))  + "px";
	topvalue = Math.round((document.viewport.getHeight() / 2) - (accessdata.offsetHeight / 2))  + "px";
	
	//Eingabemaske Zugangsdaten positionieren
	accessdata.setStyle({ 
		left: leftvalue,
		top: topvalue
	});

	var formular = blende.select("#accessdata form")[0];
	
	formular.observe("keyup", function(event) {
		
		if(event.keyCode == 13) changeAccessData();
		
	});

	
	//OK-Button => Login checken
	document.accessdata.ok.onclick = function() { changeAccessData(); };

	//Abbrechen-Schaltfläche
	document.accessdata.cancel.onclick = function() { 
		
		  Effect.Fade(accessdata.id, { duration: 0.2 });
		  window.setTimeout(function() {
			  accessdata.remove();
			  blende.remove();
		  },300);
	};
	
	
	function changeAccessData() {
		
		
		Event.stop(event);
		
		var res = 0;
		new Ajax.Request( "4891239dhsjfa/accessdata/change" , {
			  method:'post',
			  parameters: { oldusername: document.accessdata.oldusername.value, oldpassword: document.accessdata.oldpassword.value, newusername: document.accessdata.newusername.value, newpassword: document.accessdata.newpassword.value },
			  requestHeaders: {Accept: 'text/plain'},
			  onSuccess: function(transport) {
				  res = (transport.responseText).evalJSON();
			  },
			  onComplete: function() {
				  
				  
				  
				  if(res.status == "error") alert(res.message);
				  else {
					  
					  location.reload();
				  }
					
			  },
			  onFailure: function(){ 
				  alert("Fehler 614: Ein Fehler beim Versenden des Formulars ist aufgetreten !"); 
			  }
		});	
	}
	
	
}





