File "tib-quizzes-utils.min.js"

Path: /ThinkIB/bm_econ/js/tib-quizzes-utilsminjs
File size: 46.12 KB
MIME-type: text/plain
Charset: utf-8

 
Open Back
let editorInstances=[];let scoreAnswersMode=0;function tibQuiz(quiz=false){if(!quiz){quiz=$(".tib-quiz")}quiz.each(function(){var radioCounter=0;$(this).find(".exercise").each(function(){if($(this).find('input[type="radio"]').length>0){$(this).find('input[type="radio"]').attr("name","e-"+radioCounter)}radioCounter++});var dragContainers=[];$(this).find("p").each(function(){var $this=$(this);if($this.html().replace(/\s|&nbsp;/g,"").length==0){$this.remove()}});$(this).find(".modal-answer-showhide").each(function(){$(this).click(function(e){e.preventDefault();$(this).closest("div").next(".short-modal-answer, .uploader-modal-answer").toggle("fast")})});$(this).find(".written-question").each(function(){$(this).find('.manual-q-answer input[type="text"].short-answer-1-line').each(function(){$(this).attr("placeholder","1 line");$(this).attr("maxlength",limitPerLine);$(this).after('<div class="char-limit" data-limit="'+limitPerLine+'"><span></span></div>')});$(this).find(".manual-q-answer textarea.short-answer-multiple-lines").each(function(){var lines=$(this).attr("class").split(" ")[1].replace("l","");$(this).attr("placeholder",`${lines} lines`);var limit=limitPerLine*parseInt(lines);$(this).attr("maxlength",limit);$(this).after('<div class="char-limit" data-limit="'+limit+'"><span></span></div>')});$(this).find(".manual-q-answer textarea.short-answer-essay-words").each(function(){var lines=$(this).attr("class").split(" ")[1].replace("w-","");var minWords=lines.split("-")[0];var maxWords=lines.split("-")[1];$(this).attr("placeholder",`Min words: ${minWords}, max words: ${maxWords}`);$(this).attr("data-min-words",minWords);$(this).attr("data-max-words",maxWords);var wordLimit=$(this).closest(".manual-q-answer").find(".word-limit");wordLimit.attr("data-min-words",minWords);wordLimit.attr("data-max-words",maxWords)});$(this).find(".manual-q-answer .std-manual-answer").each(function(){if(!$(this).hasClass("well")){$(this).addClass("well");$(this).css("overflow","auto")}});$(this).find(".uploader-modal-answer").each(function(){if($.trim($(this).html())==""){$(this).prev(".answer-toggler").remove()}});$(this).find(".answer-toggler").each(function(){if(typeof sendLogs!="undefined"&&sendLogs){$(this).css("padding","0")}});$(this).find(".short-modal-answer.accordion-inner, .uploader-modal-answer.accordion-inner").each(function(){if(typeof sendLogs!="undefined"&&sendLogs){$(this).remove()}});$(this).find(".manual-q-explanation").each(function(){if(typeof sendLogs!="undefined"&&sendLogs){$(this).remove()}});if(!isStudent){$(this).find(".manual-q-explanation").each(function(){if($(this).text().trim().length){$(this).fadeIn("fast")}})}})})}function initInlineCKEditor(ids){$.each(ids,function(i,value){var wt=$("#"+value);var placeholder="";var lines="";if(wt.data("lines")){lines=wt.data("lines")=="1"?" line":" lines";placeholder=wt.data("lines")+lines}else if(wt.data("words")){placeholder=wt.data("words")+" words"}CKEDITOR.InlineEditor.create(document.querySelector("#"+value),{removePlugins:["Title"],placeholder:placeholder,wordCount:{displayCharacters:false,onUpdate:function(){}},simpleFileUpload:{url:"/pages/std/std-file-upload.php",fileTypes:[".pdf",".doc",".docx",".pages",".xls",".xlsx",".gif",".png",".jpeg",".jpg",".bmp",".webp"],allowUploads:isStudent},toolbar:{viewportTopOffset:50,items:["bold","italic","underline","strikethrough","subscript","superscript","|","alignment:left","alignment:right","alignment:center","bulletedList","numberedList","|","imageUpload","fileUpload","mathliveBox"]},image:{styles:["alignLeft","alignCenter","alignRight","full","side"],toolbar:["imageStyle:alignLeft","imageStyle:alignCenter","imageStyle:alignRight","|","imageStyle:full","imageStyle:side"],upload:{types:["jpg","jpeg","png","webp","gif","bmp"]}}}).then(function(editor){contentEditor=editor;editorInstances.push(contentEditor);cancelDropEvents(contentEditor);checkTypeUpload(contentEditor);checkS3Files(contentEditor);checkFocusTracking(contentEditor);initEssayWordsCounter(contentEditor);enableCKLinkFiles(contentEditor,"written-task")}).catch(error=>{console.error(error)})})}function checkFocusTracking(editor){editor.editing.view.document.on("change:isFocused",(evt,data,isFocused)=>{if(isFocused){var container=document.getElementById(editor.sourceElement.id);$(container).closest(".manual-q-answer").find("div.wt").each(function(){var wt=$(this);if(wt.attr("id")==container.id){wt.css("background-color","#fff");if(wt.hasClass("short-answer-multiple-lines")){wt.next().find("small.wt-limit-error").hide()}else if(wt.hasClass("short-answer-essay-words")){wt.nextAll().each(function(){if($(this).hasClass("word-limit")){$(this).find("small.wt-limit-error").hide()}})}}})}})}function initEssayWordsCounter(editor){var container=document.getElementById(editor.sourceElement.id);if($(container).is(".short-answer-essay-words, .short-answer-multiple-lines")){var wordCount=editor.plugins.get("WordCount");$(wordCount.wordCountContainer).insertAfter($(container));$(container).addClass("wt-essay")}}function checkMaxLinesReached(editor,container,maxLines){var currentLines=$(container).getLines();if(currentLines>maxLines){$(container).next().html('<p style="margin-bottom: 0px; color: red;">Max lines reached</p>')}else{$(container).next().html("")}}function saveWrittenTaskAsDraft(element,ids){var dedicatedUploader=$("#tib-written-task").find(".dedicated-uploader").length;if(ids.length>0||dedicatedUploader){element.on("click",function(e){e.preventDefault();saveAsDraft()})}else{$(".draft-task").remove()}if(typeof isExamMode!="undefined"&&isExamMode){$(".draft-task").remove()}}function numberQuizQuestions(){$(".tib-quiz").each(function(){let qBankIds=typeof $(this).attr("data-question-ids")!=="undefined"&&$(this).attr("data-question-ids").split(",").length===1;if($(this).find(".label.q-number").length===0){$(this).find(".exercise, .written-question").each(function(i){if(!qBankIds){$(this).css({"margin-top":"0","border-top-left-radius":"0"});i++;$('<div class="label q-number">'+i+"</div>").insertBefore($(this))}})}})}function dragOver(){$('input[type="text"], td.drag, div.q-question').on("dragover",function(e){e.preventDefault();$(this).focus();return false})}function dragLeave(){$('input[type="text"]').on("dragleave",function(e){e.preventDefault();$(this).blur();return false})}function drop(){$('input[type="text"]').on("drop",function(e){var event=e.originalEvent;var dropId=null;if($(this)[0].hasAttribute("data-draggable-id")){dropId=$(this).data("draggable-id");if($(e.target).closest("table.match-table").length){var mTable=$(e.target).closest("table.match-table");mTable.find("span.draggable").each(function(){var dragId=$(this).attr("id");if(dragId==dropId&&$.inArray("elementid",event.dataTransfer.types)>=0){$(this).removeClass("dragged")}})}else{var qContainer=$(e.target).closest(".exercise").find(".q-question");qContainer.find("span.draggable").each(function(){var dragId=$(this).attr("id");if(dragId==dropId&&$.inArray("elementid",event.dataTransfer.types)>=0){$(this).removeClass("dragged-1 dragged-7")}})}}if(event.dataTransfer.getData("elementId").length>1){event.preventDefault();var id=event.dataTransfer.getData("elementId");var content=$("#"+id).text();var length=content.length<2?"2ch":content.length+2+"ch";$(this).get(0).focus();$(this).width(length);$(this).val(content);var mInputWidth=$(this);if($(e.target).closest("table.match-table").length){$(this).attr("draggable",true);$(this).attr("data-draggable-id",id).data("draggable-id",id);var qAnswerWidth=$(e.target).closest("div.q-answer").width();if(mInputWidth.width()>qAnswerWidth*.7){$(this).closest("td.drop").css("width",qAnswerWidth*.7);mInputWidth.width("100%")}$(e.target).closest("table.match-table").find('span.draggable[id="'+id+'"]').addClass("dragged")}else{$(this).attr("draggable",true);$(this).attr("data-draggable-id",id).data("draggable-id",id);$(e.target).closest(".exercise").find('span.draggable[id="'+id+'"]').addClass("dragged-1")}bindDraggables();fixGapDropDraggables($(e.target))}if(event.dataTransfer.getData("gapId").length>1){event.preventDefault();var gid=event.dataTransfer.getData("gapId");if(dropId==gid){return false}var content=$("#"+gid).text();var length=content.length<2?"2ch":content.length+2+"ch";$(this).get(0).focus();$(this).width(length);$(this).val(content);var mInput=$(this);if($(e.target).closest("table.match-table").length){$(this).attr("draggable",true);$(this).attr("data-draggable-id",gid).data("draggable-id",gid);var qAnswerWidth=$(e.target).closest("div.q-answer").width();if(mInput.width()>qAnswerWidth*.7){$(this).closest("td.drop").css("width",qAnswerWidth*.7);mInput.width("100%")}if(mInput[0].hasAttribute("data-draggable-id")){$(e.target).closest("table.match-table").find("span#"+dropId).removeClass("dragged")}var originalGap=$(e.target).closest("table.match-table").find('input[data-draggable-id="'+gid+'"]').not(this);originalGap.val("");originalGap.css("width","auto");originalGap.removeAttr("draggable");originalGap.removeAttr("data-draggable-id")}else{$(this).attr("draggable",true);$(this).attr("data-draggable-id",gid).data("draggable-id",gid);if(mInput[0].hasAttribute("data-draggable-id")){$(e.target).closest(".exercise").find("span#"+dropId).removeClass("dragged-1 dragged-7")}var originalGap=$(e.target).closest(".q-answer").find('input[data-draggable-id="'+gid+'"]').not(this);originalGap.val("");originalGap.css("width","100px");originalGap.removeAttr("draggable");originalGap.removeAttr("data-draggable-id")}bindDraggables()}});$("td.drag").on("drop",function(e){if($(e.target).closest("table.match-table").length){var gapId=e.originalEvent.dataTransfer.getData("gapId");if(gapId!=""){$(e.target).closest("table.match-table").find("td.drop").each(function(){var dropCell=$(this);if(dropCell.find('input[data-draggable-id="'+gapId+'"]').length){var mGap=$(this).find('input[data-draggable-id="'+gapId+'"]');mGap.val("");mGap.css("width","auto");mGap.removeAttr("draggable");mGap.removeAttr("data-draggable-id")}});$(e.target).closest("table.match-table").find('span.q-text-draggable[id="'+gapId+'"]').removeClass("dragged")}}});$("div.q-question p").on("drop",function(e){var gapId=e.originalEvent.dataTransfer.getData("gapId");if(gapId!=""){var aContainer=$(e.target).closest(".exercise").find(".q-answer");if(aContainer.find('input[type="text"][data-draggable-id="'+gapId+'"]').length){var gap=aContainer.find('input[type="text"][data-draggable-id="'+gapId+'"]');gap.val("");gap.css("width","auto");gap.removeAttr("draggable");gap.removeAttr("data-draggable-id")}$(e.target).closest(".exercise").find('span.q-text-draggable[id="'+gapId+'"]').removeClass("dragged-1 dragged-7")}})}function fixGapDropDraggables(element){var qContainer=element.closest("div.exercise").find(".q-question");var aContainer=element.closest("div.exercise").find(".q-answer");qContainer.find("span.draggable").each(function(){var dragBox=$(this);var hasCounterpart=false;aContainer.find('input[type="text"][data-draggable-id]').each(function(){if($(this).data("draggable-id")==dragBox.attr("id")){hasCounterpart=true}});if(!hasCounterpart){dragBox.removeClass("dragged-1 dragged-7")}})}function adjustMatchExerciseHeight(){var maxHeight=null;if($(".tib-quiz").find("table.match-table").length){$("table.match-table tr").each(function(){var thisHeight=$(this).height();if(maxHeight==null||thisHeight>maxHeight)maxHeight=thisHeight}).height(maxHeight)}}function getLengthTextInputs(){$('.tib-quiz .exercise .q-answer p input[type="text"]').each(function(){if(!$(this).hasClass("fixed-width")){var c=$(this).val();var l=c.length+3;if(typeof c!=="undefined"&&c.length>0){$(this).width(l+"ch")}}});$('.tib-quiz .exercise .q-answer p input[type="text"]').keydown(function(e){if(!$(e.target).closest("table.match-table").length){var c=$(this).val();var l=c.length+6;$(this).width(l+"ch")}})}function countAnswerEssayWords(){$("textarea.short-answer-essay-words").each(function(){var textarea=$(this);textarea.on("keyup",function(){var wordLimit=$(this).closest(".manual-q-answer").find(".word-limit");var text=$(this).val();var textArray=answerArray=[];text=text.replace(/[\r\n\.\?\!]/gm," ");text=text.replace(/\s+/gm," ");text=text.trim();textArray=text.split(" ");for(let i=0;i<textArray.length;i++){const element=textArray[i];if(element.length>0){answerArray.push(element)}}autoresizeTextarea(this);getEssayWordStatus(answerArray.length,wordLimit)})})}function autoresizeTextarea(textarea){$(textarea).height("2em");$(textarea).height($(textarea)[0].scrollHeight+10+"px")}function getEssayWordStatus(words,wordLimit){var minWords=parseInt(wordLimit.data("min-words"));var maxWords=parseInt(wordLimit.data("max-words"));if(words>0){wordLimit.show();wordLimit.find("span").text(words==1?words+" word":words+" words");if(words<minWords||words>maxWords){wordLimit.find("span").css("color","#b33")}else{wordLimit.find("span").css("color","green")}}else{wordLimit.hide()}}function submitManualTask(){$("a.submit-manual-task").on("click",function(e){e.preventDefault();var quizIdsArray=[];var emptyInputs=false;var noAnswerSubmitted=true;var isExam=typeof examTime!=="undefined";var quiz=$("#main-content").find("#tib-written-task");var dedicatedUploader=$("#main-content").find(".dedicated-uploader");quiz.each(function(){quizIdsArray.push($(this).attr("data-id"));if(dedicatedUploader.length&&dedicatedUploader.find("ul li.dedicated-upload-file").length){noAnswerSubmitted=false;return false}if($(this).find(".manual-q-answer .wt").length>0){$(this).find(".manual-q-answer .wt").each(function(){var content=$(this).text().trim();emptyInputs=content=="";var hasImage=$(this).find("figure.image > img").length;var hasLink=$(this).find("a.ck-link-file").length;if(content.length>0||hasImage||hasLink){noAnswerSubmitted=false}})}else{$(this).find(".manual-q-answer :input").each(function(){var content=$(this);if(content.val().length>0){noAnswerSubmitted=false}emptyInputs=content.val().length<1&&!isExam})}});$(this).html('<i class="fa fa-spin fa-circle-o-notch"></i> Submitting...');quiz.find("div.char-limit, div.word-limit, div.ck-word-count").remove();quiz.find(".ck-widget__type-around__button, .ck-widget__type-around, .ck-widget__resizer").remove();quiz.find(".ck-word-count").remove();var writtenQuestionsBlocks="";quiz.each(function(i){if(typeof $(this).data("structure")==="undefined"){var auxQuestionBlock="";if($(this).find(".manual-q-answer .wt").length>0){$(this).find(".manual-q-answer .wt").each(function(){var inputAnswer=$(this);var content=inputAnswer.html();inputAnswer.replaceWith('<div class="std-manual-answer">'+content+"</div>")})}else{$(this).find(".manual-q-answer :input").each(function(){var inputAnswer=$(this);inputAnswer.attr("value",inputAnswer.val());inputAnswer.after('<p class="std-manual-answer">'+inputAnswer.val()+"</p>");inputAnswer.remove()})}if($(this).hasClass("tib-quiz")){writtenQuestionsBlocks=$(this)}else{auxQuestionBlock=$(this);writtenQuestionsBlocks.append(auxQuestionBlock.html())}}});var completedButton=writtenQuestionsBlocks.find("#manual-task-checker");writtenQuestionsBlocks.find("#manual-task-checker").remove();var taskID="";if(typeof $(this).attr("data-task-id")!=="undefined"){taskID=$(this).attr("data-task-id")}$(".dedicated-uploader").find(".header").text(`Your answer(s)`);$("#dedicated-upload-form").find('input[type="hidden"]').remove();var contents=$("#dedicated-upload-form").contents();$("#dedicated-upload-form").replaceWith(contents);$('label[for="upload-dedicated-attachment"], span.total-files, #upload-dedicated-attachment').remove();$("#dedicated-upload-list").css("padding","10px");$("#dedicated-upload-list").find("li.dedicated-upload-file").each(function(){$(this).find("i.remove-attachment").remove()});var writtenTaskContent=conversionForMathlive(writtenQuestionsBlocks[0].outerHTML);saveAsWritingTask(writtenTaskContent,quizIdsArray,taskID,noAnswerSubmitted);writtenQuestionsBlocks.append(completedButton)})}function conversionForMathlive(content){var convert=content.replace(/<math-field[^>]*>/g,'<math-field class="math-tex">');convert=convert.replace(/math-field/g,"span");convert=convert.replace(/contenteditable="[^"]*"/g,"");return convert}var bindDraggables=function(){$(".draggable").off("dragstart").on("dragstart",function(e){if(!e.target.id){e.target.id=(new Date).getTime()}e.originalEvent.dataTransfer.setData("elementId",e.target.id);if($(e.target).closest("table.match-table").length){var draggableId=$(this).attr("id");if($(e.target).closest("table.match-table").find('input[data-draggable-id="'+draggableId+'"]').length){e.preventDefault();return false}}});$(".draggable").off("dragend").on("dragend",function(e){if($(e.target).closest("table.match-table").length){$(e.target).closest("td").removeClass("dragged")}else{var draggableId=$(this).attr("id");var qAnswerContainer=$(this).closest(".exercise").find(".q-answer");if(!qAnswerContainer.find('input[data-draggable-id="'+draggableId+'"]').length){$(this).removeClass("dragged-1 dragged-7")}}});$('input[type="text"][data-draggable-id]').off("dragstart").on("dragstart",function(e){e.originalEvent.dataTransfer.setData("gapId",e.target.getAttribute("data-draggable-id"))})};var preventMatchKeyInput=function(){$('input[type="text"]').on("keypress",function(e){if($(e.target).closest("table.match-table").length){e.preventDefault()}});$('input[type="text"]').on("input",function(e){if($(e.target).closest("table.match-table").length){$(this).val("");$(this).css("width","auto");var draggableId=$(this).data("draggable-id");$(e.target).closest("table.match-table").find('span.q-text-draggable[id="'+draggableId+'"]').removeClass("dragged");$(this).removeAttr("draggable");$(this).removeAttr("data-draggable-id")}})};var countCharsLeft=function(){$('.manual-q-answer input[type="text"].short-answer-1-line').each(function(){var maxLength=$(this).next("div.char-limit").attr("data-limit");keyUp(maxLength,$(this))});$(".manual-q-answer textarea.short-answer-multiple-lines").each(function(){var maxLength=$(this).next("div.char-limit").attr("data-limit");keyUp(maxLength,$(this))})};function removeEmptyModelAnswers(){$(".manual-q-answer ").find(".short-modal-answer.accordion-inner").each(function(){if($(this).text().trim().length===0&&$(this).find("img, iframe").length===0){$(this).prev("div").remove()}})}function addShowModelAnswerExplanation(){$(".tib-quiz").find(".written-question").each(function(){var showModelAnswer=$(this).find("a.modal-answer-showhide");if(showModelAnswer.length){showModelAnswer.html(`
                <i class="fa fa-eye"></i> Show model answer
                <br>
                <small style="color: #333;">(Students can only see the model answer after they have submitted the task)</small>
            `)}})}function logQuiz(button,quiz,response,notRequired=false){checkAndCalcQuiz(button,quiz,response,false,notRequired)}function checkAndCalcQuiz(button,quiz,response,isPageViewer,notRequired){var seeScore=true;var seeAnswers=true;if(response!=undefined){seeScore=response.ss;seeAnswers=response.sa}if((!$("#quiz-scored").length||!$("#quiz-marked").length)&&(!seeScore||!seeAnswers)){alert("You cannot do this task again until after the deadline");return false}button.html('<i class="fa fa-spin fa-circle-o-notch"></i> Checking...');var mScoreMarks=[];var logger={};var s=0,nom=0,den=0,m=new Array([]);$.when(isPageViewer?checkAllExercisesPageViewer(button.closest(".tib-quiz")):checkAllExercises(quiz,response)).then(function(scoreMarks){mScoreMarks=scoreMarks;$.each(scoreMarks,function(i,sm){s+=parseFloat(sm.score);m=sm.mark.split("/");nom+=parseInt(m[0]);den+=parseInt(m[1])})});var calcScore=parseFloat(s/den*100);var totalScore=Math.round(calcScore);var totalMark=nom+"/"+den;scoreContainer=button.closest(".totals").find("span.score");if(seeScore){if(totalScore==100){scoreContainer.addClass("A")}else if(totalScore>70){scoreContainer.addClass("B")}else if(totalScore>50){scoreContainer.addClass("C")}else if(totalScore>30){scoreContainer.addClass("D")}else{scoreContainer.addClass("E")}scoreContainer.append("<strong>"+totalMark+'</strong>&nbsp;<small style="opacity: .8">('+totalScore+"%)</small>")}button.remove();$("#save-quiz-progress").remove();if(notRequired)return;if($("#quiz-scored").length){if(seeScore&&seeAnswers){$("#quiz-scored").val(totalScore)}$("#quiz-scored").trigger("change")}if($("#quiz-marked").length){if(seeScore&&seeAnswers){$("#quiz-marked").val(totalMark)}logger=quizLogger(quiz,mScoreMarks);saveQuizLog(logger,totalScore)}}function saveAsDraft(showMsg=true,type="written-task"){if(typeof isExamMode!="undefined"&&isExamMode){return}if(typeof sendLogs=="undefined"){return}var quiz=null;var taskId=null;switch(type){case"written-task":quiz=$("#tib-written-task");taskId=$("a.save-as-draft").data("task-id");break;case"written-answer":case"model-answer":quiz=$(".dedicated-uploader");taskId=$("#submit-upload-answer").data("task-id");break}if(quiz==null||!quiz.length){return}quiz.find(".manual-q-answer").each(function(){$(this).find(".wt").css("background-color","#fff");$(this).find(".wt-limit-error").each(function(){$(this).remove()});$(this).find(".ck-fake-selection-container").each(function(){$(this).remove()})});var draftData=quiz[0].outerHTML;var url="pages/std/std-task-write.php?action=save-written-draft";var data={ticket:$("#ticket").val(),task_id:taskId,student_id:studentID,content:draftData,type:type,manual:true};$.post(url,data,function(response){if(response.success=="1"){if(type=="written-task"){deleteS3Files(quiz)}if(showMsg){var successMsg=$(['<div class="alert alert-success" style="margin-bottom: 0; margin-top: 10px;">','<i class="fa fa-check-circle-o"></i> ',"<strong>Task successfully saved as draft</strong>","</div>"].join(""));quiz.find("#manual-task-checker").before(successMsg);successMsg.show("fast").delay(5e3).hide("slow",function(){$(this).remove()})}}else{alert(response.msg)}},"json")}function saveAsWritingTask(quizAnswer,quizIdsArray,taskID="",emptyTask){var isExam=typeof examTime!=="undefined";var url="pages/std/std-task-write.php?action=send-written-task";var data={ticket:$("#ticket").val(),std_task_id:$("#std-task-id").val(),student_ID:studentID,"task-ID":taskID,content:quizAnswer,isExam:isExam,quiz_ids:JSON.stringify(quizIdsArray),empty_task:emptyTask};$.post(url,data,function(response){if(response["success"]=="1"){sendLogs=false;controlExamInCombinedTask();deleteS3Files($(quizAnswer));$("div.alert").replaceWith('                <div class="alert alert-success" style="margin-bottom: 10px; margin-top: 10px;">                     <i class="fa fa-check-circle-o"></i>                     <strong>Task successfully submitted</strong>                 </div>            ');$("div.alert").show("fast").delay(3e3).hide("slow");$("#main-content").find("#tib-written-task").each(function(){$(this).find(".manual-q-answer .std-manual-answer").each(function(){var responseParagraph=$(this);responseParagraph.addClass("well");responseParagraph.css("margin-bottom","10px");responseParagraph.find("p").last().css("margin-bottom","0")})});$("#main-content").find("#tib-written-task").each(function(){var tibQuiz=$(this);if(response["tib_quizzes"]!=null){$.when(getEditorAnswers(response["tib_quizzes"])).then(function(answers){appendEditorAnswers(tibQuiz,answers,"right")})}showEssayWordLimit()});$(".submit-manual-task, .draft-task, .return-to-all-tasks").hide();$("#return-my-tasks-q").show();$("#task-completed-badge-written-task").show()}else{$("a.submit-manual-task").html('<i class="fa fa-fw fa-check-square-o"></i> Submit task');alert(response["msg"])}},"json")}function getEditorAnswers(response){var tibQuizzes=JSON.parse(response);var editorAnswers={};$.each(tibQuizzes,function(id,content){var domContent=$($.parseHTML(content));var stdAnswersArray=[];domContent.find(".manual-q-answer").each(function(i){var manualAnswer=$(this);if(manualAnswer.hasClass("uploader")){var input=manualAnswer;stdAnswersArray.push(input.html())}else{manualAnswer.find(".short-answer-input-1, .multiple-lines-answer, .essay-words-answer").each(function(){var input=$(this);stdAnswersArray.push(input.html())})}editorAnswers[i]=stdAnswersArray})});return editorAnswers}function getEditorNotes(response){var tibQuizzes=JSON.parse(response);var editorNotes=[];$.each(tibQuizzes,function(id,content){var domContent=$($.parseHTML(content));domContent.siblings(".manual-q-field").find(".manual-q-explanation").each(function(i){editorNotes.push($(this).html().trim())})});return editorNotes}function appendEditorAnswers(tibQuiz,editorAnswers,align){if($.isEmptyObject(editorAnswers)){return}var answerIndex=-1;tibQuiz.find(".written-question .manual-q-answer").each(function(pos){if(editorAnswers[pos]==null){return}var answersArray=editorAnswers[pos];$(this).find(".std-manual-answer").each(function(i){var element=$(this);answerIndex+=1;var editorAnswer=answersArray[answerIndex];editorAnswer=editorAnswer.replace(/&nbsp;/g,"");if(editorAnswer.trim().length>0){element.after('<div style="text-align: '+align+'; cursor: pointer;">                         <a class="modal-answer-showhide href="#" style="margin-'+align+': 5px;">                         <i class="fa fa-eye"></i> Show model answer</a>                     </div>                     <div class="short-modal-answer accordion-inner" style="display: none;">'+editorAnswer+"</div>")}else{element.css("margin-bottom","10px")}});$(this).on("click",".modal-answer-showhide",function(e){e.preventDefault();$(this).closest("div").next(".short-modal-answer").toggle("fast")})});tibQuiz.find(".written-question .uploader-answer").each(function(pos){var editorAnswer=editorAnswers["0"][pos];var element=$(this);if(editorAnswer.trim().length>0){element.html('<div style="text-align: '+align+'; cursor: pointer; padding: 12px; background: #fffef0; border-color: #fff4ba;">                     <a class="modal-answer-showhide href="#" style="margin-'+align+': 5px;">                     <i class="fa fa-eye"></i> Show model answer</a>                 </div>                 <div class="short-modal-answer accordion-inner" style="display: none;">'+editorAnswer+"</div>")}$(this).next("div").remove();$(this).on("click",".modal-answer-showhide",function(e){e.preventDefault();$(this).closest("div").next(".short-modal-answer").toggle("fast")})})}function appendEditorNotes(tibQuiz,editorNotes){editorNotes=editorNotes.filter(function(entry){return entry!=""});if(editorNotes.length>0){tibQuiz.find(".written-question .manual-q-answer, .written-question .uploader-answer").each(function(pos){if(editorNotes[pos]==null){return}var answerBlock=$(this);var notes=editorNotes[pos];notes=notes.replace(/&nbsp;/g,"");if(typeof notes!="undefined"&&notes.trim().length>0){answerBlock.after('<div class="manual-q-explanation" style="display: block;">                         <p style="color: rgba(0, 98, 102, 0.5);">'+notes+"</p>                     </div>")}})}}function checkEmptyNotes(){$(".manual-q-explanation").each(function(){var notesBox=$(this);notesBox.find("p:empty").remove();if(!$.trim(notesBox.html())){notesBox.hide()}})}function keyUp(maxLength,element){element.keyup(function(){var length=element.val().length;var length=maxLength-length;if(length==0){element.css("margin-bottom","0");element.next("div.char-limit").find("span").text("Word limit reached!")}else{element.next("div.char-limit").find("span").text("");element.css("margin-bottom","")}})}function checkAllExercises(quiz,response){var nQuestion=0;var scoreMarks=[];quiz.find(".exercise").each(function(){if(response!=null){var scoreMark=checkExercise($(this),response,nQuestion);scoreMarks.push(scoreMark);nQuestion++}else{var scoreMark=checkExerciseAnswers($(this),nQuestion);scoreMarks.push(scoreMark);nQuestion++}});return scoreMarks}function checkExerciseAnswers(exercise,nQuestion){var exerciseAnswer={};var hashedAnswers=[];var stdOrderAnswered=[];var exerciseType="";exercise.find(".q-answer").each(function(){var qAnswer=$(this);$(this).find("input").each(function(index){var input=$(this);exerciseType=input.attr("type");if(input.attr("type")==="text"){var gapAnswer=$.trim(input.val());gapAnswer=gapAnswer.replace(/["]/g,"''");hashedAnswers.push(gapAnswer);input.closest("p").css("pointer-events","none")}if(input.attr("type")==="radio"||input.attr("type")==="checkbox"){if(qAnswer.find("table.table-true-false").length){exerciseType="true-false"}if(input.is(":checked")){var label=input.parent("label");var answerHashed=label.attr("data-answer");hashedAnswers.push(answerHashed);stdOrderAnswered.push(index)}input.attr("disabled",true)}});if($(this).find("math-field").length>0&&typeof ComputeEngine==="object"){exerciseType="math-input";$(this).find("math-field").each(function(index){var mathAnswer="";var sv="";if($(this).data("sv")){sv=window.atob($(this).data("sv"))}var computeEngine=getComputeEngine(sv);var uLatex=$(this)[0].getValue("latex-expanded");if(uLatex!==""){var uExpr=computeEngine.parse(uLatex);mathAnswer="\\("+uLatex+"\\)"+"##"+"\\("+uExpr.N().latex+"\\)"}hashedAnswers.push(mathAnswer)})}});exerciseAnswer["type"]=exerciseType;exerciseAnswer["answers"]=hashedAnswers;exerciseAnswer["order"]=stdOrderAnswered;return exerciseAnswer}function checkExercise(exercise,response,nQuestion){cAnswers=response.structure;var seeScore=response.ss;var seeAnswers=response.sa;var chkCorrectness=typeof response.chkCorrectness==="boolean"?response.chkCorrectness:false;nCorrect=0;nAnswers=0;isRadio=false;var score=0,mark="";exercise.find(".btn.check").remove();if(chkCorrectness){exercise.find(".btn.reset").show()}if(!seeAnswers||chkCorrectness){exercise.find(".q-explanation, .explanation").remove()}var explanation="";if($.trim(exercise.find(".q-explanation, .explanation").html())){exercise.find(".q-explanation").attr("class","explanation");explanation=exercise.find(".explanation").detach()}var answers=exercise.find(".q-answer");exercise.find(".q-answer").each(function(){var c=cAnswers["question"+nQuestion]["answers"];if(isTrueFalseExercise($(this))){var nTr=0;$(this).find("tr").each(function(){var correct=c[nTr];var tr=$(this);tr.find("input").each(function(){let label=$(this).closest("label");let cleaningVal=typeof label.attr("data-answer")!=="undefined"?label.attr("data-answer"):label.text().trim();correctCheckboxesOrRadios($(this),true,cleaningVal,correct,seeAnswers,chkCorrectness)});nTr++})}else{$(this).find("input").each(function(){var nCorrectAnswers=c.length;var questionAnswer=$(this).closest("div.q-answer");if($(this).attr("type")==="text"){var a=$.trim($(this).val());a=a.replace(/["]/g,"''");nAnswers++;if(c[0].toLowerCase()==a.toLowerCase()){$(this).addClass("correct");nCorrect++}else{$(this).addClass("fail");if(!chkCorrectness){var add='&nbsp;[<strong style="color: #444;">'+c[0]+"</strong>]&nbsp;";$(this).next(".review").append(add)}}c.shift()}if($(this).attr("type")==="radio"||$(this).attr("type")==="checkbox"){var label=$(this).parent("label");if(typeof label.attr("data-answer")!=="undefined"){var answerHashed=label.attr("data-answer");correctCheckboxesOrRadios($(this),_isTrueFalseExercise=false,answerHashed,c,seeAnswers,chkCorrectness)}else{var optionLetter=label.find(".option-letter");label.find(".option-letter").remove();var cleaningVal=label.text().trim();label.prepend(optionLetter);cleaningVal=cleaningVal.replace(/&nbsp;|\s+/g," ");if($(this).parent("label").find("img").length>0){var img=$(this).parent("label").find("img");var htmlImg="";for(var i=0;i<img.length;i++){htmlImg+=img[i].outerHTML}cleaningVal+=htmlImg}var mathJaxId=$(this).parent("label").find("script").attr("id");if(typeof mathJaxId!=="undefined"&&mathJaxId.match(/MathJax-Element-[0-9]*/i)!==null&&$("#"+mathJaxId).length){var mathJaxAnswer=$("#"+mathJaxId).text();cleaningVal=mathJaxAnswer;c=c.map(function(answer){return answer.replace(/^\\\(|\\\)$/gm,"")})}if($(this).attr("type")==="checkbox"){var nTotalAnswered=questionAnswer.find('input[type="checkbox"]').filter(":checked").length;if(nTotalAnswered>nCorrectAnswers){return}}correctCheckboxesOrRadios($(this),_isTrueFalseExercise=false,cleaningVal,c,seeAnswers,chkCorrectness)}}});if(typeof ComputeEngine==="object"){$(this).find("math-field").each(function(){const correctAnswer=c[0].split("##");const mathField=$(this);const computedData=computeMathField(mathField,correctAnswer);nAnswers++;if(computedData.isCorrect){mathField.addClass("correct");nCorrect++}else{mathField.addClass("fail");if(!chkCorrectness){const add='&nbsp;<strong style="color: #444;"><span class="math-tex">\\('+computedData.TeX+"\\)</span></strong>&nbsp;";$(this).next(".review").append(add);MathLive.renderMathInDocument()}}c.shift()})}}});if(nCorrect<0){nCorrect=0}score=nCorrect;mark=nCorrect+"/"+nAnswers;var scoreContainer=exercise.find(".actions .score");if(seeScore&&seeAnswers){scoreContainer.attr("data-score",score);scoreContainer.attr("data-mark",mark)}if(seeAnswers){if(score==100){scoreContainer.addClass("A")}else if(score>70){scoreContainer.addClass("B")}else if(score>50){scoreContainer.addClass("C")}else if(score>30){scoreContainer.addClass("D")}else{scoreContainer.addClass("E")}answers.append(explanation)}var quiz=$(this).closest(".tib-quiz");if(quiz.find(".btn.check").length==0){quiz.find(".check-total").trigger("click")}return{score:score,mark:mark}}function correctCheckboxesOrRadios(input,_isTrueFalseExercise,cleaningVal,corrects,seeAnswers,chkCorrectness){var isCorrect=!_isTrueFalseExercise?corrects.includes(cleaningVal):corrects==cleaningVal;if(input.is(":checked")){if(isCorrect){if(seeAnswers){input.parent().addClass("correct");input.parent().append('&nbsp<i class="fa fa-check colored"></i>')}nCorrect++;if(input.attr("type")==="radio"&&!isRadio){nAnswers++;isRadio=true}if(input.attr("type")==="checkbox"){nAnswers++}}else{if(seeAnswers){input.parent().addClass("fail");input.parent().append('&nbsp<i class="fa fa-remove colored"></i>')}}}else{if(isCorrect){if(input.attr("type")==="radio"&&!isRadio){nAnswers++;isRadio=true}if(input.attr("type")==="checkbox"){nAnswers++}if(seeAnswers&&!chkCorrectness){input.parent().addClass("correct")}}}input.attr("disabled",true)}function isTrueFalseExercise(answerZone){return answerZone.find(".table-true-false").length>0}function buttonRulesWrittenAnswers(){$(".show-solution").click(function(e){e.preventDefault();$(this).closest(".exercise").find(".q-solution").show();$(this).fadeOut("fast",function(){$(this).remove()})});$(".show-answer").click(function(e){e.preventDefault();$(this).closest(".exercise").find(".q-answer").show();$(this).fadeOut("fast",function(){$(this).remove()})})}function buttonRulesModelAnswers(){$(".show-explanation").click(function(e){e.preventDefault();$(this).closest(".exercise").find(".q-explanation").show();$(this).fadeOut("fast",function(){$(this).remove()})})}function hideUploader(){if(typeof isStudent!="undefined"&&!isStudent){var uploader=$("#main-column .tib-quiz").find(".dedicated-uploader");var preview=$("#main-column").find("section.quiz-preview");if(preview.length||uploader.length){uploader.find('label[for="upload-dedicated-attachment"]').attr("disabled",true)}}else{if(typeof sendLogs=="undefined"){var uploader=$("#main-column .tib-quiz").find(".dedicated-uploader");if(uploader.length){uploader.remove()}}}}function uploadDedicatedAttachments(){$("#upload-dedicated-attachment").on("change",function(e){e.preventDefault();var form=$("form#dedicated-upload-form");var totalStatus=$("span.total-files");var maxFiles=$(this).data("max");var files=$(this).get(0).files;if(files.length>0){if(!$("form#dedicated-upload-form").find($("ul#dedicated-upload-list")).length){$("form#dedicated-upload-form").append('<ul id="dedicated-upload-list"></ul>')}var total=$("#dedicated-upload-list").find("li.dedicated-upload-file").length;if(total+files.length>maxFiles||files.length>maxFiles){alert("You can only upload a maximum of "+maxFiles+(maxFiles>1?" files":" file"));return false}if(!isStudent||typeof sendLogs=="undefined"){$(files).each(function(i,file){appendUploadedFile(file)});getTotalUploadedFiles(totalStatus);return false}$(files).each(function(i,file){var fileName=encodeURIComponent(file.name);var extension=fileName.split(".").pop();var data=new FormData;data.append("ticket",$("#ticket").val());data.append("filename",file.name+"-"+Date.now()+"."+extension);data.append("typeUpload","fileUpload");data.append("upload",file);$.ajax({type:form.attr("method"),url:form.attr("action"),dataType:"JSON",data:data,processData:false,contentType:false,beforeSend:function(){totalStatus.html('Uploading...<i class="fa fa-spin fa-circle-o-notch"></i>')},success:function(response){if(response.uploaded){var url=response.url;appendUploadedFile(file,url);enableDisableUploadBtn(true);enableDisableSubmitBtn(false)}else if(response.error.message){alert(response.error.message)}},error:function(xhr){console.error(xhr.statusText+xhr.responseText)},complete:function(){getTotalUploadedFiles(totalStatus);var type=$("#submit-upload-answer").data("type");saveAsDraft(false,type)}})})}});$(".dedicated-uploader").on("click","i.remove-attachment",function(e){e.preventDefault();var attachment=$(this).closest("li");var totalStatus=$("span.total-files");if(!isStudent){attachment.fadeOut(500,function(){$(this).remove();getTotalUploadedFiles(totalStatus)});return false}let toDeleteFiles=[];let url="/pages/std/std-file-delete.php";toDeleteFiles.push(attachment.data("source"));var data={ticket:$("#ticket").val(),delete:toDeleteFiles};totalStatus.html('Deleting...<i class="fa fa-spin fa-circle-o-notch"></i>');$.post(url,data,function(response){if(response.deleted){attachment.fadeOut(500,function(){$(this).remove();total=getTotalUploadedFiles(totalStatus);saveAsDraft(false);enableDisableUploadBtn(false);if(total==0){enableDisableSubmitBtn(true)}})}},"json")})}function appendUploadedFile(file,url=null){var dataSource="";var fileLink='<a href="#" target="_blank">'+file.name+"</a>";if(isStudent&&url!=null){var source=url.substr(url.indexOf(".net/")+5);dataSource=' data-source="'+source+'"';fileLink='<a href="'+url+'" target="_blank">'+file.name+"</a>"}$("#dedicated-upload-list").append(`<li class="dedicated-upload-file"${dataSource}>
            <span>${fileLink}</span>
            <i class="fa fa-trash-o colored remove-attachment" title="Remove attachment"></i>
        </li>`)}function getTotalUploadedFiles(totalStatus){var total=$("#dedicated-upload-list").find("li.dedicated-upload-file").length;totalStatus.text(total>0?total+" file(s)":"");return total}function removeUploader(){if($(".tib-quiz").length&&$(".tib-quiz").find(".dedicated-uploader").length){$(".tib-quiz").find(".dedicated-uploader").remove()}}function enableDisableUploadBtn(disable){$("#dedicated-upload-form").find("label.form-label").attr("disabled",disable)}function enableDisableSubmitBtn(disable){$("#submit-upload-answer").toggleClass("disabled",disable)}function checkIndividualQuestionPageViewer(){$("section").on("click",".exercise .btn.check",function(e){e.preventDefault();var exercise=$(this).closest("div.exercise");checkExercisePageViewer(exercise);$(this).remove()})}function checkQuizPageViewer(){$("section").on("click",".tib-quiz .check-total",function(e){e.preventDefault();var button=$(this);var quiz=button.closest(".tib-quiz");checkAndCalcQuiz(button,quiz,undefined,true)})}function checkAllExercisesPageViewer(quiz){var scoreMarks=[];quiz.find(".exercise").each(function(){var scoreMark=checkExercisePageViewer($(this));scoreMarks.push(scoreMark)});return scoreMarks}function checkExercisePageViewer(exercise){var answers=exercise.find(".q-answer");var explanation=null;if($.trim(exercise.find(".q-explanation").html())){explanation=exercise.find(".q-explanation").attr("class","explanation").detach()}var nCorrect=0;var nAnswers=0;var score=0,mark="";var isRadio=false;if(exercise.find("label").length>0){exercise.find("label").each(function(){if($(this).find("input").hasClass("c")){$(this).addClass("correct")}if($(this).find("input").hasClass("c")&&!isRadio){isRadio=$(this).hasClass("radio");nAnswers+=1}if($(this).find("input").is(":checked")&&$(this).find("input").hasClass("c")){$(this).append('&nbsp;<i class="fa fa-check colored"></i>');nCorrect+=1}if($(this).find("input").is(":checked")&&!$(this).find("input").hasClass("c")){$(this).addClass("fail");$(this).append('&nbsp;<i class="fa fa-remove colored"></i>')}});if(nCorrect<0){nCorrect=0}}if(exercise.find('input[type="text"]').length>0){nAnswers=exercise.find('input[type="text"]').length;exercise.find('input[type="text"]').each(function(){var c=$.trim($(this).attr("data-c"));var a=$.trim($(this).val());a=a.replace(/["]/g,"''");if(c.toLowerCase()==a.toLowerCase()){$(this).addClass("correct");$(this).val(c);nCorrect+=1}else{var add='&nbsp;[<strong style="color: #444;">'+c+"</strong>]&nbsp;";$(this).addClass("fail");$(this).next(".review").append(add)}});if(nCorrect<0){nCorrect=0}}if(exercise.find("math-field").length>0&&typeof ComputeEngine==="object"){var regExpDelimiter=/^(\\[\[\(]|[\$]{2})(.*)(\\[\]\)]|[\$]{2})$/;exercise.find("math-field").each(function(){const mathField=$(this);const computedData=computeMathField(mathField);if(computedData.isCorrect){mathField.addClass("correct");nCorrect++}else{mathField.addClass("fail");const add='&nbsp;<strong style="color: #444;"><span class="math-tex">\\('+computedData.TeX+"\\)</span></strong>&nbsp;";mathField.next(".review").html(add);MathLive.renderMathInDocument()}nAnswers++});if(nCorrect<0)nCorrect=0}score=nCorrect;mark=nCorrect+"/"+nAnswers;var scoreContainer=exercise.find(".actions .score");scoreContainer.attr("data-score",score);scoreContainer.attr("data-mark",mark);if(score==100){scoreContainer.addClass("A")}else if(score>70){scoreContainer.addClass("B")}else if(score>50){scoreContainer.addClass("C")}else if(score>30){scoreContainer.addClass("D")}else{scoreContainer.addClass("E")}if(explanation){answers.append(explanation)}var quiz=$(this).closest(".tib-quiz");if(quiz.find(".btn.check").length==0){quiz.find(".check-total").trigger("click")}return{score:score,mark:mark}}function addMaxCheckboxesToAnswers(){$(".tib-quiz").each(function(){$(this).find(".exercise .q-answer").each(function(){var answerField=$(this);if($(this).find('input[type="checkbox"]').length>0){var nCorrect=$(this).find('input.c[type="checkbox"]').length;answerField.attr("data-mcb",nCorrect)}})})}function limitMultipleChoiceAnswers(quizExercise=false){if(!quizExercise){quizExercise=$(".exercise")}quizExercise.find(".q-answer").on("click",'input[type="checkbox"]',function(){if($(this).closest(".exercise").find(".table-true-false").length){if($(this).closest("tr").find("input:checked").length>1){$.when($(this).closest("tr").find('input[type="checkbox"]').prop("checked",false)).then($(this).prop("checked",true))}}else{var maxAnswers=$(this).closest("div.q-answer").data("mcb");var currentlyChecked=$(this).closest("div.q-answer").find('input[type="checkbox"]').filter(":checked").length;if(currentlyChecked>maxAnswers){$(this).prop("checked",false)}}})}function showMaxCorrectAnswers(){if(typeof siteName!=="undefined"&&siteName=="frenchorals"){return false}$(".tib-quiz").each(function(){$(this).find(".exercise .q-question").each(function(){if($(this).closest(".exercise").find(".table-true-false").length==0){var mcb=$(this).next().data("mcb");if(mcb>0){$(this).find("p:last-child").after(['<span class="badge badge-info pull-right" style="cursor: default;" ','title="Select the '+mcb+' correct answers">',mcb,"</span>"].join(""))}}})})}function alertMaxCorrectAnswers(quiz=false){if(!quiz){quiz=$(".tib-quiz")}quiz.each(function(){$(this).find(".exercise .q-question").each(function(){var question=$(this);if(!question.closest(".exercise").find(".table-true-false").length){var answer=$(this).next();var mcb=answer.data("mcb");answer.find('input[type="checkbox"]').on("click",function(e){var totalChecked=answer.find('input[type="checkbox"]:checked').length;if(totalChecked>mcb){this.checked=false;e.preventDefault();question.append(['<div class="alert alert-error alert-mcb" style="margin-bottom: 0;">','<button type="button" class="close" data-dismiss="alert">&times;</button>',"You can only select "+mcb+" options","</div>"].join(""));setTimeout(()=>{$(".alert-mcb").hide("fast",function(){$(this).remove()})},3e3)}})}})})}function showEssayWordLimit(){$(".word-limit").each(function(){var wordLimit=$(this);var minWords=wordLimit.data("min-words");var maxWords=wordLimit.data("max-words");wordLimit.append(`&nbsp;<small><em>(Limit: ${minWords}-${maxWords})</em></small>`)})}function addLettersBeforeOptions(questionDetail=false,quizExercise=false){var lettersArray=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"];if(!quizExercise){quizExercise=questionDetail?$(".modal-body .exercise"):$(".tib-quiz .exercise")}quizExercise.each(function(){$(this).find(".q-answer").each(function(){if($(this).find(".table-true-false").length){return}var inputs=$(this).find('input[type="radio"], input[type="checkbox"]');var putLetters=checkIfPutLetters(inputs);$(inputs).each(function(i,el){if(questionDetail){$(el).css("margin-right","1em")}if(putLetters){var letterSpan=$(`<strong class="option-letter">${lettersArray[i]}.</strong>`);$(el).closest("p, label").prepend(letterSpan)}})})})}function checkIfPutLetters(inputs){var check=false;$(inputs).each(function(i,el){var answerContent=$(el).closest("p, label").text();if(answerContent.match(/^\s+[A-Z][).-]?\s*?$/g)===null){check=true;return false}});return check}$.fn.getLines=function(){var lines=0;var clean=this;var dirty=this.clone();(function wrapCharacters(fragment){var parent=fragment;$(fragment).contents().each(function(){if(this.nodeType===Node.ELEMENT_NODE){wrapCharacters(this)}else if(this.nodeType===Node.TEXT_NODE){void function replaceNode(text){var characters=document.createDocumentFragment();text.nodeValue.trim().replace(/[\s\S]/gm,function wrapCharacter(character){characters.appendChild($("<character>"+character+"</>")[0])});parent.replaceChild(characters,text)}(this)}})})(dirty[0]);clean.replaceWith(dirty);lines=countLines(dirty);dirty.replaceWith(clean);return lines};function countLines(element){var lines=0;var greatestOffset=void 0;element.find("character").each(function(){if(!greatestOffset||this.offsetTop>greatestOffset){greatestOffset=this.offsetTop;++lines}});return lines}function controlExamInCombinedTask(){if(typeof isExamCombinedTask!=="undefined"&&isExamCombinedTask==="true"){sendLogs=true;var numberTasks=2;setNumExamCombTaskDone();var nCombTaskCompleted=getNumExamCombTaskDone();if(nCombTaskCompleted!==false){nCombTaskCompleted++;localStorage.setItem(combTaskID,nCombTaskCompleted)}if(nCombTaskCompleted==numberTasks){sendLogs=false;removeExamCountdownTimer();showReturnMyTasksBtn();localStorage.removeItem(combTaskID)}}else{removeExamCountdownTimer();showReturnMyTasksBtn()}}function showReturnMyTasksBtn(){if(!$(".return-to-all-tasks").length){if($("#return-my-tasks-q").length){$("#return-my-tasks-q").show()}if($("#return-my-tasks-w").length){$("#return-my-tasks-w").show()}}}function removeExamCountdownTimer(){if($("#std-countdown-timer").length){$("#std-countdown-timer").remove();onTimesUp()}}