 var frage = new Array();
 var min_fr=1;
 var max_fr=257;
 var ges_fr=0;

 var txttab = new Array("Alle Fragen","Begriffsbestimmung","Grundkenntnisse","Not&nbsp;Dringl.&nbsp;Sicherheit","Technik","öffentl.&nbsp;Seefunkdienst","Bogen","Alle Fragen");
 var ftab=new Array(0,1,51,134,228,250,258);



 var limit=3;
 var n=0;
 var tmp =new Array();
 var anz_fr=0;
 var anz_richt=0;
 var anz_fehl=0;
 var punkt_ok=0;
 var punkt_falsch=0;
 var proz_r=0;
 var proz_falsch=0;

 var p=0;
 var obj=null;
 var obj_frage=null;
 var obj_antw=null;
 var obj_stat=null;
 var pkt=0;
 var frn;
 var bg=false;
 var bog=0;
 var lfd;
 var gs_fr=0;
 var ges_fr=257;
 var ausw_mode=0;
 var ausw=0;
 var mixed=new Array(1,2,3,4);
 var abcd=new Array("A","B","C","D");
 var richtig=0;
 
 function init() {
   for(i=0;i< 264; i++) {
      frage[i]=new Array();
      frage[i][0]=0;         //
      frage[i][1]="";        // Ergebnis
   }

   /* l�sche Statistikdaten */
   anz_fr=0;
   anz_richt=0;
   anz_fehl=0;
   punkt_ok=0;
   punkt_falsch=0;
   proz_r=0;
   proz_falsch=0;

   showStatistik();
 }

 function nextQuest() {
   if(bg==true){    // Bogen aktiv
     p= bogen[bog][lfd];
     lfd++;
     return p;
   }

   if(document.fragen.rad_ausw[0].checked == true)
   {  p=  Math.round(Math.random() * max_fr);
      while(p < min_fr || p > max_fr) {
         p=  Math.round(Math.random() * max_fr);
     }
   }
   else p++;

   if(frage[p][0]< limit) return p;      // noch nicht mehrfach richtig beantwortet?
   for(i=p;i<max_fr;i++)              // wenn ja, n�chste in Folge suchen
     if(frage[i][0]< limit) return i;
   for(i=min_fr;i<p ;i++)
     if(frage[i][0]< limit) return i;
   return 0;
 }

 function showQuest(n){
     tmp=tab[n].split("|");
     alert(tmp);
    
     var nr=tmp[0];
     var i=0;
     var x=0;
     var str="";
     var swap="";
     if(bg==true)nr=n;
     
     for(i=0; i<3;i++){
    	x=parseInt(Math.random() * 4); 
    	swap=mixed[i];
    	mixed[i]=mixed[x];
    	mixed[x]=swap;
     }

     document.fragen.frnr.value=n;
    // document.fragen.punkte.value=nr;
     obj_frage=document.getElementById("frage");
     str=tmp[1]+"<br><br><ul>";
     for(i=0;i<4;i++){
         str +='<li class="frage"><input type="radio" name="antw" value="'+abcd[i]+'">' +abcd[i]+'  ';
         str +=tmp[mixed[i]+1]+"<br></li><br>";
         if(mixed[i]==1)richtig=i;
     }
     str+="</ul>";
     obj_frage.innerHTML=str;
     alert(mixed+"   richtig "+richtig+" \n"+str);
     obj_antw=document.getElementById("antw");
     obj_antw.innerHTML="";
     window.status="tmp="+tmp.length;
     if(tmp.length >3) {
         document.fragen.btnHelp.disabled=false;
 //      alert(document.fragen.btnHelp.attributes['disabled'].value);
      }
     else
      {   document.fragen.btnHelp.disabled=true;   }

 }

 function frage_richtig(p) {
      anz_fr+=1;
      anz_richt+=1;
      var pkt=tmp[0].split("(");

      punkt_ok+=parseInt(pkt[1]);
      frage[p][0]+=1;
      frage[p][1]+="1";      // richtig beantwortet
      n=nextQuest();
      showQuest(n);
      showStatistik();
 }
  function frage_falsch(p) {
      anz_fr+=1;
      anz_fehl+=1;
      pkt=tmp[0].split("(");
      punkt_falsch+=parseInt(pkt[1]);

      frage[p][0]-=1;
      frage[p][1]+="0";   // falsch beantwortet
      n=nextQuest();
      showQuest(n);
      showStatistik();
 }


 function antw_zeigen() {
     var obj=document.getElementById("antw");
     obj.innerHTML=tmp[2];
 }

 function radio_change() {
 if(document.fragen.rad_ausw[0].checked == true) ausw_mode=0;
 if(document.fragen.rad_ausw[1].checked == true) ausw_mode=1;
 if(document.fragen.rad_ausw[2].checked == true) ausw_mode=2;
     alert("radio changed to "+ausw_mode+"   "+document.fragen.rad_ausw.value);
 }

 function showStatistik() {
 var bognr="";
 if(bog > 0) bognr=" : "+bog;
    var text=ges_fr+'  Fragen: '+txttab[ausw]+bognr+'<br><table border="1"><tr><td>Fragen</td><td>Richtig</td><td>Punkte</td><td> &nbsp;&nbsp;%  </td><td> Falsch </td><td>Punkte</td><td> &nbsp;&nbsp;%</td></tr>';
    obj_stat=document.getElementById("statistik");
    if(obj_stat == null) return;
    if(anz_fr > 0) {
        proz_r=parseInt((anz_richt * 100) / anz_fr);
        proz_falsch=parseInt((anz_fehl * 100) / anz_fr);
    }

    text+="<tr align='right'><td>"+anz_fr+"</td><td>   "+anz_richt+"</td><td>"+punkt_ok+"</td><td>   "+proz_r+"</td><td>    "+anz_fehl+"</td><td>"+punkt_falsch+"</td><td>    " +proz_falsch+"</td></tr></table>";
    obj_stat.innerHTML=text;
   // GetValues(obj_stat);
 }

 // ------------------------------------------------------------------------------------
 // der Anwender hat eine neue Auswahl angeklickt
 // Statistikdaten l�schen und neue Grunddaten setzen
 function show_ausw(x) {
      // Bogen ausgew�hlt?
      ausw=x;
      if(x==6) { bog= document.bogen.bnr.value; if(bog > 10) {bog=bog%10; document.bogen.bnr.value=bog;}
         bg=true;
         lfd=1;
         ges_fr=30;
      }
      else {
            var obj=document.getElementById("content_2");
            obj.innerHTML="";
            switchVis("content_2","off");

             bg=false;
             bog=0;
             min_fr=ftab[x];
             p=min_fr-1;
             max_fr=ftab[x+1]-1;
             ges_fr=(max_fr - min_fr + 1);
      }

      init();
      n=nextQuest();
      showQuest(n);
 }
// ------------------------------------------------------------------------------------
// ------------------------------------------------------------------------------------
function showGesamtStatistik() {
   var txt='<table  border="1" bgcolor="#FFFFEC">';
   var i=0;
   var j=0;
   txt+='<tr><th colspan="8">Antwort 0= falsch&nbsp;&nbsp;&nbsp, Antwort  1=richtig;</th></tr>';
   txt+='<tr><th>Frage</th><th> Antworten </th><th>Frage</th><th> Antworten </th><th>Frage</th><th> Antworten </th><th>Frage</th><th> Antworten </th></tr>';
   for(i=1;i<65;i++) {
       txt+='<tr>';
      for(j=0;j<256;j+=65) {
        if(frage[(i+j)][1].length > 0){
          txt+='<td>'+(i+j)+'</td><td>'+frage[(i+j)][1]+'</td>'; }
        else { txt+='<td>'+(i+j)+'</td><td> </td>';}
       }
       txt+='</tr>';
   }
   txt+="<table>";
   var obj=document.getElementById("antw");
   obj.innerHTML=txt;

}
// ------------------------------------------------------------------------------------
// Bogen anzeigen
// ------------------------------------------------------------------------------------
function show_bogen() {
  var p;
   var  pg=0;
   bog= document.bogen.bnr.value; if(bog > (bogen.length-1)) {bog=bog%(bogen.length-1); document.bogen.bnr.value=bog;}
   var txt='<br><br><table  border="1" bgcolor="#FFFFFF">';
   txt=txt+'<tr ><th width="45%" align="left">Frage  Bogen '+bog+'</th><th  width="45%">Antwort</th></tr>';
 
   for(i=1;i<bogen[bog].length;i++) {
      p= bogen[bog][i];
    
      tmp=tab[p].split("|");
      frn=tmp[0].split(".");
      txt+='<tr class="frage"><td style="background-color: #FFFFEC;"  width="45%"> Frage : '+i+'  ('+frn[0]+')&nbsp;&nbsp;&nbsp; Punkte'+frn[1]+'</td><td style="background-color: #FFFFEC;" valign="top"  width="45%">Antwort : '+i+'  ('+frn[0]+')&nbsp;&nbsp;&nbsp;'+frn[1]+'</td></tr>';
      txt += '<tr><td valign="top" >'+tmp[1]+'<br><br></td><td valign="top" >'+tmp[2]+'<br><br></td></tr>';
      if(i==pgbreak[bog][pg]) { txt+= '</table><br class="neueseite"><table  border="1" bgcolor="#FFFFFF">';

       txt=txt+'<tr ><th width="45%" align="left">Frage  Bogen '+bog+'</th><th  width="45%">Antwort</th></tr>';
       pg++;
      }
   }
   txt=txt+'</table>';
   txt=txt+'<br><a href="druck_bogen.php?bogen='+bog+'">Druckversion</a> <br><br>';
   obj=document.getElementById("content_2");
   obj.innerHTML=txt;
   switchVis("content_2","on");
   p=0;
 //  alert(txt.substr(0,200));
}



// ------------------------------------------------------------------------------------
// Alle Fragen anzeigen
// ------------------------------------------------------------------------------------
function show_all() {
   var txt='<br><br><table  border="1" bgcolor="#FFFFFF">';
   txt=txt+'<tr ><th width="45%">Frage</th><th  width="45%">Antwort</th></tr>';
   for(i=1;i<tab.length;i++) {
      tmp=tab[i].split("|");
      frn=tmp[0].split(".");
      txt+='<tr class="frage"><td valign="top"  width="45%"> F : '+frn[0]+'&nbsp;&nbsp;&nbsp;'+frn[1]+'<br><br>'+tmp[1]+'<br><br></td><td valign="top"  width="45%">A : '+frn[0]+'&nbsp;&nbsp;&nbsp;'+frn[1]+'<br><br>'+tmp[2]+'<br><br></td></tr>';
   }
   txt=txt+'</table>';
     txt=txt+'<br><a href="druck_bogen.php?bogen=0">drucken</a> <br><br>';

 //    txt=txt+'<br><input type="button" value="drucken" onClick="javascript:print()"> <br><br>';

   obj=document.getElementById("content_2");
   obj.innerHTML=txt;
   switchVis("content_2","on");
   p=0;
 //  alert(txt.substr(0,200));
}

function check_attr(obj){
   var i=0;
   var x="nur != null\n";
   var s;
   var v="";

    for (i=0;i<obj.attributes.length;i++)
   {   v=obj.attributes[i].value;
    //  if( v != "null") {
        x+="i="+i+"  "+ obj.attributes[i].name+"="+ obj.attributes[i].value+"  \t| ";
    //  }
   }

    alert(x);

   x="";
 //    for (i=0;i<obj.style.length;i++)
 //   x+="i="+i+" = " + obj.style[i].value+"  \n";
    x=obj.style;
     for (i=0;i<obj.style.length;i++)
        x+="i="+i+" = "+ obj.style[i].innerHTML;
   alert(x);
}
 function switchVis(objname,onOF) {
   var i,v,obj;
   if ((obj=document.getElementById(objname))!= null) {
       if (obj.style)  {
              obj=obj.style;
              //  nur wenn gleich "on" einschalten
              if(onOF=="on") { obj.visibility = 'visible'; }
              else {  obj.visibility = 'hidden';  }

          }
      }
 }