Skip to content

Commit

Permalink
Timeline en Matching Text Moodle Answers fix
Browse files Browse the repository at this point in the history
  • Loading branch information
jorisburgers committed May 22, 2016
1 parent 551a553 commit 0d1643f
Show file tree
Hide file tree
Showing 2 changed files with 80 additions and 48 deletions.
Expand Up @@ -98,6 +98,12 @@
});
}

this.leavePage = function() {
if ($(x_currentPageXML).children().length > 0 && tracked != true) {
this.finishTracking();
}
}

this.init = function() {
$("#pageContents").data("audioW", 0);
numAttempts = 0;
Expand Down Expand Up @@ -150,7 +156,7 @@
{
numAttempts++;
}

textMatch.finishTracking();
if(XTGetMode() != "normal"){
$("#labelHolder .label").each(function() {
var $this = $(this);
Expand Down Expand Up @@ -190,7 +196,7 @@
allCorrect = false;
}
});
textMatch.finishTracking();

}
else{
if (!labelOffTarget){
Expand Down Expand Up @@ -274,7 +280,8 @@
.data({
"hint" :this.getAttribute("hint"),
"name" :this.getAttribute("name"),
"correct":this.getAttribute("p2")
"correct":this.getAttribute("p2"),
"id" :i
})
.find("h3").html(x_addLineBreaks(this.getAttribute("p1")));

Expand Down Expand Up @@ -350,31 +357,33 @@
var l_options = [],
l_correct = 0,
l_total = 0;
var tracked = true;

$("#labelHolder .label").each(function() {
$("#labelHolder .label").each(function(i) {
l_options = []
correct = false;
var $this = $(this);
l_total++;
var l_option={};
var l_placeholder = $this.find("div").val();
var l_draglabel = $this.data("target").val();
var l_placeholder = $this.data("currentTarget").text().trim();
var l_draglabel = $this.find("div").text().trim();
l_option.source = l_draglabel;
l_option.target = l_placeholder;
l_option.answer = l_draglabel + "-->" + l_placeholder;
l_answer = l_draglabel + "-->" + l_placeholder;
if ($this.data("target").is($this.data("currentTarget"))) {
l_correct++;
l_option.result = "Correct";
}else{
l_option.result = "Incorrect";
correct = true;
}
l_options.push(l_option);
XTExitInteraction(x_currentPage, $this.data("target").data("id"), correct, l_options, l_answer, $("#feedback").text());
});

if(XTGetMode() == "normal"){
$("#dragDropHolder .label")
.draggable("disable");
}

XTExitInteraction(x_currentPage, 0, (l_correct == l_total), l_options, "", $("#feedback").text());
XTSetPageScore(x_currentPage, (l_correct * 100.0)/l_total);
XTSetPageScore(x_currentPage, (l_correct * 100.0)/l_total);

}


Expand All @@ -389,24 +398,31 @@
correctOptions = [];
correctAnswer = [];
correctFeedback = [];

$(x_currentPageXML).children().each(
function(i)
{

correctOptions = []
var correctOption={};
var placeholder = this.getAttribute("p1");
var draglabel = this.getAttribute("p2");
var placeholder = $(this.getAttribute("p1")).text();
var draglabel = $(this.getAttribute("p2")).text();
correctOption.source = draglabel;
correctOption.target = placeholder;
correctOption.answer = draglabel + "-->" + placeholder;
correctAnswer = draglabel + "-->" + placeholder;
correctFeedback = "Correct"
correctOptions.push(correctOption);
XTEnterInteraction(x_currentPage, i, 'match', placeholder, correctOptions, correctAnswer, correctFeedback);
}
);
XTEnterInteraction(x_currentPage, 0, 'match', x_currentPageXML.getAttribute("name"), correctOptions, "", "");

}


this.createLabels = function() {
// randomise order and create labels


var $pageContents = $("#pageContents"),
labels = [],
tempLabels = $pageContents.data("labels").slice(0),
Expand All @@ -419,6 +435,7 @@
}
for (i=0; i<labels.length; i++) {
$("#labelHolder").append('<div class="label panel" id="label' + i + '" tabindex="' + (i+2) + '" title="' + labelTxt1 + '"><div class="labelTxt">' + x_addLineBreaks(labels[i].text) + '</div></div>');

var $thisLabel = $("#label" + i);
$thisLabel.data("target", labels[i].correct);

Expand Down
Expand Up @@ -82,7 +82,11 @@
});
}


this.leavePage = function() {
if ($(x_currentPageXML).children().length > 0 && tracked != true) {
this.finishTracking();
}
}

this.init = function() {
// store strings used to give titles to labels and targets when keyboard is being used (for screen readers)
Expand Down Expand Up @@ -122,9 +126,6 @@
var $this = $(this);
if ($this.data("target").is($this.data("currentTarget"))) {
correct++;
$this.html($this.html() + '<img class="tick" src="' + x_templateLocation + 'common_html5/tick.png" alt="' + x_getLangInfo(x_languageData.find("tick")[0], "label", "Tick") + '"></img>');
}else{
$this.html($this.html() + '<img class="tick" src="' + x_templateLocation + 'common_html5/cross.png" alt="' + x_getLangInfo(x_languageData.find("tick")[0], "label", "Tick") + '"></img>');
}
});
}
Expand All @@ -148,6 +149,17 @@
}
timeline.finishTracking();
}
if(!empty){
$("#labelHolder .label").each(function() {
var $this = $(this);
if ($this.data("target").is($this.data("currentTarget"))) {

$this.html($this.html() + '<img class="tick" src="' + x_templateLocation + 'common_html5/tick.png" alt="' + x_getLangInfo(x_languageData.find("tick")[0], "label", "Tick") + '"></img>');
}else{
$this.html($this.html() + '<img class="tick" src="' + x_templateLocation + 'common_html5/cross.png" alt="' + x_getLangInfo(x_languageData.find("tick")[0], "label", "Tick") + '"></img>');
}
});
}
$("#feedback").show();
});

Expand All @@ -170,6 +182,7 @@
.attr("title", targetTxt1 + " " + this.getAttribute("text"))
.find("h3").html(this.getAttribute("name"));
labels.push({text:this.getAttribute("text"), correct:$thisTarget});
$thisTarget.data("id", i);
});

var $pageContents = $("#pageContents");
Expand Down Expand Up @@ -234,7 +247,7 @@
// set tab index for targets - leaving space between them for a label to be put on it
var tabIndex = 1;
tabIndex += $pageContents.data("labels").length;
$targetHolder.find(".target").each(function() {
$targetHolder.find(".target").each(function(i) {
tabIndex++;
var $this = $(this);
$this.attr({
Expand All @@ -260,29 +273,31 @@

this.finishTracking = function()
{
var tracked = true;
var l_options = [],
l_correct = 0,
l_total = 0;
l_total = 0,
correct = false;

$("#labelHolder .label").each(function() {
$("#labelHolder .label").each(function(i) {

var $this = $(this);
l_total++;
var l_option={};
var tData = $this.data("target");
var l_placeholder = tData.html().trim();
var l_draglabel = $this.html().trim();
l_option.source = l_draglabel;
l_option.target = l_placeholder;
l_option.answer = l_draglabel + "-->" + l_placeholder;
l_options.push(l_option);

var tData = $this.data("currentTarget");
var l_placeholder = tData.text().trim();
var l_draglabel = $this.text().trim();
l_options = [];
option = {source:l_draglabel, target:l_placeholder};
l_answer = l_draglabel + "-->" + l_placeholder;
l_options.push(option);
correct = false;
if ($this.data("target").is($this.data("currentTarget"))) {
l_correct++;
l_option.result = "Correct";
}else{
l_option.result = "Incorrect";
correct = true;
}
l_options.push(l_option);
debugger;
XTExitInteraction(x_currentPage, tData.data("id"), correct, l_options, l_answer, $("#feedback").text());
l_total++;
});


Expand All @@ -292,7 +307,7 @@
$("#dragDropHolder .label").draggable("disable");
$("#button").hide();
}
XTExitInteraction(x_currentPage, 0, l_correct == l_total, l_options, "", $("#feedback").text());

XTSetPageScore(x_currentPage, (l_correct * 100.0)/l_total);
}

Expand All @@ -303,22 +318,22 @@
{
this.weighting = x_currentPageXML.getAttribute("trackingWeight");
}
XTSetPageType(x_currentPage, 'numeric', 1, this.weighting);
var correctOptions = [];
XTSetPageType(x_currentPage, 'numeric', $(x_currentPageXML).children().length, this.weighting);
$(x_currentPageXML).children().each(
function(i)
{
var correctOption={};
var placeholder = this.getAttribute("name");
var draglabel = this.getAttribute("text");
correctOption.source = draglabel;
correctOption.target = placeholder;
correctOption.answer = draglabel + "-->" + placeholder;
var placeholder = this.getAttribute("name").trim();
var draglabel = $(this.getAttribute("text")).text().trim();
options = [];
correctOption = {source:draglabel, target:placeholder};
correctOptions = [];
correctOptions.push(correctOption);

correctAnswer = draglabel + "-->" + placeholder;
XTEnterInteraction(x_currentPage, i, 'match', placeholder, correctOptions, correctAnswer, "Correct");
debugger;
}
);
XTEnterInteraction(x_currentPage, 0, 'match', x_currentPageXML.getAttribute("name"), correctOptions, "", "");

}


Expand Down

0 comments on commit 0d1643f

Please sign in to comment.