// JavaScript Document
var gTop=0;
var gLeft=0;

var gSpeed=25;
var iTop=gTop;
var iLeft=gLeft;
var bAnimate=false;




function goUp() {
	var o=document.getElementById("Seite");
	iTop=iTop+gSpeed;
	o.style.top= iTop + "px";
	
	if (bAnimate) setTimeout("goUp();", 25);
}

function goDown()	{
	var o=document.getElementById("Seite");
	iTop=iTop-gSpeed;
	o.style.top=iTop + "px";
	if (bAnimate) setTimeout("goDown();", 25);
}

function goLeft() {
	var o=document.getElementById("Seite");
	iLeft=iLeft-gSpeed;
	o.style.left=iLeft + "px";
	if (bAnimate) setTimeout("goLeft();", 25);
}

function goRight() {
	var o=document.getElementById("Seite");
	iLeft=iLeft+gSpeed;
	o.style.left=iLeft + "px";
	if (bAnimate) setTimeout("goRight();", 25);
}

function goCenter() {
	var o=document.getElementById("Seite");
	o.style.left=gLeft + "px";
	o.style.top=gTop + "px";
	iTop=gTop;
	iLeft=gLeft;
}

var ca
var step_counter = 0

function move_seite(left_start, left_end, top_start, top_end) {

	// abbremsgeschwindigkeit hoherwert ist schnell los, bremst stark, kleiner wert ist langsam los, bremst weniger
	var acceleration = 1.0   
	
	var left_step_px = 45.0
	var nofsteps = Math.abs(1.0*(left_end + left_start) / (1.0*left_step_px))
	var left_step = left_step_px
	var top_step = 1.0*(top_end + top_start) / nofsteps
	
	step_counter++
	var seite=document.getElementById("Seite");
	var seite_left = left_start - (left_end + left_start) * (1 + Math.exp(-acceleration) - Math.exp(-acceleration*step_counter/nofsteps))
	var seite_top = top_start - (top_end + top_start) * (1 + Math.exp(-acceleration) - Math.exp(-acceleration*step_counter/nofsteps))

	//alert("seite.style.left=" + seite_left + 'px');
	//alert("seite.style.top=" + seite_top + 'px');
	seite.style.left= seite_left + 'px';
	seite.style.top= seite_top + 'px';
		
	if (step_counter >= nofsteps) {
		//alert("cleared!! (step_counter=" + step_counter + ", nofsteps=" + nofsteps)
		window.clearInterval(ca)
		iTop=parseFloat(seite.style.top);
		iLeft=parseFloat(seite.style.left);
		step_counter = 0
	}
}

function goTo(elementId){
   var element=document.getElementById(elementId);
   var seite=document.getElementById("Seite");
   
   var seite_left = parseFloat(seite.style.left)
   var seite_top = parseFloat(seite.style.top)
   var element_left = parseFloat(element.style.left)
   var element_top = parseFloat(element.style.top)
   ca = window.setInterval("move_seite(" + seite_left + ", " + element_left + ", " + seite_top + ", " + element_top + ")", 1);
 }

