// ///////////////////////////////////////////////////////////////////////
//    quiz.js  (c)2002    Michael Botzet  mike@botzet.net              //
/////////////////////////////////////////////////////////////////////////
// Das Script setzt einen Frameset mit Namen 'fs-quiz.html' mit den Frames 'quiz' und dem Frame 'counter' voraus.
// Im quiz-Frame werden Fragen beantwortet, und im counter-Frame werden Zählwerte initalisiert und hochgezählt.
// Die Fragen heißen frage#.htm, die Antworten ergebnis#.htm.
// Das gesamte Quiz, einschließlich Stylesheets und der Scriptdatei muss sich in einem Ordner befinden.
////////////////////////////////////////////////////////////////////////
// 'zeigeFenster()' öfnet das Quiz-Fenster, das keine Vor- und Zurück-Buttons enthält,
// da sonst das Zählen beeinflusst würde.
function zeigeFenster(fensterURL){
quizFenster = open(fensterURL,"Fenster1","width=800,height=580,screenX=0,screenY=0,status=yes");
quizFenster.opener=self;
quizFenster.focus();
}
// Die Funktion "iniatialisieren()" ordnet eine Reihe von Werten dem Eltern-Frame "counter" zu.
// Sie wird von der Startseite des Quiz' aufgerufen.
// Die Arrays 'frage' und 'loesung' führen Buch darüber, ob eine Frage beantwortet wurde.
// Sie müssen der Anzahl der Fragen entsprechen.
// Aus Gründen der Übersichtlichkeit wird das nullte Element wird nicht verwendet.
function initialisieren(usrn){
  parent.frames['counter'].document.frage = new Array("Zoo-Quiz von Michael Botzet","0","0","0","0","0","0","0","0","0","0","0","0","0");
  parent.frames['counter'].document.punkte = 0;
  parent.frames['counter'].document.loesung = new Array("Zoo-Quiz von Michael Botzet","1","2","3","4","5","6","7","8","9","10","11","12","13");
  parent.frames['counter'].document.datErgebnis="ergebnis";
  parent.frames['counter'].document.userName=usrn;
}
// onLoad wird geprüft, ob die Frame-Struktur intakt ist.
function frameTest(){
  if (!parent.frames['counter']){
      alert("Fehler!\nDie Fragen dürfen nicht in einem separaten Fenster geöffnet werden.\nDie Auswertung klappt nur, wenn die Framestruktur erhalten bleibt.\nDas Quiz wird nun neu gestartet.")
     zeigeFenster("fs-quiz.html");
     if(opener){
        window.opener=self;
        opener.blur();
        opener.close();
     }
     else{
          self.blur();
          self.close();
     }
   }
}
/////////////////////// Cookies /////////////////////////
function cookiegen(){
jetzt=new Date;
meinBesuch="";
meinBesuch += jetzt.getDate()+".";
meinBesuch += (jetzt.getMonth()+1)+".";
meinBesuch += (jetzt.getYear()+1900);
verfallsDatum = jetzt.getTime() + (1000*60*60*24*10);
document.cookie = "besucht="+meinBesuch+"     name="+userName+"     expires="+verfallsDatum;
}
function cookieMacher(){
userName = self.document.formular.name.value;
deinName="";
if (document.cookie){
        cookieKette=document.cookie.split("     ");
        cookieBesucht=cookieKette[0].split("=");
        cookieName=cookieKette[1].split("=");
        cookieExpires=cookieKette[2].split("=");
        if (cookieName[1] != ""){
        deinName = "mit Namen \""+cookieName[1]+"\"";
        }

        neumachen = confirm("Hallo, am "+cookieBesucht[1]+" war jemand "+deinName+" das letzte Mal auf dieser Seite.\nWillst du das Zoo-Quiz jetzt spielen, oder willst du abbrechen?");
        if (neumachen==true){
           cookiegen();
           parent.frames['quiz'].location.href=nextPage;
          }
        else{
           top.close();
           }
  }
 else{
    cookiegen();
    parent.frames['quiz'].location.href=nextPage;
 }

}
////////////////////////// Cookies Ende ////////////////




///////////////////////////  Auswertung ///////////
// zunächst wird gefragt, ob eine Text-Frage oder eine Multiple-Choice-Frage
// ausgertet werden soll
function auswerten(){
  if(isNaN(richtig)==true){
    auswertenString(self.document.formular.loesung.value);
  }
  else {
     auswertenZahl();
  }
}


function setzeText(){
self.document.formular.loesung.value=self.document.formular.t31.value+self.document.formular.t32.value+self.document.formular.t33.value+self.document.formular.t34.value+self.document.formular.t35.value;
}

function auswertenString(wort){
 ergebnis=wort.toUpperCase();
 beantwortet=false;
 if (wort.length<4){
    setzeText();
    }
    if (wort.length > 4){
    beantwortet=true;
    }

 if (beantwortet==true){
         if (ergebnis==richtig.toUpperCase()){
         parent.frames['counter'].document.punkte +=4;
         parent.frames['counter'].document.frage[frageNr] = "richtig";
         }
         else {
         parent.frames['counter'].document.frage[frageNr] = "falsch";
         }
 }
 else{
 parent.frames['counter'].document.frage[frageNr] = "ausgelassen";
 }

 self.document.location.href=nextPage;
}


function auswertenZahl(){
 beantwortet=false;
 for (frgn=0;frgn<self.document.formular.radio.length;frgn++){
    if (self.document.formular.radio[frgn].checked==true){
    beantwortet=true;
    }
 }
 if (beantwortet==true){
         if (self.document.formular.radio[richtig].checked==true){
         parent.frames['counter'].document.punkte +=1;
         parent.frames['counter'].document.frage[frageNr] = "richtig";
         }
         else {
         parent.frames['counter'].document.frage[frageNr] = "falsch";
         }
 }
 else{
 parent.frames['counter'].document.frage[frageNr] = "ausgelassen";
 }

 self.document.location.href=nextPage;
}
//////////////  Auswerten Ende //////////////////

/////////////////  schreibt das Ergebnis ins aktuelle Fenster   /////////////

function zeigeErgebnis(){
  self.document.open();
  self.document.write("<html><head><meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'><link rel='stylesheet' href='zoospiel.css' type='text/css'><title>Zoo-Quiz Ergebnis</title></head>");
  self.document.write("<body bgcolor='#FFFFFF' text='#000000'><table width='610' border='0' cellspacing='2' cellpadding='2' align='center'><tr align='center' valign='top'><td colspan='3' bgcolor='#F3EEE4'><h3>Ergebnis");
// existiert userName?
  if (parent.frames['counter'].document.userName != ""){
      self.document.write(" für "+parent.frames['counter'].document.userName+":</h3></td></tr>");
  }
  else {
        self.document.write(":</h3></td></tr>");
  }
 // Schleife für alle Fragen
  for (za=1;za<parent.frames['counter'].document.frage.length;za++){
    self.document.write("<tr valign='top'><td width='230' align='left' bgcolor='#E9DECB'>Frage "+za+":</td> <td width='189' bgcolor='#E9DECB'>"+parent.frames['counter'].document.frage[za]+"</td><td width='171' align='left' bgcolor='#E9DECB'>");
    if (parent.frames['counter'].document.frage[za]=="falsch"){
       dateiName=parent.frames['counter'].document.datErgebnis+za+".htm";
       self.document.write("<a href='"+dateiName+"'>L&ouml;sung</a>");
    }
    self.document.write("&nbsp;</td></tr>");
  }
  self.document.write("<tr valign='top'><td align='left' width='230' bgcolor='#F3EEE4'><h3>Macht zusammen: </h3> </td>   <td colspan='2' bgcolor='#F3EEE4'> <h3><b>"+parent.frames['counter'].document.punkte+" Punkte</b>.</h3> </td></tr>");
  self.document.write("</table></body></html>");
  self.document.close();
}
/////////////////////////
//
