Skip to content
This repository was archived by the owner on Aug 11, 2024. It is now read-only.

Commit b4abcdb

Browse files
committed
updated scoring
1 parent 26e5223 commit b4abcdb

File tree

1 file changed

+73
-10
lines changed

1 file changed

+73
-10
lines changed

src/components/LatinForms.vue

Lines changed: 73 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,17 @@
33
<h1>Latin Forms</h1>
44
<button v-on:click="getNextWord()" v-show="!showLatin">Start</button>
55
<div v-show="showLatin">
6-
<div>{{ selectedWord.word }}</div>
7-
<div>{{ selectedWord.meaning }}</div>
6+
<div class="scoreboard">
7+
<span>Correct: <span class="score">{{ latinFormsScore.correct }}</span></span>
8+
<span>Incorrect: <span class="score">{{ latinFormsScore.total - latinFormsScore.correct }}</span></span>
9+
</div>
10+
<div v-if="selectedWord != null" class="latin-form-word">{{ selectedWord.word }}</div>
11+
<div v-if="selectedWord != null" class="latin-form-meaning">{{ selectedWord.meaning }}</div>
812
<div>
9-
{{ whichForm }}
13+
<span class="latin-form">{{ whichForm }}</span>
14+
<span class="latin-form-answer"><input v-model="latinFormsAnswer" class="latin-form-input"/></span>
1015
</div>
11-
<button v-on:click="getNextWord()">Lock in Answer</button>
16+
<button v-on:click="getNextWord()" class="btn-answer">Lock in Answer</button>
1217
</div>
1318
</div>
1419
</template>
@@ -27,6 +32,11 @@
2732
{word: '', meaning: '', second: '', third: '', fourth: ''},
2833
{word: '', meaning: '', second: '', third: '', fourth: ''}
2934
],
35+
latinFormsAnswer: '',
36+
latinFormsScore: {
37+
total: 0,
38+
correct: 0
39+
},
3040
selectedWord: null,
3141
randomNumber: 0,
3242
index: 0,
@@ -36,10 +46,32 @@
3646
}
3747
},
3848
methods: {
39-
getSelectedWord() {
40-
return this.selectedWord;
41-
},
4249
getNextWord: function () {
50+
if (this.showLatin) {
51+
//we already have an answer! check it.
52+
//increment our question count
53+
this.latinFormsScore.total++;
54+
55+
switch (this.form) {
56+
case 0:
57+
if (this.latinFormsAnswer === this.selectedWord.second) {
58+
this.latinFormsScore.correct++;
59+
}
60+
break;
61+
case 1:
62+
if (this.latinFormsAnswer === this.selectedWord.third) {
63+
this.latinFormsScore.correct++;
64+
}
65+
case 2:
66+
if (this.latinFormsAnswer === this.selectedWord.fourth) {
67+
this.latinFormsScore.correct++;
68+
}
69+
break;
70+
}
71+
72+
this.latinFormsAnswer = '';
73+
}
74+
4375
axios.post("https://www.rdrand.com/API/GenerateUInt")
4476
.then(response => {
4577
this.randomNumber = response.data;
@@ -61,6 +93,8 @@
6193
this.whichForm = '4th';
6294
break;
6395
}
96+
97+
this.showLatin = true;
6498
})
6599
.catch(e => {
66100
this.errors.push(e)
@@ -70,13 +104,42 @@
70104
this.errors.push(e)
71105
});
72106
}
73-
},
74-
created: function () {
75-
this.selectedWord = this.phrases[0];
76107
}
77108
}
78109
</script>
79110

80111
<style scoped>
112+
.scoreboard {
113+
font-size: .7em;
114+
}
115+
116+
.score {
117+
font-weight: bold;
118+
font-size: 1.1em;
119+
padding-right: 1em;
120+
}
81121
122+
.latin-form {
123+
padding-right: .5em;
124+
font-size: .8em;
125+
font-style: italic;
126+
}
127+
128+
.latin-form-input {
129+
padding: .5em .5em .5em .5em;
130+
}
131+
132+
.latin-form-word {
133+
font-weight: bold;
134+
margin: 1em 0em 0em 0em;
135+
}
136+
137+
.latin-form-meaning {
138+
font-style: italic;
139+
margin: 0em 0em 1em 0em;
140+
}
141+
142+
.btn-answer {
143+
margin-top: 1em;
144+
}
82145
</style>

0 commit comments

Comments
 (0)