X-Git-Url: https://git.auder.net/pieces/Cwda/n_white_knight.svg?a=blobdiff_plain;f=public%2Fjavascripts%2Fcomponents%2Fproblems.js;h=49e72b67343aa2351cb9be705317322e71280466;hb=6b519a847765bb99c97ef1eba0eaa50a0fa61279;hp=63f06e5568a0a6224f633be2edc2ece756583ecf;hpb=e081ffe361b06ca74db0a36bf72dd73602abf57b;p=vchess.git diff --git a/public/javascripts/components/problems.js b/public/javascripts/components/problems.js index 63f06e55..49e72b67 100644 --- a/public/javascripts/components/problems.js +++ b/public/javascripts/components/problems.js @@ -1,129 +1,330 @@ Vue.component('my-problems', { + props: ["probId","settings"], data: function () { return { - problems: problemArray, //initial value - newProblem: { + userId: user.id, + problems: [], //oldest first + myProblems: [], //same, but only mine + singletons: [], //requested problems (using #num) + display: "others", //or "mine" + curProb: null, //(reference to) current displayed problem (if any) + showSolution: false, + nomoreMessage: "", + mode: "analyze", //for game component + pbNum: 0, //to navigate directly to some problem + // New problem (to upload), or existing problem to edit: + modalProb: { + id: 0, //defined if it's an edit + uid: 0, //...also fen: "", instructions: "", solution: "", - stage: "nothing", //or "preview" after new problem is filled + preview: false, }, }; }, + // NOTE: always modals first, because otherwise "scroll to the end" undesirable effect template: `