Il numero di "Risposte corrette al primo tentativo" viene visualizzato in JBC al termine del test. Non è previsto però l'invio di questo numero nella mail automaticamente inviata dal codice prodotto da JBC. Ci sono diversi metodi per inserire questa opportunità, che ci pare utile ai fini valutativi. Descriveremo qui il sistema che ci pare il più semplice.
In quello che segue facciamo riferimento all'applicazione formmail, gratuitamente messa a disposizione da Digiland, semplicemente perché è quella che usiamo e che conosciamo meglio. Ci riferiamo inoltre al sorgente di JBC versione 5.4, già modificato per adattarlo all'applicazione formmail di Digiland, con il nome JBC5.ht_ . Per gli altri programmi la procedura è simile. Queste modifiche possono essere facilmente estese alle successive versioni di JBC.
Il valore delle risposte corrette al primo tentativo viene inserito in una variabile, dal nome
CFT, che viene creata localmente da una funzione Javascript. Come per tutte le
variabili locali, il suo valore non è più recuperabile una volta che la funzione
è stata "scaricata". Tra le varie possibilità per usare questo valore anche
fuori dalla funzione che l'ha generato abbiamo scelto quella di definire una variabile globale,
dal nome CFT1, in cui copiare il valore di CFT, in modo da interferire il
meno possibile con il codice sorgente originario.
Le operazioni da eseguire sono le seguenti.
Score, (potete usare la funzione cerca del text editor, digitando
var Score = 0; (compresi gli spazi e il punto e virgola). In ogni caso dovrebbe
trovarsi alla riga n° 120. Subito sotto inserite la nuova variabile, con la definizione
var CFT1 = 0; (anche qui compresi gli spazi e il punto e virgola).CFT (basta digitare CFT nello
spazio della funzione cerca del text editor). La terza occorrenza della variabile dovrebbe essere
nella riga:Output += '<br />' + CorrectFirstTime + CFT + '/' +
I.length;CFT1 = CFT;CFT (come prima). La terza
occorrenza, dopo la precedente, dovrebbe essere in una riga identica a quella già
citata:Output += '<br />' + CorrectFirstTime + CFT + '/' +
I.length;CFT1 = CFT; (esattamente
come prima).Score, inserite la riga seguente:ResultForm += '<input type="hidden" name="FirstTry"
value=""></input>';<input> non deve avere
un tag di chiusura, ma le nuove regole di XHTML lo prevedono, come per tutti i tag, anche se
vuoti, quindi è meglio inserirlo).Score, inserite la riga seguente:NewWin.document.Results.FirstTry.value = CFT1+'/'+I.length;Tutto qui. Buon lavoro!