<!--
       
ar_img = new Array ("images/reaktion/hund1.gif",
                    "images/reaktion/katze1.gif",
                    "images/reaktion/kuh1.gif",
                    "images/reaktion/schwein1.gif",
                    "images/reaktion/elefant1.gif",
                    "images/reaktion/affe1.gif",
                    "images/reaktion/drache1.gif","images/reaktion/elch1.gif","images/reaktion/kamel1.gif",
                    "images/reaktion/nashorn1.gif","images/reaktion/schnecke1.gif","images/reaktion/krake1.gif",
                    "images/reaktion/hund2.gif","images/reaktion/hund3.gif",
                    "images/reaktion/katze2.gif","images/reaktion/katze3.gif",
                    "images/reaktion/kuh2.gif","images/reaktion/kuh3.gif",
                    "images/reaktion/schwein2.gif","images/reaktion/schwein3.gif",
                    "images/reaktion/elefant2.gif","images/reaktion/elefant3.gif",
                    "images/reaktion/affe2.gif","images/reaktion/affe3.gif");
ar_width = new Array (114,126,102,92,89,84,100,84,94,111,87,113,89,132,80,114,68,112,129,126,115,91,103,80);
ar_height = new Array (78,135,71,107,73,113,152,122,112,88,79,137,77,74,99,162,130,108,86,92,112,90,97,109);
ar_alt = new Array ("Hund","Katze",
                    "Kuh","Schwein",
                    "Elefant","Affe",
                    "Drache","Elch","Kamel","Nashorn","Gary","Krake",
                    "Hund","Hund","Katze","Katze","Kuh","Kuh","Schwein","Schwein",
                    "Elefant","Elefant","Affe","Affe");

ar_food = new Array ("images/reaktion/Hendl.gif","images/reaktion/Tee1.gif",
                     "images/reaktion/Kuchen.gif","images/reaktion/Kaffee1.gif",
                     "images/reaktion/Pizza.gif","images/reaktion/Kaffee2.gif",
                     "images/reaktion/Nutella.gif","images/reaktion/Cocktail1.gif",
                     "images/reaktion/Apfel.gif","images/reaktion/Tee2.gif",
                     "images/reaktion/Banane.gif","images/reaktion/Bier1.gif",
                     "images/reaktion/Erbsen.gif","images/reaktion/Bier2.gif",
                     "images/reaktion/Hamburger.gif","images/reaktion/Snapple.gif",
                     "images/reaktion/HotDog.gif","images/reaktion/Cocktail2.gif",
                     "images/reaktion/Eier.gif","images/reaktion/Cola.gif",
                     "images/reaktion/Eistuete.gif","images/reaktion/Eislolli.gif",
                     "images/reaktion/Milch.gif","images/reaktion/Kaese.gif",
                     "images/reaktion/Croissant.gif");
arf_width = new Array (80,107,131,103,120,110,107,80,129,116,100,108,53,76,80,49,125,80,105,73,94,60,128,80,120);
arf_height = new Array (77,77,88,137,120,93,78,100,100,110,93,108,150,140,100,130,113,100,104,110,142,132,128,100,111);
arf_alt = new Array ("essen","trinken","essen","trinken","essen","trinken",
                     "essen","trinken","essen","trinken","essen","trinken",
                     "essen","trinken","essen","trinken","essen","trinken",
                     "essen","trinken","essen","essen","trinken","essen","essen");

ar_bingo = new Array ("Cola","Kuchen","Cocktail","Pizza","Banane","Cocktail",
                     "Bier","Milch","Eier","Eislolli","Tee","Hamburger",
                     "Apfel","Kaffee","Snapple","Erbsen","Hendl","Eistuete",
                     "Bier","Kaese","Nutella","HotDog","Kaffee","Tee","Croissant");

var startTime=new Date();
var endTime=new Date();
var bgStarted=false;
var bgChanged=false;
var maxWait=20;
var timerBg;
var animalStarted=false;
var animalChanged=false;
var timerShow;
var animalStarted3=false;
var clickStarted=false;
var clickChanged=false;
var foodStarted=false;
var bingoStarted=false;

function isRunning() {
  if (bgStarted || animalStarted || animalStarted3 || clickStarted || foodStarted)
    return(true);
  return(false);
}

function startBgTest()
{
	document.getElementById('main_area').style.backgroundColor=document.response.bgColorChange.options[document.response.bgColorChange.selectedIndex].text;
                  bgChanged=true;
	startTime=new Date();
}

function remark(responseTime)
{
	var responseString="";
	if (responseTime < 0.10)
		responseString="Sehr gut!";
	if (responseTime >= 0.10 && responseTime < 0.20)
		responseString="Nicht übel!";
	if (responseTime >=0.20 && responseTime < 0.29)
		responseString="Da besteht durchaus noch Hoffnung";
        if (responseTime >=0.29 && responseTime < 0.35)
		responseString="Könnte besser sein...";
	if (responseTime >=0.30 && responseTime < 0.60)
		responseString="Weiter üben!";
	if (responseTime >=0.60 && responseTime < 1)
		responseString="Hast Du getrunken?";
	if (responseTime >=1)
		responseString="Bist Du eingeschlafen?";

	return responseString;
}

function stopBgTest()
{
	if(bgChanged)
	{
		endTime=new Date();
		var responseTime=(endTime.getTime()-startTime.getTime())/1000;

		document.getElementById('main_area').style.backgroundColor="#99FF66";       
		alert("Deine Reaktionszeit: " + responseTime + " Sekunden " + "\n" + remark(responseTime));
		bgStarted=false;
		bgChanged=false;
	}
	else
	{
		if (!bgStarted)
		{
			alert("Um den Test zu starten, zuerst auf \"start\" klicken");
		}
		else
		{       
			clearTimeout(timerBg);
			bgStarted=false;             
			alert("Schummler! Du hast zu zeitig geklickt!");
		}               
	}
}

var randMULTIPLIER=0x015a4e35;
var randINCREMENT=1;
var today=new Date();
var randSeed=today.getSeconds();
function randNumber()
{
	randSeed = (randMULTIPLIER * randSeed + randINCREMENT) % (1 << 31);
	return((randSeed >> 15) & 0x7fff) / 32767;
}

function startBg()
{
  if(bgStarted) {
    alert("Es wurde bereits gestartet. Um zu stoppen, klicke auf \"stop\"");
    return;
  } else {
    if (isRunning()) {
      alert("Mach erst mal den vorigen Test fertig!");
      return;
    }
    bgStarted=true; 
    timerBg=setTimeout('startBgTest()', 6000*randNumber());
  }
}

var imgMode=0;
stopflag = new Array (false,false,false);
function startImg(modus)
{
  imgMode = modus;
  if ((imgMode == 1 && animalStarted) || (imgMode == 3 && animalStarted3)) {
    alert("Es wurde bereits gestartet. Um zu stoppen, klicke auf \"stop\"");
    return;
  } else {
    if (isRunning()) {
      alert("Mach erst mal den vorigen Test fertig!");
      return;
    }
    if (imgMode == 1) {
      animal = document.animals.animalChange.options[document.animals.animalChange.selectedIndex].text;
      animalStarted=true;
    } else {
      for (i=0;i<=2;i++)
        stopflag[i] = false;
      animal = document.animals3.animalChange.options[document.animals3.animalChange.selectedIndex].text;
      animalStarted3=true;
    }
    showImg();
  }
}
  
function showImg() {
  switch(imgMode) {
  case 1:
    choice = Math.round(Math.random() * 10);
    document.img1.src = ar_img[choice];
    document.img1.width = ar_width[choice];
    document.img1.height = ar_height[choice];
    document.img1.alt = ar_alt[choice];
    if (document.img1.alt == animal) {
      animalChanged=true;
      startTime=new Date();
    } else {
      timerShow = window.setTimeout("showImg()",1500);
    }
    break;
  case 3:
    for (i=2;i<=4;i++) {
      if (stopflag[i-2] == true)
        continue;
      choice = Math.round(Math.random() * 23);
      eval("document.img" + i + ".src = ar_img[choice]");
      eval("document.img" + i + ".width = ar_width[choice]");
      eval("document.img" + i + ".height = ar_height[choice]");
      eval("document.img" + i + ".alt = ar_alt[choice]");
      if (ar_alt[choice] == animal) {
        stopflag[i-2] = true;
        if (animalChanged==false) {
          animalChanged=true;
          startTime=new Date();
        }
        break;   
      }
    }
    timerShow = window.setTimeout("showImg()",2000);
    break;
  default:
    alert("irgendwas ist hier schiefgelaufen");
  }
}


function stopImg(mode)
{
  if ((animalStarted || animalStarted3) && mode != imgMode) {
    alert("Falscher Film! Du hast einen anderen Test gestartet!");
    return;
  }
  if (animalChanged) {
    clearTimeout(timerShow);
    endTime=new Date();
    var responseTime=(endTime.getTime()-startTime.getTime())/1000;
    alert("Deine Reaktionszeit: " + responseTime + " Sekunden " + "\n" + remarkAnimals(responseTime));
    animalChanged=false;
    if (imgMode == 1)
      animalStarted=false;
    else
      animalStarted3=false;
  } else {
    if ((imgMode == 1 && !animalStarted) || (imgMode == 3 && !animalStarted3)) {
      alert("Um den Test zu starten, zuerst auf \"start\" klicken");
    } else {       
      clearTimeout(timerShow);
      if (imgMode == 1) {
        animalStarted=false;             
        alert("In Bio nicht aufgepasst?\nDas ist doch kein" + 
          document.animals.animalChange.options[document.animals.animalChange.selectedIndex].value);
      } else {
        animalStarted3=false;             
        alert("In Bio nicht aufgepasst?\nDa ist doch kein" + 
          document.animals3.animalChange.options[document.animals3.animalChange.selectedIndex].value);
      }
    }               
  }
}   


function remarkAnimals(responseTime)
{
	var responseString="";
	if (responseTime < 0.30)
		responseString="Beste Aussichten als Starfighter-Pilot";
	if (responseTime >= 0.30 && responseTime < 0.40)
		responseString="Rennfahrerkarriere nicht ausgeschlossen";
	if (responseTime >=0.40 && responseTime < 0.50)
		responseString="Könnte noch was werden ...";
	if (responseTime >=0.50 && responseTime < 0.60)
		responseString="Üben, üben, üben!";
        if (responseTime >=0.60 && responseTime < 0.80)
		responseString="Schau dich lieber erst mal im Zoo um!";
	if (responseTime >=0.80 && responseTime < 1)
		responseString="Zu Weihnachten vielleicht ein Tierlexikon?";
	if (responseTime >=1 && responseTime < 1.2)
		responseString="Als Beamter hättest Du vielleicht noch Chancen!";
	if (responseTime >=1.2 && responseTime < 1.4)
		responseString="Versuch's lieber mit Patiencen legen";
	if (responseTime >=1.4)
		responseString="Träum weiter!";

	return responseString;
}

function startImgClick()
{ 
  if (clickStarted) {
    alert("Du bist bereits auf Safari. Um zu stoppen, klicke auf eins der Bilder");
    return;
  } else {
    if (isRunning()) {
      alert("Mach erst mal den vorigen Test fertig!");
      return;
    }
    showImgClick();
    clickStarted=true;
  }
}

missed=0;
function showImgClick() {
  var lvalue;
  for (i=5;i<=7;i++) {
    if (clickStarted) {
      lvalue = eval("document.img" + i + ".alt");
      if (document.animClick.animalChange.options[document.animClick.animalChange.selectedIndex].text == lvalue)
        missed += 1;
    }
    choice = Math.round(Math.random() * 23);
    eval("document.img" + i + ".src = ar_img[choice]");
    eval("document.img" + i + ".width = ar_width[choice]");
    eval("document.img" + i + ".height = ar_height[choice]");
    eval("document.img" + i + ".alt = ar_alt[choice]");
    if (ar_alt[choice] == document.animClick.animalChange.options[document.animClick.animalChange.selectedIndex].text) {
      clickChanged=true;
      startTime=new Date();
    }
  }
  if (!clickStarted)
    clickStarted=true;
  timerClick = window.setTimeout("showImgClick()",2000);
}

function testClick(obj) {
  if (!clickStarted) {
    alert("Du bist noch gar nicht auf Safari gegangen!");
    return;
  }
  clearTimeout(timerClick);
  var lvalue = eval("document." + obj + ".alt");
  if (document.animClick.animalChange.options[document.animClick.animalChange.selectedIndex].text != lvalue) {
    alert("Tomaten auf den Augen oder was?");
    if (missed > 0) 
      alert("Und dann hast Du auch noch " + missed + " gesuchte Tiere verpasst!");
   } else {
     endTime=new Date();
     var responseTime=(endTime.getTime()-startTime.getTime())/1000;
     alert("Deine Reaktionszeit: " + responseTime + " Sekunden " + "\n" + remarkAnimals(responseTime));
     if (missed > 0) 
       alert("Aber Du hast eh nicht bestanden,\ndenn dazwischen hast Du " + missed + " gesuchte Tiere übersehen!");
   }
  missed = 0;
  clickStarted = false;
  clickChanged=false;
}

Loops=0;
cntFood=0;
cntFound=0;
cntMissed=0;
mixed=0;
coffee=0;
function startFood()
{ 
  if (foodStarted) {
    alert("Du bist schon bei der Nahrungssuche, da musst Du Dich jetzt durchfressen");
    return;
  } else {
    if (isRunning()) {
      alert("Mach erst mal den vorigen Test fertig!");
      return;
    }
    foodStarted=true;
    showFood();
  }
}

function showFood() {
  Loops += 1;
  for (i=8;i<=10;i++) {
    choice = Math.round(Math.random() * 24);
    eval("document.img" + i + ".src = ar_food[choice]");
    eval("document.img" + i + ".width = arf_width[choice]");
    eval("document.img" + i + ".height = arf_height[choice]");
    eval("document.img" + i + ".alt = arf_alt[choice]");
    if (document.foodClick.foodChange.options[document.foodClick.foodChange.selectedIndex].value == arf_alt[choice])
        cntFood += 1;
  }
  if (Loops < 10)
    timerFood = window.setTimeout("showFood()",2000);
  else
    timerFood = window.setTimeout("stopFood()",2000);
}

function testFood(obj) {
  var lvalue;
  if (!foodStarted) {
    alert("Du musst erst mal dein Essen bestellen!");
    return;
  }
  lvalue = eval("document." + obj + ".alt");
  if (document.foodClick.foodChange.options[document.foodClick.foodChange.selectedIndex].value == lvalue) {
    cntFound += 1;
  } else {
    cntMissed += 1;
  }
  lvalue = eval("document." + obj + ".src");
  if ((document.foodClick.foodChange.options[document.foodClick.foodChange.selectedIndex].value == "essen") &&
      ((lvalue.search("Cocktail") != -1))) {
    mixed+=1;
    cntMissed -= 1;
  }
  if ((document.foodClick.foodChange.options[document.foodClick.foodChange.selectedIndex].value == "essen") &&
      (lvalue.search("Kaffee2") != -1)) {
    coffee+=1;
  }
}

function stopFood() {
  if (cntFound > cntFood && Mixed == 0) 
    alert("Doppelt klicken gilt nicht, du Schummler!");
  else {
    if (coffee > 0) 
      alert("Fliegen im Kaffee lass ich ja noch als essbar durchgehen\naber das! Bist Du Kannibale, oder was?");
    if (mixed == 0)
      alert("Von " + cntFood + " Möglichkeiten hast Du " + cntFound + " gefunden.\n" +
          remarkFood(cntFound/cntFood));
    else
      alert("Von " + cntFood + " Möglichkeiten hast Du " + cntFound + " gefunden.\nNaja bei den Cocktails kann man geteilter Meinung sein.\n" +
          remarkFood(cntFound/cntFood));
      
  }
  if (cntMissed > 0)
    alert("... und dann waren da noch die " + cntMissed + " Fehlgriffe");
  clearTimeout(timerFood);
  Loops=0;
  cntFood=0;
  cntFound=0;
  cntMissed=0;
  mixed=0;
  coffee=0;
  foodStarted = false;
}

function remarkFood(quota)
{
  var responseString="";
    if (quota == 1)
      responseString="Du findest zumindest die richtigen Rezeptzutaten beim Kochen";
    if (quota < 1 && quota >= 0.9)
      responseString="Als Restaurantkritiker solltest Du Dich besser nicht versuchen";
        if (quota < 0.9 && quota >= 0.8)
      responseString="Vielleicht solltest Du die Zeitschrift 'Essen & Trinken' abonnieren?";
    if (quota < 0.8 && quota >= 0.7) {
      if (document.foodClick.foodChange.options[document.foodClick.foodChange.selectedIndex].value == "essen")
        responseString="Zum besseren Verständnis:\nEssen ist das was man in unseren Breiten mit \nMesser, Gabel oder Löffel in den Mund befördert";
      else
        responseString="Zum besseren Verständnis:\nZum Trinken ist dieses flüssige Zeug, das man sich auch \nbesonders gut übers frischgewaschene T-Shirt schütten kann";
    }
    if (quota < 0.7 && quota >= 0.6)
      responseString="Falls es an der Eitelkeit liegt, es gibt auch Kontaktlinsen";
    if (quota < 0.6 && quota >= 0.5)
      responseString="Entweder Du hast ein optisches oder ein mentales Problem";
    if (quota < 0.5 && quota >= 0.3) {
      if (document.foodClick.foodChange.options[document.foodClick.foodChange.selectedIndex].value == "essen")
        responseString="Vielleicht verstehst Du Dich ja mehr aufs Trinken";
      else
        responseString="Hast Du eventuell schon einen über den Durst getrunken?";
    }
    if (quota < 0.3)
      responseString="Kommentar ist wohl überflüssig";
    return responseString;
}

off=new Array();
bchoice=new Array();
nexttime=2000;
cntPics=0;
cntBlue=0;
cntRed=0;
function mischen() {
  if (bingoStarted) {
    alert("He, Du bist mitten im Spiel");
    return;
  }
  if (isRunning()) {
    alert("Mach erst mal den vorigen Test fertig!");
    return;
  }
  bingoStarted = true;
  cntPics=0;
  cntBlue=0;
  cntRed=0;
  for (i=0;i<25;i++) 
    off[i] = false;
  for (i=0;i<25;i++) {
    n = Math.round(Math.random() * 24);
    while (off[n]) {
      if (n<24) n++;
      else n= 0;
    }
    bchoice[i] = n;
    off[n] = true;
  }
  for (i=0;i<document.bingo.Level.length;i++) {
    if (document.bingo.Level[i].checked)
      level = document.bingo.Level[i].value;
  }
  if (level == 1) {
    nexttime = 2000;}
  else if (level == 2)
    nexttime = 1800;
  else if (level == 3) {
    nexttime = 1900
    mixtable();
  }
  showPics(); 
}

function showPics() {
  eval("document.img11.src = ar_food[bchoice[cntPics]]");
  eval("document.img11.width = arf_width[bchoice[cntPics]]");
  eval("document.img11.height = arf_height[bchoice[cntPics]]");
  eval("document.img11.alt = arf_alt[bchoice[cntPics]]");
  cntPics++;
  if (cntPics<=24) 
    window.setTimeout("showPics()",nexttime);
  else
    window.setTimeout("clearUp();",nexttime);
}

function testPics(n,str) {
  if (!bingoStarted) {
    alert("He, wir haben noch gar nicht angefangen!");
    return;
  }
  if (document.img11.src.search(str) != -1) {
    newColor(n);
    cntBlue++;
  } else {
    wrongColor(n);
    cntRed++;
  }
}

function newColor(n) {
  var tdid = "#td"+n;
  var color = $(tdid).css('background-color');
  if (color != "#FF0000" && color != "#ff0000") {
    $(tdid).css('background-color','#00FFFF');
  }
}
function wrongColor(n) {
  var tdid = "#td"+n;
  $(tdid).css('background-color','#ff0000');
}

function clearUp() {
  eval("document.img11.src = 'images/reaktion/Bingo.jpg'");
  eval("document.img11.width = 130");
  eval("document.img11.height = 130");
  eval("document.img11.alt = 'Bingo'");
  if (cntRed > 10) {
    alert("Das ist ja wohl eher ein rotes Minenfeld");
  } else {
    if (cntBlue == 25)
      alert("Das war Spitze");
    if (cntBlue < 25 && cntBlue > 20)
      alert("Könnte noch was werden");
    if (cntBlue <= 20 && cntBlue > 10)
      alert("Weiter üben!");
    if (cntBlue <= 10)
      alert("Versuch's lieber mit Patiencen legen");
  } 
  for (i=1;i<=25;i++)
  {
    var tdid = "#td"+i;
    $(tdid).css('background-color','#0099CC');
  } 
  bingoStarted = false;
}

function mixtable() {
  var thistd;
  for (i=0;i<25;i++) 
    off[i] = false;
  for (i=0;i<25;i++) {
    n = Math.round(Math.random() * 24);
    while (off[n]) {
      if (n<24) n++;
      else n= 0;
    }
    thistd = eval(docbitK + "td" + (i+1) + docbitendK); 
    thistd.innerHTML="<a class='tds' href='#' onFocus='blur();' onClick='testPics(" + (i+1) + ",\"" + ar_bingo[n] +"\");return false;'>" + ar_bingo[n] + "</a>";
    off[n] = true;
  }
}
//-->
