#pgnDiv
#downloadDiv(v-if="game.vname!='Dark' || game.score!='*'")
a#download(href="#")
- button(@click="download") {{ st.tr["Download PGN"] }}
+ button(@click="download") {{ st.tr["Download"] }} PGN
button(onClick="doClick('modalAdjust')") ⤢
button(v-if="game.vname!='Dark' && game.mode!='analyze'"
@click="analyzePosition")
- | {{ st.tr["Analyze"] }}
+ | {{ st.tr["Analyse"] }}
// NOTE: rather ugly hack to avoid showing twice "rules" link...
button(v-if="!$route.path.match('/variants/')" @click="showRules")
| {{ st.tr["Rules"] }}
const L = this.moves.length;
this.cursor = L-1;
this.lastMove = (L > 0 ? this.moves[L-1] : null);
+ this.incheck = [];
},
analyzePosition: function() {
- const newUrl = "/analyze/" + this.game.vname +
+ const newUrl = "/analyse/" + this.game.vname +
"/?fen=" + this.vr.getFen().replace(/ /g, "_");
if (this.game.type == "live")
this.$router.push(newUrl); //open in same tab: against cheating...
},
animateMove: function(move, callback) {
let startSquare = document.getElementById(getSquareId(move.start));
+ // TODO: error "flush nextTick callbacks" when observer reloads page:
+ // this late check is not a fix!
+ if (!startSquare)
+ return;
let endSquare = document.getElementById(getSquareId(move.end));
let rectStart = startSquare.getBoundingClientRect();
let rectEnd = endSquare.getBoundingClientRect();
let translation = {x:rectEnd.x-rectStart.x, y:rectEnd.y-rectStart.y};
let movingPiece =
document.querySelector("#" + getSquareId(move.start) + " > img.piece");
+ if (!movingPiece) //TODO: shouldn't happen
+ return;
// HACK for animation (with positive translate, image slides "under background")
// Possible improvement: just alter squares on the piece's way...
const squares = document.getElementsByClassName("board");