//JCROSS CORE JAVASCRIPT CODE var InGap = false; var CurrentBox = null; var Feedback = ''; var AcrossCaption = ''; var DownCaption = ''; var Correct = '[strCorrect]'; var Incorrect = '[strIncorrect]'; var GiveHint = '[strGiveHint]'; var YourScoreIs = '[strYourScoreIs]'; var BuiltGrid = ''; var BuiltExercise = ''; var Penalties = 0; var Score = 0; var InTextBox = false; var Locked = false; var TimeOver = false; var InputStuff = '
[strClueNum]: '; InputStuff += '[strClue] '; InputStuff += ''; InputStuff += '[inclHint][/inclHint]'; InputStuff += '
'; var CurrBoxElement = null; var Finished = false; function StartUp(){ RemoveBottomNavBarForIE(); AcrossCaption = document.getElementById('CluesAcrossLabel').innerHTML; DownCaption = document.getElementById('CluesDownLabel').innerHTML; [inclSendResults] GetUserName(); [/inclSendResults] [inclPreloadImages] PreloadImages([PreloadImageList]); [/inclPreloadImages] [inclTimer] StartTimer(); [/inclTimer] } function GetAnswerLength(Across,x,y){ Result = 0; if (Across == false){ while ((x 0)){ Result += L[x][y].length; x++; } return Result; } else{ while ((y 0)){ Result += L[x][y].length; y++; } return Result; } } function GetEditSize(Across,x,y){ var Len = GetAnswerLength(Across,x,y); if (IsCJK(L[x][y].charCodeAt(0))){ Len *= 2; } return Len; } function ShowClue(ClueNum,x,y){ var Result = ''; var Temp; var strParams; var Clue = document.getElementById('Clue_A_' + ClueNum); if (Clue != null){ Temp = InputStuff.replace(/\[ClueNum\]/g, ClueNum); Temp = Temp.replace(/\[strClueNum\]/g, AcrossCaption + ' ' + ClueNum); strParams = 'true,' + ClueNum + ',' + x + ',' + y + ',\'[strBoxId]\''; Temp = Temp.replace(/\[strParams\]/g, strParams); Temp = Temp.replace(/\[strBoxId\]/g, 'GA_' + ClueNum + '_' + x + '_' + y); Temp = Temp.replace(/\[strEditSize\]/g, GetEditSize(true,x,y)); Temp = Temp.replace(/\[strMaxLength\]/g, GetAnswerLength(true,x,y)); Temp = Temp.replace(/\[strClue\]/g, Clue.innerHTML, Temp); Result += Temp; } Clue = document.getElementById('Clue_D_' + ClueNum); if (Clue != null){ Temp = InputStuff.replace(/\[ClueNum\]/g, ClueNum); Temp = Temp.replace(/\[strClueNum\]/g, DownCaption + ' ' + ClueNum); strParams = 'false,' + ClueNum + ',' + x + ',' + y + ',\'[strBoxId]\''; Temp = Temp.replace(/\[strParams\]/g, strParams); Temp = Temp.replace(/\[strBoxId\]/g, 'GD_' + ClueNum + '_' + x + '_' + y); Temp = Temp.replace(/\[strEditSize\]/g, GetAnswerLength(false,x,y)); Temp = Temp.replace(/\[strClue\]/g, Clue.innerHTML, Temp); Result += Temp; } document.getElementById('ClueEntry').innerHTML = Result; } function EnterGuess(Across,ClueNum,x,y,BoxId){ if (document.getElementById(BoxId) != null){ var Guess = document.getElementById(BoxId).value; var AnsLength = GetAnswerLength(Across,x,y); EnterAnswer(Guess,Across,AnsLength,x,y); } } function SplitStringToPerceivedChars(InString, PC){ var Temp = InString.charAt(0); if (InString.length > 1){ for (var i=1; i'; } Output += YourScoreIs + ' ' + Score + '%.
'; if (AllCorrect == false){ Output += Incorrect; Penalties++; } ShowMessage(Output); WriteToInstructions(Output); if ((AllCorrect == true)||(TimeOver == true)){ [inclSendResults] setTimeout('SendResults(' + Score + ')', 50); [/inclSendResults] [inclTimer] window.clearInterval(Interval); [/inclTimer] TimeOver = true; Locked = true; Finished = true; setTimeout('Finish()', SubmissionTimeout); } } 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.submit(); } } function TypeChars(Chars){ if (CurrentBox != null){ CurrentBox.value += Chars; } } [inclTimer] function TimesUp() { document.getElementById('Timer').innerHTML = '[strTimesUp]'; [inclPreloadImages] RefreshImages(); [/inclPreloadImages] TimeOver = true; Finished = true; CheckAnswers(); Locked = true; } [/inclTimer]