X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=www%2Fjs%2Fbook.js;h=611678f8f99c52a3e73ea53241e31b88766dd24c;hb=4c5819ccf6f88f4ad0ed870921f8d972a46be8a0;hp=fff27fc1f0a7a4756481a0725fcb55040ccc7ff0;hpb=7d5e6433543116d5ecd0c4627ab1e063bf06da11;p=remoteglot-book diff --git a/www/js/book.js b/www/js/book.js index fff27fc..611678f 100644 --- a/www/js/book.js +++ b/www/js/book.js @@ -27,6 +27,20 @@ var get_game = function() { } var update = function() { + var text = ""; + for (var i = 0; i < history.length; ++i) { + if (i % 2 == 0) { + text += (i/2 + 1) + ". "; + } + if (i == move_override) { + text += '' + history[i] + ''; + } else { + text += history[i]; + } + text += " "; + } + $('#gamehistory').html(text); + var game = get_game(); board.position(game.fen()); fetch_analysis(); @@ -220,6 +234,7 @@ var make_move = function(move) { // User effectively only moved forward in history. ++move_override; } else { + history.length = move_override; history.push(move); move_override = history.length; } @@ -265,8 +280,13 @@ var onDrop = function(source, target) { // illegal move if (move === null) return 'snapback'; - history = game.history({ verbose: true }); + var new_history = game.history({ verbose: true }); + history = []; + for (var i = 0; i < new_history.length; ++i) { + history.push(new_history[i].san); + } move_override = history.length; + update(); }; // update the board position after the piece snap