
// Definitionen für mc-Tests (= Multiple Choice Tests mit Einfachantworten)
 
 RICHTIG=new Image();         
 RICHTIG.src='../defs/richtig.gif';

 FALSCH=new Image();         
 FALSCH.src='../defs/falsch.gif';

 FRZINV=new Image();         
 FRZINV.src='../defs/frzinv.jpg';

 FRZ=new Image();
 FRZ.src='../defs/frz.gif';

 var n_fragen, j_antw;  // n_fragen zählt die Fragen, j_antw die Antworten,
 n_fragen = 0;          // um die Objekte (Antworten bzw. Images) richtig durchzuzählen

 n_antw = new Array();   // zählt die Zahl der Antworten für jede Frage
 punktezahl = new Array(); // ermittelt die erzielte Punktezahl zu jeder Frage
 aktivieren = new Array(); // wird 1 gesetzt, wenn "Richtig" aufgedeckt wurde

 var punkte;  var punktegesamt; 
 punkte=0; punktegesamt=0;
 

 function frage_beginn(frage,Ltot,L1,L2,L3)  // frage darf HTML-Tags enthalten
                                            // Die L's: Standard:  'total%', '2%', '80%', '18%'
 {                                          // Wenn 2 in Table von 100% -> Ltot='95%'
                                            // Einzelner:          '500', '10', '410', '80' 
  n_fragen = n_fragen+1;  // n_fragen steht jetzt auf der Nummer der konkreten Frage
  j_antw = 0;
  punktegesamt=punktegesamt-1;
  n_antw[n_fragen]=0;   // initialisieren
  punktezahl[n_fragen]=0;  // initialisieren
  aktivieren[n_fragen]=0;  // initialisieren
  document.write(
   '<!-- ---------------------- Test Beginn --------------------------- -->\n'+
   '<CENTER>\n'+
   '<TABLE WIDTH="'+Ltot+'" BORDER="0" CELLPADDING="2" CELLSPACING="0" BGCOLOR="#FFFFEE" "#e3f4e2">\n'+
   '<TD BGCOLOR="#EAE2D4" "#e3e4f2">\n'+
   '<TABLE CELLPADDING="8" WIDTH="100%"><TD><FONT FACE="Arial,Helvetica" SIZE="-1"><B>\n'+
   frage + 
   '</B></TD></TABLE>\n'+
   '</TD><TR><TD>\n'+
   '<TABLE CELLPADDING="0">\n'
  );
 }


 function antwort(antw,richtigfalsch,Ltot,L1,L2,L3)  // antw darf HTML-Tags enthalten
 {                                      // richtigfalsch = 'RICHTIG' oder 'FALSCH',
  j_antw = j_antw + 1;
  objektname='a'+n_fragen+'_'+j_antw;  // Numerierung a1_1, a1_2, ... a2_1, ...
  punktegesamt=punktegesamt+1;
  n_antw[n_fragen]=n_antw[n_fragen]+1;   // n_fragen ist hier die jeweils aktuelle Nummer des Frage
  punktezahl[n_fragen]=punktezahl[n_fragen]+1;  // zunächst wird 1 Punkt pro Antwort hinaufgezählt
  document.write(
   '<TR><TD WIDTH="'+L1+'">&nbsp;</TD>\n'+
   '<TD WIDTH="'+L2+'"><FONT FACE="Arial,Helvetica" SIZE="-1">\n'+
   antw +
   '</TD><TD ALIGN="CENTER" WIDTH="'+L3+'"><FONT FACE="Arial,Helvetica" SIZE="-1">\n'+
   '<A HREF="javascript:{}"\n'+
   '   ONCLICK=    "if ('+objektname+'.src == FRZINV.src) {'+objektname+'.src='+richtigfalsch+'.src;\n'+
   '                punktezahl['+n_fragen+']=punktezahl['+n_fragen+']-1;\n'+    // jedes Aufdecken verringert die Punktezahl um 1
   '                if (\''+richtigfalsch+'\'==\'RICHTIG\') aktivieren['+n_fragen+']=1;  }" \n '+
   '   ONMOUSEOVER="if ('+objektname+'.src == FRZ.src)    '+objektname+'.src=FRZINV.src;"\n'+
   '   ONMOUSEOUT= "if ('+objektname+'.src == FRZINV.src) '+objektname+'.src=FRZ.src"\n'+
   '><IMG SRC="../defs/frz.gif" WIDTH="60" HEIGHT="17" BORDER="0" NAME="'+objektname+'"></A>\n'+
   '</TD>\n'
  ); 
 }


 function frage_ende()
 {
  document.write(
  '</TABLE>\n'+
  '</TD>\n'+
  '</TABLE>\n'+
  '</CENTER>\n'+
  '<!-- ---------------------- Test Ende --------------------------- -->\n'
  );
 }


 function auswerten()
 {
  punkte=0;  // initialisieren
  for (var j=1;j<=n_fragen;j=j+1)          // gehe alle Antworten durch
  if (aktivieren[j]==1)
  punkte = punkte + punktezahl[j];
 }


// ----- einige Abkürzungen zum bequemeren Editieren der Seiten:


// Wenn 2 Fragen nebeneinander in eine Tabelle eingebunden werden sollen:

 function frage_beginn_2(frage) 
 {  frage_beginn(frage,'92%','2%','80%','18%'); }

 function antwort_2(antw,richtigfalsch)
 {  antwort(antw,richtigfalsch,'92%','2%','80%','18%') }

// Wenn eine Frage alleinstehen soll:

 function frage_beginn_1(frage) 
 {  frage_beginn(frage,'500','10','410','80'); }

 function antwort_1(antw,richtigfalsch)
 {  antwort(antw,richtigfalsch,'500','10','410','80') }



 function open_info_punkte()
 {
   var fenster_info_punkte ; //= null;
    if ((fenster_info_punkte == null)||(fenster_info_punkte.closed)) 
     { fenster_info_punkte = window.open("../defs/info.html","Fenster_info_punkte","width=600,height=440,resizable=yes,status=no,menubar=no,location=no,scrollbars=yes"); 
       fenster_info_punkte.opener = top;
       fenster_info_punkte.focus(); 
     } 
    else { fenster_info_punkte.focus(); }
 }
