word/quiz: automatic subpage setup including specific css
[sheet.git] / word / multichoice.js
index 761b966dd3cc3976e9affc468e3c661bfc611824..7402507aa90e33c1fb481c3840918ec93c455da8 100644 (file)
@@ -1,15 +1,18 @@
-class WordMultiChoice extends WordQuiz {
+class WordMultichoice extends WordQuiz {
        next() {
+               if (this.words.length < 4) return;
                let word = this.words.shift();
                let form = put(this.form,
-                       '+img[src=$]+ul', `/data/word/en/${word[2]}.jpg`,
+                       '+img[src=$]+ul', `/data/word/32/${word[2]}.jpg`,
                );
 
                let answers = [word[0], this.words[0][0], this.words[1][0], this.words[2][0]]
                        .shuffle()
+               this.log('ask', word[2], answers);
                answers.forEach(suggest => {
                        let label = suggest.replace(/\/.*/, '');
                        let option = put(form, 'li', label, {onclick: () => {
+                               this.log('pick', suggest, null, word[0]);
                                if (suggest != word[0]) {
                                        // incorrect
                                        put(option, '.wrong');
@@ -22,7 +25,7 @@ class WordMultiChoice extends WordQuiz {
        }
 
        setup() {
-               this.form = document.getElementById('quiz');
+               super.setup();
                this.next();
        }
 };