var http_request = false;

function openPoster(id) {
	document.getElementById("loading").style.display = "block";
	document.getElementById("hidden").innerHTML = document.getElementById("visible").innerHTML;
//	document.getElementById("visible").innerHTML = "loading ... please wait";
	getPageContent('gallery.php?poster='+id);
	return false;
}

function openPosterInList(id) {
	document.getElementById("loading").style.display = "block";
	getPageContent('gallery.php?poster='+id);
	return false;
}

function closePoster() {
	document.getElementById("visible").innerHTML = document.getElementById("hidden").innerHTML;
	return false;
}

function loadList(list, part, id) {
	loadPage("load.php?list="+list+"&part="+part, id);
	document.getElementById("loading").style.display = "block";
	return false;
}

function showContent() {
	if (http_request.readyState == 4) {
		var answer = http_request.responseText;
		  //var answer = http_request.responseText;
		if(document.getElementById("visible").innerHTML != answer){
			document.getElementById("visible").innerHTML = answer;
		}
		resizePDF();
		document.getElementById("loading").style.display = "none";
	}
}

function getPageContent(page) {
	http_request = false;
	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
			// zu dieser Zeile siehe weiter unten
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}

	if (!http_request) {
		alert('Ende :( Kann keine XMLHTTP-Instanz erzeugen');
		return false;
	}
	http_request.onreadystatechange = showContent;
	
	http_request.open('GET', page, true);
	http_request.send(null);
}

function loadPage(page, id) {
	http_request = false;
	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
			// zu dieser Zeile siehe weiter unten
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}

	if (!http_request) {
		alert('Ende :( Kann keine XMLHTTP-Instanz erzeugen');
		return false;
	}
	http_request.onreadystatechange = function() {
		if (http_request.readyState == 4) {
			openList(id);	
		}
	}
	
	http_request.open('GET', page, true);
	http_request.send(null);
}
function openList(id) {
	cats = document.getElementById("body").getElementsByTagName("div");
	for (i = 0; i < cats.length; i++) {
		if (cats[i].className == "cat") {
			divs = cats[i].getElementsByTagName("div");
			for (j = 0; j < divs.length; j++) {
				divs[j].style.display = 'none';
			}
		}
	}
	divs = document.getElementById(id).getElementsByTagName("div");
	for (i = 0; i < divs.length; i++) {
		divs[i].style.display = 'block';
	}
	document.getElementById("loading").style.display = "none";
}
function imageSize(size) {
	if (document.getElementById('posterimg'))
		document.getElementById('posterimg').style.width = size;
}
function urlBox(path) {
	if (d = document.getElementById('url')) {
		d.innerHTML = '<input id="urlBox" type="text" value="'+path+'" size="70" />';
		document.getElementById('urlBox').select();
	}
}

function resizePDF() {
  var myWidth = 0, myHeight = 0;
  if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
    myWidth = window.innerWidth;
    myHeight = window.innerHeight;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    //IE 6+ in 'standards compliant mode'
    myWidth = document.documentElement.clientWidth;
    myHeight = document.documentElement.clientHeight;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
    myHeight = document.body.clientHeight;
  }
  //window.alert( 'Width = ' + myWidth );
  //window.alert( 'Height = ' + myHeight );
	//alert(myPos.y);
	if (document.getElementById('posterimgpdf')) {
		myPos = getPosition(document.getElementById('posterimgpdf'));
		document.getElementById('posterimgpdf').style.height = (myHeight-myPos.y-20)+'px';
	}
}

function getPosition(element)
/* der Aufruf dieser Funktion ermittelt die absoluten Koordinaten
   des Objekts element */
{
  var elem=element,tagname="",x=0,y=0;
  
/* solange elem ein Objekt ist und die Eigenschaft offsetTop enthaelt
   wird diese Schleife fuer das Element und all seine Offset-Eltern ausgefuehrt */
  while ((typeof(elem)=="object")&&(typeof(elem.tagName)!="undefined"))
  {
    y+=elem.offsetTop;     /* Offset des jeweiligen Elements addieren */
    x+=elem.offsetLeft;    /* Offset des jeweiligen Elements addieren */
    tagname=elem.tagName.toUpperCase(); /* tag-Name ermitteln, Grossbuchstaben */

/* wenn beim Body-tag angekommen elem fuer Abbruch auf 0 setzen */
    if (tagname=="BODY")
      elem=0;

/* wenn elem ein Objekt ist und offsetParent enthaelt
   Offset-Elternelement ermitteln */
    if (typeof(elem)=="object")
      if (typeof(elem.offsetParent)=="object")
        elem=elem.offsetParent;
  }

/* Objekt mit x und y zurueckgeben */
  position=new Object();
  position.x=x;
  position.y=y;
  return position;
}