// SCRIPT language="JavaScript"
// Datei: script.js
// Frame-uebergreifende Java-Script-Steuerung zum "Aufbau der Dampflokomotive"
// Copyright 2000-2002 Andreas Schaefer, Wuppertal, schaefer@dlok.de


function InitVars () {
	parent.DoPreview=1;
	parent.AktuellGrafik=0;
	parent.AktuellTeil=0;
}


// Anzahl der Grafiken im Array "Grafik_Index"
var MaxGrafik=7;

// Auswahlindex der darzustellenden Grafiken
Grafik_Index=new Array(
'66r01.jpg',
'66r02.jpg',
'66r03.jpg',
'66r04.jpg',
'66r05.jpg',
'66r06.jpg',
'66r07.jpg',
'66r08.jpg');

// Anzahl der in der Animation darstellbaren Bauteile (Groesse des Arrays Texte_Index)
var MaxParts=88;

// Anzahl der Felder im Array Texte_Index
var AnzFelder=4;

// Auswahlindex der darzustellenden Bauteile
//  1. lfd. Nummer
//  2. x-Position des Bauteils, 0:keine Markierung des Bauteils
//  3. y-Position des Bauteils, -50:keine Markierung des Bauteils
//  4. lfd. Nr. der darzustellenden Grafik, 0:Grafik wird nicht veraendert
Texte_Index=new Array(
0,0,-50,0,
1,458,166,1,
2,742,94,1,
3,816,55,1,
4,675,244,1,
5,766,267,1,
6,508,269,1,
7,410,269,1,
8,584,239,1,
9,630,237,1,
10,557,253,1,
11,398,249,1,
12,502,254,1,
13,565,229,1,
14,604,252,1,
15,606,216,1,
16,546,215,1,
17,469,250,1,
18,504,105,8,
19,0,-50,0,
20,0,-50,0,
21,374,103,2,
22,585,101,2,

23,737,99,2,
24,813,78,2,
25,730,169,2,
26,703,163,2,
27,685,39,2,
28,660,27,2,
29,540,35,2,
30,472,37,2,
31,380,56,2,
32,688,61,2,
33,716,38,2,
34,515,140,3,
35,545,135,3,
36,710,90,5,
37,764,25,3,
38,758,89,3,
39,825,95,3,
40,244,35,3,
41,393,7,3,
42,222,75,3,
43,81,186,3,
44,325,203,3,

45,94,99,3,
46,0,-50,0,
47,0,-50,0,
48,710,63,3,
49,708,113,3,
50,695,96,3,
51,572,98,3,
52,686,228,3,
53,690,259,3,
54,416,160,3,
55,427,111,3,
56,405,81,3,
57,425,71,3,
58,405,105,3,
59,302,93,4,
60,333,219,5,
61,706,161,5,
62,866,225,5,
63,754,160,3,
64,652,166,5,
65,528,171,5,
66,248,217,5,

67,500,253,5,
68,484,271,5,
69,563,261,5,
70,785,253,5,
71,383,163,6,
72,380,201,6,
73,424,200,6,
74,761,254,6,
75,617,59,6,
76,552,53,6,
77,542,26,6,
78,255,99,6,
79,231,150,6,
80,214,109,6,
81,312,116,6,
82,430,140,6,
83,0,-50,0,
84,0,-50,0,
85,0,-50,0,
86,333,266,7,
87,0,-50,0,
88,54,279,7);



// Grafiken fuer den "Mediaplayer"
function LoadMediaImages () {
	Imgzz1=new Image ();	Imgzz1.src='gif/but-zz-1.gif';
	Imgzz2=new Image ();	Imgzz2.src='gif/but-zz-2.gif';
	Imgzz3=new Image ();	Imgzz3.src='gif/but-zz-3.gif';
	Imgz1=new Image ();	Imgz1.src='gif/but-z-1.gif';
	Imgz2=new Image ();	Imgz2.src='gif/but-z-2.gif';
	Imgz3=new Image ();	Imgz3.src='gif/but-z-3.gif';
	Imgv1=new Image ();	Imgv1.src='gif/but-v-1.gif';
	Imgv2=new Image ();	Imgv2.src='gif/but-v-2.gif';
	Imgv3=new Image ();	Imgv3.src='gif/but-v-3.gif';
	Imgvv1=new Image ();	Imgvv1.src='gif/but-vv-1.gif';
	Imgvv2=new Image ();	Imgvv2.src='gif/but-vv-2.gif';
	Imgvv3=new Image ();	Imgvv3.src='gif/but-vv-3.gif';
	Imganf1=new Image ();	Imganf1.src='gif/but-anfang-1.gif';
	Imganf2=new Image ();	Imganf2.src='gif/but-anfang-2.gif';
	Imganf3=new Image ();	Imganf3.src='gif/but-anfang-3.gif';
	Imgend1=new Image ();	Imgend1.src='gif/but-ende-1.gif';
	Imgend2=new Image ();	Imgend2.src='gif/but-ende-2.gif';
	Imgend3=new Image ();	Imgend3.src='gif/but-ende-3.gif';
}


// Grafiken des Schaubildes
function LoadBaseImages () {
	Img1=new Image ();	Img1.src='img/66r01.jpg';
	Img2=new Image ();	Img2.src='img/66r02.jpg';
	Img3=new Image ();	Img3.src='img/66r03.jpg';
	Img4=new Image ();	Img4.src='img/66r04.jpg';
	Img5=new Image ();	Img5.src='img/66r05.jpg';
	Img6=new Image ();	Img6.src='img/66r06.jpg';
	Img7=new Image ();	Img7.src='img/66r07.jpg';
	Img8=new Image ();	Img8.src='img/66r08.jpg';
}


// Grafikwechsel allgemein
function swapPic (ImgName, ImgUrl) {
	if (document.images) document.images[ImgName].src=ImgUrl;
}


// Grafikwechsel im Verzeichnis "gif" und Dateiendung ".gif"
function swapMedia (imgNum,newImg) {
	if (document.images) document.images[imgNum].src="gif/"+newImg+".gif";
}


// Grafik des Schaubildes um den "wert" vor/zurueck setzen
function SetJump (wert) {
	parent.AktuellGrafik=parent.AktuellGrafik+wert;
	SetGrafik();
	SetKreis(0,-50);
}


// Grafik des Schaubildes zu Beginn (0) oder Ende (1) setzen
function SetBeginEnd (wert) {
	if (wert==0) parent.AktuellGrafik=0;
	if (wert==1) parent.AktuellGrafik=MaxGrafik;
	SetGrafik();
	SetKreis(0,-50);
}


function wr (wert){
	Next_Page.document.writeln(wert);
}


// sg=ShowGrafic
// Einblenden der Grafik und der Markierung in einem neuen Fenster
function sg(teilnr) {
	if (!parent.grafic && teilnr<=MaxParts) {
		parent.AktuellTeil=teilnr;
		parent.AktuellGrafik=Texte_Index[parent.AktuellTeil*AnzFelder+3]-1;
		var options="menubar=0,toolbar=0,status=0,scrollbars=no,resizeble=yes,dependent=no,width=1000,height=350";
		Next_Page=window.open("", "66grafik", options);
		Next_Page.document.open();
		wr("<html><head><title>Schaubild Tenderlokomotive - "+Texte_Index[parent.AktuellTeil*AnzFelder+4]+"</title>");
		wr("<style type=\"text/css\">");
		wr("<!--");
		if (document.all) {
			kreis_left=Texte_Index[parent.AktuellTeil*AnzFelder+1]+9;
			kreis_top=Texte_Index[parent.AktuellTeil*AnzFelder+2]+15;
		} else {
			kreis_left=Texte_Index[parent.AktuellTeil*AnzFelder+1]+7;
			kreis_top=Texte_Index[parent.AktuellTeil*AnzFelder+2]+9;
		}
		wr(".kreis{position:absolute; left:"+kreis_left+"; top:"+kreis_top+";}");
		wr("-->");
		wr("</style>");
		wr("</head><body>");
		wr("<img src=\"img/"+Grafik_Index[parent.AktuellGrafik]+"\" border=0>");
		wr("<div id=\"kreis\" class=\"kreis\"><img src=\"gif/kreis.gif\"></div>");
		wr("</body></html>");
		Next_Page.document.close();
		Next_Page.moveTo(5,50); 
		Next_Page.focus();
	}
}


// sp=ShowPart
// Wechsel der Grafik und der Markierung 
function sp(teilnr) {
	parent.AktuellTeil=teilnr;
	if (parent.grafic) {
		if (teilnr<=MaxParts) {
			SetGrafik(Texte_Index[parent.AktuellTeil*AnzFelder+3]);
			SetKreis(Texte_Index[parent.AktuellTeil*AnzFelder+1],Texte_Index[parent.AktuellTeil*AnzFelder+2]);
		}
		else {
			SetKreis(0,-50);
		}
	}
}


// pv=PreView
// Markierung als Vorschau auf ein Teil bewegen
function pv(teilnr) {
	if (parent.grafic && teilnr<=MaxParts) {
		if (parent.DoPreview && !parent.Automatik && Texte_Index[teilnr*AnzFelder+1]) {
			SetGrafik(Texte_Index[teilnr*AnzFelder+3]);
			SetKreis(Texte_Index[teilnr*AnzFelder+1],Texte_Index[teilnr*AnzFelder+2]);
		}
	}
}


// rpv=ResetPreView
// Markierung auf das aktuelle Teil zurueckbewegen
function rpv() {
	if (parent.grafic) {
		if (parent.DoPreview && !parent.Automatik) {
			if (parent.AktuellTeil<=MaxParts) {
				SetGrafik(Texte_Index[parent.AktuellTeil*AnzFelder+3]);
				SetKreis(Texte_Index[parent.AktuellTeil*AnzFelder+1],Texte_Index[parent.AktuellTeil*AnzFelder+2]);
			}
			else {
				SetKreis(0,-50);
			}
		}
	}
}


// Auf die benoetigte Grafik wechseln
// Funktioniert nicht mit Opera 5.0
function SetGrafik(grafiknr) {
	if (grafiknr) parent.AktuellGrafik=grafiknr-1;
	if (parent.AktuellGrafik>MaxGrafik) parent.AktuellGrafik=MaxGrafik;
	if (parent.AktuellGrafik<0) parent.AktuellGrafik=0;
	if (!parent.grafic.document.layers && parent.grafic.document.getElementById('grafik')) {
		// neue Netscape-Versionen und Microsoft
		parent.grafic.document.images['grafik'].src="img/"+Grafik_Index[parent.AktuellGrafik];
	} else {
		// Netscape Versionen 4.x mit Layer
		parent.frames['0'].document.layers["grafik"].document.images['grafik'].src="img/"+Grafik_Index[parent.AktuellGrafik];
	}
}


// Markierung im Schaubild bewegen
// Funktioniert nur bedingt mit Opera 5.0 (Positionierung nur im sichtbaren Bereich moeglich)
function SetKreis(x,y) {
	if (!parent.grafic.document.layers && parent.grafic.document.getElementById('kreis')) {
		// neue Netscape-Versionen, Opera und Microsoft
		parent.grafic.document.getElementById('kreis').style.left=x+16;
		parent.grafic.document.getElementById('kreis').style.top=y;
	} else {
		// Netscape Versionen 4.x mit Layer
		parent.grafic.document.layers.kreis.left=x+17;
		parent.grafic.document.layers.kreis.top=y;
	}
}


// Markierung in anderen Darstellungen bewegen
// Funktioniert nur bedingt mit Opera 5.0 (Positionierung nur im sichtbaren Bereich moeglich)
function sk(x,y) {
	if (!parent.grafic.document.layers && parent.grafic.document.getElementById('kreis')) {
		// neue Netscape-Versionen, Opera und Microsoft
		parent.grafic.document.getElementById('kreis').style.left=x-18;
		parent.grafic.document.getElementById('kreis').style.top=y-18;
	} else {
		// Netscape Versionen 4.x mit Layer
		parent.grafic.document.layers.kreis.left=x-18;
		parent.grafic.document.layers.kreis.top=y-18;
	}
}


// Framedatei: relative Adresse - ausgehend von aufrufenden Seite - der zu ladenden Framedatei
// Maindatei : relative Adresse - ausgehend von der Framedatei - der anzuzeigenden Datei im Frame "data"
//             wird Maindatei nicht übergeben, so wird die aufrufende Seite (location.pathname) im Frame "data" dargestellt
// z.B.: <body OnLoad="CheckFrame('partframes.htm','index2.htm')"
function CheckFrame(Framedatei,Maindatei){
	// beim Aufruf aus dem Google-Cache darf nicht nachgeladen werden
	if (location.pathname == "/search") {
		return true;
	} else {
		if(parent.frames.length < 1) {
			if (Maindatei) {
				location.replace(Framedatei+"?"+Maindatei);
			} else {
				location.replace(Framedatei+"?"+location.pathname);
			}
		}
	}
}

