X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=public%2Fjavascripts%2Fcomponents%2Fstatements.js;h=5373e898152c237950f452a568bbf7798e54a5cf;hb=fdf62750d329257baae55a86e746902f310a2386;hp=86138c00a2d2c7e72a6b5aff591756a9c41ead77;hpb=14c9c66a3bc1abfeb3097a0c9fe4f0ff25fe2b8b;p=qomet.git diff --git a/public/javascripts/components/statements.js b/public/javascripts/components/statements.js index 86138c0..5373e89 100644 --- a/public/javascripts/components/statements.js +++ b/public/javascripts/components/statements.js @@ -6,13 +6,15 @@ NOTE: questions can contain parameterized exercises (how ? --> write javascript script (OK, users trusted ? ==> safe mode possible if public website) Imaginary example: (using math.js) (avant l'exo) - x: math.random() - y: math.random() - M: math.matrix([[7, x], [y, -3]]); - res: math.det(M) + const x = math.random(); + const y = math.random(); + + let M = math.matrix([[7, x], [y, -3]]); + return math.det(M); +
Calculer le déterminant de - $$\begin{matrix}7 & x\\y & -3\end{matrix}$$
+ $$\begin{matrix}7 & £x£\\£y£ & -3\end{matrix}$$ * ... + fixed + question time (syntax ?) @@ -32,7 +34,7 @@ Vue.component("statements", { displayStyle: "compact", //or "all": all on same page parameters: 0, //TODO: DO NOT re-draw parameters for already answered questions }; - } + }, // Full questions tree is rendered, but some parts hidden depending on display settings render(h) { // Prepare questions groups, ordered @@ -41,7 +43,9 @@ Vue.component("statements", { const dotPos = q.index.indexOf("."); return dotPos === -1 ? q.index : q.index.substring(0,dotPos); }); - let domTree = questionGroups.map( (qg,i) => { + let domTree = Object.keys(questionGroups).map( idx => { + let qg = questionGroups[idx]; + const i = parseInt(idx); // Re-order questions 1.1.1 then 1.1.2 then... const orderedQg = qg.sort( (a,b) => { let aParts = a.split('.').map(Number); @@ -158,7 +162,7 @@ Vue.component("statements", { { "class": { "question": true, - "depth" + depth: true, + ["depth" + depth]: true, }, }, questionContent @@ -171,7 +175,7 @@ Vue.component("statements", { "questionGroup": true, "hide": this.display == "one" && this.iidx != i, }, - } + }, qgDom ); });