typo
[qomet.git] / public / javascripts / assessment.js
index 09caf12..aced6f2 100644 (file)
@@ -129,7 +129,8 @@ let V = new Vue({
                                        this.answers.indices = indices.concat( _.shuffle(remainingIndices) );
                                }
                                this.answers.index = !!paper ? paper.inputs.length : 0;
-                               Vue.nextTick(statementsLibsRefresh);
+                               this.answers.displayAll = assessment.display == "all";
+                               this.answers.showSolution = false;
                                this.stage = 2;
                        };
                        if (assessment.mode == "open")
@@ -180,7 +181,7 @@ let V = new Vue({
                        }, 1000);
                },
                // stage 2
-               sendAnswer: function() {
+               sendOneAnswer: function() {
                        const realIndex = this.answers.indices[this.answers.index];
                        let gotoNext = () => {
                                if (this.answers.index == assessment.questions.length - 1)
@@ -215,6 +216,13 @@ let V = new Vue({
                                },
                        });
                },
+               // TODO: I don't like that + sending should not be definitive in exam mode with display = all
+               sendAnswer: function() {
+                       if (assessment.display == "one")
+                               this.sendOneAnswer();
+                       else
+                               assessment.questions.forEach(this.sendOneAnswer);
+               },
                // stage 2 --> 3 (or 4)
                // from a message by statements component, or time over
                endAssessment: function() {
@@ -223,6 +231,7 @@ let V = new Vue({
                        if (assessment.mode == "open")
                        {
                                this.stage = 4;
+                               this.answers.showSolution = true;
                                return;
                        }
                        $.ajax("/end/assessment", {
@@ -248,6 +257,7 @@ let V = new Vue({
                setAnswers: function(m) {
                        for (let i=0; i<m.answers.length; i++)
                                assessment.questions[i].answer = m.answers[i];
+                       this.answers.showSolution = true;
                        this.stage = 4;
                },
        },