+var show_line = function(line_num, move_num) {
+ if (line_num == -1) {
+ current_display_line = null;
+ current_display_move = null;
+ } else {
+ current_display_line = display_lines[line_num];
+ current_display_move = move_num;
+ }
+ update_displayed_line();
+ update_highlight();
+ redraw_arrows();
+}
+
+var prev_move = function() {
+ --current_display_move;
+ update_displayed_line();
+}
+
+var next_move = function() {
+ ++current_display_move;
+ update_displayed_line();
+}
+
+var update_displayed_line = function() {
+ if (current_display_line === null) {
+ $("#linenav").hide();
+ $("#linemsg").show();
+ board.position(fen);
+ return;
+ }
+
+ $("#linenav").show();
+ $("#linemsg").hide();
+
+ if (current_display_move == 0) {
+ $("#prevmove").html("Previous");
+ } else {
+ $("#prevmove").html("<a href=\"javascript:prev_move();\">Previous</a></span>");
+ }
+ if (current_display_move == current_display_line.uci_pv.length - 1) {
+ $("#nextmove").html("Next");
+ } else {
+ $("#nextmove").html("<a href=\"javascript:next_move();\">Next</a></span>");
+ }
+
+ hiddenboard.position(current_display_line.start_fen, false);
+ for (var i = 0; i <= current_display_move; ++i) {
+ var move = current_display_line.uci_pv[i];
+ move = move.substr(0, 2) + "-" + move.substr(2, 4);
+ hiddenboard.move(move, false);
+ }
+ board.position(hiddenboard.position());
+}
+