1<!DOCTYPE HTML> 2<html> 3 4<!-- 5 pgn4web javascript chessboard 6 copyright (C) 2009-2014 Paolo Casaschi 7 see README file and http://pgn4web.casaschi.net 8 for credits, license and more details 9--> 10 11<head> 12 13<title>chess games</title> 14 15<link href="collection.css" type="text/css" rel="stylesheet" /> 16 17<link rel="icon" sizes="16x16" href="pawn.ico" /> 18 19<script src="pgn4web.js" type="text/javascript"></script> 20<script src="fonts/chess-informant-NAG-symbols.js" type="text/javascript"></script> 21 22<script src="fide-lookup.js" type="text/javascript"></script> 23 24<script type="text/javascript"> 25 "use strict"; 26 27 var thisRegExp; 28 29 thisRegExp = /(&|\?)(help|h)=(true|t)(&|$)/i; 30 if (window.location.search.match(thisRegExp) !== null) { 31 alert("pgn4web collection.html parameters" + "\n" + 32 " - pgnFile=filename.pgn" + "\n" + 33 " - title=page title" + "\n" + 34 " - search=search expression" + "\n" + 35 " - help = true"); 36 } 37 var pgnFilename = ""; 38 thisRegExp = /(&|\?)(pgnFile|pf)=([^&]*)(&|$)/i; 39 if (window.location.search.match(thisRegExp) !== null) { 40 pgnFilename = unescape(window.location.search.match(thisRegExp)[3]); 41 } else { 42 // accepts pgnData as alias for pgnFile for consistency with board.html 43 thisRegExp = /(&|\?)(pgnData|pd)=([^&]*)(&|$)/i; 44 if (window.location.search.match(thisRegExp) !== null) { 45 pgnFilename = unescape(window.location.search.match(thisRegExp)[3]); 46 } 47 } 48 var pgnTitle = "no PGN file loaded"; 49 if (pgnFilename !== "") { 50 SetPgnUrl(pgnFilename); // if set, this has precedence over the inline PGN in the HTML file 51 pgnTitle = pgnFilename; 52 } 53 thisRegExp = /(&|\?)(title|t)=([^&]*)(&|$)/i; 54 if (window.location.search.match(thisRegExp) !== null) { 55 pgnTitle = unescape(window.location.search.match(thisRegExp)[3]); 56 } 57 document.title = "chess games: " + pgnTitle; 58 thisRegExp = /(&|\?)(search|s)=([^&]*)(&|$)/i; 59 var pgnSearchTarget; 60 if (window.location.search.match(thisRegExp) !== null) { 61 pgnSearchTarget = unescape(window.location.search.match(thisRegExp)[3]); 62 } else { 63 pgnSearchTarget = ""; 64 } 65 66 SetImagePath("images/alpha/36"); // use "" path if images are in the same folder as this javascript file 67 SetImageType("png"); 68 SetHighlightOption(false); // true or false 69 SetGameSelectorOptions(" Event Site Rd White Black Res Date", true, 12, 12, 2, 15, 15, 3, 10); // (head, num, chEvent, chSite, chRound, chWhite, chBlack, chResult, chDate); 70 SetCommentsIntoMoveText(true); 71 SetCommentsOnSeparateLines(false); 72 SetAutoplayDelay(1000); // milliseconds 73 SetAutostartAutoplay(false); 74 SetAutoplayNextGame(false); // if set, move to the next game at the end of the current game during autoplay 75 SetInitialGame(1); // 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 76 SetInitialVariation(0); // number for the variation to be shown at load, 0 (default) for main variation 77 SetInitialHalfmove(1, true); // halfmove number to be shown at load, 0 for start position, -1 for random halfmove 78 SetShortcutKeysEnabled(true); 79 80 function customFunctionOnPgnTextLoad() { 81 var theObj = document.getElementById('numGm'); 82 if (theObj) { theObj.innerHTML = numberOfGames; } 83 searchPgnGame(pgnSearchTarget); 84 } 85 86 function customFunctionOnPgnGameLoad() { 87 var theObj = document.getElementById('currGm'); 88 if (theObj) { theObj.innerHTML = currentGame+1; } 89 } 90 91 // customShortcutKey_Shift_1 defined by fide-lookup.js 92 // customShortcutKey_Shift_2 defined by fide-lookup.js 93 94</script> 95 96</head> 97 98<body> 99 100<!-- paste your PGN below and make sure you dont specify an external source with SetPgnUrl() --> 101<form style="display: none;"><textarea style="display: none;" id="pgnText"> 102 103</textarea></form> 104<!-- paste your PGN above and make sure you dont specify an external source with SetPgnUrl() --> 105 106<table class="containerTable"> 107 108<tr valign=bottom> 109<td class="containerCell" colspan=2> 110<div style="font-size: 200%; font-weight: bold; text-align: center;"> 111<script type="text/javascript"> 112document.write(simpleHtmlentities(pgnTitle)); 113</script> 114 115</div> 116</td> 117</tr> 118 119<tr valign=bottom> 120<td class="containerCell" colspan=2> 121<div id="GameSelector"></div> 122<div id="GameSearch" style="white-space:nowrap;"></div> 123</td> 124 125</tr> 126 127<tr valign=top> 128 129<td class="containerCell" align="left" width=50%> 130<div id="GameBoard"></div> 131<p></p> 132<div id="GameButtons"></div> 133</td> 134 135<td class="containerCell" width=50% style="text-align: left;"> 136 137<table> 138<tr><td class="label">date</td><td><span id="GameDate"></span> </td></tr> 139<tr><td class="label">site</td><td><span style="white-space: nowrap;" id="GameSite"></span> </td></tr> 140<tr><td colspan=2 class="rowSpace"></td></tr> 141<tr><td class="label">event</td><td><span style="white-space: nowrap;" id="GameEvent"></span> </td></tr> 142<tr><td class="label">round</td><td><span id="GameRound"></span> </td></tr> 143<tr><td colspan=2 class="rowSpace"></td></tr> 144<tr><td class="label">white</td><td class="boldItem"><span style="white-space: nowrap;" id="GameWhite"></span> </td></tr> 145<tr><td class="label">black</td><td class="boldItem"><span style="white-space: nowrap;" id="GameBlack"></span> </td></tr> 146<tr><td colspan=2 class="rowSpace"></td></tr> 147<tr><td class="label">result</td><td class="boldItem"><span id="GameResult"></span> </td></tr> 148<tr><td colspan=2 class="rowSpace"></td></tr> 149<tr><td class="label">last</td><td class="move"><span id="GameLastMove"></span> <span id="GameLastVariations"></span></td></tr> 150<tr><td class="label">next</td><td class="move"><span id="GameNextMove"></span> <span id="GameNextVariations"></span></td></tr> 151<!-- 152<tr><td class="label">side</td><td><span id="GameSideToMove"></span> </td></tr> 153--> 154<tr><td colspan=2 class="rowSpace"></td></tr> 155<tr><td class="label">game</td><td><span id=currGm>0</span> (<span id=numGm>0</span>)</td></tr> 156<tr><td class="label">archive</td> 157<td> 158<script type="text/javascript"> 159 if (pgnFilename) { 160 document.write('<a class="linkItem" href="' + pgnFilename + '">' + pgnFilename + '</a>'); 161 } 162</script> 163 </td> 164<!-- 165<tr><td colspan=2 class="rowSpace"></td></tr> 166<tr><td class="label">Move comment</td><td><span id="GameLastComment"></span> </td></tr> 167--> 168</table> 169 170</td> 171 172</tr> 173 174<tr valign=top> 175<td class="gametextContainerCell" style="text-align: justify;" colspan=2> 176<div class="gametextDiv" id="GameText"></div> 177</td> 178</tr> 179 180</table> 181 182</body> 183 184</html> 185 186 187