// JavaScript Document

var root;
var previewDir = "photos/small/";
var zoomDir = "photos/zoom/";

function ppbElement(pID, pText){
	this.myID = pID;
	this.myText = pText;
	this.myPrevious;
	this.myNext;
}

function addElement(pID, pText){
	if(root == null){
		root = new ppbElement(pID, pText);
	}
	else{
		var ppbPointer = root;
		while(ppbPointer.myNext != null){
			ppbPointer = ppbPointer.myNext;
		}
		ppbPointer.myNext = new ppbElement(pID, pText);
		ppbPointer.myNext.myPrevious = ppbPointer;
	}
}

function getElement(pID){
	var ppbPointer = root;
	while(ppbPointer != null && ppbPointer.myID != pID){
		ppbPointer = ppbPointer.myNext;
	}
	return ppbPointer;
}

function showElement(pID){
	document.getElementById("photo").innerHTML = createZoomCode(pID);
}

function showPreview(){
	window.frames[0].document.getElementById("ppb").innerHTML = createPreviewCode();
}

function showGeneratedCode(){
	document.getElementById("ppb").innerHTML = document.getElementById("ppb").innerHTML +"<form><textarea cols=\"150\" rows=\"50\">"+generatedHTML+"</textarea></form>";
}

function initGallery(){
	addElement("foto_1.jpg", "Vorschaubild");
	addElement("foto_2.jpg", "Vorschaubild");
	addElement("foto_3.jpg", "Vorschaubild");
	addElement("foto_4.jpg", "Vorschaubild");
	addElement("foto_5.jpg", "Vorschaubild");
	addElement("foto_6.jpg", "Vorschaubild");
	addElement("foto_7.jpg", "Vorschaubild");
	addElement("foto_8.jpg", "Vorschaubild");
	addElement("foto_9.jpg", "Vorschaubild");
	addElement("foto_10.jpg", "Vorschaubild");
	addElement("foto_16.jpg", "Vorschaubild");
	addElement("foto_17.jpg", "Vorschaubild");
	addElement("foto_13.jpg", "Vorschaubild");
	addElement("foto_18.jpg", "Vorschaubild");
	addElement("foto_15.jpg", "Vorschaubild");
	addElement("foto_11.jpg", "Vorschaubild");
	addElement("foto_12.jpg", "Vorschaubild");
	addElement("foto_14.jpg", "Vorschaubild");
	showPreview();
}

function createZoomCode(pID){
	var displayedElement = getElement(pID);
	if(displayedElement != null){
		var generatedHTML =
			"<center>"
			+"<table>"
			+"\n\t<tbody>"
			+"\n\t\t<tr>"
			+"\n\t\t\t<td style=\"width:30px;\">"
		;
		if(displayedElement.myPrevious != null){
			generatedHTML = generatedHTML
				+"\n\t\t\t\t<a href=\"javascript:showElement('" + displayedElement.myPrevious.myID +"')\">"
				+"\n\t\t\t\t\t<img src=\"../../res/img/btn_arrowLeft.png\" border=\"0\"alt=\"Zeige vorheriges Bild\" />"
				+"\n\t\t\t\t</a>"
			;
		}
		generatedHTML = generatedHTML
			+"\n\t\t\t</td>"
			+"\n\t\t\t<td>"
			+"\n\t\t\t\t<img src=\"" + zoomDir + displayedElement.myID +"\" border=\"0\" alt=\"" + displayedElement.myText + "\" />"
			+"\n\t\t\t</td>"
			+"\n\t\t\t<td style=\"width:30px;\">"
		;
		if(displayedElement.myNext != null){
			generatedHTML = generatedHTML
				+"\n\t\t\t\t<a href=\"javascript:showElement('" + displayedElement.myNext.myID + "')\">"
				+"\n\t\t\t\t\t<img src=\"../../res/img/btn_arrowRight.png\" border=\"0\"alt=\"Zeige n&auml;chstes Bild\" />"
				+"\n\t\t\t\t</a>"
			;
		}
		generatedHTML = generatedHTML
			+"\n\t\t\t</td>"
			+"\n\t\t</tr>"
			+"\n\t</tbody>"
			+"</table><br />"
			+"<a href=\"javascript:closeGallery()\" class=\"close\"><img src=\"../../res/img/btn_close.png\" border=\"0\" alt=\"Zoom schlie&szlig;en\" /></a>"
			+"</center>";
		;
	}
	return generatedHTML;
	
	/*
	var displayedElement = getElement(pID);
	if(displayedElement != null){
		var generatedHTML = "<img src=\"" + zoomDir + displayedElement.myID +"\" border=\"0\" alt=\"" + displayedElement.myText + "\" /><br />";
		if(displayedElement.myPrevious != null){
			generatedHTML = generatedHTML
				+"\n\t<a href=\"javascript:showElement('" + displayedElement.myPrevious.myID +"')\">"
				+"\n\t\t<img src=\"../../res/img/btn_arrowLeft.png\" border=\"0\"alt=\"Zeige vorheriges Bild\" />"
				+"\n\t</a>"
			;
		}
		generatedHTML = generatedHTML
			+"\n\t<a href=\"javascript:closeGallery()\" class=\"close\"><img src=\"../../res/img/btn_close.png\" border=\"0\" alt=\"Zoom schlie&szlig;en\" /></a>"
		;
		if(displayedElement.myNext != null){
			generatedHTML = generatedHTML
				+"\n\t<a href=\"javascript:showElement('" + displayedElement.myNext.myID + "')\">"
				+"\n\t\t<img src=\"../../res/img/btn_arrowRight.png\" border=\"0\"alt=\"Zeige n&auml;chstes Bild\" />"
				+"\n\t</a>"
			;
		}
	}
	return generatedHTML;
	*/
}

function createPreviewCode(){
	var generatedHTML = "<table>\n\t<tbody>\n\t\t<tr>";
	var position = 0;
	ppbPointer = root;
	while(ppbPointer != null){
		generatedHTML =
		generatedHTML +
			"\n\t\t\t"
			+"<td>"
			+"\n\t\t\t\t"
			+"<a href=\"javascript:top.showElement('" + ppbPointer.myID +"'); top.openGallery();\">"
			//+"<a href=\"javascript:alert(top.document.title)\">"
			+"\n\t\t\t\t\t"
			+"<img src=\"" + previewDir + ppbPointer.myID +"\" border=\"0\" alt=\"" + ppbPointer.myText + "\" />"
			+"\n\t\t\t\t"
			+"</a>"
			+"\n\t\t\t"
			+"</td>";
		if(position == 2){
			generatedHTML = generatedHTML + "\n\t\t</tr>";
			if(ppbPointer.myNext != null){
				generatedHTML = generatedHTML +"\n\t\t<tr>";
				position = 0;
			}
		}
		else{
			if(ppbPointer.myNext != null){
				position++;
			}
		}
		ppbPointer = ppbPointer.myNext;
	}
	if(position < 2){
		generatedHTML = generatedHTML + "\n\t\t</tr>";
	}
	generatedHTML = generatedHTML + "\n\t</tbody>\n</table>";
	return generatedHTML;
}

function openGallery(){
	var width;
	var height;
	if( typeof(window.innerHeight) == 'number'){
		width	= window.parent.innerWidth;
		height	= window.parent.innerHeight;
	}
	else{
		if( (typeof(window.parent.document.documentElement.clientHeight) == 'number') && (window.parent.document.documentElement.clientHeight > 0) ){
			width 	= window.parent.document.documentElement.clientWidth;
			height 	= window.parent.document.documentElement.clientHeight;
		}
		else{
			width 	= window.parent.document.body.clientWidth;
			height	= window.parent.document.body.clientHeight;
		}
	}
	var photoDiv = window.parent.document.getElementById("photo_border");
	photoDiv.style.width	= width + "px";
	photoDiv.style.height	= height + "px";
	photoDiv.style.display 	= "block";
}

function closeGallery(){
	var photoDiv = document.getElementById("photo_border");
	photoDiv.style.display = "none";
}