// JavaScript Document
NESSUNA = "NESSUNA"; 
VERO    = "VERO";    
FALSO   = "FALSO";   
ERRATA  = "ERRATA";  
NUM_DOM_QUESITO = 3; 
NUM_QUESITI = 10;    
NUM_DOMANDE = NUM_DOM_QUESITO*NUM_QUESITI;
NUM_QUESITI_TOOLBAR = 10;
NUM_QUESITI_RIASSUNTO = 4;
DELAY=1800000; 

var testFinito=false;
var domande =  new Array(NUM_DOMANDE);     
var domandeId =  new Array(NUM_DOMANDE);   
var risposte = new Array(NUM_DOMANDE);     
for (var i=1; i<=NUM_DOMANDE;i++){ risposte[i]=NESSUNA; }
var quesiti =  new Array(NUM_QUESITI);     
var quesitiId =  new Array(NUM_QUESITI);   
var imgQuesiti =   new Array(NUM_QUESITI); 
var optionAnswer =   new Array((NUM_DOMANDE*NUM_QUESITI)+2); 
var option =   new Array((NUM_DOMANDE*NUM_QUESITI)+2);       
var quesitoCorrente=0; 
var posizioneRiassunto=0;
var colorToolbar="#D1E6D7";
var colorSelezionato = "#FFCCA9"; 
var colorRispostaRiassunto = "#0099CC";
var colorRispostaErrataRiassunto = "red";
var idTest="";
var nomeCandidato="";
var idCandidato="";
var linguaCandidato="";
var iMinuti=30; 
var iSecondi=0;

function opzioneClick(numOpzione){      
  numOpzione= "" + numOpzione;
  memorizzaRisposta(numOpzione.substr(0,1), numOpzione.substr(1,1));       
  obj = window.document.getElementById('opzione' + numOpzione + 'Check');
  vis = obj.style.visibility;
  if ((vis=='')||(vis=='hidden')){
    obj.style.visibility='visible'; 
    numOpzione=parseInt(numOpzione,10);
    resto = numOpzione%2;
    if (resto==1){ numOpzione=numOpzione+1; 
    } 
    if (resto==0){ numOpzione=numOpzione-1;
    }
    obj = window.document.getElementById('opzione' + numOpzione + 'Check');
    obj.style.visibility='hidden'; 
  }
  if (rispostoTutto()){
    window.document.getElementById('bottoneToolbar'+ quesitoCorrente).style.background=colorToolbar;    
    window.document.getElementById('linkToolbar'+ quesitoCorrente).style.color="white";
  }  
}

function rispostoTutto(){
  indice = parseInt(quesitoCorrente*NUM_DOM_QUESITO);
  for (var i=1; i<=NUM_DOM_QUESITO;i++){
    if (risposte[indice+i]==NESSUNA){      
      return(false);
    }
  }     
  return(true);
}

function memorizzaRisposta(numDom, vero){
  indice = parseInt((quesitoCorrente*NUM_DOM_QUESITO)+parseInt(numDom));  
  if (vero=='1'){
    risposte[indice]=VERO;
  } else {
    risposte[indice]=FALSO;
  }  
}
function creaToolbar(inizio){
	obj = window.document.getElementById('toolbar');
  appo='<table class=\"tbToolbar\" cellspacing=0><tr>';
  for (var i=inizio; i<NUM_QUESITI_TOOLBAR+inizio;i++){ 
  	apice="'";
    appo = appo + '<a href=\"javascript:bottoneClick('+ i + ')'+'\"><td id=\"bottoneToolbar'+(i)+'\">';    
    appo = appo + '<span id=\"linkToolbar'+(i)+'\"> &nbsp;'+(i+1)+'&nbsp;'+'</span></td></a>';   
  }
  appo = appo + '<td><a href=\"javascript:riassuntoClick()\"><img class=iOpzione src=\"./img/test/riassunto.jpg\"></a></td></tr></table>';  
  obj.innerHTML = appo; 
}

function countDown(){
  if ( (iMinuti==0)&& (iSecondi==0)){
    riassuntoClickAutomatico();
    confermaClick();
    return;
  }
  iSecondi = iSecondi-1;
  if (iSecondi<0) {
    iSecondi = 59;
    iMinuti = iMinuti-1;
  }  
  if (iSecondi>9){  strSecondi=""+iSecondi;    
  } else { strSecondi="0"+iSecondi; }
  if (iMinuti>9){  strMinuti=""+iMinuti;    
  } else { strMinuti="0"+iMinuti;   }  
  window.document.getElementById('tempoRimanente').innerHTML=strMinuti+":"+strSecondi;  
  setTimeout("countDown()", 1000); 
}

function caricaDomanda(numeroQuesito, primaVolta){
  if (numeroQuesito==(NUM_QUESITI-1)) {
    window.document.getElementById('imgAvanti').src="./img/test/riassunto.jpg";
  } else {
    window.document.getElementById('imgAvanti').src="./img/test/avanti.gif";
  }
  numDomanda = numeroQuesito*NUM_DOM_QUESITO;
  for (var i=1; i<=NUM_DOM_QUESITO;i++){
    str = domande[numDomanda+i];
    window.document.getElementById('testoDomanda'+i).innerHTML=str;      
    visualizzaRisposte(numDomanda+i,(2+10*i)); 
  } 
  str = quesiti[(numeroQuesito)+1];  window.document.getElementById('testoQuesito').innerHTML=str;  
  window.document.getElementById('iQuesito').src = imgQuesiti[(numeroQuesito)+1].src;  
  window.document.getElementById('numQuesito').innerHTML = parseInt(numeroQuesito)+1;
  window.document.getElementById('linkToolbar'+ numeroQuesito).style.backgroundColor=colorSelezionato;    
  
  if (NUM_QUESITI_TOOLBAR<NUM_QUESITI) {
    inizio= NUM_QUESITI-NUM_QUESITI_TOOLBAR;
    if (inizio<numeroQuesito){
      creaToolbar(inizio);
    } else {
      creaToolbar(numeroQuesito);
    }
  }
}

function visualizzaRisposte(i,numOpzione){
  if (risposte[i]==NESSUNA){
    window.document.getElementById('opzione'+ numOpzione +'Check').style.visibility='hidden'; 
    window.document.getElementById('opzione'+ (numOpzione-1) +'Check').style.visibility='hidden';     
  }
  if (risposte[i]==VERO) { opzioneClick(numOpzione-1);
  }
  if (risposte[i]==FALSO){ opzioneClick(numOpzione);
  }  
}

function indietroClick(){
  if (quesitoCorrente==0) {return};
  window.document.getElementById('linkToolbar'+ quesitoCorrente).style.backgroundColor="transparent";  
  quesitoCorrente=quesitoCorrente-1;
  caricaDomanda(quesitoCorrente,false);
}
function avantiClick(){
  if (quesitoCorrente==(NUM_QUESITI-1)) {riassuntoClick(); return;} 
  window.document.getElementById('linkToolbar'+ quesitoCorrente).style.backgroundColor="transparent";  
  quesitoCorrente=quesitoCorrente+1;
  caricaDomanda(quesitoCorrente,false);
}
function bottoneClick(numQuesito){
  window.document.getElementById('linkToolbar'+ quesitoCorrente).style.backgroundColor="transparent";  
  quesitoCorrente=numQuesito;
  caricaDomanda(quesitoCorrente,false);  
}
function riassuntoClick(){    
  riassuntoClickAutomatico();
}

function riassuntoClickAutomatico(){  
  nascondiAppletAudio();
  posizioneRiassunto=0;
  window.document.getElementById('conferma').style.visibility='visible';   
  window.document.getElementById('modifica').style.visibility='visible';     
  componiRiassunto(0);  
  window.document.getElementById('spRiassunto').style.visibility='visible';     
  window.document.getElementById('suRiassunto').style.visibility='visible';     
  window.document.getElementById('giuRiassunto').style.visibility='visible'; 
  //window.document.getElementById('guida').style.visibility='hidden'; 
}

function modificaClick(numQuesito){
  window.document.getElementById('linkToolbar'+ quesitoCorrente).style.backgroundColor="transparent";
  window.document.getElementById('conferma').style.visibility='hidden';  
  window.document.getElementById('modifica').style.visibility='hidden';   
  window.document.getElementById('spRiassunto').style.visibility='hidden';
  window.document.getElementById('suRiassunto').style.visibility='hidden';
  window.document.getElementById('giuRiassunto').style.visibility='hidden';  
  //window.document.getElementById('guida').style.visibility='visible';     
  quesitoCorrente=numQuesito; 
  caricaDomanda(quesitoCorrente,false);
}

function fineTest(){  
  testFinito=true;
  iMinuti=0;iSecondi=0;
  window.document.getElementById('tempoRimanente').innerHTML="00:00";  
  conferma("");
}

function correggiClick(){  
  visualizzaRisultati();
}  

function inizioTest(){
  caricaDomanda(0,false);
  controllaInizio();
}

invioEffettuato=false;
function confermaClick(){    
  fineTest();
  if (invioEffettuato==false){
    invioEffettuato=true;      
  }
}

function modificaRiassuntoClick (num) {
  if (testFinito){ 
    return;
  }
  obj = window.document.getElementById('colImgRiassunto'+num); 
  str= obj.innerHTML.substr(6);
  modificaClick(parseInt(str)-1);
}

function componiRiassunto(iniziaDa){
  for (var i=iniziaDa; i<NUM_QUESITI_RIASSUNTO+iniziaDa;i++){  
    quesito = i-iniziaDa;
    window.document.getElementById('colImgRiassunto'+quesito).innerHTML="&nbsp;" + (i+1);   
    window.document.getElementById('testoQuesitoRiassunto'+quesito).innerHTML=quesiti[i+1];     
    window.document.getElementById('iRiassunto'+quesito).src = imgQuesiti[i+1].src;    
    for (var j=1; j<=NUM_DOM_QUESITO;j++){  
      numDomanda="" + quesito + j; 
      iDomanda=(i*NUM_DOM_QUESITO)+j;
      window.document.getElementById('testoDomandaRiassunto'+numDomanda).innerHTML=domande[iDomanda]; 
      if (risposte[iDomanda]==NESSUNA){
        window.document.getElementById('colRispostaRiassunto'+numDomanda+VERO).style.background="white"; 
        window.document.getElementById('colRispostaRiassunto'+numDomanda+FALSO).style.background="white"; 
      } else {                
        if (risposte[iDomanda]==VERO){ 
          window.document.getElementById('colRispostaRiassunto'+numDomanda+risposte[iDomanda]).style.background=colorRispostaRiassunto;
          window.document.getElementById('colRispostaRiassunto'+numDomanda+FALSO).style.background="white";   
        } else if (risposte[iDomanda]==FALSO){ 
          window.document.getElementById('colRispostaRiassunto'+numDomanda+risposte[iDomanda]).style.background=colorRispostaRiassunto;
          window.document.getElementById('colRispostaRiassunto'+numDomanda+VERO).style.background="white";   
        } else if (risposte[iDomanda]==(VERO+ERRATA)){ 
          window.document.getElementById('colRispostaRiassunto'+numDomanda+VERO).style.background=colorRispostaErrataRiassunto;
          window.document.getElementById('colRispostaRiassunto'+numDomanda+FALSO).style.background="white";   
        } else if (risposte[iDomanda]==(FALSO+ERRATA)) {         
          window.document.getElementById('colRispostaRiassunto'+numDomanda+FALSO).style.background=colorRispostaErrataRiassunto;
          window.document.getElementById('colRispostaRiassunto'+numDomanda+VERO).style.background="white";   
        }        
      }
    }    
  } 
}
function spostaRiassunto(quanto){  
  if ((posizioneRiassunto==0) && (quanto<0) ) { return;}
  if ( ((posizioneRiassunto+NUM_QUESITI_RIASSUNTO)==NUM_QUESITI)&& (quanto>0) ) { return;}
  posizioneRiassunto=posizioneRiassunto+quanto;  
  componiRiassunto(posizioneRiassunto);
}

function creaTabellaRiassunto(){
  obj = window.document.getElementById('spRiassunto'); 
  riga= '<table class=\"tbRiassunto\" cellspacing=0; >\n';
  for (var i=0; i<NUM_QUESITI_RIASSUNTO;i++){      
    riga = riga + '<tr class=\"rigaQuesitoRiassunto\"> <td class=\"colImgRiassunto\"><a href=\"javascript:modificaRiassuntoClick('+i+');\"><font class=\"testoNumeroRiassunto\" id=\"colImgRiassunto'+i+'\">&nbsp;</font></a>';
    riga = riga + '&nbsp;<img class=\"iRiassunto\" id=\"iRiassunto'+i+'\"></td>';
    riga = riga + '<td class=\"colQuesitoRiassunto\"><font  id=\"testoQuesitoRiassunto'+i+'\" class=\"testoQuesitoRiassunto\">&nbsp;</font></td>';
    riga = riga + '<td class=\"colRispostaRiassuntoHead\">'+veroInizio+'</td><td class=\"colRispostaRiassuntoHead\">'+falsoInizio+'</td><td class=\"colBottoniRiassunto\"></td></tr>\n';
    for (var j=1; j<=NUM_DOM_QUESITO;j++){  
      numDomanda="" + i + j; 
      iDomanda=(i*NUM_DOM_QUESITO)+j;
      riga = riga + '<tr class=\"rigaDomandaRiassunto\" ><td class=\"colImgBlank\">&nbsp;</td>';
      riga = riga + '<td class=\"colDomandaRiassunto\"><font id=\"testoDomandaRiassunto'+numDomanda+'\" class=\"testoDomandaRiassunto\">&nbsp;</font></td>';
      riga = riga + '<td id=\"colRispostaRiassunto'+numDomanda+VERO+'\" class=\"colRispostaRiassunto\">&nbsp;</td><td id=\"colRispostaRiassunto'+numDomanda+FALSO+'\" class=\"colRispostaRiassunto\">&nbsp;</td><td class=\"colBottoniRiassunto\"></td></tr>\n';    
    }    
  }
  obj.innerHTML = riga + '</table>\n';  
}

function cambiaVisAppletAudio(come){
  for (var i=1; i<=NUM_QUESITI;i++){        
    objQue=window.document.getElementById('appletAudioQuesito'+i);
    if (objQue==null)
      return;
    objQue.style.visibility=come;     
  }
  for (var i=1; i<=NUM_DOMANDE;i++){ 
    objDom=window.document.getElementById('appletAudioDomanda'+i);
    if (objDom==null)
      return;
    objDom.style.visibility=come;         
  }
}
function nascondiAppletAudio(){
  cambiaVisAppletAudio("hidden");
}

function controllaInizio(){
		  doc=window.document;
      doc.getElementById('divInizio').style.visibility='hidden';  
      doc.getElementById('linkInizia').style.visibility="hidden";       
}

function visualizzaRisultati() {    
  iErrate=0;
  iCorrette=0;
  isCorretta =  new Array(NUM_DOMANDE);     
  for (var i=1; i<=NUM_DOMANDE;i++){ 
    isCorretta[i]=true;
  }
  
  
  doc=window.document;
  
  for (var i=1; i<=NUM_DOMANDE;i++){ 
    if (isCorretta[i]){ iCorrette++; }else{ iErrate++; }
    if( (risposte[i]!=NESSUNA)&&(!isCorretta[i]) ){       
      risposte[i] = risposte[i] + ERRATA;
    }
  }
  doc.getElementById('correggi').style.visibility='visible';
  doc.getElementById('visCorreggi').style.visibility='hidden';  
  doc.getElementById('risposteEsatte').innerHTML= "&nbsp;"+iCorrette;
  doc.getElementById('risposteErrate').innerHTML= "&nbsp;"+iErrate; 
  doc.getElementById('esito').innerHTML= "&nbsp;"+idoneoInLingua;
  top.frames['main'].componiRiassunto(0);
  
  strVai= '<table class="vaiAlQuestionario"><tr><td><a href=\"javascript:vaiAlQuestionarioClick()">';
  strVai= strVai + doc.getElementById('vaiAlQuestionario').innerHTML+ '<a/></td></tr></table>';
  doc.getElementById('scheda').innerHTML= strVai;
}
function vaiAlQuestionarioClick(){
  top.location.href="../struttura/frameset.jsp"; 
}

function caricaDomandaCorso(numeroQuesito, primaVolta){
  numDomanda = numeroQuesito*NUM_DOM_QUESITO;
  window.document.getElementById('iQuesito').src = imgQuesiti[(numeroQuesito)+1].src;  
  window.document.getElementById('numQuesito').innerHTML = parseInt(numeroQuesito)+1;
  creaToolbarCorso(0);  
}

function creaToolbarCorso(inizio){
  obj = window.document.getElementById('toolbar');
  appo='<table class=\"tbToolbar\" cellspacing=0><tr>';
  for (var i=inizio; i<NUM_QUESITI_TOOLBAR+inizio;i++){ 
    appo = appo + '<td id=\"bottoneToolbar'+(i)+'\"><id=\"linkToolbar'+(i)+'\">';
    appo = appo +'&nbsp;'+(i+1)+'&nbsp;'+'</td>';
  }
  appo = appo + '<td><img class=iOpzione src=\"./img/test/riassunto.jpg\"></td></tr></table>';  
  obj.innerHTML = appo; 
}
    

function caricaTestCorso(){
  datiCorsoUltimaPAgina(); 
  creaTabellaRiassuntoCorso();  
  riassuntoClickAutomaticoCorso();
}

function riassuntoClickAutomaticoCorso(){  
  posizioneRiassunto=0;
  window.document.getElementById('nota7Testo').style.visibility='visible';  
  window.document.getElementById('nota7Figura').style.visibility='visible';  
  window.document.getElementById('nota8Testo').style.visibility='visible';  
  window.document.getElementById('nota8Figura').style.visibility='visible';  
  window.document.getElementById('nota9Testo').style.visibility='visible';  
  window.document.getElementById('nota9Figura').style.visibility='visible';      
  window.document.getElementById('conferma').style.visibility='visible';   
  window.document.getElementById('modifica').style.visibility='visible';    
  componiRiassuntoCorso(0);  
  window.document.getElementById('spRiassunto').style.visibility='visible';     
  window.document.getElementById('suRiassunto').style.visibility='visible';     
  window.document.getElementById('giuRiassunto').style.visibility='visible'; 
}

function componiRiassuntoCorso(iniziaDa){
  for (var i=iniziaDa; i<NUM_QUESITI_RIASSUNTO+iniziaDa;i++){  
    quesito = i-iniziaDa;
    window.document.getElementById('colImgRiassunto'+quesito).innerHTML="&nbsp;" + (i+1);   
    window.document.getElementById('testoQuesitoRiassunto'+quesito).innerHTML=quesiti[i+1];     
    window.document.getElementById('iRiassunto'+quesito).src = imgQuesiti[i+1].src;    
    for (var j=1; j<=NUM_DOM_QUESITO;j++){  
      numDomanda="" + quesito + j; 
      iDomanda=(i*NUM_DOM_QUESITO)+j;
      window.document.getElementById('testoDomandaRiassunto'+numDomanda).innerHTML=domande[iDomanda]; 
    }    
  } 
}
function creaTabellaRiassuntoCorso(){
  obj = window.document.getElementById('spRiassunto'); 
  riga= '<table class=\"tbRiassunto\" cellspacing=0; >\n';
  
  for (var i=0; i<NUM_QUESITI_RIASSUNTO;i++){      
    riga = riga + '<tr class=\"rigaQuesitoRiassunto\"> <td class=\"colImgRiassunto\"><font class=\"testoNumeroRiassunto\" id=\"colImgRiassunto'+i+'\">&nbsp;</font>';
    riga = riga + '&nbsp;<img class=\"iRiassunto\" id=\"iRiassunto'+i+'\"></td>';
    riga = riga + '<td class=\"colQuesitoRiassunto\"><font  id=\"testoQuesitoRiassunto'+i+'\" class=\"testoQuesitoRiassunto\">&nbsp;</font></td>';
    riga = riga + '<td class=\"colRispostaRiassuntoHead\">'+veroInizio+'</td><td class=\"colRispostaRiassuntoHead\">'+falsoInizio+'</td><td class=\"colBottoniRiassunto\"></td></tr>\n';
    for (var j=1; j<=NUM_DOM_QUESITO;j++){  
      numDomanda="" + i + j;
      iDomanda=(i*NUM_DOM_QUESITO)+j;
      riga = riga + '<tr class=\"rigaDomandaRiassunto\" ><td class=\"colImgBlank\">&nbsp;</td>';
      riga = riga + '<td class=\"colDomandaRiassunto\"><font id=\"testoDomandaRiassunto'+numDomanda+'\" class=\"testoDomandaRiassunto\">&nbsp;</font></td>';
      riga = riga + '<td id=\"colRispostaRiassunto'+numDomanda+VERO+'\" class=\"colRispostaRiassunto\">&nbsp;</td><td id=\"colRispostaRiassunto'+numDomanda+FALSO+'\" class=\"colRispostaRiassunto\">&nbsp;</td><td class=\"colBottoniRiassunto\"></td></tr>\n';    
    }    
  }
  obj.innerHTML = riga + '</table>\n';  
}

    idoneoInLingua="IDONEO";
    veroInizio="V";  
    falsoInizio="F";
	

function caricaTest() { 
	$.getJSON("/ecom.dll/scheda", function(json) { 

		idTest=json.numeroScheda; 
		nomeCandidato=json.nomeCandidato;
		
		$('#numeroScheda').html(idTest);
		$('#nomeCandidato').html(nomeCandidato);
		
		for (i=0; i<NUM_DOMANDE; ++i)
		{		  
			domande[i+1]=json.domande[i];
		}
			
		for (i=0; i<NUM_QUESITI; ++i)
			quesiti[i+1]=json.quesiti[i];

		for (var i=1; i<=NUM_QUESITI;i++) {
			imgQuesiti[i] = new Image(); 
			imgQuesiti[i].src = json.imgQuesiti[i-1]; 
			}
					
		for (var i=1; i<=NUM_DOM_QUESITO;i++){ 
			numOpzione=10*i+1;
			objImg = window.document.getElementById('iOpzione' + numOpzione); 
			objImg.src= "./img/test/V_it.gif";
			numOpzione=10*i+2;
			objImg = window.document.getElementById('iOpzione' + numOpzione); 
			objImg.src= "./img/test/F_it.gif";
			}     
		
		creaToolbar(0);
		caricaDomanda(0,true); 
		creaTabellaRiassunto();
    countDown();  
		});
	} 
    
    var urlDaNavigare;     
    
    function naviga(dove){ 
      
      frmFine = parent.frames['main'].frames['ifrFineCorso'].document.forms['frmFineCorso'];    
      urlDaNavigare = dove;
      
      doc = top.frames['main'].document; 
      doc.location.href=dove;
    }

    function conferma(dove){ 
      /*if (confirm("Sei sicuro di voler confermare tutte le risposte date ? Con OK non avrai piu' la possibilita' di modificarle.")) {
      document.location.href="fineCorso.html";
      }*/
    }    
    
