1
Fork 0
lorchess.ru/assets/vendor/pgn4web/tactics.html

149 lines
4.2 KiB
HTML

<!DOCTYPE HTML>
<html>
<!--
pgn4web javascript chessboard
copyright (C) 2009-2013 Paolo Casaschi
see README file and http://pgn4web.casaschi.net
for credits, license and more details
-->
<head>
<title>Solve chess tactics!</title>
<link href="tactics.css" type="text/css" rel="stylesheet" />
<style type="text/css">
.newButton {
-webkit-appearance: none;
font-size: 9px;
width: 80px;
vertical-align: middle;
text-align: center;
background-color: #f2d798;
border-color: #c9ad6f;
border-style: double;
border-width: 3px;
border-radius: 0px;
}
</style>
<link rel="shortcut icon" href="pawn.ico" />
<script src="pgn4web.js" type="text/javascript"></script>
<script type="text/javascript">
"use strict";
SetPgnUrl("tactics.pgn");
SetImagePath("images/uscf/24");
SetInitialGame("random"); // number of game to be shown at load, from 1 (default); values (keep the quotes) of "first", "last", "random" are accepted; other string values assumed as PGN search string
SetShortcutKeysEnabled(false);
clearShortcutSquares("BCDEFGH", "1234567");
clearShortcutSquares("A", "123456");
boardShortcut("H8", "hint", function(t,e){ hint(); });
function hint() {
alert("hint: the solution's main line is " + PlyNumber + " ply long");
}
function gup(name) {
name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var regexS = "[\\?&]"+name+"=([^&#]*)";
regexS = regexS+"(?!.*"+regexS+")"; // matches the LAST occurrence
var regex = new RegExp( regexS, "i" );
var results = regex.exec( window.location.href );
if (results === null) { return ""; }
else { return decodeURIComponent(results[1]); }
}
var assignedInitialGame = gup('n');
if (assignedInitialGame) { SetInitialGame(assignedInitialGame); }
function customFunctionOnPgnGameLoad() {
var theObj = document.getElementById('GameNumber');
if (theObj) { theObj.innerHTML = (currentGame+1); }
}
</script>
</head>
<body>
<!-- paste your PGN below and make sure you dont specify an external source with SetPgnUrl() -->
<form style="display: none;"><textarea style="display: none;" id="pgnText">
</textarea></form>
<!-- paste your PGN above and make sure you dont specify an external source with SetPgnUrl() -->
<center>
<table width=508 cellspacing=0 cellpadding=0 border=0>
<tr>
<td width=246 rowspan=3 valign=top>
<div id="GameBoard"></div>
</td>
<td width=16 rowspan=3>
</td>
<td width=246 height=40 valign=top>
<table width=246 cellspacing=0 cellpadding=0 border=0>
<tr>
<td width=50%>
<div style="text-align: left; font-size: 14px;">#<span id="GameNumber"></span></div>
</td>
<td width=50%>
<div style="text-align: right;">&nbsp;<span id="task" style="font-size: 14px; background: yellow;">&nbsp;<span id="GameSideToMove"></span>&nbsp;to&nbsp;move&nbsp;</span></div>
</td>
</tr>
</table>
</td>
<tr>
<td width=246 height=166 valign=middle>
<div id="solution" style="font-size: 14px; text-align: left; visibility: hidden">
<span id="GameText"></span>&nbsp;<span class="move" id="GameResult"></span>
</div>
</td>
</tr>
<tr>
<td width=246 height=40 valign=bottom>
<form style="display: inline">
<table cellspacing=0 cellpadding=0 border=0>
<tr>
<td width=80px valign=top>
<input type=button value="move back" title="click here to move back one ply when looking at the solution" class="newButton" onClick="javascript: GoToMove(CurrentPly - 1); if (StartPly == CurrentPly) {document.getElementById('task').style.visibility = 'visible';}" onFocus="this.blur()">
</td>
<td width=4px>
</td>
<td width=80px valign=top>
<input type=button value="show solution" title="click here to show the solution and step through the main line" class="newButton" onClick="javascript:GoToMove(CurrentPly + 1); document.getElementById('solution').style.visibility = 'visible';document.getElementById('task').style.visibility = 'hidden';" onFocus="this.blur()">
</td>
<td width=4px>
</td>
<td width=80px valign=top>
<input type=button value="next puzzle" title="click here to load the next puzzle" class="newButton" onClick="javascript: document.getElementById('solution').style.visibility = 'hidden'; document.getElementById('task').style.visibility = 'visible'; Init(Math.floor(Math.random()*numberOfGames));" onFocus="this.blur()">
</td>
</tr>
</table>
</form>
</td>
</tr>
</table>
</center>
</body>
</html>