„Szerkesztő:Palotasb/common.js” változatai közötti eltérés
quiz.js |
version 2013.02.06. v1 |
||
| 25. sor: | 25. sor: | ||
*/ | */ | ||
(function (mw, $) { | |||
var questions = [], | var questions = [], | ||
| 31. sor: | 31. sor: | ||
uiContentElement, | uiContentElement, | ||
uiControlElements = {}, | uiControlElements = {}, | ||
config = new ConfObject(true, true) | config = new ConfObject(true, true), | ||
stats = new StatObject(); | stats = new StatObject(), | ||
defaultScoringMethod = +1, | |||
currentCodeID = "2013.02.06 v1"; | |||
init(); | if (init()) | ||
return true; | |||
else | |||
return false; | |||
function init() { | function init() { | ||
| 45. sor: | 45. sor: | ||
return false; | return false; | ||
} | } | ||
getDefaultScoringMethod(); | |||
parseQuestionsInDocument(); | parseQuestionsInDocument(); | ||
parseAnswerGroupsInQuestions(); | parseAnswerGroupsInQuestions(); | ||
| 50. sor: | 51. sor: | ||
uiPopulateQuizInterace(); | uiPopulateQuizInterace(); | ||
uiReset(); | uiReset(); | ||
return true; | |||
} | |||
function getDefaultScoringMethod() { | |||
var defScorMethText = $('#vw-quiz-defaultscoringmethod').text(); | |||
if ($.trim(defScorMethText) === "-") | |||
defaultScoringMethod = -1; | |||
if ($.trim(defScorMethText) === "+") | |||
defaultScoringMethod = +1; | |||
} | } | ||
| 55. sor: | 65. sor: | ||
if ($('#vw-quiz-canvas').length !== 1) | if ($('#vw-quiz-canvas').length !== 1) | ||
return false; | return false; | ||
if (wgAction !== 'view') | if (wgAction !== 'view' && wgAction !== 'submit') | ||
return false; | |||
if ($.cookie('vw-config-loadcodeid') && $.cookie('vw-config-loadcodeid') != currentCodeID) | |||
return false; | return false; | ||
return true; | return true; | ||
| 70. sor: | 82. sor: | ||
var CQ_UNINITIATED = -1; | var CQ_UNINITIATED = -1; | ||
var CQ_EXIT = -2; | var CQ_EXIT = -2; | ||
var uiContentElements = $('#mw-content-text > *'); | var uiContentElements = $('#mw-content-text > *'); | ||
| 91. sor: | 101. sor: | ||
function parseAnswerGroupsInQuestions() { | function parseAnswerGroupsInQuestions() { | ||
for (var i = 0; i != questions.length; i++) { | for (var i = 0; i != questions.length; i++) { | ||
questions[i].parseAnswerGroups(); | questions[i].parseAnswerGroups(defaultScoringMethod, checkAnswer); | ||
} | } | ||
} | } | ||
| 97. sor: | 107. sor: | ||
function uiCreateQuizInterface() { | function uiCreateQuizInterface() { | ||
uiContentElement = $('#vw-quiz-content'); | uiContentElement = $('#vw-quiz-content'); | ||
$('#toc').remove(); | |||
var uiInfoboxElement = $('#vw-quiz-infobox'); | var uiInfoboxElement = $('#vw-quiz-infobox'); | ||
| 301. sor: | 313. sor: | ||
this.submitted = false; | this.submitted = false; | ||
this.parseAnswerGroups = function() { | this.parseAnswerGroups = function(defaultScoringMethod, answerCheckingFunction) { | ||
for (var j = 1; j < this.uiElements.length; j++) { | for (var j = 1; j < this.uiElements.length; j++) { | ||
var currentElement = this.uiElements[j]; | var currentElement = this.uiElements[j]; | ||
| 316. sor: | 328. sor: | ||
currentElement, | currentElement, | ||
this.id, | this.id, | ||
this.answers.length | this.answers.length, | ||
defaultScoringMethod | |||
)); | )); | ||
$(previousElement).css('display', 'none'); | $(previousElement).css('display', 'none'); | ||
} | } | ||
} | } | ||
this.uiAddAnswerButton(); | this.uiAddAnswerButton(answerCheckingFunction); | ||
this.uiAddParentElement(); | this.uiAddParentElement(); | ||
}; | }; | ||
| 334. sor: | 347. sor: | ||
}; | }; | ||
this.uiAddAnswerButton = function() { | this.uiAddAnswerButton = function(answerCheckingFunction) { | ||
var button = $('<input type="button" />').val('Ellenőrzés').addClass("vw-quiz-check-btn"); | var button = $('<input type="button" />').val('Ellenőrzés').addClass("vw-quiz-check-btn"); | ||
button.css({ | button.css({ | ||
| 341. sor: | 354. sor: | ||
'font-size': '1.1em' | 'font-size': '1.1em' | ||
}); | }); | ||
button.click( | var self = this; | ||
button.click(function(eventObject) { | |||
answerCheckingFunction(self); | |||
}); | |||
this.uiElements.push(button[0]); | this.uiElements.push(button[0]); | ||
}; | }; | ||
| 466. sor: | 477. sor: | ||
function AnswerGroupObject(typeText, correctAnswerText, scoringMethodText, numberOfOptions, uiElement, questionId, answerId) { | function AnswerGroupObject(typeText, correctAnswerText, scoringMethodText, numberOfOptions, uiElement, questionId, answerId, defaultScoringMethod) { | ||
this.type = 1; // A default az egyválaszos (radio) | this.type = 1; // A default az egyválaszos (radio) | ||
if ($.trim(typeText) === "egy") | if ($.trim(typeText) === "egy") | ||
| 475. sor: | 486. sor: | ||
this.answer = null; | this.answer = null; | ||
this.scoringMethod = | this.scoringMethod = defaultScoringMethod; | ||
if ($.trim(scoringMethodText) === " | if ($.trim(scoringMethodText) === "-") | ||
this.scoringMethod = -1; | this.scoringMethod = -1; | ||
if ($.trim(scoringMethodText) === "+") | |||
this.scoringMethod = +1; | |||
this.numberOfOptions = numberOfOptions; | this.numberOfOptions = numberOfOptions; | ||