Les rectifictions de l''orthographe
Les rectifictions de lorthographe - Exercice
ortho_ex.htm
— 59 KB
Dateiinhalt
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xml:lang="en"><head><meta name="author" content="Created with Hot Potatoes by Half-Baked Software, registered to Richard-Nisius."></meta><meta name="keywords" content="Hot Potatoes, Hot Potatoes, Half-Baked Software, Windows, University of Victoria"></meta>
<!-- Modification Copyright (c) Michael Rottmeier, January 2004 -->
<!-- Find-it - Version 3.1b for Hot Potatoes v6 -->
<!-- http://www.teaching-tools.de.vu -->
<!-- THIS HEADER MUST STAY UN-TOUCHED -->
<link rel="schema.DC" href="http://purl.org/dc/elements/1.1/" />
<meta name="DC:Creator" content="Richard-Nisius" />
<meta name="DC:Title" content="Le permis" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>
Le permis
</title>
<!-- Made with executable version 6.0 Release 4 Build 13 -->
<!-- The following insertion allows you to add your own code directly to this head tag from the configuration screen -->
<style type="text/css">
/* This is the CSS stylesheet used in the exercise. */
/* Elements in square brackets are replaced by data based on configuration settings when the exercise is built. */
/* BeginCorePageCSS */
/* Made with executable version 6.0 Release 4 Build 13 */
body{
font-family: Geneva,Arial;
background-color: #ffc184;
color: #000000;
margin-right: 5%;
margin-left: 5%;
font-size: small;
}
p{
text-align: left;
margin: 0px;
font-size: 100%;
}
table,div,span,td{
font-size: 100%;
color: #000000;
}
div.Titles{
padding: 0.5em;;
text-align: center;
color: #0000ff;
}
button{
font-family: Geneva,Arial;
font-size: 100%;
display: inline;
}
.ExerciseTitle{
font-size: 140%;
color: #0000ff;
}
.ExerciseSubtitle{
font-size: 120%;
color: #0000ff;
}
div.StdDiv{
background-color: #ffcf9f;
text-align: center;
font-size: 100%;
color: #000000;
padding: 0.5em;
border-style: solid;
border-width: 1px 1px 1px 1px;
border-color: #000000;
margin-bottom: 1px;
}
/* EndCorePageCSS */
.RTLText{
text-align: right;
font-size: 150%;
direction: rtl;
font-family: "Simplified Arabic", "Traditional Arabic", "Times New Roman", Geneva,Arial;
}
.CentredRTLText{
text-align: center;
font-size: 150%;
direction: rtl;
font-family: "Simplified Arabic", "Traditional Arabic", "Times New Roman", Geneva,Arial;
}
button p.RTLText{
text-align: center;
}
.RTLGapBox{
text-align: right;
font-size: 150%;
direction: rtl;
font-family: "Times New Roman", Geneva,Arial;
}
.Guess{
font-weight: bold;
}
.CorrectAnswer{
font-weight: bold;
}
div#Timer{
padding: 0.25em;
margin-left: auto;
margin-right: auto;
text-align: center;
color: #0000ff;
}
span#TimerText{
padding: 0.25em;
border-width: 1px;
border-style: solid;
font-weight: bold;
display: none;
color: #0000ff;
}
span.Instructions{
}
div.ExerciseText{
}
.FeedbackText, .FeedbackText span.CorrectAnswer, .FeedbackText span.Guess, .FeedbackText span.Answer{
color: #0000ff;
}
.LeftItem{
font-size: 100%;
color: #000000;
text-align: left;
}
.RightItem{
font-weight: bold;
font-size: 100%;
color: #000000;
}
span.CorrectMark{
}
input, textarea{
font-family: Geneva,Arial;
font-size: 120%;
}
select{
font-size: 100%;
}
div.Feedback {
background-color: #ffc184;
left: 33%;
width: 34%;
top: 33%;
z-index: 1;
border-style: solid;
border-width: 1px;
padding: 5px;
text-align: center;
color: #0000ff;
position: absolute;
display: none;
font-size: 100%;
}
div.ExerciseDiv{
color: #000000;
}
/* JMatch flashcard styles */
table.FlashcardTable{
background-color: transparent;
color: #000000;
border-color: #000000;
margin-left: 5%;
margin-right: 5%;
margin-top: 2em;
margin-bottom: 2em;
width: 90%;
position: relative;
text-align: center;
padding: 0px;
}
table.FlashcardTable tr{
border-style: none;
margin: 0px;
padding: 0px;
background-color: #ffcf9f;
}
table.FlashcardTable td.Showing{
font-size: 140%;
text-align: center;
width: 50%;
display: table-cell;
padding: 2em;
margin: 0px;
border-style: solid;
border-width: 1px;
color: #000000;
background-color: #ffcf9f;
}
table.FlashcardTable td.Hidden{
display: none;
}
/* JMix styles */
div#SegmentDiv{
margin-top: 2em;
margin-bottom: 2em;
text-align: center;
}
a.ExSegment{
font-size: 120%;
font-weight: bold;
text-decoration: none;
color: #000000;
}
span.RemainingWordList{
font-style: italic;
}
div.DropLine {
position: absolute;
text-align: center;
border-bottom-style: solid;
border-bottom-width: 1px;
border-bottom-color: #0000ff;
width: 80%;
}
/* JCloze styles */
.ClozeWordList{
text-align: center;
font-weight: bold;
}
div.ClozeBody{
text-align: left;
margin-top: 2em;
margin-bottom: 2em;
line-height: 2.0
}
span.GapSpan{
font-weight: bold;
}
/* JCross styles */
table.CrosswordGrid{
margin: auto auto 1em auto;
border-collapse: collapse;
padding: 0px;
background-color: #000000;
}
table.CrosswordGrid tbody tr td{
width: 1.5em;
height: 1.5em;
text-align: center;
vertical-align: middle;
font-size: 140%;
padding: 1px;
margin: 0px;
border-style: solid;
border-width: 1px;
border-color: #000000;
color: #000000;
}
table.CrosswordGrid span{
color: #000000;
}
table.CrosswordGrid td.BlankCell{
background-color: #000000;
color: #000000;
}
table.CrosswordGrid td.LetterOnlyCell{
text-align: center;
vertical-align: middle;
background-color: #ffffff;
color: #000000;
font-weight: bold;
}
table.CrosswordGrid td.NumLetterCell{
text-align: left;
vertical-align: top;
background-color: #ffffff;
color: #000000;
padding: 1px;
font-weight: bold;
}
.NumLetterCellText{
cursor: pointer;
color: #000000;
}
.GridNum{
vertical-align: super;
font-size: 66%;
font-weight: bold;
text-decoration: none;
color: #000000;
}
.GridNum:hover, .GridNum:visited{
color: #000000;
}
table#Clues{
margin: auto;
vertical-align: top;
}
table#Clues td{
vertical-align: top;
}
table.ClueList{
margin: auto;
}
td.ClueNum{
text-align: right;
font-weight: bold;
vertical-align: top;
}
td.Clue{
text-align: left;
}
div#ClueEntry{
text-align: left;
margin-bottom: 1em;
}
/* Keypad styles */
div.Keypad{
text-align: center;
display: none; /* initially hidden, shown if needed */
}
div.Keypad button{
font-family: Geneva,Arial;
font-size: 120%;
background-color: #ffffff;
color: #000000;
width: 2em;
}
/* JQuiz styles */
div.QuestionNavigation{
text-align: center;
}
.QNum{
margin: 0em 1em 0.5em 1em;
font-weight: bold;
vertical-align: middle;
}
textarea{
font-family: Geneva,Arial;
}
.QuestionText{
}
.Answer{
font-size: 120%;
letter-spacing: 0.1em;
}
.PartialAnswer{
font-size: 120%;
letter-spacing: 0.1em;
color: #0000ff;
}
.Highlight{
color: #000000;
background-color: #ffff00;
font-weight: bold;
font-size: 120%;
}
ol.QuizQuestions{
text-align: left;
list-style-type: none;
}
li.QuizQuestion{
padding: 1em;
border-style: solid;
border-width: 0px 0px 1px 0px;
}
ol.MCAnswers{
text-align: left;
list-style-type: upper-alpha;
padding: 1em;
}
ol.MCAnswers li{
margin-bottom: 1em;
}
ol.MSelAnswers{
text-align: left;
list-style-type: lower-alpha;
padding: 1em;
}
div.ShortAnswer{
padding: 1em;
}
.FuncButton {
text-align: center;
border-style: solid;
border-left-color: #ffe7cf;
border-top-color: #ffe7cf;
border-right-color: #7f674f;
border-bottom-color: #7f674f;
color: #000000;
background-color: #ffcf9f;
border-width: 2px;
padding: 3px 6px 3px 6px;
cursor: pointer;
}
.FuncButtonUp {
color: #ffcf9f;
text-align: center;
border-style: solid;
border-left-color: #ffe7cf;
border-top-color: #ffe7cf;
border-right-color: #7f674f;
border-bottom-color: #7f674f;
background-color: #000000;
color: #ffcf9f;
border-width: 2px;
padding: 3px 6px 3px 6px;
cursor: pointer;
}
.FuncButtonDown {
color: #ffcf9f;
text-align: center;
border-style: solid;
border-left-color: #7f674f;
border-top-color: #7f674f;
border-right-color: #ffe7cf;
border-bottom-color: #ffe7cf;
background-color: #000000;
color: #ffcf9f;
border-width: 2px;
padding: 3px 6px 3px 6px;
cursor: pointer;
}
/*BeginNavBarStyle*/
div.NavButtonBar{
background-color: #ff8000;
text-align: center;
margin: 2px 0px 2px 0px;
clear: both;
font-size: 100%;
}
.NavButton {
border-style: solid;
border-left-color: #ffbf7f;
border-top-color: #ffbf7f;
border-right-color: #7f4000;
border-bottom-color: #7f4000;
background-color: #ff8000;
color: #000000;
border-width: 2px;
cursor: pointer;
}
.NavButtonUp {
border-style: solid;
border-left-color: #ffbf7f;
border-top-color: #ffbf7f;
border-right-color: #7f4000;
border-bottom-color: #7f4000;
color: #ff8000;
background-color: #000000;
border-width: 2px;
cursor: pointer;
}
.NavButtonDown {
border-style: solid;
border-left-color: #7f4000;
border-top-color: #7f4000;
border-right-color: #ffbf7f;
border-bottom-color: #ffbf7f;
color: #ff8000;
background-color: #000000;
border-width: 2px;
cursor: pointer;
}
/*EndNavBarStyle*/
a{
color: #0000ff;
}
a:visited{
color: #0000cc;
}
a:hover{
color: #0000ff;
}
div.CardStyle {
position: absolute;
font-family: Geneva,Arial;
font-size: 100%;
padding: 5px;
border-style: solid;
border-width: 1px;
color: #000000;
background-color: #ffcf9f;
left: -50px;
top: -50px;
overflow: visible;
}
.rtl{
text-align: right;
font-size: 140%;
}
span.GapSpan {
font-weight: normal;
cursor: pointer;
}
</style>
<script type="text/javascript">
//<![CDATA[
<!--
function Client(){
//if not a DOM browser, hopeless
this.min = false; if (document.getElementById){this.min = true;};
this.ua = navigator.userAgent;
this.name = navigator.appName;
this.ver = navigator.appVersion;
//Get data about the browser
this.mac = (this.ver.indexOf('Mac') != -1);
this.win = (this.ver.indexOf('Windows') != -1);
//Look for Gecko
this.gecko = (this.ua.indexOf('Gecko') > 1);
if (this.gecko){
this.geckoVer = parseInt(this.ua.substring(this.ua.indexOf('Gecko')+6, this.ua.length));
if (this.geckoVer < 20020000){this.min = false;}
}
//Look for Firebird
this.firebird = (this.ua.indexOf('Firebird') > 1);
//Look for Safari
this.safari = (this.ua.indexOf('Safari') > 1);
if (this.safari){
this.gecko = false;
}
//Look for IE
this.ie = (this.ua.indexOf('MSIE') > 0);
if (this.ie){
this.ieVer = parseFloat(this.ua.substring(this.ua.indexOf('MSIE')+5, this.ua.length));
if (this.ieVer < 5.5){this.min = false;}
}
//Look for Opera
this.opera = (this.ua.indexOf('Opera') > 0);
if (this.opera){
this.operaVer = parseFloat(this.ua.substring(this.ua.indexOf('Opera')+6, this.ua.length));
if (this.operaVer < 7.04){this.min = false;}
}
if (this.min == false){
alert('Your browser may not be able to handle this page.');
}
//Special case for the horrible ie5mac
this.ie5mac = (this.ie&&this.mac&&(this.ieVer<6));
}
var C = new Client();
//for (prop in C){
// alert(prop + ': ' + C[prop]);
//}
//CODE FOR HANDLING NAV BUTTONS AND FUNCTION BUTTONS
//[strNavBarJS]
function NavBtnOver(Btn){
if (Btn.className != 'NavButtonDown'){Btn.className = 'NavButtonUp';}
}
function NavBtnOut(Btn){
Btn.className = 'NavButton';
}
function NavBtnDown(Btn){
Btn.className = 'NavButtonDown';
}
//[/strNavBarJS]
function FuncBtnOver(Btn){
if (Btn.className != 'FuncButtonDown'){Btn.className = 'FuncButtonUp';}
}
function FuncBtnOut(Btn){
Btn.className = 'FuncButton';
}
function FuncBtnDown(Btn){
Btn.className = 'FuncButtonDown';
}
function FocusAButton(){
if (document.getElementById('CheckButton1') != null){
document.getElementById('CheckButton1').focus();
}
else{
if (document.getElementById('CheckButton2') != null){
document.getElementById('CheckButton2').focus();
}
else{
document.getElementsByTagName('button')[0].focus();
}
}
}
//CODE FOR HANDLING DISPLAY OF POPUP FEEDBACK BOX
var topZ = 1000;
function ShowMessage(Feedback){
var Output = Feedback + '<br /><br />';
document.getElementById('FeedbackContent').innerHTML = Output;
var FDiv = document.getElementById('FeedbackDiv');
topZ++;
FDiv.style.zIndex = topZ;
FDiv.style.top = TopSettingWithScrollOffset(30) + 'px';
FDiv.style.display = 'block';
ShowElements(false, 'input');
ShowElements(false, 'select');
ShowElements(false, 'object');
//Focus the OK button
setTimeout("document.getElementById('FeedbackOKButton').focus()", 50);
//
}
function ShowElements(Show, TagName){
//Special for IE bug -- hide all the form elements that will show through the popup
if (C.ie){
var Els = document.getElementsByTagName(TagName);
for (var i=0; i<Els.length; i++){
if (Show == true){
Els[i].style.display = 'inline';
}
else{
Els[i].style.display = 'none';
}
}
}
}
function HideFeedback(){
document.getElementById('FeedbackDiv').style.display = 'none';
ShowElements(true, 'input');
ShowElements(true, 'select');
ShowElements(true, 'object');
if (Finished == true){
Finish();
}
}
//GENERAL UTILITY FUNCTIONS AND VARIABLES
//PAGE DIMENSION FUNCTIONS
function PageDim(){
//Get the page width and height
this.W = 600;
this.H = 400;
this.W = document.getElementsByTagName('body')[0].clientWidth;
this.H = document.getElementsByTagName('body')[0].clientHeight;
}
var pg = null;
function GetPageXY(El) {
var XY = {x: 0, y: 0};
while(El){
XY.x += El.offsetLeft;
XY.y += El.offsetTop;
El = El.offsetParent;
}
return XY;
}
function GetScrollTop(){
if (document.documentElement && document.documentElement.scrollTop){
return document.documentElement.scrollTop;
}
else{
if (document.body){
return document.body.scrollTop;
}
else{
return window.pageYOffset;
}
}
}
function GetViewportHeight(){
if (window.innerHeight){
return window.innerHeight;
}
else{
return document.getElementsByTagName('body')[0].clientHeight;
}
}
function TopSettingWithScrollOffset(TopPercent){
var T = Math.floor(GetViewportHeight() * (TopPercent/100));
return GetScrollTop() + T;
}
//CODE FOR AVOIDING LOSS OF DATA WHEN BACKSPACE KEY INVOKES history.back()
var InTextBox = false;
function SuppressBackspace(e){
if (InTextBox == true){return;}
if (C.ie) {
thisKey = window.event.keyCode;
}
else {
thisKey = e.keyCode;
}
var Suppress = false;
if (thisKey == 8) {
Suppress = true;
}
if (Suppress == true){
if (C.ie){
window.event.returnValue = false;
window.event.cancelBubble = true;
}
else{
e.preventDefault();
}
}
}
if (C.ie){
document.attachEvent('onkeydown',SuppressBackspace);
window.attachEvent('onkeydown',SuppressBackspace);
}
else{
if (window.addEventListener){
window.addEventListener('keypress',SuppressBackspace,false);
}
}
function ReduceItems(InArray, ReduceToSize){
var ItemToDump=0;
var j=0;
while (InArray.length > ReduceToSize){
ItemToDump = Math.floor(InArray.length*Math.random());
InArray.splice(ItemToDump, 1);
}
}
function Shuffle(InArray){
var Num;
var Temp = new Array();
var Len = InArray.length;
var j = Len;
for (var i=0; i<Len; i++){
Temp[i] = InArray[i];
}
for (i=0; i<Len; i++){
Num = Math.floor(j * Math.random());
InArray[i] = Temp[Num];
for (var k=Num; k < (j-1); k++) {
Temp[k] = Temp[k+1];
}
j--;
}
return InArray;
}
function WriteToInstructions(Feedback) {
document.getElementById('InstructionsDiv').innerHTML = Feedback;
}
function EscapeDoubleQuotes(InString){
return InString.replace(/"/g, '"')
}
function TrimString(InString){
var x = 0;
if (InString.length != 0) {
while ((InString.charAt(InString.length - 1) == '\u0020') || (InString.charAt(InString.length - 1) == '\u000A') || (InString.charAt(InString.length - 1) == '\u000D')){
InString = InString.substring(0, InString.length - 1)
}
while ((InString.charAt(0) == '\u0020') || (InString.charAt(0) == '\u000A') || (InString.charAt(0) == '\u000D')){
InString = InString.substring(1, InString.length)
}
while (InString.indexOf(' ') != -1) {
x = InString.indexOf(' ')
InString = InString.substring(0, x) + InString.substring(x+1, InString.length)
}
return InString;
}
else {
return '';
}
}
function FindLongest(InArray){
if (InArray.length < 1){return -1;}
var Longest = 0;
for (var i=1; i<InArray.length; i++){
if (InArray[i].length > InArray[Longest].length){
Longest = i;
}
}
return Longest;
}
//UNICODE CHARACTER FUNCTIONS
function IsCombiningDiacritic(CharNum){
var Result = (((CharNum >= 0x0300)&&(CharNum <= 0x370))||((CharNum >= 0x20d0)&&(CharNum <= 0x20ff)));
Result = Result || (((CharNum >= 0x3099)&&(CharNum <= 0x309a))||((CharNum >= 0xfe20)&&(CharNum <= 0xfe23)));
return Result;
}
function IsCJK(CharNum){
return ((CharNum >= 0x3000)&&(CharNum < 0xd800));
}
//SETUP FUNCTIONS
//BROWSER WILL REFILL TEXT BOXES FROM CACHE IF NOT PREVENTED
function ClearTextBoxes(){
var NList = document.getElementsByTagName('input');
for (var i=0; i<NList.length; i++){
if ((NList[i].id.indexOf('Guess') > -1)||(NList[i].id.indexOf('Gap') > -1)){
NList[i].value = '';
}
if (NList[i].id.indexOf('Chk') > -1){
NList[i].checked = '';
}
}
}
//EXTENSION TO ARRAY OBJECT
function Array_IndexOf(Input){
var Result = -1;
for (var i=0; i<this.length; i++){
if (this[i] == Input){
Result = i;
}
}
return Result;
}
Array.prototype.indexOf = Array_IndexOf;
//IE HAS RENDERING BUG WITH BOTTOM NAVBAR
function RemoveBottomNavBarForIE(){
if ((C.ie)&&(document.getElementById('Reading') != null)){
if (document.getElementById('BottomNavBar') != null){
document.getElementById('TheBody').removeChild(document.getElementById('BottomNavBar'));
}
}
}
//HOTPOTNET-RELATED CODE
var HPNStartTime = (new Date()).getTime();
var SubmissionTimeout = 30000;
var Detail = ''; //Global that is used to submit tracking data
function Finish(){
//If there's a form, fill it out and submit it
if (document.store != null){
Frm = document.store;
Frm.starttime.value = HPNStartTime;
Frm.endtime.value = (new Date()).getTime();
Frm.mark.value = Score;
Frm.detail.value = Detail;
Frm.submit();
}
}
//JCLOZE CORE JAVASCRIPT CODE
/* Modification Copyright (c) Michael Rottmeier, January/June 2004
Find-it - Version 3.1.3b for Hot Potatoes v6
http://www.teaching-tools.de.vu
THIS HEADER MUST STAY UN-TOUCHED */
var Feedback = '';
var Correct = 'Bravo! Bien joué.';
var Incorrect = 'Non! C\'est correct.';
var MissingMistakes = 'Nombre de mots qui manquent encore:';
var YourScoreIs = 'Votre score est de:';
var CaseSensitive = false;
var Finished = false;
var Locked = false; // timer specific
var TimeOver = false;
var Output = ''; // used for feedback storage
I = new Array();
I[0] = new Array();
I[0][1] = new Array();
I[0][1][0] = new Array();
I[0][1][0][0] = '\u0063\u0068\u0061\u0069\u006E\u0065';
I[0][1][1] = new Array();
I[0][1][1][0]='\u0063\u0068\u0061\u00EE\u006E\u0065';
I[0][2]='';
I[1] = new Array();
I[1][1] = new Array();
I[1][1][0] = new Array();
I[1][1][0][0] = '\u0067\u0072\u0061\u0074\u0074\u0065\u002D\u0063\u0069\u0065\u006C\u0073';
I[1][1][1] = new Array();
I[1][1][1][0]='\u0067\u0072\u0061\u0074\u0074\u0065\u002D\u0063\u0069\u0065\u006C';
I[1][2]='';
I[2] = new Array();
I[2][1] = new Array();
I[2][1][0] = new Array();
I[2][1][0][0] = '\u0070\u0061\u0072\u0065\u0062\u0072\u0069\u0073\u0065\u0073';
I[2][1][1] = new Array();
I[2][1][1][0]='\u0070\u0061\u0072\u0065\u002D\u0062\u0072\u0069\u0073\u0065';
I[2][2]='';
I[3] = new Array();
I[3][1] = new Array();
I[3][1][0] = new Array();
I[3][1][0][0] = '\u0061\u006C\u006C\u00E8\u0067\u0065\u0072\u0061\u0069\u0074';
I[3][1][1] = new Array();
I[3][1][1][0]='\u0061\u006C\u006C\u00E9\u0067\u0065\u0072\u0061\u0069\u0074';
I[3][2]='';
I[4] = new Array();
I[4][1] = new Array();
I[4][1][0] = new Array();
I[4][1][0][0] = '\u0062\u0072\u0075\u006C\u0065';
I[4][1][1] = new Array();
I[4][1][1][0]='\u0062\u0072\u00FB\u006C\u0065';
I[4][2]='';
I[5] = new Array();
I[5][1] = new Array();
I[5][1][0] = new Array();
I[5][1][0][0] = '\u0064\u00E9\u0067\u006F\u0075\u0074\u0061\u006E\u0074';
I[5][1][1] = new Array();
I[5][1][1][0]='\u0064\u00E9\u0067\u006F\u00FB\u0074\u0061\u006E\u0074';
I[5][2]='';
I[6] = new Array();
I[6][1] = new Array();
I[6][1][0] = new Array();
I[6][1][0][0] = '\u0061\u0075\u0074\u006F\u00E9\u0063\u006F\u006C\u0065';
I[6][1][1] = new Array();
I[6][1][1][0]='\u0061\u0075\u0074\u006F\u002D\u00E9\u0063\u006F\u006C\u0065';
I[6][2]='';
I[7] = new Array();
I[7][1] = new Array();
I[7][1][0] = new Array();
I[7][1][0][0] = '\u0065\u0078\u0069\u0067\u00FC\u0065\u0073';
I[7][1][1] = new Array();
I[7][1][1][0]='\u0065\u0078\u0069\u0067\u0075\u00EB\u0073';
I[7][2]='';
I[8] = new Array();
I[8][1] = new Array();
I[8][1][0] = new Array();
I[8][1][0][0] = '\u0072\u0075\u0069\u0073\u0073\u00E8\u006C\u0065\u006E\u0074';
I[8][1][1] = new Array();
I[8][1][1][0]='\u0072\u0075\u0069\u0073\u0073\u0065\u006C\u006C\u0065\u006E\u0074';
I[8][2]='';
I[9] = new Array();
I[9][1] = new Array();
I[9][1][0] = new Array();
I[9][1][0][0] = '\u0073\u0027\u0061\u0073\u0073\u006F\u0069\u0072';
I[9][1][1] = new Array();
I[9][1][1][0]='\u0073\u0027\u0061\u0073\u0073\u0065\u006F\u0069\u0072';
I[9][2]='';
I[10] = new Array();
I[10][1] = new Array();
I[10][1][0] = new Array();
I[10][1][0][0] = '\u0061\u0069\u0067\u00FC\u0065';
I[10][1][1] = new Array();
I[10][1][1][0]='\u0061\u0069\u0067\u0075\u00EB';
I[10][2]='';
I[11] = new Array();
I[11][1] = new Array();
I[11][1][0] = new Array();
I[11][1][0][0] = '\u0070\u006C\u0061\u0069\u0074';
I[11][1][1] = new Array();
I[11][1][1][0]='\u0070\u006C\u0061\u00EE\u0074';
I[11][2]='';
I[12] = new Array();
I[12][1] = new Array();
I[12][1][0] = new Array();
I[12][1][0][0] = '\u006C\u0061\u0069\u0073\u0073\u00E9';
I[12][1][1] = new Array();
I[12][1][1][0]='\u006C\u0061\u0069\u0073\u0073\u00E9\u0065';
I[12][2]='';
I[13] = new Array();
I[13][1] = new Array();
I[13][1][0] = new Array();
I[13][1][0][0] = '\u0064\u0069\u006E\u0065\u0072';
I[13][1][1] = new Array();
I[13][1][1][0]='\u0064\u00EE\u006E\u0065\u0072';
I[13][2]='';
I[14] = new Array();
I[14][1] = new Array();
I[14][1][0] = new Array();
I[14][1][0][0] = '\u0077\u0065\u0065\u006B\u0065\u006E\u0064';
I[14][1][1] = new Array();
I[14][1][1][0]='\u0077\u0065\u0065\u006B\u002D\u0065\u006E\u0064';
I[14][2]='';
I[15] = new Array();
I[15][1] = new Array();
I[15][1][0] = new Array();
I[15][1][0][0] = '\u0070\u00E8\u0063\u0068\u0065\u0072\u0065\u007A';
I[15][1][1] = new Array();
I[15][1][1][0]='\u0070\u00E9\u0063\u0068\u0065\u0072\u0065\u007A';
I[15][2]='';
I[16] = new Array();
I[16][1] = new Array();
I[16][1][0] = new Array();
I[16][1][0][0] = '\u0069\u006D\u0062\u00E9\u0063\u0069\u006C\u0069\u0074\u00E9';
I[16][1][1] = new Array();
I[16][1][1][0]='\u0069\u006D\u0062\u00E9\u0063\u0069\u006C\u006C\u0069\u0074\u00E9';
I[16][2]='';
I[17] = new Array();
I[17][1] = new Array();
I[17][1][0] = new Array();
I[17][1][0][0] = '\u0064\u00E9\u0073\u0065\u0073\u0070\u00E8\u0072\u0065\u0072\u0061\u0069\u0074';
I[17][1][1] = new Array();
I[17][1][1][0]='\u0064\u00E9\u0073\u0065\u0073\u0070\u00E9\u0072\u0065\u0072\u0061\u0069\u0074';
I[17][2]='';
I[18] = new Array();
I[18][1] = new Array();
I[18][1][0] = new Array();
I[18][1][0][0] = '\u0061\u006D\u0062\u0069\u0067\u00FC\u0069\u0074\u00E9\u0073';
I[18][1][1] = new Array();
I[18][1][1][0]='\u0061\u006D\u0062\u0069\u0067\u0075\u00EF\u0074\u00E9\u0073';
I[18][2]='';
I[19] = new Array();
I[19][1] = new Array();
I[19][1][0] = new Array();
I[19][1][0][0] = '\u0061\u0070\u0072\u0069\u006F\u0072\u0069\u0073';
I[19][1][1] = new Array();
I[19][1][1][0]='\u0061\u0020\u0070\u0072\u0069\u006F\u0072\u0069';
I[19][2]='';
I[20] = new Array();
I[20][1] = new Array();
I[20][1][0] = new Array();
I[20][1][0][0] = '\u0072\u00E8\u0067\u006C\u0065\u006D\u0065\u006E\u0074\u0061\u0069\u0072\u0065';
I[20][1][1] = new Array();
I[20][1][1][0]='\u0072\u00E9\u0067\u006C\u0065\u006D\u0065\u006E\u0074\u0061\u0069\u0072\u0065';
I[20][2]='';
I[21] = new Array();
I[21][1] = new Array();
I[21][1][0] = new Array();
I[21][1][0][0] = '\u0061\u006F\u0075\u0074';
I[21][1][1] = new Array();
I[21][1][1][0]='\u0061\u006F\u00FB\u0074';
I[21][2]='';
I[22] = new Array();
I[22][1] = new Array();
I[22][1][0] = new Array();
I[22][1][0][0] = '\u0066\u0072\u0061\u0069\u0063\u0068\u0065';
I[22][1][1] = new Array();
I[22][1][1][0]='\u0066\u0072\u0061\u00EE\u0063\u0068\u0065';
I[22][2]='';
I[23] = new Array();
I[23][1] = new Array();
I[23][1][0] = new Array();
I[23][1][0][0] = '\u006D\u0075\u0072\u0065\u006D\u0065\u006E\u0074';
I[23][1][1] = new Array();
I[23][1][1][0]='\u006D\u00FB\u0072\u0065\u006D\u0065\u006E\u0074';
I[23][2]='';
I[24] = new Array();
I[24][1] = new Array();
I[24][1][0] = new Array();
I[24][1][0][0] = '\u006F\u0067\u006E\u006F\u006E\u0073';
I[24][1][1] = new Array();
I[24][1][1][0]='\u006F\u0069\u0067\u006E\u006F\u006E\u0073';
I[24][2]='';
I[25] = new Array();
I[25][1] = new Array();
I[25][1][0] = new Array();
I[25][1][0][0] = '\u0067\u0069\u0074';
I[25][1][1] = new Array();
I[25][1][1][0]='\u0067\u00EE\u0074';
I[25][2]='';
I[26] = new Array();
I[26][1] = new Array();
I[26][1][0] = new Array();
I[26][1][0][0] = '\u0063\u0069\u0063\u00E9\u0072\u006F\u006E\u0065';
I[26][1][1] = new Array();
I[26][1][1][0]='\u0063\u0069\u0063\u0065\u0072\u006F\u006E\u0065';
I[26][2]='';
I[27] = new Array();
I[27][1] = new Array();
I[27][1][0] = new Array();
I[27][1][0][0] = '\u006C\u0065\u0061\u0064\u0065\u0075\u0072';
I[27][1][1] = new Array();
I[27][1][1][0]='\u006C\u0065\u0061\u0064\u0065\u0072';
I[27][2]='';
I[28] = new Array();
I[28][1] = new Array();
I[28][1][0] = new Array();
I[28][1][0][0] = '\u0072\u00E9\u0076\u006F\u006C\u0076\u0065\u0072';
I[28][1][1] = new Array();
I[28][1][1][0]='\u0072\u0065\u0076\u006F\u006C\u0076\u0065\u0072';
I[28][2]='';
I[29] = new Array();
I[29][1] = new Array();
I[29][1][0] = new Array();
I[29][1][0][0] = '\u0063\u0068\u0061\u006E\u0063\u00E8\u006C\u0065';
I[29][1][1] = new Array();
I[29][1][1][0]='\u0063\u0068\u0061\u006E\u0063\u0065\u006C\u006C\u0065';
I[29][2]='';
I[30] = new Array();
I[30][1] = new Array();
I[30][1][0] = new Array();
I[30][1][0][0] = '\u0063\u006F\u006E\u0071\u0075\u0069\u0073\u0074\u0061\u0064\u006F\u0072\u0073';
I[30][1][1] = new Array();
I[30][1][1][0]='\u0063\u006F\u006E\u0071\u0075\u0069\u0073\u0074\u0061\u0064\u006F\u0072\u0065\u0073';
I[30][2]='';
I[31] = new Array();
I[31][1] = new Array();
I[31][1][0] = new Array();
I[31][1][0][0] = '\u0045\u006E\u0074\u0072\u0065\u0074\u0065\u006D\u0070\u0073';
I[31][1][1] = new Array();
I[31][1][1][0]='\u0045\u006E\u0074\u0072\u0065\u002D\u0074\u0065\u006D\u0070\u0073';
I[31][2]='';
I[32] = new Array();
I[32][1] = new Array();
I[32][1][0] = new Array();
I[32][1][0][0] = '\u0063\u00E9\u006C\u00E8\u0062\u0072\u0065\u0072\u0061\u0069\u0074';
I[32][1][1] = new Array();
I[32][1][1][0]='\u0063\u00E9\u006C\u00E9\u0062\u0072\u0065\u0072\u0061\u0069\u0074';
I[32][2]='';
I[33] = new Array();
I[33][1] = new Array();
I[33][1][0] = new Array();
I[33][1][0][0] = '\u0061\u0069\u006E\u00E9\u0073';
I[33][1][1] = new Array();
I[33][1][1][0]='\u0061\u00EE\u006E\u00E9\u0073';
I[33][2]='';
I[34] = new Array();
I[34][1] = new Array();
I[34][1][0] = new Array();
I[34][1][0][0] = '\u0062\u0061\u0072\u006D\u0061\u006E\u0073';
I[34][1][1] = new Array();
I[34][1][1][0]='\u0062\u0061\u0072\u006D\u0065\u006E';
I[34][2]='';
I[35] = new Array();
I[35][1] = new Array();
I[35][1][0] = new Array();
I[35][1][0][0] = '\u0063\u006F\u0075\u0074\u0073';
I[35][1][1] = new Array();
I[35][1][1][0]='\u0063\u006F\u00FB\u0074\u0073';
I[35][2]='';
I[36] = new Array();
I[36][1] = new Array();
I[36][1][0] = new Array();
I[36][1][0][0] = '\u0064\u0065\u0075\u0078\u002D\u0063\u0065\u006E\u0074\u002D\u0063\u0069\u006E\u0071\u0075\u0061\u006E\u0074\u0065';
I[36][1][1] = new Array();
I[36][1][1][0]='\u0064\u0065\u0075\u0078\u0020\u0063\u0065\u006E\u0074\u0020\u0063\u0069\u006E\u0071\u0075\u0061\u006E\u0074\u0065';
I[36][2]='';
I[37] = new Array();
I[37][1] = new Array();
I[37][1][0] = new Array();
I[37][1][0][0] = '\u0076\u0061\u006E\u0075\u0070\u0069\u0065\u0064';
I[37][1][1] = new Array();
I[37][1][1][0]='\u0076\u0061\u002D\u006E\u0075\u002D\u0070\u0069\u0065\u0064\u0073';
I[37][2]='';
I[38] = new Array();
I[38][1] = new Array();
I[38][1][0] = new Array();
I[38][1][0][0] = '\u0070\u006F\u0072\u0074\u0065\u006D\u006F\u006E\u006E\u0061\u0069\u0065';
I[38][1][1] = new Array();
I[38][1][1][0]='\u0070\u006F\u0072\u0074\u0065\u002D\u006D\u006F\u006E\u006E\u0061\u0069\u0065';
I[38][2]='';
I[39] = new Array();
I[39][1] = new Array();
I[39][1][0] = new Array();
I[39][1][0][0] = '\u0063\u0068\u0061\u0072\u0072\u0069\u006F\u0074';
I[39][1][1] = new Array();
I[39][1][1][0]='\u0063\u0068\u0061\u0072\u0069\u006F\u0074';
I[39][2]='';
I[40] = new Array();
I[40][1] = new Array();
I[40][1][0] = new Array();
I[40][1][0][0] = '\u0063\u006F\u006E\u0066\u0065\u0074\u0074\u0069\u0073';
I[40][1][1] = new Array();
I[40][1][1][0]='\u0063\u006F\u006E\u0066\u0065\u0074\u0074\u0069';
I[40][2]='';
I[41] = new Array();
I[41][1] = new Array();
I[41][1][0] = new Array();
I[41][1][0][0] = '\u0068\u0075\u0069\u0074\u0072\u0065\u0073';
I[41][1][1] = new Array();
I[41][1][1][0]='\u0068\u0075\u00EE\u0074\u0072\u0065\u0073';
I[41][2]='';
I[42] = new Array();
I[42][1] = new Array();
I[42][1][0] = new Array();
I[42][1][0][0] = '\u0074\u0069\u0072\u0065\u0062\u006F\u0075\u0063\u0068\u006F\u006E';
I[42][1][1] = new Array();
I[42][1][1][0]='\u0074\u0069\u0072\u0065\u002D\u0062\u006F\u0075\u0063\u0068\u006F\u006E';
I[42][2]='';
I[43] = new Array();
I[43][1] = new Array();
I[43][1][0] = new Array();
I[43][1][0][0] = '\u0063\u0075\u0072\u0065\u002D\u0064\u0065\u006E\u0074\u0073';
I[43][1][1] = new Array();
I[43][1][1][0]='\u0063\u0075\u0072\u0065\u002D\u0064\u0065\u006E\u0074';
I[43][2]='';
I[44] = new Array();
I[44][1] = new Array();
I[44][1][0] = new Array();
I[44][1][0][0] = '\u0063\u006F\u006D\u0070\u006C\u00E8\u0074\u0065\u0072\u0061\u0069\u0074';
I[44][1][1] = new Array();
I[44][1][1][0]='\u0063\u006F\u006D\u0070\u006C\u00E9\u0074\u0065\u0072\u0061\u0069\u0074';
I[44][2]='';
I[45] = new Array();
I[45][1] = new Array();
I[45][1][0] = new Array();
I[45][1][0][0] = '\u00E9\u0070\u006F\u0075\u0073\u0073\u00E8\u0074\u0065\u0072\u0061\u0069\u0074';
I[45][1][1] = new Array();
I[45][1][1][0]='\u00E9\u0070\u006F\u0075\u0073\u0073\u0065\u0074\u0074\u0065\u0072\u0061\u0069\u0074';
I[45][2]='';
I[46] = new Array();
I[46][1] = new Array();
I[46][1][0] = new Array();
I[46][1][0][0] = '\u0073\u0075\u0072\u0065\u006D\u0065\u006E\u0074';
I[46][1][1] = new Array();
I[46][1][1][0]='\u0073\u00FB\u0072\u0065\u006D\u0065\u006E\u0074';
I[46][2]='';
I[47] = new Array();
I[47][1] = new Array();
I[47][1][0] = new Array();
I[47][1][0][0] = '\u0062\u006F\u0069\u0074\u0065';
I[47][1][1] = new Array();
I[47][1][1][0]='\u0062\u006F\u00EE\u0074\u0065';
I[47][2]='';
function StartUp(){
RemoveBottomNavBarForIE();
Split_Feedback();
Build_GapText();
}
// CORE JAVASCRIPT FOR JCLOZE DROPDOWN FUNCTIONALITY
GapList = new Array();
// GapList[x][0] = clue button
// GapList[x][1] = State data
// GapList[x][2] = input component in Find-it v3.1b
var Score = 0;
var TotWrongChoices = 0;
function Create_StateArray(){
this.ErrorFound = false;
this.WrongGapValue = '';
this.GapSolved = false;
this.Guesses = new Array();
this.HintsAndChecks = 0;
this.Score = 0;
}
function Build_GapText(){
var GSpan = null;
var InpComp = null;
// first, prepare the gaps
for (var x=0; x<I.length; x++){
GSpan = document.getElementById('GapSpan'+x);
if (GSpan != null){
// remove the input field
InpComp = GSpan.removeChild(GSpan.getElementsByTagName('input')[0]);
// create the state stuff
GapList.push(new Array(null, new Create_StateArray(), InpComp));
// put an existing clue button into the GapList array
if (GSpan.getElementsByTagName('button').length > 0){
GapList[x][0] = GSpan.removeChild(GSpan.getElementsByTagName('button')[0]);
}
// remove the </input> tag - and anything else which might be in there
while (GSpan.childNodes.length > 0){
GSpan.removeChild(GSpan.firstChild);
}
// add the wrong text output
GSpan.appendChild(Create_GapContent(x));
// store the used gap value (wrong text) for tracking purposes
GapList[x][1].WrongGapValue = GSpan.getElementsByTagName('span')[0].firstChild.nodeValue;
}
}
// second, prepare the other text
var TextBody = document.getElementById('ClozeBody'); //.getElementsByTagName('p')[0];
TextBody = TextBody.parentNode;
if (TextBody != null){
for (var y=0; y<TextBody.childNodes.length; y++){
// markup the text appropriately and replace the old node with the new one
TextBody.replaceChild(Markup_Text(TextBody.childNodes[y]), TextBody.childNodes[y]);
}
}
}
function Create_GapContent(GapId){
var SpanElm = document.createElement('span');
SpanElm.className = 'GapSpan';
SpanElm.onclick = function(){CheckText(true, GapId);}
//SpanElm.setAttribute("onclick", 'CheckText(true, '+GapId+')');
//SpanElm.setAttribute("class", 'GapSpan');
SpanElm.appendChild(document.createTextNode(Get_WrongGapContent(GapId)));
return SpanElm;
}
function Get_WrongGapContent(GapId){
// the first alternative gap answer is considered to be the wrong one
var ReturnVal = I[GapId][1][1][0];
// remove the wrong value from the array
for (var x=1; x<(I[GapId][1].length-1); x++){
I[GapId][1][x][0] = I[GapId][1][x+1][0];
}
I[GapId][1].length = I[GapId][1].length-1;
return ReturnVal;
}
function Markup_Text(Node){
for (var x=0; x<Node.childNodes.length; x++){
//alert(Node.childNodes[x].nodeType);
switch (Node.childNodes[x].nodeName.toLowerCase()){
case 'span' :
if (Node.childNodes[x].attributes.length > 0){
if ((Node.childNodes[x].getAttribute('id').substr(0, 7) != 'GapSpan')){
Node.replaceNode(Markup_Text(Node.childNodes[x]), Node.childNodes[x]);
}
}
break;
case 'div' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'p' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'strong' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'em' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'blockquote' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'pre' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'ul' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'ol' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'li' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'sup' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'sub' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'table' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'tr' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'td' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'thead' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case 'tfoot' : Node.replaceChild(Markup_Text(Node.childNodes[x]), Node.childNodes[x]); break;
case '#text' :
//if (Node.childNodes.length < 1){
//if (Node.nodeType == 3){
if (Node.nodeValue != ''){
// add the span tag with the onclick event
var SpanNode = document.createElement('span');
SpanNode.className = 'GapSpan';
SpanNode.onclick = function(){CheckText(false, -1);}
SpanNode.appendChild(document.createTextNode(Node.childNodes[x].nodeValue));
// replace the old node with the new created node (span + text)
Node.replaceChild(SpanNode, Node.childNodes[x]);
}
//}
//}
break;
}
}
return Node;
}
// FEEDBACK ROUTINES
CFb = new Array();
FNoErrorHere = new Array();
//var strFNoErrorHere = 'FNoErrorHere.';
var strFSomeGapsAreIncorrect = 'There are still some incorrect gaps.';
var strFWellDone = 'Well done!';
function Split_Feedback(){
// the feedback bits should look like feedb1## feedb2## feedb3 etc.
//'Correct' Feedback
var Tmp = Correct.split('##');
var y = -1;
for (var x=0; x<Tmp.length; x++){
if (TrimString(Tmp[x]) != ''){
if (x == 0){
strFSomeGapsAreIncorrect = TrimString(Tmp[x]);
}
if (x == 1){
strFWellDone = TrimString(Tmp[x]);
}
}
}
//'Incorrect' Feedback
Tmp = Incorrect.split('##');
y = -1;
for (var x=0; x<Tmp.length; x++){
if (TrimString(Tmp[x]) != ''){
y++;
FNoErrorHere[y] = TrimString(Tmp[x]);
}
}
}
function Get_RandomFeedback(){
var Stuff = '';
// negative feedback
var x = Math.floor(Math.random()*FNoErrorHere.length);
Stuff = FNoErrorHere[x];
return Stuff;
}
// CHECK ROUTINES
function CheckText(GapState,GapId){
if (Finished == true){return;}
// chosen text is wrong:
if (GapState==false){
// show feedback
//ShowMessage(strFNoErrorHere);
ShowMessage(Get_RandomFeedback());
// penalty
TotWrongChoices++;
}
// chosen text is right:
else{
CorrectChoice(GapId);
}
}
function CorrectChoice(GapId){
// the state flag
GapList[GapId][1].ErrorFound = true;
// show input component
var GSpan = document.getElementById('GapSpan'+GapId);
if (GSpan != null){
// remove the onclick event
GSpan.removeAttribute('onclick');
// remove the text node
while (GSpan.childNodes.length > 0){
GSpan.removeChild(GSpan.firstChild);
}
GSpan.appendChild(GapList[GapId][2]);
// put the wrong gap value into the input component
document.getElementById('Gap'+GapId).value = GapList[GapId][1].WrongGapValue;
// add the clue button if it exists
if (GapList[GapId][0] != null){
// replace the button's caption
GapList[GapId][0].firstChild.nodeValue = '[ ? ]';
GSpan.appendChild(GapList[GapId][0]);
}
}
}
// GAP VALUE CHECK ROUTINES (mainly based on the original JCloze routines)
var CurrentWord = 0;
function TrackFocus(BoxNumber){
CurrentWord = BoxNumber;
InTextBox = true;
}
function LeaveGap(){
InTextBox = false;
}
function CheckAnswers(){
// check if there is at least one gap visible
var NumOfVisibleGaps = 0;
for (var x=0; x<GapList.length; x++){
if ((GapList[x][1].ErrorFound == true)&&(GapList[x][1].GapSolved == false)){
NumOfVisibleGaps++;
}
}
if (NumOfVisibleGaps < 1){return;}
if (Locked == true){return;}
SaveCurrentAnswers();
var AllCorrect = true;
//Check each answer
for (var x=0; x<GapList.length; x++){
// check only those gaps which are already found
if (GapList[x][1].ErrorFound == true){
if (GapList[x][1].GapSolved == false){
//If it's right, calculate its score
if (CheckAnswer(x, true) > -1){
var TotalChars = GetGapValue(x).length;
GapList[x][1].Score = (TotalChars-GapList[x][1].HintsAndChecks)/TotalChars;
if (GapList[x][1].Score < 0){GapList[x][1].Score = 0;}
GapList[x][1].GapSolved = true;
//Drop the correct answer into the page, replacing the text box
Show_GapSolution(x);
// SetCorrectAnswer(x, GetGapValue(x));
}
else{
//Otherwise, increment the checks for this item, as a penalty
GapList[x][1].HintsAndChecks++;
//then set the flag
AllCorrect = false;
}
}
}
}
Output = '';
// check whether exercise is finished:
// if all errors are found, show final feedback and finish exercise:
if (CheckExStatus() == true){
Output += MissingMistakes + Get_NumMissingErr();
Finished = true;
// hotpot.net
CompileGuesses();
setTimeout('Finish()', SubmissionTimeout);
}
// else show number of missing errors:
else{
// case 1: all visible gaps are answered correctly
if (AllCorrect == true){
Output += strFWellDone + '<br />' + MissingMistakes + ' ' + Get_NumMissingErr();
}
// case 2: some of the found gaps are incorrect
else{
Output += strFSomeGapsAreIncorrect + '<br />' + MissingMistakes + ' ' + Get_NumMissingErr();
}
}
// calculate the score
CalculateScore();
// show feedback
if (Output.length > 1){
Output += '<br />' + YourScoreIs + ' ' + Score + '%';
ShowMessage(Output);
setTimeout('WriteToInstructions(Output)', 50);
}
}
function CheckAnswer(GapNum, MarkAnswer){
var Guess = GetGapValue(GapNum);
var UpperGuess = '';
var UpperAnswer = '';
if (CaseSensitive == false){
UpperGuess = Guess.toUpperCase();
}
else{
UpperGuess = Guess;
}
var Match = -1;
for (var x=0; x<I[GapNum][1].length; x++){
if (CaseSensitive == false){
UpperAnswer = I[GapNum][1][x][0].toUpperCase();
}
else{
UpperAnswer = I[GapNum][1][x][0];
}
if (TrimString(UpperGuess) == UpperAnswer){
Match = x;
if (MarkAnswer == true){
GapList[GapNum][1].GapSolved = true;
}
}
}
return Match;
}
function SaveCurrentAnswers(){
var Ans = ''
for (var x=0; x<GapList.length; x++){
Ans = GetGapValue(x);
if ((Ans.length > 0)&&(Ans != GapList[x][1].Guesses[GapList[x][1].Guesses.length-1])){
GapList[x][1].Guesses.push(Ans);
}
}
}
function GetGapValue(GapId){
var RetVal = '';
if ((GapId<0)||(GapId>=GapList.length)){return RetVal;}
if (document.getElementById('Gap' + GapId) != null){
RetVal = document.getElementById('Gap' + GapId).value;
RetVal = TrimString(RetVal);
}
else{
if (GapList[GapId][1].Guesses.length > 0){
RetVal = GapList[GapId][1].Guesses[GapList[GapId][1].Guesses.length-1];
}
}
return RetVal;
}
/* NOT USED
function SetCorrectAnswer(GapId, Val){
if ((GapId<0)||(GapId>=GapList.length)){return;}
if (document.getElementById('GapSpan' + GapId) != null){
document.getElementById('GapSpan' + GapId).innerHTML = '<strong>'+Val+'</strong>';
}
}*/
function CheckExStatus(){
// checks if all errors have been found or not
var ExFin = true;
for (var x=0; x<GapList.length; x++){
if (GapList[x][1].GapSolved == false){
ExFin = false;
break;
}
}
return ExFin;
}
function Get_NumMissingErr(){
// retrieves the number of still
// missing errors in the text
var i = 0;
for (var x=0; x<GapList.length; x++){
if (GapList[x][1].ErrorFound == false){
i++;
}
}
return i;
}
function CalculateScore(){
var TotScore = 0;
for (var x=0; x<GapList.length; x++){
TotScore += GapList[x][1].Score;
}
Score = Math.floor((TotScore * 100)/(GapList.length + TotWrongChoices));
if (Score < 0){Score = 0;}
}
// HINT FUNCTIONALITY
function ShowHint(){
if (Locked == true){return;}
var CurrGap = FindCurrent();
if (CurrGap < 0){return;}
var HintString = GetHint(CurrGap);
if (HintString.length > 0){
SetGapValue(CurrGap, HintString);
GapList[CurrGap][1].HintsAndChecks++;
}
}
function FindCurrent() {
var x = 0;
FoundCurrent = -1;
//Test the current word:
//If its state is not set to already correct, check the word.
if (GapList[CurrentWord][1].GapSolved == false){
if (CheckAnswer(CurrentWord, false) < 0){
return CurrentWord;
}
}
x=CurrentWord + 1;
while (x<I.length){
if (GapList[x][1].GapSolved == false){
if (CheckAnswer(x, false) < 0){
return x;
}
}
x++;
}
x = 0;
while (x<CurrentWord){
if (GapList[x][1].GapSolved == false){
if (CheckAnswer(x, false) < 0){
return x;
}
}
x++;
}
return FoundCurrent;
}
function GetHint(GapNum){
Guess = GetGapValue(GapNum);
if (CheckAnswer(GapNum, false) > -1){return ''}
RightBits = new Array();
for (var i=0; i<I[GapNum][1].length; i++){
RightBits[i] = CheckBeginning(Guess, I[GapNum][1][i][0]);
}
var RightOne = FindLongest(RightBits);
var Result = I[GapNum][1][RightOne][0].substring(0,RightBits[RightOne].length);
//Add another char if the last one is a space
if (Result.charAt(Result.length-1) == ' '){
Result = I[GapNum][1][RightOne][0].substring(0,RightBits[RightOne].length+1);
}
return Result;
}
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 SetGapValue(GNum, Val){
if ((GNum<0)||(GNum>=I.length)){return;}
if (document.getElementById('Gap' + GNum) != null){
document.getElementById('Gap' + GNum).value = Val;
document.getElementById('Gap' + GNum).focus();
}
}
function Show_GapSolution(GapId){
// show the correct solution
var GapSpan = document.getElementById('GapSpan'+GapId);
if (GapSpan != null){
// remove everything in the GapSpan element
while (GapSpan.childNodes.length > 0){
GapSpan.removeChild(GapSpan.firstChild);
}
// append the text node
var StrongNode = document.createElement('strong');
StrongNode.appendChild(document.createTextNode(I[GapId][1][0][0]+' '));
GapSpan.appendChild(StrongNode);
}
}
function ShowClue(GapId){
ShowMessage(I[GapId][2]);
}
function TypeChars(Chars){
var CurrGap = FindCurrent();
if (CurrGap < 0){return;}
if (document.getElementById('Gap' + CurrGap) != null){
SetGapValue(CurrGap, document.getElementById('Gap' + CurrGap).value + Chars);
}
}
// HOTPOT.NET FUNCTIONALITY
function CompileGuesses(){
var F = document.getElementById('store');
if (F != null){
var Temp = '<?xml version="1.0"?><hpnetresult><fields>';
var GapLabel = '';
for (var i=0; i<GapList.length; i++){
GapLabel = 'Gap ' + (i+1).toString();
Temp += '<field><fieldname>' + GapLabel + '</fieldname>';
Temp += '<fieldtype>student-responses</fieldtype><fieldlabel>' + GapLabel + '</fieldlabel>';
Temp += '<fieldlabelid>JClozeStudentResponses</fieldlabelid><fielddata>';
for (var j=0; j<GapList[i][1].Guesses.length; j++){
if (j>0){Temp += '| ';}
Temp += GapList[i][1].Guesses[j] + ' ';
}
Temp += '</fielddata></field>';
}
Temp += '</fields></hpnetresult>';
Detail = Temp;
}
}
//-->
//]]>
</script>
</head>
<body onload="StartUp()" id="TheBody">
<!-- BeginTopNavButtons -->
<div class="NavButtonBar" id="TopNavBar">
<button class="NavButton" onfocus="NavBtnOver(this)" onblur="NavBtnOut(this)" onmouseover="NavBtnOver(this)" onmouseout="NavBtnOut(this)" onmousedown="NavBtnDown(this)" onmouseup="NavBtnOut(this)" onclick="history.back(); return false;"><=</button>
</div>
<!-- EndTopNavButtons -->
<div class="Titles">
<h2 class="ExerciseTitle">Le permis</h2>
<h3 class="ExerciseSubtitle">Les rectifictions de l'orthographe</h3>
<div align="right"><img src="iles.gif" width="320" height="197" border="0" hspace="10" alt="iles" title="iles" align="right"></div>
</div>
<div id="InstructionsDiv" class="StdDiv">
<p id="Instructions">Le texte suivant date d'avant les rectifications orthographiques.<br />Cliquez sur les mots qui ne correspondent pas à la nouvelle orthographe et indiquez ensuite la forme conseillée.</p>
</div>
<div id="MainDiv" class="StdDiv">
<div id="ClozeDiv">
<form id="Cloze" method="post" action="" onsubmit="return false;">
<div class="ClozeBody" id="ClozeBody">
Arrivée derrière la <span class="GapSpan" id="GapSpan0"><input type="text" id="Gap0" onfocus="TrackFocus(0)" onblur="LeaveGap()" class="GapBox" size="6"></input></span> des <span class="GapSpan" id="GapSpan1"><input type="text" id="Gap1" onfocus="TrackFocus(1)" onblur="LeaveGap()" class="GapBox" size="12"></input></span>, le soleil reflété par les <span class="GapSpan" id="GapSpan2"><input type="text" id="Gap2" onfocus="TrackFocus(2)" onblur="LeaveGap()" class="GapBox" size="10"></input></span> des autres voitures aveuglait l'élève conductrice Isabelle. Ça n'<span class="GapSpan" id="GapSpan3"><input type="text" id="Gap3" onfocus="TrackFocus(3)" onblur="LeaveGap()" class="GapBox" size="10"></input></span> vraiment pas son examen du permis de conduire. Pourvu qu'elle ne <span class="GapSpan" id="GapSpan4"><input type="text" id="Gap4" onfocus="TrackFocus(4)" onblur="LeaveGap()" class="GapBox" size="6"></input></span> pas de feu rouge ! Cela ferait la joie de M. Chauffard, son <span class="GapSpan" id="GapSpan5"><input type="text" id="Gap5" onfocus="TrackFocus(5)" onblur="LeaveGap()" class="GapBox" size="9"></input></span> moniteur d'<span class="GapSpan" id="GapSpan6"><input type="text" id="Gap6" onfocus="TrackFocus(6)" onblur="LeaveGap()" class="GapBox" size="9"></input></span>, et en même temps, cela diminuerait ses ressources <span class="GapSpan" id="GapSpan7"><input type="text" id="Gap7" onfocus="TrackFocus(7)" onblur="LeaveGap()" class="GapBox" size="7"></input></span>. Elle ne pouvait pas empêcher que quelques gouttes de sueur <span class="GapSpan" id="GapSpan8"><input type="text" id="Gap8" onfocus="TrackFocus(8)" onblur="LeaveGap()" class="GapBox" size="10"></input></span> de son front. Devoir <span class="GapSpan" id="GapSpan9"><input type="text" id="Gap9" onfocus="TrackFocus(9)" onblur="LeaveGap()" class="GapBox" size="8"></input></span> de nouveau à côté de ce moniteur imbécile dont elle entendait déjà la voix <span class="GapSpan" id="GapSpan10"><input type="text" id="Gap10" onfocus="TrackFocus(10)" onblur="LeaveGap()" class="GapBox" size="6"></input></span> : « Mademoiselle, un peu d'attention, s'il vous <span class="GapSpan" id="GapSpan11"><input type="text" id="Gap11" onfocus="TrackFocus(11)" onblur="LeaveGap()" class="GapBox" size="6"></input></span>, vous vous êtes encore <span class="GapSpan" id="GapSpan12"><input type="text" id="Gap12" onfocus="TrackFocus(12)" onblur="LeaveGap()" class="GapBox" size="6"></input></span> aller ! Vous pensez déjà au <span class="GapSpan" id="GapSpan13"><input type="text" id="Gap13" onfocus="TrackFocus(13)" onblur="LeaveGap()" class="GapBox" size="6"></input></span> ou au <span class="GapSpan" id="GapSpan14"><input type="text" id="Gap14" onfocus="TrackFocus(14)" onblur="LeaveGap()" class="GapBox" size="7"></input></span> ? Vous ne <span class="GapSpan" id="GapSpan15"><input type="text" id="Gap15" onfocus="TrackFocus(15)" onblur="LeaveGap()" class="GapBox" size="8"></input></span> plus comme ça ! » Quelle <span class="GapSpan" id="GapSpan16"><input type="text" id="Gap16" onfocus="TrackFocus(16)" onblur="LeaveGap()" class="GapBox" size="10"></input></span> ! Elle <span class="GapSpan" id="GapSpan17"><input type="text" id="Gap17" onfocus="TrackFocus(17)" onblur="LeaveGap()" class="GapBox" size="13"></input></span> des <span class="GapSpan" id="GapSpan18"><input type="text" id="Gap18" onfocus="TrackFocus(18)" onblur="LeaveGap()" class="GapBox" size="10"></input></span> et des <span class="GapSpan" id="GapSpan19"><input type="text" id="Gap19" onfocus="TrackFocus(19)" onblur="LeaveGap()" class="GapBox" size="8"></input></span> misogynes que Chauffard recèle à peine, lui qui avait osé critiquer sa 'tenue peu <span class="GapSpan" id="GapSpan20"><input type="text" id="Gap20" onfocus="TrackFocus(20)" onblur="LeaveGap()" class="GapBox" size="13"></input></span>', en <span class="GapSpan" id="GapSpan21"><input type="text" id="Gap21" onfocus="TrackFocus(21)" onblur="LeaveGap()" class="GapBox" size="6"></input></span>, quand la brise était devenue moins <span class="GapSpan" id="GapSpan22"><input type="text" id="Gap22" onfocus="TrackFocus(22)" onblur="LeaveGap()" class="GapBox" size="7"></input></span>. Après avoir <span class="GapSpan" id="GapSpan23"><input type="text" id="Gap23" onfocus="TrackFocus(23)" onblur="LeaveGap()" class="GapBox" size="8"></input></span> réfléchi, elle lui avait quand même répondu : « Mêlez-vous des vos <span class="GapSpan" id="GapSpan24"><input type="text" id="Gap24" onfocus="TrackFocus(24)" onblur="LeaveGap()" class="GapBox" size="6"></input></span> ! » Elle s'imaginait l'inscription de sa pierre tombale : « Ci-<span class="GapSpan" id="GapSpan25"><input type="text" id="Gap25" onfocus="TrackFocus(25)" onblur="LeaveGap()" class="GapBox" size="6"></input></span> Albert Chauffard, <span class="GapSpan" id="GapSpan26"><input type="text" id="Gap26" onfocus="TrackFocus(26)" onblur="LeaveGap()" class="GapBox" size="8"></input></span> de village, <span class="GapSpan" id="GapSpan27"><input type="text" id="Gap27" onfocus="TrackFocus(27)" onblur="LeaveGap()" class="GapBox" size="7"></input></span> du machisme… » Par bonheur, elle n'avait pas de <span class="GapSpan" id="GapSpan28"><input type="text" id="Gap28" onfocus="TrackFocus(28)" onblur="LeaveGap()" class="GapBox" size="8"></input></span>. <br />Et heureusement, elle l'a eu, son permis ! Elle <span class="GapSpan" id="GapSpan29"><input type="text" id="Gap29" onfocus="TrackFocus(29)" onblur="LeaveGap()" class="GapBox" size="8"></input></span> encore un peu en descendant, mais elle se sent comme les <span class="GapSpan" id="GapSpan30"><input type="text" id="Gap30" onfocus="TrackFocus(30)" onblur="LeaveGap()" class="GapBox" size="13"></input></span> après la conquête de l'Amérique ! <span class="GapSpan" id="GapSpan31"><input type="text" id="Gap31" onfocus="TrackFocus(31)" onblur="LeaveGap()" class="GapBox" size="10"></input></span>, elle avait déjà oublié qu'elle avait voulu tuer Chauffard. <br />Samedi, elle <span class="GapSpan" id="GapSpan32"><input type="text" id="Gap32" onfocus="TrackFocus(32)" onblur="LeaveGap()" class="GapBox" size="11"></input></span> le permis avec ses amis et ses frères <span class="GapSpan" id="GapSpan33"><input type="text" id="Gap33" onfocus="TrackFocus(33)" onblur="LeaveGap()" class="GapBox" size="6"></input></span>, engagés comme <span class="GapSpan" id="GapSpan34"><input type="text" id="Gap34" onfocus="TrackFocus(34)" onblur="LeaveGap()" class="GapBox" size="7"></input></span> pour l'occasion. Et peu importent les <span class="GapSpan" id="GapSpan35"><input type="text" id="Gap35" onfocus="TrackFocus(35)" onblur="LeaveGap()" class="GapBox" size="6"></input></span> de <span class="GapSpan" id="GapSpan36"><input type="text" id="Gap36" onfocus="TrackFocus(36)" onblur="LeaveGap()" class="GapBox" size="19"></input></span> euros ! Elle n'était quand même pas un <span class="GapSpan" id="GapSpan37"><input type="text" id="Gap37" onfocus="TrackFocus(37)" onblur="LeaveGap()" class="GapBox" size="8"></input></span> ! Sans trop penser à son <span class="GapSpan" id="GapSpan38"><input type="text" id="Gap38" onfocus="TrackFocus(38)" onblur="LeaveGap()" class="GapBox" size="12"></input></span>, elle mettait de tout dans son <span class="GapSpan" id="GapSpan39"><input type="text" id="Gap39" onfocus="TrackFocus(39)" onblur="LeaveGap()" class="GapBox" size="8"></input></span> : des <span class="GapSpan" id="GapSpan40"><input type="text" id="Gap40" onfocus="TrackFocus(40)" onblur="LeaveGap()" class="GapBox" size="9"></input></span>, des <span class="GapSpan" id="GapSpan41"><input type="text" id="Gap41" onfocus="TrackFocus(41)" onblur="LeaveGap()" class="GapBox" size="7"></input></span>, du vin blanc (le <span class="GapSpan" id="GapSpan42"><input type="text" id="Gap42" onfocus="TrackFocus(42)" onblur="LeaveGap()" class="GapBox" size="11"></input></span> était en prime), des <span class="GapSpan" id="GapSpan43"><input type="text" id="Gap43" onfocus="TrackFocus(43)" onblur="LeaveGap()" class="GapBox" size="10"></input></span>… Elle <span class="GapSpan" id="GapSpan44"><input type="text" id="Gap44" onfocus="TrackFocus(44)" onblur="LeaveGap()" class="GapBox" size="12"></input></span> le tableau par une bonne bouteille de vin rouge qu'elle n'<span class="GapSpan" id="GapSpan45"><input type="text" id="Gap45" onfocus="TrackFocus(45)" onblur="LeaveGap()" class="GapBox" size="13"></input></span> <span class="GapSpan" id="GapSpan46"><input type="text" id="Gap46" onfocus="TrackFocus(46)" onblur="LeaveGap()" class="GapBox" size="8"></input></span> pas. Après, on irait danser dans une <span class="GapSpan" id="GapSpan47"><input type="text" id="Gap47" onfocus="TrackFocus(47)" onblur="LeaveGap()" class="GapBox" size="6"></input></span>.<br />La vie commençait !
</div>
</form>
</div>
<div class="Keypad">
<button onclick="TypeChars('\u00C0'); return false;">À</button> <button onclick="TypeChars('\u00E0'); return false;">à</button> <button onclick="TypeChars('\u00C7'); return false;">Ç</button> <button onclick="TypeChars('\u00E7'); return false;">ç</button> <button onclick="TypeChars('\u00C9'); return false;">É</button> <button onclick="TypeChars('\u00E9'); return false;">é</button> <button onclick="TypeChars('\u00E8'); return false;">è</button> <button onclick="TypeChars('\u00CA'); return false;">Ê</button> <button onclick="TypeChars('\u00EA'); return false;">ê</button> <button onclick="TypeChars('\u00EB'); return false;">ë</button> <button onclick="TypeChars('\u00EE'); return false;">î</button> <button onclick="TypeChars('\u00EF'); return false;">ï</button> <button onclick="TypeChars('\u00F4'); return false;">ô</button> <button onclick="TypeChars('\u00F9'); return false;">ù</button> <button onclick="TypeChars('\u00FB'); return false;">û</button> <button onclick="TypeChars('\u00FC'); return false;">ü</button>
</div>
<button id="CheckButton2" class="FuncButton" onmouseover="FuncBtnOver(this)" onfocus="FuncBtnOver(this)" onmouseout="FuncBtnOut(this)" onblur="FuncBtnOut(this)" onmousedown="FuncBtnDown(this)" onmouseup="FuncBtnOut(this)" onclick="CheckAnswers()"> Correction </button>
</div>
<div class="Feedback" id="FeedbackDiv">
<div class="FeedbackText" id="FeedbackContent"></div>
<button id="FeedbackOKButton" class="FuncButton" onfocus="FuncBtnOver(this)" onblur="FuncBtnOut(this)" onmouseover="FuncBtnOver(this)" onmouseout="FuncBtnOut(this)" onmousedown="FuncBtnDown(this)" onmouseup="FuncBtnOut(this)" onclick="HideFeedback(); return false;"> OK </button>
</div>
<!-- BeginBottomNavButtons -->
<div class="NavButtonBar" id="BottomNavBar">
<button class="NavButton" onfocus="NavBtnOver(this)" onblur="NavBtnOut(this)" onmouseover="NavBtnOver(this)" onmouseout="NavBtnOut(this)" onmousedown="NavBtnDown(this)" onmouseup="NavBtnOut(this)" onclick="history.back(); return false;"><=</button>
</div>
<!-- EndBottomNavButtons -->
<!-- BeginSubmissionForm -->
<!-- EndSubmissionForm -->
</body>
</html>

