';
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 StartUp(){
//Write the top frame
WriteFeedback(Instructions);
if ((is.mac)&&(is.ns)) {
FocusBoxes = false;
}
//Reduce array if required
if (QsToShow < I.length){
ReduceItems();
}
//Shuffle stuff if required
if (ShuffleQs == true){
I = Shuffle(I);
}
//Create arrays
CreateStatusArrays();
//Show the first question or all of them
if (ShowOneByOne == false){
ShowAllQs();
}
else{
ShowQuestion(CurrQNum);
}
//Focus the first box
var Box = eval('BottomFrame.document.QForm0.Guess');
if (Box != null){
Box.focus();
}
}
I = new Array();
I[0] = new Array();
I[0][0]='Wie viele Amtssprachen hat die Schweiz?
Sprachenkarte';
I[0][1] = new Array();
I[0][1][0] = new Array();
I[0][1][0][0]='4';
I[0][1][1] = new Array();
I[0][1][1][0]='vier';
I[1] = new Array();
I[1][0]='Wie hei\u00DFt die Hauptstadt der Schweiz?';
I[1][1] = new Array();
I[1][1][0] = new Array();
I[1][1][0][0]='Bern';
I[2] = new Array();
I[2][0]='Welches Land grenzt nicht an die Schweiz?
Italien, Deutschland, Belgien, \u00D6sterreich, Frankreich?
Landkarte';
I[2][1] = new Array();
I[2][1][0] = new Array();
I[2][1][0][0]='Belgien';
I[3] = new Array();
I[3][0]='Wie hei\u00DFt das Hochgebirge in der Schweiz?';
I[3][1] = new Array();
I[3][1][0] = new Array();
I[3][1][0][0]='Alpen';
I[3][1][1] = new Array();
I[3][1][1][0]='die Alpen';
I[4] = new Array();
I[4][0]='Wie viele Menschen leben in der Schweiz?
Etwas mehr als 4, 7, 10 Millionen
Statistische Vergleiche mit Portugal';
I[4][1] = new Array();
I[4][1][0] = new Array();
I[4][1][0][0]='7';
I[4][1][1] = new Array();
I[4][1][1][0]='sieben';
I[5] = new Array();
I[5][0]='Wie hoch ist der Ausl\u00E4nderanteil in der Schweiz?
5%? 10% 20%?
Statistischer Vergleich mit Portugal';
I[5][1] = new Array();
I[5][1][0] = new Array();
I[5][1][0][0]='20';
I[5][1][1] = new Array();
I[5][1][1][0]='20%';
I[6] = new Array();
I[6][0]='Die Schweiz ist eine Bundesrepublik. Die Staaten hei\u00DFen
Kantone - Staaten - L\u00E4nder?';
I[6][1] = new Array();
I[6][1][0] = new Array();
I[6][1][0][0]='Kantone';
I[6][1][1] = new Array();
I[6][1][1][0]='Kanton';
I[7] = new Array();
I[7][0]='Aus wie vielen Kantonen besteht die Schweiz?
4 - 12 - 26 ?
Hier finden Sie weitere Informationen zur Schweiz.';
I[7][1] = new Array();
I[7][1][0] = new Array();
I[7][1][0][0]='26';
Status = new Array();
function CreateStatusArrays(){
Status.length = 0;
for (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;
}
function ChangeQ(ChangeBy){
// if (Status[CurrQNum][0] < 1) {return;}
var NewNum = CurrQNum + ChangeBy;
if ((NewNum >= 0)&&(NewNum Longest){
Longest = I[QNum][1][i][0].length;
}
}
var AnsBox = '';
if (Longest > 20){
AnsBox = LongAnswer;
}
else{
AnsBox = ReplaceStuff('[AnswerSize]', (Longest + ''), ShortAnswer);
}
var AnsRow = ReplaceStuff('[AnswerBox]', AnsBox, ARow);
Temp += AnsRow;
Temp += BtnRow;
Temp = ReplaceStuff('[QNumber]', QNum+1, Temp);
Temp = ReplaceStuff('[QNum]', QNum, Temp);
return Temp;
}
function DisplayExercise(StuffToDisplay){
//Build the output string
var OutString = '';
OutString += '';
OutString += '
';
OutString += '';
OutString += TitleCode;
OutString += '';
OutString += '';
OutString += StuffToDisplay;
OutString += ' |
';
OutString += NavBar;
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 ShowAllQs(){
var Output = '';
for (var i=0; i
| ';
}
Output = Output + BuildQuestion(I.length-1);
Output = TableOpener + Output + TableCloser;
DisplayExercise(Output);
}
function ShowQuestion(QNum){
//First, create the Q number readout at the top
var Readout = (QNum+1) + '/' + I.length;
while (Readout.length < 7){
Readout = ' ' + Readout + ' ';
}
Readout = QButtonsOpener + Readout + QButtonsCloser;
var Output = BuildQuestion(QNum);
Output = TableOpener + Output + TableCloser;
DisplayExercise(Readout + Output);
//Replace the student's answer
var Box = eval('BottomFrame.document.QForm' + QNum + '.Guess');
if (Box != null){
if (Status[QNum][3].length > 0){
Box.value = Status[QNum][3];
}
Box.focus();
}
}
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 RemovePunctuation(InString){
var OutString = '';
for (i=0; i InArray[Longest].length){
Longest = i;
}
}
return Longest;
}
function CheckWords(Guess, Answer){
var Start = 0;
var End = 0;
var LoopCounter = 0;
var ReturnList = '';
var i = 0;
var j = 0;
GuessWords = new Array();
AnswerWords = new Array();
Guess = RemovePunctuation(Guess);
Answer = RemovePunctuation(Answer);
while (Guess.indexOf(' ', Start) > -1) {
End = Guess.indexOf(' ', Start);
GuessWords[LoopCounter] = Guess.substring(Start, End).toLowerCase();
LoopCounter++;
Start = End + 1;
}
GuessWords[LoopCounter] = Guess.substring(Start, Guess.length).toLowerCase();
Start = 0;
LoopCounter = 0;
while (Answer.indexOf(' ', Start) > -1) {
End = Answer.indexOf(' ', Start);
AnswerWords[LoopCounter] = Answer.substring(Start, End);
LoopCounter++;
Start = End + 1;
}
AnswerWords[LoopCounter] = Answer.substring(Start, Answer.length);
ReturnList = '';
for (i = 0; i < GuessWords.length; i++){
for (j = 0; j < AnswerWords.length; j++){
if (GuessWords[i] == AnswerWords[j].toLowerCase()){
ReturnList = ReturnList + AnswerWords[j] + ', ' ;
AnswerWords[j] = '';
break;
}
}
}
if (ReturnList.length > 0){
ReturnList = ReturnList.substring(0, ReturnList.length - 2);
}
return ReturnList;
}
function CalculateScore(){
Score = 0;
var DoneQs = 0;
for (i=0; i';};
}
if (Right > -1){
Status[QNum][0] = 1;
Output = CorrectResponse + ' ';
if (OtherAnswers.length > 0){
Output += TheseAnswersToo + '
' + OtherAnswers;
}
//Get the score for this question
var HintPenalty = (Status[QNum][2]*10)/CorrectAs[Right].length;
Status[QNum][4] = Math.floor((10 - Status[QNum][1]) - HintPenalty);
//Check whether the quiz is finished
var Finished = true;
for (var i=0; i 0){
CorrectBits[0][i] = RealAs[i].substring(0,CorrectBits[0][i].length);
}
CorrectBits[1][i] = CheckEnd(Guess, CorrectAs[i]);
if (CorrectBits[1][i].length > 0){
CorrectBits[1][i] = RealAs[i].substring(RealAs[i].length-CorrectBits[1][i].length,RealAs[i].length);
}
CorrectBits[2][i] = CorrectBits[0][i] + ' ... ' + CorrectBits[1][i];
CorrectBits[3][i] = CorrectBits[0][i] + RealAs[i].charAt(CorrectBits[0][i].length);
if (CorrectBits[3][i].charAt(CorrectBits[3][i].length-1) == ' '){
CorrectBits[3][i] += RealAs[i].charAt(CorrectBits[3][i].length);
}
CorrectBits[3][i] += '...'
}
var LongestCorrect = FindLongest(CorrectBits[2]);
if (CorrectBits[2][LongestCorrect].length > 5){
Output = ThisMuchIsCorrect + '
' + CorrectBits[2][LongestCorrect];
}
else{
if (ShowHint == false){
Output = IncorrectResponse;
}
}
//Include words found in the answer
var FoundWords = CheckWords(Guess, CorrectAs[LongestCorrect]);
if (FoundWords.length > 0){
Output += '
' + TheseWordsAppear + FoundWords;
}
if (ShowHint == true){
Output += '
' + GiveHint + CorrectBits[3][LongestCorrect];
}
WriteFeedback(Output);
//Put the focus back in the box
if (FocusBoxes==true){
eval('BottomFrame.document.QForm' + (QNum) + '.Guess').focus();
}
}
}
function ShowAnswers(QNum){
//If the question isn't done, mark it as done. Score will be 0;
if (Status[QNum][0] != 1){
//Question is not already done
Status[QNum][0] = 1;
Status[QNum][1] = -1;
Status[QNum][2] = -1;
}
//Get the correct answers and put them into a string
var Output = TheseCorrect + '
';
Output += I[QNum][1][0][0] + '
';
for (var i=1; i';
}
//Check whether the quiz is finished
var Finished = true;
for (var i=0; i
©Half-Baked Software. Loading...