PageReg = new PageRegistrator();
CurrentDesign = new DesignManager();

NS6 = 0;
IE = 0;
NS = 0;
OP = 0;

if(document.getElementById) NS6 = 1;
if(document.all) IE = 1;
if(document.layers)  NS = 1;
if(window.opera) OP = 1;

function PictureRegistry(){
	var PicIDs = new Array();
	var Titles = new Array();
	var Urls = new Array();
	var elements = 0;
	
	this.elements = elements;
	this.PicIDs = PicIDs;
	this.Urls = Urls;
	this.Titles = Titles;
	
	this.addPic = addPic;
	this.getIndex = getIndex;
	this.htmlPic = htmlPic;




function addPic(picid, url, header1){
		this.PicIDs[this.elements] = picid;
		this.Urls[this.elements] = 'images/'+ url;
		this.Titles[this.elements] = header1;
		this.elements++;
	}
	
function getIndex(id){
	var foundID = 0;

	for(var i = 0; i < this.elements; i++){
		if (this.PicIDs[i]==id) 
			foundID = i;
	}
	return foundID;
}	

function htmlPic(id){
	var i = 0;
	i = this.getIndex(id);
	var returnstring = '<img src="'+this.Urls[i]+'"><br><p>'+this.Titles[i]+'</p>';
	return returnstring;
}

}


function DesignManager(){

	var design = '';

	this.design=design;
	this.setDesign=setDesign;
	this.getDesign=getDesign;

	function setDesign(url){
		this.design=url;
	}

	function getDesign(){
		return this.design;
	}

}

function PageRegistrator(){

	var PageIDs = new Array();
	var Title1 = new Array();
	var Title2 = new Array();
	var elements = 0;

	this.addPage = addPage;
	this.callPage = callPage;
	this.getPrev = getPrev;
	this.getSucc = getSucc;
	this.getPageId = getPageId;
	this.getPageTitle1 = getPageTitle1;
	this.getPageTitle2 = getPageTitle2;
	this.showAllPages = showAllPages;

	this.PageIDs = PageIDs;
	this.Title1 = Title1;
	this.Title2 = Title2;
	this.elements = elements;

	function addPage( pageid, header1, header2 ){
		this.PageIDs[this.elements] = pageid;
		this.Title1[this.elements] = header1;
		this.Title2[this.elements] = header2;
		this.elements++;
	}

	function showAllPages(){

	var allPages='';

	for (var i = 0; i<this.elements; i++){

		allPages=allPages + '<a href="content.html?lang=2&site='+this.PageIDs[i]+'">' + this.Title2[i] + '</a><br>';

	}

	return(allPages);
	}

	function  callPage(ID, Lang){
		var evalString = ID + '.writeCode('+Lang+');';
		eval(evalString);

	}

	function getPrev(Id){

		var j=0;
		while ((this.PageIDs[j] != Id) && (j <= this.elements)){j++}
		j--;
		if (j == -1) j = this.elements - 1;
		return(j);
	}

	function getSucc(Id){

		var j = 0;
		while ((this.PageIDs[j] != Id) && (j <= this.elements)){
			j++;
		}
		j++;
		if (j == (this.elements)) j = 0;
		return(j);
	}

	function getPageId(ind){
		return(this.PageIDs[ind]);
	}

	function getPageTitle1(ind){
		return(this.Title1[ind]);
	}
	function getPageTitle2(ind){
		return(this.Title2[ind]);
	}

}


function page(header1, header2, PageID){

		var elements = 0;
		var ContentEnglish = new Array();
		var ContentDeutsch = new Array();
		ContentEnglish[0] = '<h1>'+header1+'</h1>'
		ContentDeutsch[0] = '<h1>'+header2+'</h1>'

		this.addPar = addPar;
		this.writeCode = writeCode;
		this.addParLink = addParLink;
		this.addParExtLink = addParExtLink;
		this.addParPic = addParPic;
		this.closeLinkSection = closeLinkSection;
		this.openLinkSection = openLinkSection;7
		this.addSecLink = addSecLink;
		this.addPic = addPic;
		this.addSecExtLink = addSecExtLink;
		this.addPlugin = addPlugin;
		this.addHeader = addHeader;

		this.ContentEnglish = ContentEnglish;
		this.ContentDeutsch = ContentDeutsch;
		this.elements = elements;
		this.ID = PageID;

		PageReg.addPage(PageID, header1, header2);


	function addHeader(h, html1, html2){
		this.elements++;
		start = '<h'+h+'>';
		end = '</h'+h+'>';
		this.ContentEnglish[this.elements]=''+start+html1+end;
		this.ContentDeutsch[this.elements]=''+start+html2+end;
	}


	function addPlugin( html1, html2){
		this.elements++;
		this.ContentEnglish[this.elements]=html1;
		this.ContentDeutsch[this.elements]=html2;
	}

	function addPar(text1, text2){

			this.elements++;
			this.ContentEnglish[this.elements]='<p>'+text1+'</p>';
			this.ContentDeutsch[this.elements]='<p>'+text2+'</p>';

	}

	function addParExtLink(linkID, linkText1, linkText2, linkURL){

		var Par1 = this.ContentEnglish[this.elements];
		var Par2 = this.ContentDeutsch[this.elements];

		var linkstring = '#' + linkID + '#';

		var Parts1 = Par1.split(linkstring);
		var Parts2 = Par2.split(linkstring);

		var LinkHTML1 = '<a href="'+linkURL+'" target="_blank">'+linkText1+'</a>';
		var LinkHTML2 = '<a href="'+linkURL+'" target="_blank">'+linkText2+'</a>';

		var newElement1 = Parts1[0] + LinkHTML1 + Parts1[1];
		var newElement2 = Parts2[0] + LinkHTML2 + Parts2[1];

		this.ContentEnglish[this.elements] = newElement1;
		this.ContentDeutsch[this.elements] = newElement2;
	}

	function addParLink(linkID, linkText1, linkText2, linkURL){

		var Par1 = this.ContentEnglish[this.elements];
		var Par2 = this.ContentDeutsch[this.elements];

		var linkstring = '#' + linkID + '#';

		var Parts1 = Par1.split(linkstring);
		var Parts2 = Par2.split(linkstring);

		var LinkHTML1 = '<a href="'+linkURL+'?lang=1">'+linkText1+'</a>';
		var LinkHTML2 = '<a href="'+linkURL+'?lang=2">'+linkText2+'</a>';

		var newElement1 = Parts1[0] + LinkHTML1 + Parts1[1];
		var newElement2 = Parts2[0] + LinkHTML2 + Parts2[1];

		this.ContentEnglish[this.elements] = newElement1;
		this.ContentDeutsch[this.elements] = newElement2;
	}

	function addParPic(picID, picURL){
		var Par1 = this.ContentEnglish[this.elements];
		var Par2 = this.ContentDeutsch[this.elements];

		var linkstring = '#' + picID + '#';

		var Parts1 = Par1.split(linkstring);
		var Parts2 = Par2.split(linkstring);

		var imgHTML = '<img src="'+picURL+'">';

		var newElement1 = Parts1[0] + imgHTML + Parts1[1];
		var newElement2 = Parts2[0] + imgHTML + Parts2[1];

		this.ContentEnglish[elements] = newElement1;
		this.ContentDeutsch[elements] = newElement2;
	}


	function openLinkSection(){
		this.elements++;
		var newElement = '<div align="right"><table border="0" width="90%" cellspacing="0" cellpadding="0"><tr><td>';
		this.ContentEnglish[this.elements] = newElement;
		this.ContentDeutsch[this.elements] = newElement;

	}

	function closeLinkSection(){
		this.elements++;
		var newElement = '</td></tr></table></div><br>';
		this.ContentEnglish[this.elements] = newElement;
		this.ContentDeutsch[this.elements] = newElement;

	}

	function addSecLink( linkText1, linkText2, url){
		this.elements++;

	 	 var linkurl = document.URL;
 		 var linkparts = linkurl.split("?");
 		 var linktext = linkparts[0];
 		 var undzeichen = '&';

		var newElement1 = '<a href="'+linkparts[0]+'?lang=1'+undzeichen+'site='+url+'">'+linkText1+'</a><br>';
		var newElement2 = '<a href="'+linkparts[0]+'?lang=2'+undzeichen+'site='+url+'">'+linkText2+'</a><br>';
		
		this.ContentEnglish[this.elements] = newElement1;
		this.ContentDeutsch[this.elements] = newElement2;
	}

	function addSecExtLink( linkText1, linkText2, url){
		this.elements++;
		var newElement1 = '<a href="'+url+'" target="_blank">'+linkText1+'</a><br>';
		var newElement2 = '<a href="'+url+'" target="_blank">'+linkText2+'</a><br>';
		this.ContentEnglish[this.elements] = newElement1;
		this.ContentDeutsch[this.elements] = newElement2;
	}


	function addPic(picDesc1, picDesc2, url){
		this.elements++;
		var newElement1 = '<img src="'+url+'" alt="'+picDesc1+'">';
		var newElement2 = '<img src="'+url+'" alt="'+picDesc2+'">';
		this.ContentEnglish[this.elements] = newElement1;
		this.ContentDeutsch[this.elements] = newElement2;
	}

	function writeCode(lang){

		var htmlcontent=' ';

		if (lang == 1){

			for (var i = 0; i <= this.elements; i++){
					htmlcontent = htmlcontent + this.ContentEnglish[i];
			}
		}else{
			for (var i = 0; i <= this.elements; i++){
					htmlcontent = htmlcontent + this.ContentDeutsch[i];
			}
		}
		//document.write(htmlcontent);



		previousIndex = PageReg.getPrev(this.ID);
		succeedingIndex = PageReg.getSucc(this.ID);



		htmlcontent = htmlcontent + '<table border="0" width="95%" cellspacing="0" cellpadding="0"><tr><td width="50%">';
		if (lang == 1)
			htmlcontent = htmlcontent + '<p><a onClick="reloadMenu()" href="'+CurrentDesign.getDesign()+'?lang='+lang+'&site='+PageReg.getPageId(previousIndex)+'"><<< previous page</a><br><b>title:</b> ' + PageReg.getPageTitle1(previousIndex) + '</p>'
		else
			htmlcontent = htmlcontent + '<p><a onClick="reloadMenu()" href="'+CurrentDesign.getDesign()+'?lang='+lang+'&site='+PageReg.getPageId(previousIndex)+'"><<< vorherige Seite</a><br><b>Thema:</b> ' + PageReg.getPageTitle2(previousIndex) + '</p>';

		htmlcontent = htmlcontent + '</td><td width="50%" align="right">';

		if (lang == 1)
			htmlcontent = htmlcontent + '<p><a onClick="reloadMenu()" href="'+CurrentDesign.getDesign()+'?lang='+lang+'&site='+PageReg.getPageId(succeedingIndex)+'">next page >>></a><br><b>title:</b> ' + PageReg.getPageTitle1(succeedingIndex) + '</p>'
		else
			htmlcontent = htmlcontent + '<p><a onClick="reloadMenu()" href="'+CurrentDesign.getDesign()+'?lang='+lang+'&site='+PageReg.getPageId(succeedingIndex)+'">nächste Seite >>></a><br><b>Thema:</b> ' + PageReg.getPageTitle2(succeedingIndex) + '</p>';
		htmlcontent = htmlcontent + '</td></tr></table>';

		return htmlcontent;
	}

}

function LanguageManager(){

	var startLink = 'start';
	var lastLinkClicked = startLink;
	var currentLang = 2;

	this.setCurrentLang = setCurrentLang;
	this.callPage = callPage;
	this.lastLinkClicked = lastLinkClicked;
	this.currentLang = currentLang;
	this.startLink = startLink;

	function callPage(url){

		this.lastLinkClicked = url;
		parent.frames["show"].location.href='content.html?lang=' +this.currentLang+'&site='+this.lastLinkClicked;

	}

	function setCurrentLang(Lang){
		this.currentLang=Lang;
		if (this.lastLinkClicked != this.startLink) {
			parent.frames["show"].location.href='content.html?lang=' +this.currentLang+'&site='+this.lastLinkClicked;
		}
	}

}

function spage(){

	this.writeCode = writeCode;

	function writeCode(x){
		parent.window.frames["show"].location.href='start.html';
	}


}

function reloadMenu(){
	// parent.window.frames["menu"].location.href="menu.html";

}
