var innertext = '';
var sidebardo = '';
function rollOver(handle,source)
{
	document.getElementById(handle).src=source;
}

function rollOut(handle,source)
{
	document.getElementById(handle).src=source;
}

function make_invisible(handle)
{
	document.getElementById(handle).style.visibility="hidden";
	document.getElementById(handle).style.display="none";
}

function make_visible(handle)
{
	document.getElementById(handle).style.visibility="visible";
	document.getElementById(handle).style.display="block";
}

function openStream(func, time)
{
	setInterval(func,time);
}

function requestcontent(value,action,special)
{
	http_request = false;
	if (window.XMLHttpRequest)
	{
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType)
		{
			http_request.overrideMimeType('text/text');
		}
	}
	else if (window.ActiveXObject)
	{
		try
		{
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			try
			{
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e)
			{
			}
		}
	}
	
	/*		http-request		*/
	if (!http_request)
	{
		return false;
	}
	
	if(action === undefined)
	{
		var url="./scripts/makecontent.php?value="+ value;
		http_request.onreadystatechange = loadContent;
	}
	else if(action == "SIDEBAR")
	{
		var url="./scripts/makecontent.php?value="+ value;
		http_request.onreadystatechange = loadContentSidebar;
	}
	if (url)
	{
		http_request.open('GET', url, true);
		http_request.send(null);
	}
}

function onloadaction()
{
	sidebardo = 'twitter,flickr,lastfm';
	document.getElementById("sidebar").innerHTML = '';
	loadSidebarRec(sidebardo);
}

function loadSidebarRec(loadqueue)
{
	if(loadqueue.indexOf(',') > 0)
	{
		alone = loadqueue.split(',');
		sidebardo = loadqueue.replace(alone[0]+',', "");
	}
	else
	{
		alone[0] = sidebardo 
		sidebardo = '';
	}
	if(alone[0].length > 0)
	{
		requestcontent(alone[0],'SIDEBAR');
	}
}

function loadContentSidebar()
{
	if (http_request.readyState == 4)
	{
		if (http_request.status == 200)
		{
			document.getElementById("sidebar").innerHTML = document.getElementById("sidebar").innerHTML + http_request.responseText;
			loadSidebarRec(sidebardo);
		}
		else
		{
		}
	}
}

function loadContent()
{
	if (http_request.readyState == 4)
	{
		if (http_request.status == 200)
		{
			document.getElementById("contentbox").innerHTML=http_request.responseText;
		}
		else
		{
		}
	}
}

function loadContentExif()
{
	if (http_request.readyState == 4)
	{
		if (http_request.status == 200)
		{
			document.getElementById("exif").innerHTML=http_request.responseText;
		}
		else
		{
		}
	}
}

function changeimage(source,w,h,object)
{
	document.getElementById(object).src = source;
	document.getElementById(object).style.width = w;
	document.getElementById(object).style.height = h;
}

function loadexif(id,type)
{
	requestcontent('id='+id+'&type='+type,'EXIF');
}

animate		= false;
kollision	= false;
leftvar		 = 0;
topvar		= 0;
outerw		= 0;
outerh		= 0;
leftstep	= 7;	// Geschwindigkeit nach links & rechts
topstep		= 2;	// Geschwindigkeit nach oben & unten

// Scrollen starten
function startScroll(direction,innerelement,outerelement)
{
	// Funktion um in alle 4 Richtungen ermöglichen
	// Breite & Höhe des Innerelements & des Outerelements müssen per CSS angegeben sein, sonnst funktioniert die Kollisionsabfrage nicht
	
	// Positionen des innernen DIVs auslesen
	leftvar = parseInt(document.getElementById(innerelement).style.left);
	topvar = parseInt(document.getElementById(innerelement).style.top);
	
	// Größen ermitteln
	outerw = parseInt(document.getElementById(outerelement).style.width);
	outerh = parseInt(document.getElementById(outerelement).style.height);
	innerw = parseInt(document.getElementById(innerelement).style.width);
	innerh = parseInt(document.getElementById(innerelement).style.height);
	
	// Kollisionserkennung an allen 4 Seiten
	if (direction == 'right')
	{
		// nicht nach rechts raus scrollen
		if(leftvar >= 0)
		{
			kollision = true;
		}
		else
		{
			kollision = false;
		}
	}
	else if (direction == 'left')
	{
		// nicht nach links raus scrollen
		if(leftvar <= -(innerw - outerw))
		{
			kollision = true;
		}
		else
		{
			kollision = false;
		}
	}
	else if (direction == 'up')
	{
		// nicht nach oben raus scrollen
		if(topvar <= -(innerh - outerh))
		{
			kollision = true;
		}
		else
		{
			kollision = false;
		}
	}
	else if (direction == 'down')
	{
		// nicht nach unten raus scrollen
		if(topvar >= 0)
		{
			kollision = true;
		}
		else
		{
			kollision = false;
		}
	}
	
	// bei Kollision bewegt sich nichts
	if (kollision == false)
	{
		// Bewebungsrichtung auslesen und berechnen
		if(direction == 'left')
		{
			document.getElementById(innerelement).style.left = (leftvar - leftstep) +'px';
		}
		else if(direction == 'right')
		{
			document.getElementById(innerelement).style.left = (leftvar + leftstep) +'px';
		}
		else if(direction == 'up')
		{
			document.getElementById(innerelement).style.top = (topvar - topstep) +'px';
		}
		else if(direction == 'down')
		{
			document.getElementById(innerelement).style.top = (topvar + topstep) +'px';
		}

		// so lange MouseOver aktiv wird gescrollt
		if (animate == true)
		{
			timeout = '';
			timeout = "startScroll('"+direction+"','"+innerelement+"','"+outerelement+"')";
			setTimeout(timeout, 25);
		}
	}
}

//Scrollen stoppen
function stopScroll()
{
	animate = false;
}