// addmixednm.js
// created 11/1/06
// changed 11/1/06
// author: Andreas Meier, Weiden i.d.OPf.
// all rights reserved


var hn = 0;
var hn1 = 0;
var ausgtext2="";
var ausgtext1="";
var nenn1=0;
var nenn2=0;
var geloest = 0;
var score = 0;

function reset()
{
document.Parameter.ganz1.value =  "";
document.Parameter.ganz2.value =  "";
document.Parameter.n1.value =  "";
document.Parameter.n2.value =  "";
document.Parameter.z1.value =  "";
document.Parameter.z2.value =  "";
document.Parameter.minus.value ="-";
document.Parameter.Pruefergebnis2.value = "";
document.Parameter.zzz1.value =  "";
document.Parameter.nnn1.value =  "";
document.Parameter.ganze.value =  "";
document.Parameter.Pruefergebnis3.value = "";
}

function zufall(min, max, ohne) {
  var zufallszahl;
  do {
  zufallszahl = Math.round(min + Math.random() * (max - min));
  } while (zufallszahl == ohne);
  return zufallszahl;
}


function ggt(a,b){
while (a!=b){
if (a>b)a=a-b;
else b = b-a;
}
return a;
}

function Schreibez1()
     {
geloest = 0;
reset();
document.Parameter.Punktestand.value = String(score) + " points";
zaehler1 = zufall(4,35);
nenner1 = zufall(4,35,zaehler1);
if (zaehler1 > nenner1){dummy = zaehler1; zaehler1 = nenner1;nenner1 = dummy;}
nat1 = zufall(1,9);
nat2 = zufall(1,8);
if (nat2 > nat1) {dummy = nat1; nat1 = nat2; nat2 = dummy;}
if (nat2 == nat1) nat1++;
kuerze = ggt(zaehler1,nenner1);
zaehler1 = zaehler1/kuerze;
nenner1 = nenner1/kuerze;
zaehler2 = zufall(1,nenner1-1);
nenner2 = nenner1;
if (zaehler2 == zaehler1) zaehler1--;
if (zaehler1 <=0){nenner1 = 7; nenner2 = 7; zaehler1 = 5; zaehler2 = 6;}
kuerze2 = ggt(zaehler2,nenner2);
if (kuerze2 > 1 ) zaehler2 = nenner2 -1;
if (zaehler1 == zaehler2) zaehler1 = 1;

if (nenner1 <= 2) {nenner1 = 7; nenner2 = 7; zaehler1 = 5; zaehler2 = 6;}
if (nenner1 == zaehler1+zaehler2) {nenner1 = 7; nenner2 = 7; zaehler1 = 5; zaehler2 = 6;}


natdiv= nat1 + nat2;
if ((zaehler1+zaehler2)>nenner1) {
ganzezahl = natdiv+1;
zaehlererg=zaehler1+zaehler2-nenner1;
}
else {
ganzezahl = natdiv;
zaehlererg=zaehler1+zaehler2;
}

//var x = zaehlererg % nenner1;

//if (x == 0){
//zaehler1=nenner1+1;
//zaehlererg=zaehler1-zaehler2;}
//if (nenner1==2 && nenner2==2){
//nenner1 = 7; nenner2 = 7; zaehler1 = 6; zaehler2 = 3;}

//if(zaehler1-zaehler2 == nenner1) zaehler1 = zaehler1++;

//zaehlererg=zaehler1-zaehler2;
//ganzezahl = Math.floor(zaehlererg/nenner1);

document.Parameter.ganz1.value =  nat1;
document.Parameter.z1.value = zaehler1;
document.Parameter.n1.value = nenner1;
document.Parameter.minus.value ="+";
document.Parameter.ganz2.value =  nat2;
document.Parameter.z2.value = zaehler2;
document.Parameter.n2.value = nenner2;
document.Parameter.ganze.focus();
}

function ergproof()
{
ausgtext2="Try again!";
ausgtext1="";
kuerzeerg = ggt(zaehlererg,nenner2);
gekzaehler = zaehlererg/kuerzeerg;
geknenner = nenner2/kuerzeerg;
if (geloest == 0){

if (document.Parameter.zzz1.value !=""){var zze1 = eval(document.Parameter.zzz1.value);}
else zze1 =0;

if (document.Parameter.nnn1.value !=""){var nne1 = eval(document.Parameter.nnn1.value);}
else nne1 =0;

if (document.Parameter.ganze.value !=""){var ganze1 = eval(document.Parameter.ganze.value);}
else ganze1 =0;



if (ganze1 == ganzezahl && nenner2 == nne1 && zaehlererg == zze1 && kuerzeerg >1)
{
 ausgtext2 = "It's correct, but you can simplify!";
}

kurzgabe = ggt(nne1,zze1);

if (ganze1 == ganzezahl && 0 == ganzezahl && zaehlererg/nenner2 == zze1/nne1 && kurzgabe > 1)
{
 ausgtext2 = "It's correct, but you can simplify!";
}


if (ganze1 == ganzezahl && ganzezahl>=1 && zaehlererg/nenner2 == zze1/nne1 && kurzgabe > 1)
{
 ausgtext2 = "It's correct, but you can simplify!";
}


if (zze1 == gekzaehler && nne1 == geknenner && ganze1 == ganzezahl)
{
ausgtext2 = "Great! Completely correct!"; geloest = 1; score = score +25;
}


if (zze1 >= nne1 && ganze1 == 0 && nenner2 == nne1 && zaehlererg == zze1)
{

ausgtext2 = "It's correct, but more integers are possible.";
}

if (zze1 != gekzaehler && nne1 == geknenner && ganze1 == ganzezahl)
{
 ausgtext2 ="Wrong numerator at the final answer.";score = score -10; if (score<0 ) score =0;
}


if (zze1 == gekzaehler && nne1 != geknenner && ganze1 == ganzezahl)
{
ausgtext2 = "Wrong denominator at the final answer.";score = score -10; if (score<0 ) score =0;
}

if (zze1 == gekzaehler && nne1 == geknenner && ganze1 != ganzezahl && zze1/nne1 == gekzaehler/geknenner)
{
ausgtext2 = "The fraction is correct, but the integer is wrong";score = score -10; if (score<0 ) score =0;
}

if (zze1 == gekzaehler && nne1 == geknenner && ganze1 != ganzezahl && zze1/nne1 != gekzaehler/geknenner)
{
ausgtext2 = "Integers missing or wrong.";
}

if (zze1 == !gekzaehler && nne1 == geknenner && ganze1 == ganzezahl)
{
ausgtext2 = "Wrong numerator at the final answer.";score = score -10; if (score<0 ) score =0;
}

if (ganze1 != ganzezahl)
{
 ausgtext2 = "Integers are wrong!";score = score -10; if (score<0 ) score =0;
}



if (ganzezahl >1 && Math.round (zaehlererg/nenner1)==zaehlererg/nenner1){
if (zze1 == 0 && nne1 == 0 && ganze1 == ganzezahl)
{
ausgtext2 = "Great! Completely correct!"; score = score+ 20;
}
}



}

else {
ausgtext2 = "10 points lost for cheating!";
ausgtext1 = "The problem has already been solved.";
score = score -10; if (score<0 ) score =0;
}
document.Parameter.Pruefergebnis3.value = ausgtext2;
document.Parameter.Pruefergebnis2.value = ausgtext1;
document.Parameter.Punktestand.value = String(score) + " points";

}

/*     Highscore Eintrag vornehmen                                           */
/*                                                                           */
/*     Ausgabe-Fenster definieren und ausgeben                               */
/*                                                                           */
function messagewindow(message, title){
        msgWindow= open("rangliste.htm","msgwin","scrollbars=yes,toolbar=no,directories=no,menubar=no,width=420,height=480,location=no,status=no,resizable=yes");
     msgWindow.document.clear();
     msgWindow.document.open();

     msgWindow.document.writeln('<HTML><HEAD><TITLE>'+title+'</TITLE></HEAD><BODY TEXT="#000000" LINK="#0000FF" VLINK="#FF0000" ALINK="#0080FF" BGCOLOR="EFECA5">');
     msgWindow.document.writeln(message);
     msgWindow.document.writeln('</BODY></HTML>');

}

function auswerten() {

/* Achtung muss für jede Datei manuell angepasst werden */
/*                     Anfang                           */
var aufgabenart="adding mixed numbers";
var punkte = score;

// Zurücksetzen der Punkte auf Ausgangswert

score = 0; // Startkapital
document.Parameter.Pruefergebnis3.value = "Your points are submitted.";
document.Parameter.Pruefergebnis2.value = "So they are deleted here!";
document.Parameter.Punktestand.value = String(score) + " points";


//* Achtung muss für jede Datei manuell angepasst werden */
/*                        Ende                          */

   /* Hier wird das Ausgabe-fenster gefüllt und der HTML-Code geschrieben */
   /*                                                                    */
   ergebnisse = "<form name = 'eingabe' action ='../../../Mathematik/ehighsqlpost61.php' method ='post'>";
   ergebnisse += "<font face = 'arial, helvetica' size = 2>";
   ergebnisse += "<CENTER><H2><font color=#FF0000>Highscore</font></H2><P><H3><font color=#0000EC>Enter your score</font></H3> <P>"

ergebnisse += "Lesson:";
ergebnisse += "<input type= text size=35 maxlength=35 name='xx_aufgabenart' value ='"+ aufgabenart+"' style=' border: none; color: #dd0000; text-align: center; font-weight: bold; font-family: arial, helvetica; font-size: 15pt; background: #EFECA5' readonly> ";
ergebnisse += "<br>You have scored <input type='text' size=6 maxlength=6 name=xx_punkte value = "+punkte+" style=' border: none; color: #dd0000; text-align: center; font-weight: bold; font-family: arial, helvetica; font-size: 15pt; background: #EFECA5' readonly> ";
ergebnisse += " points.<br><br>";


   ergebnisse += "It's up to you to write a nickname.<br>";
   ergebnisse += "Then you can send your highscore.<br>";
   ergebnisse += "<br>";
   ergebnisse += "<font color= #0000cc>Example: &nbsp;&nbsp;&nbsp;<b>Sandra from Florida</b>&nbsp;<br></font>";
   ergebnisse += "<font color= #0000cc>Name:&nbsp;</font>";
   ergebnisse += "<input type= text  size= 35  maxlength= 38  name=xx_spieler style='border: 1px solid; border-color: #0000cc; color: #000095; text-align: left; font-weight: bold; font-family: arial, helvetica; font-size: 11pt; background: #ffffff'><br>";
   ergebnisse += "<br><table width = 96%><tr>";
   ergebnisse += "<td align = center><font color= #0000cc><b>country</b></font></td>";
   ergebnisse += "<td align = center><font color= #0000cc><b>school</b></font></td>";
   ergebnisse += "<td align = center><font color= #0000cc><b>grade</b></font></td>";
   ergebnisse += "</tr><tr>";

ergebnisse += "<td><select name= xx_land size=1 style='color: #000095; text-align: center; font-weight: bold; font-size: 10pt'>";
   ergebnisse += "<option value =0 > select ...";
ergebnisse += "<option value =1> Africa";
ergebnisse += "<option value =2> Argentina";
ergebnisse += "<option value =3> Australia";
ergebnisse += "<option value =4> Austria";
ergebnisse += "<option value =5> Belgium";
ergebnisse += "<option value =6> Bolivia";
ergebnisse += "<option value =7> Brazil";
ergebnisse += "<option value =8> Bulgaria";
ergebnisse += "<option value =9> Canada";
ergebnisse += "<option value =10> Central America";

ergebnisse += "<option value =11> Chile";
ergebnisse += "<option value =12> China";
ergebnisse += "<option value =13> Colombia";
ergebnisse += "<option value =14> Croatia";
ergebnisse += "<option value =15> Czech Republic";
ergebnisse += "<option value =16> Denmark";
ergebnisse += "<option value =17> Ecuador";
ergebnisse += "<option value =18> Estonia";
ergebnisse += "<option value =19> Finland";
ergebnisse += "<option value =20> France";

ergebnisse += "<option value =21> Germany";
ergebnisse += "<option value =22> Greece";
ergebnisse += "<option value =23> Hungary";
ergebnisse += "<option value =24> India";
ergebnisse += "<option value =25> Indonesia";
ergebnisse += "<option value =26> Ireland";
ergebnisse += "<option value =27> Israel";
ergebnisse += "<option value =28> Italy";
ergebnisse += "<option value =29> Finland";
ergebnisse += "<option value =30> Japan";

ergebnisse += "<option value =31> Korea";
ergebnisse += "<option value =32> Luxembourg";
ergebnisse += "<option value =33> Malaysia";
ergebnisse += "<option value =34> Mexico";
ergebnisse += "<option value =35> Middle East";
ergebnisse += "<option value =36> Netherlands";
ergebnisse += "<option value =37> New Zealand";
ergebnisse += "<option value =38> Norway";
ergebnisse += "<option value =39> Paraguay";
ergebnisse += "<option value =40> Peru";

ergebnisse += "<option value =41> Philippines";
ergebnisse += "<option value =42> Poland";
ergebnisse += "<option value =43> Portugal";
ergebnisse += "<option value =44> Puerto Rico";
ergebnisse += "<option value =45> Romania";
ergebnisse += "<option value =46> Russia";
ergebnisse += "<option value =47> Singapore";
ergebnisse += "<option value =48> Slovak Republic";
ergebnisse += "<option value =49> Spain";
ergebnisse += "<option value =50> Sweden";

ergebnisse += "<option value =51> Taiwan";
ergebnisse += "<option value =52> Thailand";
ergebnisse += "<option value =53> Turkey";
ergebnisse += "<option value =54> Ukraine";
ergebnisse += "<option value =55> United Kingdom";
ergebnisse += "<option value =56> United States";
ergebnisse += "<option value =57> Uruguay";
ergebnisse += "<option value =58> Venezuela";
ergebnisse += "<option value =59> Other Country";
ergebnisse += "</select></td>";


   ergebnisse += "<td><select name= xx_schulart size=1 style='color: #000095; text-align: center; font-weight: bold; font-size: 10pt'>";
ergebnisse += "<option value =0 > select ...";
   ergebnisse += "<option value =1> Middle School";
   ergebnisse += "<option value =2> Junior High";
   ergebnisse += "<option value =3> Senior High";
   ergebnisse += "<option value =4> Comprehensive";
   ergebnisse += "<option value =5> -----";
   ergebnisse += "</select></td>";

   ergebnisse += "<td><select name= xx_klasse size= 1 style= 'color: #000095; text-align: center; font-weight: bold; font-size: 10pt'>";
   ergebnisse += "<option value =0 > select ...";
   ergebnisse += "<option value =1>5th";
   ergebnisse += "<option value =2>6th";
   ergebnisse += "<option value =3>7th";
   ergebnisse += "<option value =4>8th";
   ergebnisse += "<option value =5>9th";
   ergebnisse += "<option value =6>10th";
   ergebnisse += "<option value =7> --";
   ergebnisse += "</select></td></tr></table><br>";


   ergebnisse += "<br> <input type =submit value ='send your highscore'></form>";


   messagewindow(ergebnisse,"Send to database"); /* überträgt den formatierten String */
                                           /*  in ein seperates Fenster        */

}
