'; OutString += '
'; OutString += NavBar; if (Feedback.length>0){ OutString += '' } OutString += '
'; OutString += ''; OutString += Feedback; OutString += '
'; if (is.CRAPBrowser){OutString=ResolveAllURLs(OutString);} //Write it to the frame TopFrame.document.clear(); TopFrame.document.open(); TopFrame.document.write(OutString); TopFrame.document.close(); } function DisplayExercise(){ //Build the output string var OutString = ''; OutString += ''; OutString += ' '; OutString += '
'; OutString += TitleCode; OutString += ''; OutString += NavBar; OutString += '
'; if (WordBox.length > 0){ OutString += WordBox; } OutString += ''; OutString += BuiltCloze; OutString += '
'; if (is.CRAPBrowser){OutString=ResolveAllURLs(OutString);} //Write it to the frame BottomFrame.document.clear(); BottomFrame.document.open(); BottomFrame.document.write(OutString); BottomFrame.document.close(); } function ShowClue(ItemNum){ //alert(ItemNum); State[ItemNum][0] = 1; WriteFeedback(I[ItemNum][2]); } function SaveCurrentAnswers(){ for (var i=0; i-1){ FirstBit = InString.substring(0, i); LastBit = InString.substring(i + Token.length, InString.length); InString = FirstBit + Replacement + LastBit; i = InString.indexOf(Token); } return InString; } I = new Array(); I[0] = new Array(); I[0][1] = new Array(); I[0][1][0] = new Array(); I[0][1][0][0]='accueilli'; I[0][2]=''; I[1] = new Array(); I[1][1] = new Array(); I[1][1][0] = new Array(); I[1][1][0][0]='qui'; I[1][2]=''; I[2] = new Array(); I[2][1] = new Array(); I[2][1][0] = new Array(); I[2][1][0][0]='\u00E9tonnement'; I[2][2]=''; I[3] = new Array(); I[3][1] = new Array(); I[3][1][0] = new Array(); I[3][1][0][0]='Gascon'; I[3][2]=''; I[4] = new Array(); I[4][1] = new Array(); I[4][1][0] = new Array(); I[4][1][0][0]='chercher'; I[4][2]=''; I[5] = new Array(); I[5][1] = new Array(); I[5][1][0] = new Array(); I[5][1][0][0]='coffret'; I[5][2]=''; I[6] = new Array(); I[6][1] = new Array(); I[6][1][0] = new Array(); I[6][1][0][0]='reine'; I[6][2]=''; I[7] = new Array(); I[7][1] = new Array(); I[7][1][0] = new Array(); I[7][1][0][0]='mon'; I[7][2]=''; I[8] = new Array(); I[8][1] = new Array(); I[8][1][0] = new Array(); I[8][1][0][0]='voici'; I[8][2]=''; I[9] = new Array(); I[9][1] = new Array(); I[9][1][0] = new Array(); I[9][1][0][0]='diamants'; I[9][2]=''; I[10] = new Array(); I[10][1] = new Array(); I[10][1][0] = new Array(); I[10][1][0][0]='ruban'; I[10][2]=''; I[11] = new Array(); I[11][1] = new Array(); I[11][1][0] = new Array(); I[11][1][0][0]='merveilleux'; I[11][2]=''; I[12] = new Array(); I[12][1] = new Array(); I[12][1][0] = new Array(); I[12][1][0][0]='regarde'; I[12][2]=''; I[13] = new Array(); I[13][1] = new Array(); I[13][1][0] = new Array(); I[13][1][0][0]='s\'\u00E9crie'; I[13][2]=''; I[14] = new Array(); I[14][1] = new Array(); I[14][1][0] = new Array(); I[14][1][0][0]='deux'; I[14][2]=''; I[15] = new Array(); I[15][1] = new Array(); I[15][1][0] = new Array(); I[15][1][0][0]='avez-vous'; I[15][2]=''; I[16] = new Array(); I[16][1] = new Array(); I[16][1][0] = new Array(); I[16][1][0][0]='on'; I[16][2]=''; I[17] = new Array(); I[17][1] = new Array(); I[17][1][0] = new Array(); I[17][1][0][0]='les'; I[17][2]=''; I[18] = new Array(); I[18][1] = new Array(); I[18][1][0] = new Array(); I[18][1][0][0]='vol\u00E9s'; I[18][2]=''; I[19] = new Array(); I[19][1] = new Array(); I[19][1][0] = new Array(); I[19][1][0][0]='Milady'; I[19][2]=''; I[20] = new Array(); I[20][1] = new Array(); I[20][1][0] = new Array(); I[20][1][0][0]='agent'; I[20][2]=''; I[21] = new Array(); I[21][1] = new Array(); I[21][1][0] = new Array(); I[21][1][0][0]='du'; I[21][2]=''; I[22] = new Array(); I[22][1] = new Array(); I[22][1][0] = new Array(); I[22][1][0][0]='bal'; I[22][2]=''; I[23] = new Array(); I[23][1] = new Array(); I[23][1][0] = new Array(); I[23][1][0][0]='dans'; I[23][2]=''; I[24] = new Array(); I[24][1] = new Array(); I[24][1][0] = new Array(); I[24][1][0][0]='demande'; I[24][2]=''; I[25] = new Array(); I[25][1] = new Array(); I[25][1][0] = new Array(); I[25][1][0][0]='valet'; I[25][2]=''; I[26] = new Array(); I[26][1] = new Array(); I[26][1][0] = new Array(); I[26][1][0][0]='allez'; I[26][2]=''; I[27] = new Array(); I[27][1] = new Array(); I[27][1][0] = new Array(); I[27][1][0][0]='tout de suite'; I[27][2]=''; I[28] = new Array(); I[28][1] = new Array(); I[28][1][0] = new Array(); I[28][1][0][0]='orf\u00E8vre'; I[28][2]=''; I[29] = new Array(); I[29][1] = new Array(); I[29][1][0] = new Array(); I[29][1][0][0]='lui'; I[29][2]=''; I[30] = new Array(); I[30][1] = new Array(); I[30][1][0] = new Array(); I[30][1][0][0]='comme'; I[30][2]=''; I[31] = new Array(); I[31][1] = new Array(); I[31][1][0] = new Array(); I[31][1][0][0]='pour'; I[31][2]=''; I[32] = new Array(); I[32][1] = new Array(); I[32][1][0] = new Array(); I[32][1][0][0]='Milord'; I[32][2]=''; I[33] = new Array(); I[33][1] = new Array(); I[33][1][0] = new Array(); I[33][1][0][0]='bijoux'; I[33][2]=''; I[34] = new Array(); I[34][1] = new Array(); I[34][1][0] = new Array(); I[34][1][0][0]='Merci'; I[34][2]=''; I[35] = new Array(); I[35][1] = new Array(); I[35][1][0] = new Array(); I[35][1][0][0]='satisfait'; I[35][2]=''; I[36] = new Array(); I[36][1] = new Array(); I[36][1][0] = new Array(); I[36][1][0][0]='diamants'; I[36][2]=''; I[37] = new Array(); I[37][1] = new Array(); I[37][1][0] = new Array(); I[37][1][0][0]='Constance'; I[37][2]=''; Text = new Array(); Text[0]='D\'Artagnan est fort bien '; Text[1]=' par le duc de Buckingham '; Text[2]=', revenu de son '; Text[3]=' pour ce que lui raconte le '; Text[4]=', se pr\u00E9cipite '; Text[5]=' le '; Text[6]=' de la '; Text[7]='.
"Le voici, '; Text[8]=' ami," dit-il "et '; Text[9]=' les '; Text[10]='."
Il sort un gros noeud de '; Text[11]=' sur lequel se trouvent de '; Text[12]=' diamants et le '; Text[13]=' avec \u00E9motion. Tout \u00E0 coup il p\u00E2lit affreusement et '; Text[14]=': "Il manque '; Text[15]=' diamants!"
"Les '; Text[16]=' perdus ou '; Text[17]=' vous '; Text[18]=' a vol\u00E9s?"
"On me les a sans doute '; Text[19]=' et je sais qui a pu le faire. Elle s\'appelle '; Text[20]=' de Winter, c\'est un '; Text[21]=' '; Text[22]=' cardinal. Et le '; Text[23]=' est '; Text[24]=' cinq jours!"
"Qu\'allons-nous faire \u00E0 pr\u00E9sent?" '; Text[25]=' d\'Artagnan.
Le duc appelle son '; Text[26]=' d\'un ton imp\u00E9rieux: "Patrice, '; Text[27]=' chercher mon joaillier '; Text[28]='!"
Lorsque l\''; Text[29]=' arrive, le duc '; Text[30]=' dit: "Il me faut deux ferrets '; Text[31]=' ceux-ci '; Text[32]=' apr\u00E8s-demain!"
"Vous les aurez, '; Text[33]='," s\'incline le joaillier.
Le jour \u00E9tabli, les diamants sont pr\u00EAts et le duc les remet \u00E0 d\'Artagnan.
"Voici les '; Text[34]=', mon ami. '; Text[35]=' de votre d\u00E9vouement et bonne chance," dit le duc en lui serrant la main.
Quelques jours apr\u00E8s, mort de fatigue mais '; Text[36]=', d\'Artagnan confie les '; Text[37]=' \u00E0 '; Text[38]=' Bonacieux. '; State = new Array(); function StartUp(){ var i = 0; MixWords = new Array(); for (i=0; i -1){ var TotalChars = GetGapValue(i).length; State[i][3] = (TotalChars-State[i][1])/TotalChars; if (State[i][0] > 0){State[i][3] = State[i][3]/2;} if (State[i][3]<0){State[i][3] = 0;} State[i][4] = 1; } else{ //Otherwise, add zero to the array and increment the hints for this item, as a penalty State[i][1]++; State[i][3] = 0; //then set the flag AllCorrect = 0; } } } //Calculate the total score var TotalScore = 0; for (i=0; i'; } Output += YourScoreIs + ' ' + TotalScore + '%.
'; if (AllCorrect == 0){ Output += '
' + Incorrect; } BuildExercise(); WriteFeedback(Output); DisplayExercise(); RestoreCurrentAnswers(); } function TrackFocus(BoxNumber){ CurrentWord = BoxNumber; } function CheckBeginning(Guess, Answer){ var OutString = ''; var i = 0; var UpperGuess = ''; var UpperAnswer = ''; if (CaseSensitive == false) { UpperGuess = Guess.toUpperCase(); UpperAnswer = Answer.toUpperCase(); } else { UpperGuess = Guess; UpperAnswer = Answer; } while (UpperGuess.charAt(i) == UpperAnswer.charAt(i)) { OutString += Guess.charAt(i); i++; } OutString += Answer.charAt(i); return OutString; } function FindLongest(InArray){ if (InArray.length < 1){return -1;} var Longest = 0; for (var i=1; i InArray[Longest].length){ Longest = i; } } return Longest; } function GetGapValue(GNum){ var RetVal = ''; if ((GNum<0)||(GNum>=I.length)){return RetVal;} if (eval('BottomFrame.document.Cloze.Gap' + GNum) != null){ RetVal = eval('BottomFrame.document.Cloze.Gap' + GNum).value; RetVal = TrimString(RetVal); } else{ RetVal = State[GNum][5]; } return RetVal; } function SetGapValue(GNum, Val){ if ((GNum<0)||(GNum>=I.length)){return;} if (eval('BottomFrame.document.Cloze.Gap' + GNum) != null){ eval('BottomFrame.document.Cloze.Gap' + GNum).value = Val; } } function FindCurrent() { var x = 0; FoundCurrent = -1; //Test the current word: //If it's state is not set to already correct, check the word. if (State[CurrentWord][4] != 1){ if (CheckAnswer(CurrentWord, false) < 0){ return CurrentWord; } } x=CurrentWord + 1; while (x -1){return ''} RightBits = new Array(); for (var i=0; i 0){ SetGapValue(CurrGap, HintString); State[CurrGap][1] = State[CurrGap][1] + 1; } WriteFeedback(GiveHint); } function Blank(){ return ' ©Half-Baked Software. Loading... '; } //--> //]]> -->