SIZE=0;
var verb = new Array(SIZE);
verb[0]="finir";
verb[1]="réfléchir";
verb[2]="guérir";
verb[3]="choisir";
verb[4]="rougir";
verb[5]="obéir";
verb[6]="se salir";
verb[7]="tenir";
verb[8]="partir";
verb[9]="sortir";
verb[10]="sentir";
verb[11]="venir";
verb[12]="mourir";
verb[13]="dormir";
verb[14]="servir";
verb[15]="souffrir";
verb[16]="ouvrir";
verb[17]="sentir";
verb[18]="cueillir";
verb[19]="s'enfuir";


var tense = ["indicatif présent","passé composé","indicatif imparfait"];

var sujet = ["je / j'", "tu", "il", "elle", "nous", "vous", "ils", "elles"];

var v_pre = new Array(SIZE);
var v_pc = new Array(SIZE);
var v_imp = new Array(SIZE);

v_pre[0]=["finis", "finis", "finit", "finit", "finissons", "finissez", "finissent", "finissent"];
v_pc[0]=["ai fini", "as fini", "a fini", "a fini", "avons fini", "avez fini", "ont fini", "ont fini"];
v_imp[0]=["finissais", "finissais", "finissait", "finissait", "finissions", "finissiez", "finissaient", "finissaient"];

v_pre[1]=["réfléchis", "réfléchis", "réfléchit", "réfléchit", "réfléchissons", "réfléchissez", "réfléchissent", "réfléchissent"];
v_pc[1]=["ai réfléchi", "as réfléchi", "a réfléchi", "a réfléchi", "avons réfléchi", "avez réfléchi", "ont réfléchi", "ont réfléchi"];
v_imp[1]=["réfléchissais", "réfléchissais", "réfléchissait", "réfléchissait", "réfléchissions", "réfléchissiez", "réfléchissaient", "réfléchissaient"];

v_pre[2]=["guéris", "guéris", "guérit", "guérit", "guérissons", "guérissez", "guérissent", "guérissent"];
v_pc[2]=["ai guéri", "as guéri", "a guéri", "a guéri", "avons guéri", "avez guéri", "ont guéri", "ont guéri"];
v_imp[2]=["guérissais", "guérissais", "guérissait", "guérissait", "guérissions", "guérissiez", "guérissaient", "guérissaient"];

v_pre[3]=["choisis", "choisis", "choisit", "choisit", "choisissons", "choisissez", "choisissent", "choisissent"];
v_pc[3]=["ai choisi", "as choisi", "a choisi", "a choisi", "avons choisi", "avez choisi", "ont choisi", "ont choisi"];
v_imp[3]=["choisissais", "choisissais", "choisissait", "choisissait", "choisissions", "choisissiez", "choisissaient", "choisissaient"];

v_pre[4]=["rougis", "rougis", "rougit", "rougit", "rougissons", "rougissez", "rougissent", "rougissent"];
v_pc[4]=["ai rougi", "as rougi", "a rougi", "a rougi", "avons rougi", "avez rougi", "ont rougi", "ont rougi"];
v_imp[4]=["rougissais", "rougissais", "rougissait", "rougissait", "rougissions", "rougissiez", "rougissaient", "rougissaient"];

v_pre[5]=["obéis", "obéis", "obéit", "obéit", "obéissons", "obéissez", "obéissent", "obéissent"];
v_pc[5]=["ai obéi", "as obéi", "a obéi", "a obéi", "avons obéi", "avez obéi", "ont obéi", "ont obéi"];
v_imp[5]=["obéissais", "obéissais", "obéissait", "obéissait", "obéissions", "obéissiez", "obéissaient", "obéissaient"];

v_pre[6]=["me salis", "te salis", "se salit", "se salit", "nous salissons", "vous salissez", "se salissent", "se salissent"];
v_pc[6]=["me suis sali", "t'es sali", "s'est sali", "s'est salie", "nous sommes salis", "vous êtes salis", "se sont salis", "se sont salies"];
v_imp[6]=["me salissais", "te salissais", "se salissait", "se salissait", "nous salissions", "vous salissiez", "se salissaient", "se salissaient"];

v_pre[7]=["tiens", "tiens", "tient", "tient", "tenons", "tenez", "tiennent", "tiennent"];
v_pc[7]=["ai tenu", "as tenu", "a tenu", "a tenu", "avons tenu", "avez tenu", "ont tenu", "ont tenu"];
v_imp[7]=["tenais", "tenais", "tenait", "tenait", "tenions", "teniez", "tenaient", "tenaient"];

v_pre[8]=["pars", "pars", "part", "part", "partons", "partez", "partent", "partent"];
v_pc[8]=["suis parti", "es parti", "est parti", "est partie", "sommes partis", "êtes parti", "sont partis", "sont parties"];
v_imp[8]=["partais", "partais", "partait", "partait", "partions", "partiez", "partaient", "partaient"];

v_pre[9]=["sors", "sors", "sort", "sort", "sortons", "sortez", "sortent", "sortent"];
v_pc[9]=["suis sorti", "es sorti", "est sorti", "est sortie", "sommes sortis", "êtes sortis", "sont sortis", "sont sorties"];
v_imp[9]=["sortais", "sortais", "sortait", "sortait", "sortions", "sortiez", "sortaient", "sortaient"];

v_pre[10]=["sens", "sens", "sent", "sent", "sentons", "sentez", "sentent", "sentent"];
v_pc[10]=["ai senti", "as senti", "a senti", "a senti", "avons senti", "avez senti", "ont senti", "ont senti"];
v_imp[10]=["sentais", "sentais", "sentait", "sentait", "sentions", "sentiez", "sentaient", "sentaient"];

v_pre[11]=["viens", "viens", "vient", "vient", "venons", "venez", "viennent", "viennent"];
v_pc[11]=["suis venu", "es venu", "est venu", "est venue", "sommes venus", "êtes venus", "sont venus", "sont venues"];
v_imp[11]=["venais", "venais", "venait", "venait", "venions", "veniez", "venaient", "venaient"];

v_pre[12]=["meurs", "meurs", "meurt", "meurt", "mourons", "mourez", "meurent", "meurent"];
v_pc[12]=["suis mort", "es mort", "est mort", "est morte", "sommes morts", "êtes morts", "sont morts", "sont mortes"];
v_imp[12]=["mourais", "mourais", "mourait", "mourait", "mourions", "mouriez", "mouraient", "mouraient"];

v_pre[13]=["dors", "dors", "dort", "dort", "dormons", "dormez", "dorment", "dorment"];
v_pc[13]=["ai dormi", "as dormi", "a dormi", "a dormi", "avons dormi", "avez dormi", "ont dormi", "ont dormi"];
v_imp[13]=["dormais", "dormais", "dormait", "dormait", "dormions", "dormiez", "dormaient", "dormaient"];

v_pre[14]=["sers", "sers", "sert", "sert", "servons", "servez", "servent", "servent"];
v_pc[14]=["ai servi", "as servi", "a servi", "a servi", "avons servi", "avez servi", "ont servi", "ont servi"];
v_imp[14]=["servais", "servais", "servait", "servait", "servions", "serviez", "servaient", "servaient"];

v_pre[15]=["souffre", "souffres", "souffre", "souffre", "souffrons", "souffrez", "souffrent", "souffrent"];
v_pc[15]=["ai souffert", "as souffert", "a souffert", "a souffert", "avons souffert", "avez souffert", "ont souffert", "ont souffert"];
v_imp[15]=["souffrais", "souffrais", "souffrait", "souffrait", "souffrions", "souffriez", "souffraient", "souffraient"];

v_pre[16]=["ouvre", "ouvres", "ouvre", "ouvre", "ouvrons", "ouvrez", "ouvrent", "ouvrent"];
v_pc[16]=["ai ouvert", "as ouvert", "a ouvert", "a ouvert", "avons ouvert", "avez ouvert", "ont ouvert", "ont ouvert"];
v_imp[16]=["ouvrais", "ouvrais", "ouvrait", "ouvrait", "ouvrions", "ouvriez", "ouvraient", "ouvraient"];

v_pre[17]=["sens", "sens", "sent", "sent", "sentons", "sentez", "sentent", "sentent"];
v_pc[17]=["ai senti", "as senti", "a senti", "a senti", "avons senti", "avez senti", "ont senti", "ont senti"];
v_imp[17]=["sentais", "sentais", "sentait", "sentait", "sentions", "sentiez", "sentaient", "sentaient"];

v_pre[18]=["cueille", "cueilles", "cueille", "cueille", "cueillons", "cueillez", "cueillent", "cueillent"];
v_pc[18]=["ai cueilli", "as cueilli", "a cueilli", "a cueilli", "avons cueilli", "avez cueilli", "ont cueilli", "ont cueilli"];
v_imp[18]=["cueillais", "cueillais", "cueillait", "cueillait", "cueillions", "cueilliez", "cueillaient", "cueillaient"];

v_pre[19]=["m'enfuis", "t'enfuis", "s'enfuit", "s'enfuit", "nous enfuyons", "vous enfuyez", "s'enfuient", "s'enfuient"];
v_pc[19]=["me suis enfui", "t'es enfui", "s'est enfui", "s'est enfuie", "nous sommes enfuis", "vous êtes enfuis", "se sont enfuis", "se sont enfuies"];
v_imp[19]=["m'enfuyais", "t'enfuyais", "s'enfuyait", "s'enfuyait", "nous enfuyions", "vous enfuyiez", "s'enfuyaient", "s'enfuyaient"];

function clear(){
  document.forms[1].verb.value='';
  document.forms[1].tense.value='';
  document.forms[2].question.value='';
  document.forms[3].answer.value='';
  document.forms[1].tally_1.value='0';
  document.forms[1].tally_2.value='0';
}

function killSpace(inStr){
  outStr=inStr.replace(/[ ]*/g, "");
  return outStr;
}

function getRadio(radioButton){
  var value=null;
  for(var i=0;i<radioButton.length;i++){
    if(radioButton[i].checked){
      value=radioButton[i].value;
      break
    }
  }
  return value;
}

function fStart(){
  verbControl="";
  score=0;
  count=0;
  document.forms[1].tally_1.value=score;
  document.forms[1].tally_2.value=count;
  if(getRadio(document.forms[1].selTense)!=null){
    if(getRadio(document.forms[0].selLevel)=="ir2")SIZE=7;
    if(getRadio(document.forms[0].selLevel)=="ir23")SIZE=20;
    getVerb1();
  }
  else{
    alert("\rChoisissez d'abord le temps du verbe!");
    return;
  }
}

function getVerb1(){
  var now=new Date();
  min=now.getMinutes();
  sec=now.getSeconds();
  random=sec % SIZE;
  countControl=15;
  attempt=0;
  if(count==countControl){
    document.forms[1].tally_4.value=parseInt(document.forms[1].tally_4.value)+1;
    document.forms[1].tally_3.value=parseInt(document.forms[1].tally_3.value)+score;
    if(confirm("\rVotre score pour cet exercice est de "+score+" sur "+count+".\rVoulez-vous refaire le même exercice?")==true){
      fStart();
    }
    else{
      clear();
    }
  }
  else{
    getVerb2();
  }
}
function getVerb2(){
  if(getRadio(document.forms[1].selTense)=="indicatif présent")document.forms[1].tense.value=tense[0];
  if(getRadio(document.forms[1].selTense)=="passé composé")document.forms[1].tense.value=tense[1];
  if(getRadio(document.forms[1].selTense)=="indicatif imparfait")document.forms[1].tense.value=tense[2];
  if(getRadio(document.forms[1].selTense)=="tous")document.forms[1].tense.value=tense[(min+sec)%3];
  document.forms[3].answer.value='';
  document.forms[1].verb.value=verb[random];
  document.forms[2].question.value=sujet[(min+sec) % 8];
  if(parseInt(verbControl.indexOf(document.forms[2].question.value+document.forms[1].verb.value))!=-1){
    random=(random+1) % SIZE;
    getVerb2();
  }
  else{
    verbControl+=(document.forms[2].question.value+document.forms[1].verb.value);
    document.forms[3].answer.focus();
  }
}
function ansValue(){
  var ans=null;
  var temps=document.forms[1].tense.value;
  if(temps=="indicatif présent")ans=v_pre[random];
  if(temps=="passé composé")ans=v_pc[random];
  if(temps=="indicatif imparfait")ans=v_imp[random];
  return ans;
}

function checkAns(){
  var cadre=document.forms[1];
  if(killSpace(document.forms[3].answer.value) == killSpace(ansValue()[(min+sec) % 8])){
    score=score+1;
    document.forms[1].tally_1.value=score;
    count=count + 1;
    document.forms[1].tally_2.value=count;
    getVerb1();
  }
  else if(document.forms[3].answer.value != ansValue()[(min+sec) % 8] && attempt<1){
   alert("Non. Essayez encore une fois.");
   attempt+=1;
   document.forms[3].answer.focus();
   document.forms[3].answer.select();
  }
  else{
    alert("\rDésolé. La bonne réponse est..."+ "\r\r"+document.forms[2].question.value+" "+ansValue()[(min+sec) % 8]);
    count=count + 1;
    document.forms[1].tally_2.value=count;
    getVerb1();
  }
  return false;
}
