MoveList working. TODO: Chat
[vchess.git] / client / src / components / BaseGame.vue
index 19aaf15..3b15742 100644 (file)
       button(@click="flip") Flip
       button(@click="gotoBegin") GotoBegin
       button(@click="gotoEnd") GotoEnd
+    #messageDiv.section-content(v-if="game.type=='corr'") {{ curMoveMessage() }}
     #fenDiv.section-content(v-if="showFen && !!vr")
       p#fenString.text-center {{ vr.getFen() }}
     #pgnDiv.section-content
       a#download(href="#")
-      .button-group
-        button#downloadBtn(@click="download") {{ st.tr["Download PGN"] }}
-        // TODO: Import game button copy game locally in IndexedDB
-        //button Import game
-    //MoveList(v-if="showMoves"
-      :moves="moves" :cursor="cursor" @goto-move="gotoMove")
+      button#downloadBtn(@click="download") {{ st.tr["Download PGN"] }}
+    div#movesList
+      MoveList(v-if="showMoves"
+        :moves="moves" :cursor="cursor" @goto-move="gotoMove")
 </template>
 
 <script>
 import Board from "@/components/Board.vue";
-//import MoveList from "@/components/MoveList.vue";
+import MoveList from "@/components/MoveList.vue";
 import { store } from "@/store";
 import { getSquareId } from "@/utils/squareId";
 import { getDate } from "@/utils/datetime";
@@ -39,7 +38,7 @@ export default {
   name: 'my-base-game',
   components: {
     Board,
-    //MoveList,
+    MoveList,
   },
   // "vr": VariantRules object, describing the game state + rules
   props: ["vr","game"],
@@ -98,6 +97,15 @@ export default {
       this.cursor = L-1;
       this.lastMove = (L > 0 ? this.moves[L-1]  : null);
     },
+    // For corr games, potential message with each move sent
+    curMoveMessage: function() {
+      if (this.cursor < 0)
+        return "";
+      return this.game.moves[this.cursor].message || "";
+    },
+    setCurrentMessage: function(message) {
+      this.game.moves[this.game.moves.length-1].message = message;
+    },
     download: function() {
       const content = this.getPgn();
       // Prepare and trigger download link