X-Git-Url: https://git.auder.net/?p=qomet.git;a=blobdiff_plain;f=public%2Fjavascripts%2Fmonitor.js;fp=public%2Fjavascripts%2Fmonitor.js;h=6ee6a410fbc5cc7e696e4594e65a0ff8a2e4bfd7;hp=b5a0fe41754222a6d297eb761c495c863b92b492;hb=f87ac54a07e9cc63a28b8eae42fa6ab23ac626d0;hpb=25cb8d539e4f68586f2e5fa95e20f6de3c031b6f diff --git a/public/javascripts/monitor.js b/public/javascripts/monitor.js index b5a0fe4..6ee6a41 100644 --- a/public/javascripts/monitor.js +++ b/public/javascripts/monitor.js @@ -42,15 +42,17 @@ new Vue({ groupId: function(group, prefix) { return (prefix || "") + "group" + group; }, - togglePresence: function(s) { - s.present = !s.present; + togglePresence: function(student) { + const sIdx = this.students.findIndex( s => { return s.number == student.number; }); + Vue.set( this.students, sIdx, Object.assign({},student,{present:!student.present}) ); + //s.present = !s.present; }, allFinished: function() { for (s of this.students) { if (!s.present) continue; - const paperIdx = this.assessment.papers.findIndex( item => { return item.number == number; }); + const paperIdx = this.assessment.papers.findIndex( item => { return item.number == s.number; }); if (paperIdx === -1) return false; const paper = this.assessment.papers[paperIdx];