3 block append stylesheets
4 link(rel="stylesheet" href="/stylesheets/statements.css")
5 link(rel="stylesheet" href="/stylesheets/grade.css")
8 a#rightButton.btn-floating.btn-large.grey(href="grade")
9 i.material-icons mode_edit
14 form(@submit.prevent="computeGrades")
16 input#points(type="number" v-model.number="settings.totalPoints" required)
17 label(for="points") Total points
19 input#partial(type="checkbox" v-model="settings.halfPoint")
20 label(for="partial") Half point for partial answers? (≥ 50%)
22 input#malus(type="checkbox" v-model="settings.zeroSum")
23 label(for="malus") Lose points on wrong answers? ("Zero-sum" game)
26 a.modal-action.modal-close.waves-effect.waves-light.btn(href="#!" @click="computeGrades()")
28 i.material-icons.right send
35 th(v-for="evaluation in evaluationArray") {{ evaluation.name }}
37 tr.grade(v-for="student in studentList(group)")
38 td {{ student.number }}
39 td(v-for="(evaluation,i) in evaluationArray" @click="togglePresence(student.number,i)")
40 | {{ grade(i,student.number) }}
43 a.modal-action.modal-close.waves-effect.waves-light.btn-flat(href="#!") Close
49 .col.s12.m10.offset-m1
50 h4 #{courseCode} grading
51 // TODO: Allow grading per student, per question or sub-question
53 ul.tabs.tabs-fixed-width
56 li.tab(v-for="group in groupList()")
57 a(:href="groupId(group,'#')") G.{{ group }}
58 table(:id="groupId(group)" v-for="group in [0].concat(groupList())")
62 th(v-for="(q,i) in evaluation.questions") Q.{{ (i+1) }}
64 tr.evaluation(v-for="s in studentList(group)")
66 td(v-for="(q,i) in evaluation.questions" :style="{background-color: getColor(number,i)}" @click="seeDetails(number,i)")
67 h4.title(@click="toggleDisplay('evaluation')") evaluation
68 div(v-show="display=='evaluation'")
70 .introduction(v-html="evaluation.introduction")
72 statements(:questions="evaluation.questions" :answers:"answers")
77 h4.title(@click="toggleDisplay('grades')") Grades
78 .card(v-show="display=='grades'")
80 button.on-left.waves-effect.waves-light.btn(@click="gradeSettings()") Settings
81 a#download.hide(href="#" ref="download")
82 button.waves-effect.waves-light.btn(@click="download") Download
83 ul.tabs.tabs-fixed-width
86 li.tab(v-for="group in groupList()")
87 a(:href="groupId(group,'#')") G.{{ group }}
88 table.result(:id="groupId(group)" v-for="group in [0].concat(groupList())" @click="showDetails(group)")
95 tr.grade(v-for="student in studentList(group)")
96 td {{ student.number }}
99 //td {{ grades[student.number].final }}
101 td(colspan="4") Stats: range= stdev= mean=
106 block append javascripts
108 const initials = "#{initials}";
109 const courseCode = "#{courseName}";
110 script(src="/javascripts/utils/sha1.js")
111 script(src="/javascripts/grade.js")