2019-09-28 00:07:17 +02:00
|
|
|
<!doctype html>
|
|
|
|
|
|
|
|
<html lang="en">
|
|
|
|
<head>
|
|
|
|
<meta charset="utf-8">
|
|
|
|
|
2019-09-28 00:52:43 +02:00
|
|
|
<title>My tournament</title>
|
2019-09-28 00:07:17 +02:00
|
|
|
<meta name="description" content="Libpairtwo">
|
2019-09-28 00:52:43 +02:00
|
|
|
<meta name="author" content="The chessclub">
|
2019-09-28 00:07:17 +02:00
|
|
|
|
|
|
|
<link rel="stylesheet" href="css/styles.css">
|
2019-06-18 15:07:22 +02:00
|
|
|
|
2019-09-28 00:07:17 +02:00
|
|
|
</head>
|
|
|
|
|
|
|
|
<body>
|
|
|
|
<?php
|
2019-06-18 15:07:22 +02:00
|
|
|
|
|
|
|
use JeroenED\Libpairtwo\IOFactory;
|
|
|
|
|
|
|
|
require_once 'vendor/autoload.php';
|
|
|
|
|
|
|
|
// EDIT ME!
|
2019-09-28 00:52:43 +02:00
|
|
|
$pairingfile = 'your pairing-file.swar';
|
|
|
|
$fileformat = 'Swar-4'; // Possible values: Pairtwo-5, Pairtwo-6, Swar-4
|
2019-06-18 15:07:22 +02:00
|
|
|
|
2019-06-19 19:49:39 +02:00
|
|
|
if (!file_exists($pairingfile)) {
|
|
|
|
trigger_error('Your file is not set or doesn\'t exist! Edit the file: ' . __FILE__ . ' and try again', E_USER_ERROR);
|
2019-06-18 15:07:22 +02:00
|
|
|
}
|
|
|
|
|
2019-06-19 22:01:50 +02:00
|
|
|
$reader = IOFactory::createReader($fileformat);
|
2019-06-18 15:07:22 +02:00
|
|
|
$reader->read($pairingfile);
|
|
|
|
|
|
|
|
// From here on you can start. Please use the examples on https://github.com/jeroened/libpairtwo/wiki
|
|
|
|
// You can also use the doc/api folder to get all possible methods and fields
|
|
|
|
|
|
|
|
// Below is an example of what can be used. Feel free to modify this.
|
2019-09-28 00:07:17 +02:00
|
|
|
echo '<h1>' . $reader->getTournament()->getName() . '</h1>' . PHP_EOL;
|
2019-09-28 10:42:05 +02:00
|
|
|
foreach ($reader->getTournament()->getRounds() as $round) {
|
|
|
|
echo '<h2>Round ' . ($round->getRoundNo() + 1) . ': ' . $round->getDate()->format('m/d/Y') . '</h2>' . PHP_EOL;
|
2019-09-28 00:07:17 +02:00
|
|
|
|
|
|
|
echo '<table>' . PHP_EOL;
|
|
|
|
echo '<thead>' . PHP_EOL;
|
2019-09-28 21:21:19 +02:00
|
|
|
echo '<tr><th></th><th>White</th><th>Black</th><th>Result</th></tr>' . PHP_EOL;
|
2019-09-28 00:07:17 +02:00
|
|
|
echo '</thead>' . PHP_EOL;
|
|
|
|
echo '<tbody>' . PHP_EOL;
|
2019-09-28 21:21:19 +02:00
|
|
|
foreach ($round->getGamesByBoard() as $game) {
|
2019-09-28 00:07:17 +02:00
|
|
|
echo '<tr>' . PHP_EOL;
|
2019-09-28 21:21:19 +02:00
|
|
|
echo '<td>' . $game->getBoard() . '</td>' . PHP_EOL;
|
2019-09-28 00:07:17 +02:00
|
|
|
echo '<td>' . $game->getWhite()->getPlayer()->getName() . '</td>' . PHP_EOL;
|
|
|
|
echo '<td>' . $game->getBlack()->getPlayer()->getName() . '</td>' . PHP_EOL;
|
|
|
|
echo '<td>' . $game->getResult()->getValue() . '</td>' . PHP_EOL;
|
|
|
|
echo '</tr>' . PHP_EOL;
|
|
|
|
}
|
|
|
|
echo '</tbody>' . PHP_EOL;
|
|
|
|
echo '</table>' . PHP_EOL;
|
|
|
|
echo '<p><strong>Bye:</strong> ';
|
|
|
|
$bye = [];
|
|
|
|
foreach ($round->getBye() as $pairing) {
|
|
|
|
$bye[] = $pairing->getPlayer()->getName();
|
|
|
|
}
|
|
|
|
echo implode(', ', $bye);
|
|
|
|
echo '</p>' . PHP_EOL;
|
2019-09-28 10:42:05 +02:00
|
|
|
echo '<p><strong>Absent:</strong> ';
|
2019-09-28 00:07:17 +02:00
|
|
|
$bye = [];
|
|
|
|
foreach ($round->getAbsent() as $pairing) {
|
|
|
|
$bye[] = $pairing->getPlayer()->getName();
|
|
|
|
}
|
|
|
|
echo implode('; ', $bye);
|
|
|
|
echo '</p>' . PHP_EOL;
|
2019-06-18 15:07:22 +02:00
|
|
|
}
|
|
|
|
|
2019-09-28 10:42:05 +02:00
|
|
|
echo '<h2>Rankings</h2>' . PHP_EOL;
|
2019-09-28 00:07:17 +02:00
|
|
|
echo '<table>' . PHP_EOL;
|
|
|
|
echo '<thead>' . PHP_EOL;
|
2019-09-28 10:42:05 +02:00
|
|
|
echo '<tr><th> </th><th>Name (elo)</th>' . PHP_EOL;
|
2019-09-28 00:07:17 +02:00
|
|
|
foreach ($reader->getTournament()->getTieBreaks() as $tiebreak) {
|
|
|
|
echo '<th>' . $tiebreak->getValue() . '</th>' . PHP_EOL;
|
|
|
|
}
|
|
|
|
echo '</tr>' . PHP_EOL;
|
|
|
|
echo '</thead>' . PHP_EOL;
|
|
|
|
echo '<tbody>' . PHP_EOL;
|
2019-06-18 15:07:22 +02:00
|
|
|
|
2019-09-28 00:07:17 +02:00
|
|
|
$rank = 1;
|
|
|
|
foreach ($reader->getTournament()->getRanking() as $player) {
|
|
|
|
echo '<tr>' . PHP_EOL;
|
|
|
|
echo '<td>' . $rank . '</td>' . PHP_EOL;
|
|
|
|
echo '<td>' . $player->getName() . '(' . $player->getElo($reader->getTournament()->getPriorityElo()) . ')</td>' . PHP_EOL;
|
|
|
|
echo '<td>' . implode('</td><td>', $player->getTiebreaks()) . '</td>' . PHP_EOL;
|
|
|
|
echo '</tr>' . PHP_EOL;
|
|
|
|
$rank++;
|
2019-06-18 15:07:22 +02:00
|
|
|
}
|
2019-09-28 00:07:17 +02:00
|
|
|
echo '</tbody>' . PHP_EOL;
|
|
|
|
echo '</table>' . PHP_EOL;
|
|
|
|
?>
|
|
|
|
<script src="js/scripts.js"></script>
|
|
|
|
</body>
|
|
|
|
</html>
|