// --------------------------------------------------------------------------------------
//  Owner 	: Werner Kuehn   
//  Author 	: Werner Kuehn  
//  Version 	: 2001/12/04
//  (C) 2001 Werner Kuehn
// --------------------------------------------------------------------------------------

var dataContainer = {};var dc = dataContainer;
var images = "fileadmin/templates/images/quiz/";

dc.QuizBild = new Array();
a = dc.QuizBild;
i = 1;  a[i] = new Object();	
a[i].Frage      = "Was bedeutet dieses Zeichen?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Das Dorf steht als Naturdenkmal unter dem Schutz der Haager Konvention";
a[i].Antwort[2] = "Eppelsheim hat die Goldmedaille bei 'Unser Dorf soll sch&ouml;ner werden' erhalten"; 
a[i].Antwort[3] = "Auszeichnung des Versch&ouml;nerungsvereins f&uuml;r seine Leistungen zur Dorfversch&ouml;nerung";
a[i].Antwort[4] = "Das Dorf steht als Naturdenkmal unter dem Schutz der Genfer Konvention";
a[i].Antwort[5] = "Auszeichnung f&uuml;r die erfolgreiche Teilnahme bei 'Unser Dorf soll sch&ouml;ner werden'";	
i = 2;  a[i] = new Object(); 	
a[i].Frage      = "Um welches Geb&auml;ude handelt es sich?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Spritzenhaus";
a[i].Antwort[2] = "Gemeindehaus"; 
a[i].Antwort[3] = "Vereinshaus der Pfadfinder";
a[i].Antwort[4] = "S&auml;ngerheim";
a[i].Antwort[5] = "Museum";	
i = 3;  a[i] = new Object(); 	
a[i].Frage      = "Wie hei&szlig;t der Eppelsheimer B&auml;cker?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Best";
a[i].Antwort[2] = "Wetz"; 
a[i].Antwort[3] = "Rathgeber";
a[i].Antwort[4] = "Ofenloch";
a[i].Antwort[5] = "M&uuml;nk";	
i = 4;  a[i] = new Object(); 	
a[i].Frage      = "Wer sagt uns hier die Zeit?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Sparkasse";
a[i].Antwort[2] = "Deutsche Bahn"; 
a[i].Antwort[3] = "Gemeinde";
a[i].Antwort[4] = "Kirche";
a[i].Antwort[5] = "Feuerwehr";	
i = 5;  a[i] = new Object(); 	
a[i].Frage      = "Wo befindet sich diese Judengedenktafel?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Kirchenmauer";
a[i].Antwort[2] = "Judenfriedhof"; 
a[i].Antwort[3] = "Gemeindehaus";
a[i].Antwort[4] = "Freilichtb&uuml;hne";
a[i].Antwort[5] = "Spielplatz";
i = 6;  a[i] = new Object(); 	
a[i].Frage      = "Wie hei&szlig;t Eppelsheims k&uuml;rzeste Stra&szlig;e, in der sich diese Hausnummer befindet?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "In der Froschau";
a[i].Antwort[2] = "Bahnhofstra&szlig;e"; 
a[i].Antwort[3] = "In den Apfelg&auml;rten";
a[i].Antwort[4] = "In den neunzehn Morgen";
a[i].Antwort[5] = "Jahnstra&szlig;e";	
i = 7;  a[i] = new Object(); 	
a[i].Frage      = "In welcher Stra&szlig;e findet man dieses Schild?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Gau Heppenheimer Stra&szlig;e";
a[i].Antwort[2] = "In der Froschau"; 
a[i].Antwort[3] = "Bahnhofstra&szlig;e";
a[i].Antwort[4] = "R&ouml;mer";
a[i].Antwort[5] = "Blaugasse";	
i = 8;  a[i] = new Object(); 	
a[i].Frage      = "Wo befindet sich diese Tafel?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "R&ouml;mer";
a[i].Antwort[2] = "Kirche"; 
a[i].Antwort[3] = "Vogellehrpfad";
a[i].Antwort[4] = "Freilichtb&uuml;hne";
a[i].Antwort[5] = "Gemeindehaus";
i = 9;  a[i] = new Object(); 	
a[i].Frage      = "Wo kann man die Nachpr&auml;gung dieser Goldmedaille sehen?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Vogellehrpfad";
a[i].Antwort[2] = "Freilichtb&uuml;hne"; 
a[i].Antwort[3] = "Spielplatz";
a[i].Antwort[4] = "Gemeindehaus";
a[i].Antwort[5] = "Blaugasse";
i = 10;  a[i] = new Object(); 	
a[i].Frage      = "In welcher Stra&szlig;e ist dieser Hinweis auf die Freilichtb&uuml;hne zu finden?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Hauptstra&szlig;e";
a[i].Antwort[2] = "Gau Heppenheimer Stra&szlig;e"; 
a[i].Antwort[3] = "Bahnhofstra&szlig;e";
a[i].Antwort[4] = "In der Froschau";
a[i].Antwort[5] = "In den Apfelg&auml;rten";
i = 11;  a[i] = new Object(); 	
a[i].Frage      = "Wo befindet sich dieses Wappen?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Ratssaal";
a[i].Antwort[2] = "Kirche"; 
a[i].Antwort[3] = "S&auml;ngerheim";
a[i].Antwort[4] = "Museum";
a[i].Antwort[5] = "R&ouml;mer";		
i = 12;  a[i] = new Object(); 	
a[i].Frage      = "Wo befindet sich diese Pumpe?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Bei der neuen Schule";
a[i].Antwort[2] = "In der Blaugasse"; 
a[i].Antwort[3] = "In der Bahnhofstra&szlig;e";
a[i].Antwort[4] = "Bei der Weed";
a[i].Antwort[5] = "In der Allee";
i = 13;  a[i] = new Object(); 	
a[i].Frage      = "Was versteckt sich da unter B&auml;umen?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Wasserbeh&auml;lter, gespeist mit Quellwasser";
a[i].Antwort[2] = "Wasserbeh&auml;lter, gespeist vom Wasserwerk in Osthofen"; 
a[i].Antwort[3] = "Ehemalige Eppelsheimer Volksdusche";
a[i].Antwort[4] = "Wasserzapfstelle der Eppelsheimer Schwimmbadbesitzer";
a[i].Antwort[5] = "Ehemaliger Luftschutzkeller";
i = 14;  a[i] = new Object(); 	
a[i].Frage      = "Um welche Art Turm handelt es sich hier?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Ehemaliges Getreidesilo";
a[i].Antwort[2] = "Eppelsheimer Lokalrundfunksender"; 
a[i].Antwort[3] = "Aussichtsplattform";
a[i].Antwort[4] = "Tower der Ballonfahrer";
a[i].Antwort[5] = "Spargelzuchtanlage";
i = 15;  a[i] = new Object(); 	
a[i].Frage      = "Welche H&uuml;tte ist das?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Grillh&uuml;tte";
a[i].Antwort[2] = "Schutzh&uuml;tte der Wingertswanderer"; 
a[i].Antwort[3] = "Fahrradrastst&auml;tte";
a[i].Antwort[4] = "Buswarteh&auml;uschen";
a[i].Antwort[5] = "Garage des Versch&ouml;nerungsvereins";
i = 16;  a[i] = new Object(); 	
a[i].Frage      = "Was ist das?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Regenwassersammelbecken";
a[i].Antwort[2] = "Eppelsheimer Freibad"; 
a[i].Antwort[3] = "Abwassergeb&uuml;hrensammelbecken";
a[i].Antwort[4] = "Entenzuchtstation";
a[i].Antwort[5] = "Wasserlinsenzuchtanlage";
i = 17;  a[i] = new Object(); 	
a[i].Frage      = "Was ist das?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Balkon an der Wohnscheune in der Allee";
a[i].Antwort[2] = "Theaterbalkon der Romeo und Julia Auff&uuml;hrung"; 
a[i].Antwort[3] = "Aussichtsplattform";
a[i].Antwort[4] = "Balkon am Dalberger Turm";
a[i].Antwort[5] = "Ehemaliger Pranger";
i = 18;  a[i] = new Object(); 	
a[i].Frage      = "Welche Bahnstrecke ist hier zu sehen?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Nahverkehrsstrecke Bingen - Worms";
a[i].Antwort[2] = "ICE-Strecke Hamburg - Mannheim"; 
a[i].Antwort[3] = "Stillgelegte Bahnstrecke Eppelsheim - Ober-Fl&ouml;rsheim";
a[i].Antwort[4] = "Fahrplaneinhaltestrecke der DB";
a[i].Antwort[5] = "Eppelsheimer S-Bahn";
i = 19;  a[i] = new Object(); 	
a[i].Frage      = "Um welches Geb&auml;ude handelt es sich hier?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Sport- & Mehrzweckhalle";
a[i].Antwort[2] = "Tenniscenter"; 
a[i].Antwort[3] = "Eissporthalle";
a[i].Antwort[4] = "Jugendherberge";
a[i].Antwort[5] = "JVA";
i = 20;  a[i] = new Object(); 	
a[i].Frage      = "Was ist das?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Ehemalige R&uuml;benverladeanlage";
a[i].Antwort[2] = "Tor der Gemeindescheune"; 
a[i].Antwort[3] = "Eppelsheimer B&uuml;rgersteige bei Nacht";
a[i].Antwort[4] = "Sommerrodelbahn";
a[i].Antwort[5] = "M&uuml;llverbrennungsanlage";
i = 21;  a[i] = new Object(); 	
a[i].Frage      = "Wo befindet sich diese Pumpe?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "In der Blaugasse";
a[i].Antwort[2] = "Bei der neuen Schule"; 
a[i].Antwort[3] = "Am R&ouml;mer";
a[i].Antwort[4] = "Ehemaliges Munitionslager";
a[i].Antwort[5] = "In den Apfelg&auml;rten";
i = 22;  a[i] = new Object(); 	
a[i].Frage      = "Welches Gel&auml;nde ist hier zu sehen?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Sportplatz";
a[i].Antwort[2] = "Truppen&uuml;bungsplatz"; 
a[i].Antwort[3] = "Hubschrauberlandeplatz";
a[i].Antwort[4] = "Grillplatz";
a[i].Antwort[5] = "Abenteuerspielplatz";
i = 23;  a[i] = new Object(); 	
a[i].Frage      = "Worauf weisst das verdeckte Schild?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Wertstoffhof";
a[i].Antwort[2] = "Wasserzapfstelle"; 
a[i].Antwort[3] = "Wohnwagenparkplatz";
a[i].Antwort[4] = "Wingertsh&auml;uschen";
a[i].Antwort[5] = "Warenlager der Raiffeisengenossenschaft";
i = 24;  a[i] = new Object(); 	
a[i].Frage      = "Worum handelt es sich hier?"; 
a[i].Antwort = new Array();	
a[i].Antwort[1] = "Eppelsheimer Elle";
a[i].Antwort[2] = "Eppelsheimer Fu&szlig;"; 
a[i].Antwort[3] = "Eppelsheimer Meter";
a[i].Antwort[4] = "Eppelsheimer Hochwassermarke";
a[i].Antwort[5] = "Eppelsheimer Yard";

// Quiz Variablen		
dc.QuizBildNr = 1;		
dc.maxAnswer = 5;						// Anzahl der vorgegebenen Antworten pro Bild
dc.maxShow = 10;							// Anzahl der gezeigten Bilder 
dc.last_clicked = 0;					// last number of the quiz picture being clicked on 
dc.testQuiz = false;					// Soll das Endergebnis angezeigt werden ?
dc.clicked_action = false;				// Antwort abgegeben
dc.clicked_testen = false;				// Richtige Antwort angezeigt?
dc.QuizBildLength = dc.QuizBild.length-1;
dc.field = new Array();					// speichert die Bildnummern (von oben nach unten), dient zur Vermeidung von doppelten Bildern 

for (i=1; i<=dc.QuizBildLength; i++) {	
	dc.field[i] = new Object;
	dc.field[i].index = 0;				// Bild Nr
	dc.field[i].valid = 0;				// Richtige Antwort
	dc.field[i].given = 0;				// Gewählte Antwort
	dc.field[i].answer = new Array();
	for (k=1; k<=dc.maxAnswer; k++) {
		dc.field[i].answer[k] = 0;
	}
}

function nextQuizBild() {
	if (dc.clicked_action) {
		++dc.QuizBildNr;
		dc.clicked_action = false;
		dc.clicked_testen = false;
		newPage();
	}
	else {
		alert('Erst eine Antwort wählen, dann geht\'s weiter');
	}
}
function getClicks(pict_nr, answer_pos) {
	if (dc.clicked_testen == false) {
		dc.field[pict_nr].given = answer_pos;		/* merkt sich beim Clicken auf die Radio-Buttons die Nummer (1..5) */
		dc.last_clicked = pict_nr;
		dc.clicked_action = true;
	}
	else {
		initRadio();
	}	
}

function testPic() {                // Zeigt die richtige Antwort an
	if (dc.clicked_action) {        document.getElementById('A'+dc.field[dc.QuizBildNr].valid).src = images+"ok.gif";
		dc.clicked_testen = true;
	}
	else {
		alert('Erst tippen, dann gibts die Antwort');
	}
}

function testQuiz() {				// Gibt das Endergebnis des Tests aus 
	if (dc.clicked_action) {	
		dc.testQuiz = true;
		newPage();
	}
	else {
		alert('Erst wenn auch die letzte Antwort gegeben ist, kann getestet werden');	
	}
}

function initfield() {				/* Löschen aller Bild- und Antwort-Daten beim Aufbau der Seite */
	var k;
	var i;
	dc.QuizBildNr = 1; 
	for (i=1; i<=dc.QuizBildLength; i++) {
    	dc.field[i].index=0;
		dc.field[i].valid=0;
		dc.field[i].given=0;
		for (k=1; k<=dc.maxAnswer; k++) {
			dc.field[i].answer[k] = 0;
		}
    }
}

function initRadio() {
	for (i=1; i<=dc.maxAnswer; i++) {
		if (dc.field[dc.QuizBildNr].given == i) {
			document.form2.Radio1[(i-1)].checked = true;
			dc.clicked_action = true;
		}	
	}		
}
function getRandom(max) {			/* erzeugt eine Zufallszahl zwischen 0 und "max" */
        return Math.round((max) * Math.random());
}
// type  = 0 ==> field.index soll bestimmt werden
// type  > 0 ==> field[type].answer soll bestimmt werden
// maxValue   	= höchste Randomzahl
// index 		= aktuelle index in Array field
function ChooseRandom(type,maxValue,index) {		/* wählt bei jedem Aufruf ein neues Zufallsbilder aus */
	var ok				= 0;
	do {								/* verhindert die doppelte Verwendung eines Bildes auf der Seite */
		ran = getRandom(maxValue-1)+1;		
	   	part_ok=1;
	   	for (j=1; j<=maxValue; j++) {
	   		if (type == 0) {	
	       		if (dc.field[j].index == ran) {part_ok=0}		/* Bild schon an einer Stelle im Speicher "field.index" vorhanden? */
			}
			else {
	       		if (dc.field[type].answer[j] == ran) {part_ok=0}	/* Antwort schon an einer Stelle im Speicher "field.antwort" vorhanden? */			
			}				
	    }
	   	ok=part_ok;
	} while(ok==0);					/* wenn ja -> nach neuem Zufallsbild weitersuchen */
	return ran;
}

function initialize() {												/* Quiz neu aufsetzen  */
	initfield();													/* Daten löschen */
	dc.testQuiz = false;											/* Endergebnis noch nicht anzeigen */
	for (i=1; i<=dc.maxShow; i++ ) {								/* Zufallsbilder erzeugen */
	   	dc.field[i].index = ChooseRandom(0,dc.QuizBildLength,i);	/* Zufallsbilder erzeugen */	
	   	for (k=1; k<=dc.maxAnswer; k++) {
			dc.field[i].answer[k] = ChooseRandom(i,dc.maxAnswer,k); /* Antworten mischen */			
			if (dc.field[i].answer[k]==1) {
				dc.field[i].valid=k;								/* Richtige Antwort merken */
			}		   	
	   	}   
	}
}

function start() {				/* nach dem Seitenaufbau Skript-Abarbeitung hier beginnen */
	document.writeln (' <center><img src="'+images+'Eppelsheimer_F.gif" alt="Eppelsheimer ?" title="Eppelsheimer ?" border="0" alt="Bin ich ein echter Eppelsheimer?" '+iSize(240,176)+'"></center>');	
	initialize();
	document.writeln ('	<table border="0" cellspacing="2" cellpadding="2" align="center">');	
	document.writeln ('	<tr>');	
	document.writeln ('	    <td width="150" valign="top"></td>');			
	document.writeln ('	    <td valign="bottom">');		
	document.writeln (' 		<input type="button" name"StartButton" value="Quiz starten" width="150" onClick="newPage()">');	
	document.writeln ('	    </td>');	
	document.writeln ('	    <td width="150" valign="top"></td>');			
	document.writeln ('	</tr>');		
	document.writeln ('	</table>');		
}

function newPage() {
	var A	= 0;
	var Nr	= 0;
	var Q_Image;
	var Q_Alt;
	var ret = "\n";
	if (dc.testQuiz) {
		summe=0
		ret += '<center>';
		for (i=1; i<=dc.maxShow; i++) {
			if (dc.field[i].given == dc.field[i].valid) {	// vergleicht die richtigen mit den angeclicken Positionen (nicht mit den Antworten) 
				summe++
			}
		}
		switch(summe) {
			case dc.maxShow :
				ret += '<h5>Sie haben alle Fragen richtig beantwortet.</h5>\n';
				break;
			case 0 :
				ret += '<h5>Sie haben keine Frage richtig beantwortet.</h5>\n';
				break;
			default :
				ret += '<h5>Sie haben '+summe+' von '+dc.maxShow+' Fragen richtig beantwortet.</h5>\n';
		}
		ret += '<h5>\n';
		if (summe == 0) {
			ret += 'Sie kennen Eppelsheim wohl noch nicht mal von der Landkarte!\n';
			Q_Image = "Eppelsheimer_K.gif";
			Q_Alt = "kein Eppelsheimer";
		}
		if ((summe > dc.maxShow*0) && (summe <= dc.maxShow*0.3)) {
			ret += 'Ihren n&auml;chsten Urlaub sollten Sie mal in Eppelsheim verbringen.\n';
			Q_Image = "Eppelsheimer_I.gif";
			Q_Alt = "Interessierter Eppelsheimer";
		}
		if ((summe > dc.maxShow*0.3) && (summe <= dc.maxShow*0.6)) {
			ret += 'Machen Sie am n&auml;chsten Sonntag mal einen Spaziergang durch Eppelsheim.\n';
			Q_Image = "Eppelsheimer_Z.gif";
			Q_Alt = "Zugezogener Eppelsheimer";
		}
		if ((summe > dc.maxShow*0.6) && (summe <= dc.maxShow*0.9)) {
			ret += 'Sie haben noch nicht alle Ecken in Eppelsheim gesehen.\n';
			Q_Image = "Eppelsheimer_R.gif";
			Q_Alt = "Reingerutschter Eppelsheimer";
		}
		if (summe == dc.maxShow) {
			ret += 'Sie kennen sich wirklich gut aus in Eppelsheim.\n';
			Q_Image = "Eppelsheimer_E.gif";
			Q_Alt = "Echter Eppelsheimer";
		}
		ret += '</h5>\n<h5>Wir verleihen Ihnen den Titel:</h5>\n';
		ret += '<img src="'+images+Q_Image+'" alt="'+Q_Alt+'" title="'+Q_Alt+'" border="0" '+iSize(300,216)+'"></center>\n';
	}
	else {
		Nr = dc.field[dc.QuizBildNr].index;	
		ret += '    <form name="form2">\n';
		ret += '    <div id="col2links">\n';
		ret += '		<img align=middle border=2 src="'+images+'bild'+Nr+'.jpg" hspace=10>\n';
		ret += '	</div>\n';
		ret += '    <div id="col2rechts">\n';
		ret += '		Frage '+dc.QuizBildNr+' von ' +dc.maxShow+' :<br>' + dc.QuizBild[Nr].Frage + '</h4>\n';
		ret += '		<table border="0" cellspacing="2" cellpadding="2" bordercolor="#FFFFFF" rules="all">\n';		
		for (k=1; k<=dc.maxAnswer; k++) {	
			ret += '		<tr>\n';
			ret += '			<td width="3%" height="35"><img id="A'+k+'" src="'+images+'clearpixel.gif" border="0" width=20 height=20 alt=" "></td>\n';	
			ret += '			<td class="answer" width="3%" height="35"><input type=Radio name=Radio1 value='+k+' onClick=getClicks('+dc.QuizBildNr+','+k+')></td>\n';
			answer = dc.field[dc.QuizBildNr].answer[k]; 
			ret += '			<td class="answer" width="55%">'+dc.QuizBild[Nr].Antwort[answer]+'</td>\n';			
			ret += '		</tr>\n';
		}
		ret += '	</table>\n';
		ret += '	</div>\n';
		ret += ' <br>\n';
		ret += '	<table cellspacing="2" cellpadding="2" border="0">\n';
		ret += '	<tr>\n';
		ret += '	    <td valign="top">\n';	
		ret += ' 		<input type="button" value="Richtige Antwort ?" width="150" onClick="testPic()">\n';
		ret += '	    </td>\n';
		ret += '	    <td valign="top">\n';		
		ret += ' 		<input type=button value="Neues Quiz laden" width="150" onClick="initialize();newPage();">\n';
		ret += '	    </td>\n';	
		ret += '	    <td valign="top">\n';		
		if (dc.QuizBildNr == dc.maxShow) {
			ret += ' 		<input type=button value="Ergebnis" width="150" onClick="testQuiz()">\n';
		}
		else {
			ret += ' 		<input type=button value="Weiter &gt;" width="150" onClick="nextQuizBild()">\n';
		}
		ret += '	    </td>\n';	
		ret += '	</tr>\n';		
		ret += '	</table>\n';
		ret += '    </form>\n';
		initRadio();	}
	var divQ = document.getElementById('quiz');
	divQ.innerHTML = ret;
}

function startQuiz() {
	document.writeln ('<p>Das Quiz w&auml;hlt eine willk&uuml;rliche Folge von '+dc.maxShow+' aus '+dc.QuizBildLength+' Bildern.');
	document.writeln ('Klicken Sie eine Antwort zu jedem Bild an.');
	document.writeln ('<form name="formt">');
	document.writeln ('Mit <input type="button" value="Weiter &gt;"> gehts zum n&auml;chsten Bild.');
	document.writeln ('Wer unsicher ist, kann sich nach seinem Tipp mit <input type="button" value="Richtige Antwort ?"> die L&ouml;sung anschauen.'); 
	document.writeln ('Ob Sie den Test bestanden haben, erfahren Sie am Ende.');
	document.writeln ('Mit <input type="button" value="Neues Quiz laden"> kommt eine neue Bilderauswahl!<br><br>');
	document.writeln ('<\/form>');
	document.writeln ('Viel Spass beim Wissen oder Raten!!');
	document.writeln ('<p>');
	document.writeln ('<form name="form1">');
	start();
	document.writeln ('<\/form>');
}
