%s\n", $group['name']); printf("
%s: not such file or directory.
", $pgnfile); } $parser = new PgnParser($pgnfile, false); $gameListUnparsed = $parser->getUnparsedGames(); // array $gameList=$parser->getGames(); printf("| # | \n"); printf("url | \n"); printf("Date | \n"); printf("White | \n"); printf("Elo | \n"); printf("Black | \n"); printf("Elo | \n"); printf("Result | \n"); printf("Moves | \n"); printf("Event | \n"); printf("Round | \n"); printf("Place | \n"); printf("||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| %d | \n", $i); printf("%s | \n", htmlspecialchars($pgnfile)); printf("%s | \n", htmlspecialchars($game['date'])); printf("%s | \n", htmlspecialchars($game['white'])); if (isset($game['metadata']['whiteelo'])) { printf("%s | \n", htmlspecialchars($game['metadata']['whiteelo'])); } else { printf("? | \n"); } printf("%s | \n", htmlspecialchars($game['black'])); if (isset($game['metadata']['blackelo'])) { printf("%s | \n", htmlspecialchars($game['metadata']['blackelo'])); } else { printf("? | \n"); } printf("%s | \n", htmlspecialchars($game['result'])); printf("%d | \n", (htmlspecialchars($game['plycount'])+1)/2); /* printf("%s?file=%s&game=%d | \n", "showgame.phtml", htmlspecialchars($pgnfile), $i); */ printf("%s | \n", htmlspecialchars($game['event'])); printf("%s | \n", isset($game['round']) && ctype_digit($game['round']) ? $game['round']: "-"); if (isset($game['site'])) { printf("%s | \n", htmlspecialchars($game['site'])); } else { printf("? | \n"); } printf("
");
if (! (preg_match("/^[0-9]+$/", $game))) {
printf("Game number: [%s] is not an integer\n", htmlspecialchars($game));
return "";
}
//printf("game=%d\n\n", $game);
if (! (preg_match("/^[-\/a-zA-Z0-9]+\.pgn$/", $pgnfile))) {
printf("Wrong filename\n");
return "";
}
//printf("file=%s\n", $pgnfile);
//$parser = new PgnParser( 'annotated.pgn', false );
//$gamelist_unparsed = $parser->getUnparsedGames(); // array
//var_dump( $gamelist_unparsed );
//return;
$parser = new PgnParser($pgnfile, false);
//$gameListUnparsed = $parser->getUnparsedGames(); // array
$gameList=$parser->getGames();
$game--;
//printf("game=%d size=%d\n", $game, sizeof($gameListUnparsed));
if ($game < 0 || $game >= sizeof($gameList)) {
printf("Wrong game number\n");
return "";
}
$theGame=$gameList[$game];
//print_r($parser);
//print_r($gameListUnparsed);
//printf("STR=+%s+\n", $thegamestring);
//printf("JSONSTR=+%s+\n", json_encode($thegamestring));
//printf("\n");
return $theGame;
}
function getGameString($pgnfile, $game="1")
{
// check arguments
//printf("");
if (! (preg_match("/^[0-9]+$/", $game))) {
printf("Game number: not an integer\n");
return "";
}
//printf("game=%d\n\n", $game);
if (! (preg_match("/^[-\/a-zA-Z0-9]+\.pgn$/", $pgnfile))) {
printf("Wrong filename\n");
return "";
}
//printf("file=%s\n", $pgnfile);
//$parser = new PgnParser( 'annotated.pgn', false );
//$gamelist_unparsed = $parser->getUnparsedGames(); // array
//var_dump( $gamelist_unparsed );
//return;
$parser = new PgnParser($pgnfile, false);
// $gameListUnparsed = $parser->getUnparsedGames(); // array
$gameList=$parser->getGames();
$game--;
//printf("game=%d size=%d\n", $game, sizeof($gameListUnparsed));
if ($game < 0 || $game >= sizeof($gameList)) {
printf("Wrong game number\n");
return "";
}
//printf("");
//print_r($gameList);
$thegamestring=$gameList[$game]['movesStr'];
//printf("");
//print_r($parser);
//print_r($gameListUnparsed);
//printf("STR=+%s+\n", $thegamestring);
//printf("JSONSTR=+%s+\n", json_encode($thegamestring));
//printf("\n");
return addslashes(json_encode($thegamestring));
}
?>