Merge branch 'develop'

pull/14/head
Jeroen De Meerleer 2 years ago
commit c35180271e
Signed by: JeroenED
GPG Key ID: 28CCCB8F62BFADD6

7
.gitattributes vendored

@ -1,7 +0,0 @@
# *.php diff=php
#/.gitattributes export-ignore
#/.gitignore export-ignore
#/.php_cs export-ignore
#/.travis.ini export-ignore
#/.travis.yml export-ignore

7
.gitignore vendored

@ -1,3 +1,5 @@
/bin/
!/bin/.gitkeep
/build/
/vendor/
composer.lock
@ -5,7 +7,8 @@ composer.lock
/.php_cs.cache
/nbproject/
/res/protected/
/.idea
/.idea/*.*
!/.idea/codeStyles/*
/doc/api/*
/libpairtwo-*-dist.zip
@ -13,3 +16,5 @@ composer.lock
/dist/vendor/
/dist/composer.json
/dist/doc/
/.phpdoc

@ -0,0 +1,134 @@
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<PHPCodeStyleSettings>
<option name="ALIGN_KEY_VALUE_PAIRS" value="true" />
<option name="ALIGN_PHPDOC_PARAM_NAMES" value="true" />
<option name="ALIGN_PHPDOC_COMMENTS" value="true" />
<option name="ALIGN_INLINE_COMMENTS" value="true" />
<option name="PHPDOC_BLANK_LINE_BEFORE_TAGS" value="true" />
<option name="PHPDOC_BLANK_LINES_AROUND_PARAMETERS" value="true" />
<option name="PHPDOC_WRAP_LONG_LINES" value="true" />
<option name="BLANK_LINES_BETWEEN_IMPORTS" value="1" />
<option name="LOWER_CASE_BOOLEAN_CONST" value="true" />
<option name="LOWER_CASE_NULL_CONST" value="true" />
<option name="ELSE_IF_STYLE" value="COMBINE" />
<option name="VARIABLE_NAMING_STYLE" value="CAMEL_CASE" />
<option name="BLANK_LINES_BEFORE_RETURN_STATEMENT" value="1" />
<option name="KEEP_RPAREN_AND_LBRACE_ON_ONE_LINE" value="true" />
<option name="BLANK_LINES_AROUND_CONSTANTS" value="1" />
<option name="BLANK_LINES_AFTER_OPENING_TAG" value="1" />
<option name="KEEP_BLANK_LINES_AFTER_LBRACE" value="0" />
<option name="SPACE_BETWEEN_TERNARY_QUEST_AND_COLON" value="true" />
<option name="FORCE_SHORT_DECLARATION_ARRAY_STYLE" value="true" />
<option name="NEW_LINE_AFTER_PHP_OPENING_TAG" value="true" />
<option name="PLACE_PARENS_FOR_CONSTRUCTOR" value="1" />
</PHPCodeStyleSettings>
<codeStyleSettings language="PHP">
<option name="RIGHT_MARGIN" value="120" />
<option name="KEEP_BLANK_LINES_IN_DECLARATIONS" value="1" />
<option name="KEEP_BLANK_LINES_IN_CODE" value="1" />
<option name="KEEP_BLANK_LINES_BEFORE_RBRACE" value="0" />
<option name="BLANK_LINES_AFTER_PACKAGE" value="1" />
<option name="BLANK_LINES_AROUND_FIELD" value="1" />
<option name="ALIGN_MULTILINE_CHAINED_METHODS" value="true" />
<option name="ALIGN_MULTILINE_PARAMETERS" value="false" />
<option name="ALIGN_MULTILINE_PARAMETERS_IN_CALLS" value="true" />
<option name="ALIGN_MULTILINE_BINARY_OPERATION" value="true" />
<option name="ALIGN_MULTILINE_TERNARY_OPERATION" value="true" />
<option name="ALIGN_MULTILINE_EXTENDS_LIST" value="true" />
<option name="ALIGN_MULTILINE_ARRAY_INITIALIZER_EXPRESSION" value="true" />
<option name="SPACE_WITHIN_BRACKETS" value="true" />
<option name="CALL_PARAMETERS_WRAP" value="5" />
<option name="CALL_PARAMETERS_LPAREN_ON_NEXT_LINE" value="true" />
<option name="CALL_PARAMETERS_RPAREN_ON_NEXT_LINE" value="true" />
<option name="METHOD_PARAMETERS_WRAP" value="5" />
<option name="METHOD_PARAMETERS_LPAREN_ON_NEXT_LINE" value="true" />
<option name="METHOD_PARAMETERS_RPAREN_ON_NEXT_LINE" value="true" />
<option name="EXTENDS_LIST_WRAP" value="5" />
<option name="METHOD_CALL_CHAIN_WRAP" value="5" />
<option name="PARENTHESES_EXPRESSION_LPAREN_WRAP" value="true" />
<option name="PARENTHESES_EXPRESSION_RPAREN_WRAP" value="true" />
<option name="BINARY_OPERATION_WRAP" value="5" />
<option name="TERNARY_OPERATION_WRAP" value="5" />
<option name="TERNARY_OPERATION_SIGNS_ON_NEXT_LINE" value="true" />
<option name="MODIFIER_LIST_WRAP" value="true" />
<option name="KEEP_SIMPLE_METHODS_IN_ONE_LINE" value="true" />
<option name="KEEP_SIMPLE_CLASSES_IN_ONE_LINE" value="true" />
<option name="FOR_STATEMENT_WRAP" value="5" />
<option name="FOR_STATEMENT_LPAREN_ON_NEXT_LINE" value="true" />
<option name="FOR_STATEMENT_RPAREN_ON_NEXT_LINE" value="true" />
<option name="ARRAY_INITIALIZER_WRAP" value="5" />
<option name="ARRAY_INITIALIZER_LBRACE_ON_NEXT_LINE" value="true" />
<option name="ARRAY_INITIALIZER_RBRACE_ON_NEXT_LINE" value="true" />
<option name="ASSIGNMENT_WRAP" value="5" />
<option name="IF_BRACE_FORCE" value="3" />
<option name="DOWHILE_BRACE_FORCE" value="3" />
<option name="WHILE_BRACE_FORCE" value="3" />
<option name="FOR_BRACE_FORCE" value="3" />
<arrangement>
<groups>
<group>
<type>GETTERS_AND_SETTERS</type>
<order>KEEP</order>
</group>
</groups>
<rules>
<section>
<rule>
<match>
<CONST>true</CONST>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<FIELD>true</FIELD>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<CONSTRUCTOR>true</CONSTRUCTOR>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<METHOD>true</METHOD>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<TRAIT>true</TRAIT>
</match>
</rule>
</section>
<section>
<rule>
<match>
<INTERFACE>true</INTERFACE>
</match>
</rule>
</section>
<section>
<rule>
<match>
<CLASS>true</CLASS>
</match>
<order>BY_NAME</order>
</rule>
</section>
</rules>
</arrangement>
</codeStyleSettings>
</code_scheme>
</component>

@ -0,0 +1,5 @@
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="USE_PER_PROJECT_SETTINGS" value="true" />
</state>
</component>

@ -0,0 +1,17 @@
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="PhpCSValidationInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="CODING_STANDARD" value="PSR12" />
<option name="EXTENSIONS" value="php,js,css,inc" />
</inspection_tool>
<inspection_tool class="PhpCompoundNamespaceDepthInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true" />
<inspection_tool class="PhpLongTypeFormInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true" />
<inspection_tool class="PhpMissingVisibilityInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true" />
<inspection_tool class="PhpModifierOrderInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true" />
<inspection_tool class="PhpNewClassMissingParameterListInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true" />
<inspection_tool class="PhpSeparateElseIfInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true" />
<inspection_tool class="PhpTraitsUseListInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true" />
<inspection_tool class="PhpVarUsageInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true" />
</profile>
</component>

@ -1,12 +0,0 @@
<?php
$finder = PhpCsFixer\Finder::create()
->exclude(['build', 'vendor'])
->in(__DIR__);
return PhpCsFixer\Config::create()
->setFinder($finder)
->setUsingCache(true)
->setRules([
'@PSR2' => true,
]);

@ -1,18 +0,0 @@
language: php
matrix:
fast_finish: true
include:
- php: 7.2
- php: 7.2
env: 'COMPOSER_FLAGS="--prefer-stable --prefer-lowest"'
cache:
directories:
- $HOME/.composer/cache
install:
- composer update ${COMPOSER_FLAGS} --no-interaction
script:
- make tests

@ -6,14 +6,54 @@ VERSION := $(if $(TAG),$(TAG),dev-$(BRANCH))
help:
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-12s\033[0m %s\n", $$1, $$2}'
tests: ## Executes the test suite
vendor/bin/phpunit
install-dev: ## Installs the required common devtools
@echo "Downloading phpdoc"
@wget https://phpdoc.org/phpDocumentor.phar -O bin/phpdoc 2> /dev/null
@echo "Downloading phpcs"
@wget https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar -O bin/phpcs 2> /dev/null
@wget https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar -O bin/phpcbf 2> /dev/null
@echo "Adding execution rights on the binaries"
@chmod +x bin/phpcs bin/phpcbf bin/phpdoc
@echo "Installation of devtools finished"
@echo "Please add $(shell echo $(PWD))/bin to your PATH"
coverage: ## Executes the test suite and creates code coverage reports
vendor/bin/phpunit --coverage-html build/coverage
docs: ## Generates api-docs
phpdoc -d ./src -t ./doc/api
dist: ## Generates distribution
cp dist/composer* res/
mv dist/composer-dist.json dist/composer.json
sed -i -e "s%//VERSION//%$(VERSION)%g" dist/composer.json
cd dist && composer install
rm dist/composer.json
rm dist/composer.lock
mv dist/composer-dist-installed.json dist/composer.json
make api
mkdir -p dist/doc
cp -r doc/api dist/doc
cd dist && zip -r ../libpairtwo-$(VERSION)-dist.zip *
git reset --hard HEAD
mv res/composer* dist/
clean: clean-dist clean-dev clean-repo ## Cleans all assets
view-coverage: ## Shows the code coverage report
open build/coverage/index.html
clean-dev: ## Cleans dev assets
rm -rf doc/api
rm -rf .idea
rm -rf .libpairtwo-distro
rm -rf vendor
rm -rf composer.lock
clean-dist: ## Cleans distribution assets
rm -rf dist/doc
rm -rf dist/vendor
rm -rf dist/composer.json
rm -rf libpairtwo-*-dist.zip
clean-repo: ## Cleans the git repository
git fsck
git prune
git gc
api: ## Generates api-docs
phpdoc -d ./src -t ./doc/api
@ -54,7 +94,7 @@ clean-repo: ## Cleans the git repository
git gc
cs: ## Fixes coding standard problems
vendor/bin/php-cs-fixer fix || true
php bin/phpcs || true
tag: ## Creates a new signed git tag
$(if $(TAG),,$(error TAG is not defined. Pass via "make tag TAG=X.X.X"))

@ -1,6 +1,6 @@
# libpairtwo
![logo](https://raw.githubusercontent.com/JeroenED/libpairtwo/master/res/logo-lightback-250px.png "Logo libpairtwo")
![logo](https://raw.githubusercontent.com/JeroenED/libpairtwo/develop/res/logo-lightback-250px.png "Logo libpairtwo")
Copyright 2018- (c) Jeroen De Meerleer <schaak@jeroened.be>

@ -2,7 +2,10 @@
"name": "jeroened/libpairtwo",
"type": "library",
"description": "Export chess tournaments directly on the web",
"keywords": ["chess", "pairing"],
"keywords": [
"chess",
"pairing"
],
"license": "AGPL-3.0-or-later",
"authors": [
{
@ -18,7 +21,6 @@
"ext-iconv": "*"
},
"require-dev": {
"friendsofphp/php-cs-fixer": "^2.16"
},
"autoload": {
"psr-4": {

@ -5,8 +5,8 @@
"url": "../"
}
],
"require": {
"require": {
"jeroened/libpairtwo": "//VERSION//"
},
"minimum-stability": "dev"
}
}

59
dist/template.php vendored

@ -27,7 +27,10 @@ use JeroenED\Libpairtwo\IOFactory;
require_once 'vendor/autoload.php';
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);
trigger_error(
'Your file is not set or doesn\'t exist! Edit the file: ' . __FILE__ . ' and try again',
E_USER_ERROR
);
}
$reader = IOFactory::createReader($fileformat);
@ -49,8 +52,18 @@ foreach ($reader->Tournament->Rounds as $round) {
foreach ($round->GamesByBoard as $game) {
echo '<tr>' . PHP_EOL;
echo '<td>' . ($game->Board + 1) . '</td>' . PHP_EOL;
echo '<td>' . $game->White->Player->Name . '</td>' . PHP_EOL;
echo '<td>' . $game->Black->Player->Name . '</td>' . PHP_EOL;
echo '<td>' .
$game->White->Player->Name .
' (' .
$game->White->Player->getElo($reader->Tournament->PriorityElo) .
')</td>' .
PHP_EOL;
echo '<td>' .
$game->Black->Player->Name .
' (' .
$game->Black->Player->getElo($reader->Tournament->PriorityElo) .
')</td>' .
PHP_EOL;
echo '<td>' . $game->Result->getValue() . '</td>' . PHP_EOL;
echo '</tr>' . PHP_EOL;
}
@ -73,11 +86,11 @@ foreach ($reader->Tournament->Rounds as $round) {
echo '</p>' . PHP_EOL;
}
echo '<h2>Rankings</h2>' . PHP_EOL;
echo '<h2>Global Rankings</h2>' . PHP_EOL;
echo '<table>' . PHP_EOL;
echo '<thead>' . PHP_EOL;
echo '<tr><th> </th><th>Name (elo)</th>' . PHP_EOL;
foreach ($reader->Tournament->TieBreaks as $tiebreak) {
echo '<tr><th> </th><th>Name (elo)</th><th>Category</th>' . PHP_EOL;
foreach ($reader->Tournament->Tiebreaks as $tiebreak) {
echo '<th>' . $tiebreak->getValue() . '</th>' . PHP_EOL;
}
echo '</tr>' . PHP_EOL;
@ -88,7 +101,8 @@ $rank = 1;
foreach ($reader->Tournament->Ranking as $player) {
echo '<tr>' . PHP_EOL;
echo '<td>' . $rank . '</td>' . PHP_EOL;
echo '<td>' . $player->Name . '(' . $player->getElo($reader->Tournament->PriorityElo) . ')</td>' . PHP_EOL;
echo '<td>' . $player->Name . ' (' . $player->getElo($reader->Tournament->PriorityElo) . ')</td>' . PHP_EOL;
echo '<td>' . $player->Category . '</td>' . PHP_EOL;
echo '<td>' . implode('</td><td>', $player->Tiebreaks) . '</td>' . PHP_EOL;
echo '</tr>' . PHP_EOL;
$rank++;
@ -96,6 +110,35 @@ foreach ($reader->Tournament->Ranking as $player) {
echo '</tbody>' . PHP_EOL;
echo '</table>' . PHP_EOL;
?>
<script src="js/scripts.js"></script>
<?php
echo '<h2>Rankings per Category</h2>' . PHP_EOL;
foreach ($reader->Tournament->Categories as $category) {
echo '<table>' . PHP_EOL;
echo '<caption>' . $category . '</caption>';
echo '<thead>' . PHP_EOL;
echo '<tr><th> </th><th>Name (elo)</th>' . PHP_EOL;
foreach ($reader->Tournament->Tiebreaks as $tiebreak) {
echo '<th>' . $tiebreak->getValue() . '</th>' . PHP_EOL;
}
echo '</tr>' . PHP_EOL;
echo '</thead>' . PHP_EOL;
echo '<tbody>' . PHP_EOL;
$rank = 1;
foreach ($reader->Tournament->RankingForCategory($category) as $player) {
echo '<tr>' . PHP_EOL;
echo '<td>' . $rank . '</td>' . PHP_EOL;
echo '<td>' . $player->Name . ' (' . $player->getElo($reader->Tournament->PriorityElo) . ')</td>' . PHP_EOL;
echo '<td>' . implode('</td><td>', $player->Tiebreaks) . '</td>' . PHP_EOL;
echo '</tr>' . PHP_EOL;
$rank++;
}
echo '</tbody>' . PHP_EOL;
echo '</table>' . PHP_EOL;
}
?>
<script src="js/scripts.js"></script>
</body>
</html>

@ -1,21 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<phpunit
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/7.0/phpunit.xsd"
colors="true">
<testsuites>
<testsuite name="Test Suite">
<directory>./tests</directory>
</testsuite>
</testsuites>
<filter>
<whitelist>
<directory suffix=".php">./src</directory>
<exclude>
<directory>./tests</directory>
<directory>./vendor</directory>
</exclude>
</whitelist>
</filter>
</phpunit>

Binary file not shown.

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 45 KiB

After

Width:  |  Height:  |  Size: 46 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 45 KiB

After

Width:  |  Height:  |  Size: 46 KiB

@ -1,215 +1,340 @@
<HTML>
<HEAD>
<style type="text/css">
body { font-size: 10pt; font-family: verdana;}
h1 {background-color: navy;color: #FDE0AA;font-size: 24pt;font-weight:bold;font-family:Arial;text-align:center;}
th {background-color: #408080; font-size: 20pt; text-align: center;}
.rh {background-color: #408080; font-size: 16pt; text-align: center;}
.vh {font-size: 10pt; text-align: center;}
.thr {font-size: 10pt; text-align: right}
.thl {font-size: 10pt; text-align: left}
.thc {font-size: 10pt; text-align: center}
.tdr {font-size: 8pt; text-align: right}
.tdl {font-size: 8pt; text-align: left}
.tdc {font-size: 8pt; text-align: center;}
.tdp {font-size: 10pt; font-weight:bold;text-align: center; background-color='yellow'}
.tde {font-size: 8pt; font-style:italic;text-align: right; background-color='#ceceff'}
table {font-size: 10pt; font-family: Arial}
a { text-decoration: none; color: blue;}
a:visited { text-decoration: none; color: blue;}
a:hover { text-decoration:none ; color: red;}
</style>
<TITLE>Libpairtwo Tournament</TITLE>
<META name='DESCRIPTION' content='Classement, Résultats, Appariement, Grille Américaine'>
<META name='AUTHOR' content='Georges Marchal'>
<META name='KEYWORDS' content='échecs,echecs,chess,jeux,game,belgique,belgium,forum'>
<META name='KEYWORDS' content='liège,liege,666,elo,classement,tournoi,interclub'>
<META name='KEYWORDS' content='pairtwo, kbsb,frbe,fefb,666'>
<META name='ROBOTS' content='INDEX,FOLLOW'>
</HEAD>
<BODY>
<A name=Top></A>
<!-- TITRE GENERAL EN BLEU -->
<!-- ===================== -->
<TABLE width='90%' align='center' bgColor='#000080' border='0'>
<TR><TD><H1>Libpairtwo Tournament</H1></TD></TR></TABLE>
<!-- =============== -->
<!-- INFO DU TOURNOI -->
<!-- =============== --><br>
<table align='center' border='1''>
<tr><td align='center' valign='middle'><font size='+2'><b>313</b></font></td>
<td><TABLE border='1' align='center' style='font-size: 8pt; font-family: verdana;'>
<tr><td align='center' bgColor='#000090'><font color='white' size='-1'><b>(&copy;) FRBE 2005</b></font></td>
<td align='center' bgColor='#000090'><font color='white' size='-1'><b>PairTwo 6.13 (2015/08/10)</b></font></td></tr>
<tr><td><i> Org. : </i></td><td>Libpairtwo Organiser ,Libpairtwo Place ,2019</td></tr>
<tr><td><i>Arbit. : </i></td><td>Libpairtwo Organiser</td></tr>
<tr><td><i> Tempo : </i></td><td>40c/2h + 1h QPF</td></tr>
<tr><td><i>Tie Break</i></td><td>Pts,&nbsp;Mutual Result,&nbsp;Number of Victories,&nbsp;Number of game Black played,&nbsp;Bucholtz Cut 1,&nbsp;SonneBorn-Berger</td></tr>
</TABLE>
</td>
<td align='center' valign='middle'><font size='+2'><b>F.R.B.E.</b></font></td>
</tr>
</table>
<!-- ================== -->
<!-- === REFERENCES === -->
<!-- ================== -->
<br><TABLE align='center' border='3' bgcolor='#ffffdd'>
<TR>
<TD class='vh'><A HREF='#Round1'>R1</A></TD>
<TD class='vh'><A HREF='#Round2'>R2</A></TD>
<TD class='vh'><A HREF='#Round3'>R3</A></TD>
</TR>
<TR><TD class='vh' colspan='3'><A HREF='#Americaine'>American Ranking</A></TD></TR>
</TABLE>
<br>
<DIV ALIGN='CENTER'>
<TABLE align='center' bgcolor='#ffffdd' border='1'>
<!-- =========================== -->
<!-- === DEBUT DU CLASSEMENT === -->
<!-- =========================== -->
<TR><TH>Ranking after round 3</TH></TR>
<TR><TD><PRE>
<b><u>Tit Name Rati F/M Club Cou Pts Res Vic #Bla BC1 S B </u></b>
1<b> FM</b> <b>Libpairtwo Player 2 </b> (1802) M Liga Vlaams-Brabant (VSF) BEL <b> 3.0</b>/<i>3 </i> 0.0 0 0 0.0 0.00
2<b> *</b> <b>Libpairtwo Player 1 </b> (1801) M Liga Antwerpen (VSF) BEL <b> 1.5</b>/<i>3 </i> 0.0 0 0 0.0 0.00
3<b> IM</b> <b>Libpairtwo Player 3 </b> (1803) F Liga West Vlaanderen (VSF) BEL <b> 1.0</b>/<i>2 </i> 0.0 0 0 0.0 0.00
4<b> GM</b> <b>Libpairtwo Player 4 </b> (1804) F Liga Oost Vlaanderen (VSF) BEL <b> 0.5</b>/<i>2 </i> 0.0 0 0 0.0 0.00
<A href='#Top'>Top of Page</A>
</PRE></TD></TR>
<TR><TH class='rh'><A NAME='Round1' style='color: black'>Round 1 (01-01-2019)</A></TH></TR>
<TR><TD><PRE>
1 Libpairtwo Player 2 ( 3) <b>1-0 </b>Libpairtwo Player 4 ( 1)
2 Libpairtwo Player 3 ( 2) <b>0-1 </b>Libpairtwo Player 1 ( 4)
</pre>
<A HREF="#Top">(Go to Top)</A>
</TD>
<TR><TH class='rh'><A NAME='Round2' style='color: black'>Round 2 (06-01-2019)</A></TH></TR>
<TR><TD><PRE>
1 Libpairtwo Player 1 ( 4) <b>0-1 </b>Libpairtwo Player 2 ( 3)
2 Libpairtwo Player 3 ( 2) <font color='red'> Bye</font>
Libpairtwo Player 4 ( 1)<font color='red'> Absent </font>
</pre>
<A HREF="#Top">(Go to Top)</A>
</TD>
<TR><TH class='rh'><A NAME='Round3' style='color: black'>Round 3 (11-01-2019)</A></TH></TR>
<TR><TD><PRE>
1 Libpairtwo Player 4 ( 1) <b>½-½ </b>Libpairtwo Player 1 ( 4)
2 Libpairtwo Player 2 ( 3) <font color='red'> Bye</font>
Libpairtwo Player 3 ( 2)<font color='red'> Absent </font>
</pre>
<A HREF="#Top">(Go to Top)</A>
</TD>
</table></div>
<!-- ================= -->
<!-- GRILLE AMERICAINE -->
<!-- ================= -->
<DIV ALIGN='CENTER'>
<TABLE align='center' bgcolor='#ffffdd' border='1'>
<TR>
<TH colspan='14'>
<FONT size='+2'>American Ranking</FONT>
<A name=Americaine></A></TH></TR>
<TR bgcolor='#cccccc'>
<TD class='thr'>&nbsp;</TD>
<TD class='thl'><B>Name</B></TD>
<TD class='thr'><B>Rating</B></TD>
<TD class='thr'><B> Pts</B></TD>
<TD class='thr'><B>Perf </B></TD>
<TD class='thc'><B>R1</B></TD>
<TD class='thc'><B>R2</B></TD>
<TD class='thc'><B>R3</B></TD>
<TD class='thr'><b><i>Res </i></b></TD>
<TD class='thr'><b><i>Vic </i></b></TD>
<TD class='thr'><b><i>#Bla</i></b></TD>
<TD class='thr'><b><i>BC1 </i></b></TD>
<TD class='thr'><b><i>S B </i></b></TD>
</tr>
<tr>
<td class='tdr' bgcolor='#eeeeee'> 1</td>
<td class='tdl' bgcolor='#eeeeee'><B>Libpairtwo Player 2 (FM)</B></td>
<td class='tdr' bgcolor='#eeeeee'>1802</td>
<td class='tdr' bgcolor='#eeeeee'><B>3.0</B></td>
<td class='tdr' bgcolor='#eeeeee'><i>2602</i></td>
<td class='tdc' bgcolor='#eeeeee'> 4W +</td>
<td class='tdc' bgcolor='#eeeeee'> 2B +</td>
<td class='tdc' bgcolor='#eeeeee'>bye</td>
<td class='tdc' bgcolor='#eeeeee'><i> 0.0</i></td>
<td class='tdc' bgcolor='#eeeeee'><i>0</i></td>
<td class='tdc' bgcolor='#eeeeee'><i>0</i></td>
<td class='tdc' bgcolor='#eeeeee'><i> 0.0</i></td>
<td class='tdc' bgcolor='#eeeeee'><i> 0.00</i></td>
</tr>
<tr>
<td class='tdr' bgcolor='#cccccc'> 2</td>
<td class='tdl' bgcolor='#cccccc'><B>Libpairtwo Player 1 (*)</B></td>
<td class='tdr' bgcolor='#cccccc'>1801</td>
<td class='tdr' bgcolor='#cccccc'><B>1.5</B></td>
<td class='tdr' bgcolor='#cccccc'><i>1810</i></td>
<td class='tdc' bgcolor='#cccccc'> 3B +</td>
<td class='tdc' bgcolor='#cccccc'> 1W -</td>
<td class='tdc' bgcolor='#cccccc'> 4B =</td>
<td class='tdc' bgcolor='#cccccc'><i> 0.0</i></td>
<td class='tdc' bgcolor='#cccccc'><i>0</i></td>
<td class='tdc' bgcolor='#cccccc'><i>0</i></td>
<td class='tdc' bgcolor='#cccccc'><i> 0.0</i></td>
<td class='tdc' bgcolor='#cccccc'><i> 0.00</i></td>
</tr>
<tr>
<td class='tdr' bgcolor='#eeeeee'> 3</td>
<td class='tdl' bgcolor='#eeeeee'><B>Libpairtwo Player 3 (IM)</B></td>
<td class='tdr' bgcolor='#eeeeee'>1803</td>
<td class='tdr' bgcolor='#eeeeee'><B>1.0</B></td>
<td class='tdr' bgcolor='#eeeeee'><i>1331</i></td>
<td class='tdc' bgcolor='#eeeeee'> 2W -</td>
<td class='tdc' bgcolor='#eeeeee'>bye</td>
<td class='tdc' bgcolor='#eeeeee'>...</td>
<td class='tdc' bgcolor='#eeeeee'><i> 0.0</i></td>
<td class='tdc' bgcolor='#eeeeee'><i>0</i></td>
<td class='tdc' bgcolor='#eeeeee'><i>0</i></td>
<td class='tdc' bgcolor='#eeeeee'><i> 0.0</i></td>
<td class='tdc' bgcolor='#eeeeee'><i> 0.00</i></td>
</tr>
<tr>
<td class='tdr' bgcolor='#cccccc'> 4</td>
<td class='tdl' bgcolor='#cccccc'><B>Libpairtwo Player 4 (GM)</B></td>
<td class='tdr' bgcolor='#cccccc'>1804</td>
<td class='tdr' bgcolor='#cccccc'><B>0.5</B></td>
<td class='tdr' bgcolor='#cccccc'><i>1626</i></td>
<td class='tdc' bgcolor='#cccccc'> 1B -</td>
<td class='tdc' bgcolor='#cccccc'>...</td>
<td class='tdc' bgcolor='#cccccc'> 2W =</td>
<td class='tdc' bgcolor='#cccccc'><i> 0.0</i></td>
<td class='tdc' bgcolor='#cccccc'><i>0</i></td>
<td class='tdc' bgcolor='#cccccc'><i>0</i></td>
<td class='tdc' bgcolor='#cccccc'><i> 0.0</i></td>
<td class='tdc' bgcolor='#cccccc'><i> 0.00</i></td>
</tr>
</TABLE></DIV>
<P align='center'><A href='#Top'><FONT size='-1'>Top of Page</FONT></A>
</TABLE>
<!-- ========= -->
<!-- COPYRIGHT -->
<!-- ========= -->
<p><TABLE border='0'>
<TR><TD align='center' bgColor='#000090'>
<FONT color='white' size='-1'><b>(&copy;) FRBE 2005</b></font></TD>
<TD align='center' bgColor='#000090'>
<FONT color='white' size='-1'><b>PairTwo 6.13 (2015/08/10)</b></font></td></tr>
</TD></TR></TABLE></p>
</body></html>
<HTML>
<HEAD>
<style type="text/css">
body {
font-size: 10pt;
font-family: verdana;
}
h1 {
background-color: navy;
color: #FDE0AA;
font-size: 24pt;
font-weight: bold;
font-family: Arial;
text-align: center;
}
th {
background-color: #408080;
font-size: 20pt;
text-align: center;
}
.rh {
background-color: #408080;
font-size: 16pt;
text-align: center;
}
.vh {
font-size: 10pt;
text-align: center;
}
.thr {
font-size: 10pt;
text-align: right
}
.thl {
font-size: 10pt;
text-align: left
}
.thc {
font-size: 10pt;
text-align: center
}
.tdr {
font-size: 8pt;
text-align: right
}
.tdl {
font-size: 8pt;
text-align: left
}
.tdc {
font-size: 8pt;
text-align: center;
}
.tdp {
font-size: 10pt;
font-weight: bold;
text-align: center;
background-color = 'yellow'
}
.tde {
font-size: 8pt;
font-style: italic;
text-align: right;
background-color = '#ceceff'
}
table {
font-size: 10pt;
font-family: Arial
}
a {
text-decoration: none;
color: blue;
}
a:visited {
text-decoration: none;
color: blue;
}
a:hover {
text-decoration: none;
color: red;
}
</style>
<TITLE>Libpairtwo Tournament</TITLE>
<META content='Classement, R<>sultats, Appariement, Grille Am<41>ricaine' name='DESCRIPTION'>
<META content='Georges Marchal' name='AUTHOR'>
<META content='<27>checs,echecs,chess,jeux,game,belgique,belgium,forum' name='KEYWORDS'>
<META content='li<6C>ge,liege,666,elo,classement,tournoi,interclub' name='KEYWORDS'>
<META content='pairtwo, kbsb,frbe,fefb,666' name='KEYWORDS'>
<META content='INDEX,FOLLOW' name='ROBOTS'>
</HEAD>
<BODY>
<A name=Top></A>
<!-- TITRE GENERAL EN BLEU -->
<!-- ===================== -->
<TABLE align='center' bgColor='#000080' border='0' width='90%'>
<TR>
<TD><H1>Libpairtwo Tournament</H1></TD>
</TR>
</TABLE>
<!-- =============== -->
<!-- INFO DU TOURNOI -->
<!-- =============== --><br>
<table align='center' border='1'
'>
<tr>
<td align='center' valign='middle'><font size='+2'><b>313</b></font></td>
<td>
<TABLE align='center' border='1' style='font-size: 8pt; font-family: verdana;'>
<tr>
<td align='center' bgColor='#000090'><font color='white' size='-1'><b>(&copy;) FRBE 2005</b></font></td>
<td align='center' bgColor='#000090'><font color='white' size='-1'><b>PairTwo 6.13
(2015/08/10)</b></font></td>
</tr>
<tr>
<td><i> Org. : </i></td>
<td>Libpairtwo Organiser ,Libpairtwo Place ,2019</td>
</tr>
<tr>
<td><i>Arbit. : </i></td>
<td>Libpairtwo Organiser</td>
</tr>
<tr>
<td><i> Tempo : </i></td>
<td>40c/2h + 1h QPF</td>
</tr>
<tr>
<td><i>Tie Break</i></td>
<td>Pts,&nbsp;Mutual Result,&nbsp;Number of Victories,&nbsp;Number of game Black played,&nbsp;Bucholtz
Cut 1,&nbsp;SonneBorn-Berger
</td>
</tr>
</TABLE>
</td>
<td align='center' valign='middle'><font size='+2'><b>F.R.B.E.</b></font></td>
</tr>
</table>
<!-- ================== -->
<!-- === REFERENCES === -->
<!-- ================== -->
<br>
<TABLE align='center' bgcolor='#ffffdd' border='3'>
<TR>
<TD class='vh'><A HREF='#Round1'>R1</A></TD>
<TD class='vh'><A HREF='#Round2'>R2</A></TD>
<TD class='vh'><A HREF='#Round3'>R3</A></TD>
</TR>
<TR>
<TD class='vh' colspan='3'><A HREF='#Americaine'>American Ranking</A></TD>
</TR>
</TABLE>
<br>
<DIV ALIGN='CENTER'>
<TABLE align='center' bgcolor='#ffffdd' border='1'>
<!-- =========================== -->
<!-- === DEBUT DU CLASSEMENT === -->
<!-- =========================== -->
<TR>
<TH>Ranking after round 3</TH>
</TR>
<TR>
<TD><PRE>
<b><u>Tit Name Rati F/M Club Cou Pts Res Vic #Bla BC1 S B </u></b>
1<b> FM</b> <b>Libpairtwo Player 2 </b> (1802) M Liga Vlaams-Brabant (VSF) BEL <b> 3.0</b>/<i>3 </i> 0.0 0 0 0.0 0.00
2<b> *</b> <b>Libpairtwo Player 1 </b> (1801) M Liga Antwerpen (VSF) BEL <b> 1.5</b>/<i>3 </i> 0.0 0 0 0.0 0.00
3<b> IM</b> <b>Libpairtwo Player 3 </b> (1803) F Liga West Vlaanderen (VSF) BEL <b> 1.0</b>/<i>2 </i> 0.0 0 0 0.0 0.00
4<b> GM</b> <b>Libpairtwo Player 4 </b> (1804) F Liga Oost Vlaanderen (VSF) BEL <b> 0.5</b>/<i>2 </i> 0.0 0 0 0.0 0.00
<A href='#Top'>Top of Page</A>
</PRE>
</TD>
</TR>
<TR>
<TH class='rh'><A NAME='Round1' style='color: black'>Round 1 (01-01-2019)</A></TH>
</TR>
<TR>
<TD><PRE>
1 Libpairtwo Player 2 ( 3) <b>1-0 </b>Libpairtwo Player 4 ( 1)
2 Libpairtwo Player 3 ( 2) <b>0-1 </b>Libpairtwo Player 1 ( 4)
</pre>
<A HREF="#Top">(Go to Top)</A>
</TD>
<TR>
<TH class='rh'><A NAME='Round2' style='color: black'>Round 2 (06-01-2019)</A></TH>
</TR>
<TR>
<TD><PRE>
1 Libpairtwo Player 1 ( 4) <b>0-1 </b>Libpairtwo Player 2 ( 3)
2 Libpairtwo Player 3 ( 2) <font color='red'> Bye</font>
Libpairtwo Player 4 ( 1)<font color='red'> Absent </font>
</pre>
<A HREF="#Top">(Go to Top)</A>
</TD>
<TR>
<TH class='rh'><A NAME='Round3' style='color: black'>Round 3 (11-01-2019)</A></TH>
</TR>
<TR>
<TD><PRE>
1 Libpairtwo Player 4 ( 1) <b><EFBFBD>-<2D> </b>Libpairtwo Player 1 ( 4)
2 Libpairtwo Player 2 ( 3) <font color='red'> Bye</font>
Libpairtwo Player 3 ( 2)<font color='red'> Absent </font>
</pre>
<A HREF="#Top">(Go to Top)</A>
</TD>
</table>
</div>
<!-- ================= -->
<!-- GRILLE AMERICAINE -->
<!-- ================= -->
<DIV ALIGN='CENTER'>
<TABLE align='center' bgcolor='#ffffdd' border='1'>
<TR>
<TH colspan='14'>
<FONT size='+2'>American Ranking</FONT>
<A name=Americaine></A></TH>
</TR>
<TR bgcolor='#cccccc'>
<TD class='thr'>&nbsp;</TD>
<TD class='thl'><B>Name</B></TD>
<TD class='thr'><B>Rating</B></TD>
<TD class='thr'><B> Pts</B></TD>
<TD class='thr'><B>Perf </B></TD>
<TD class='thc'><B>R1</B></TD>
<TD class='thc'><B>R2</B></TD>
<TD class='thc'><B>R3</B></TD>
<TD class='thr'><b><i>Res </i></b></TD>
<TD class='thr'><b><i>Vic </i></b></TD>
<TD class='thr'><b><i>#Bla</i></b></TD>
<TD class='thr'><b><i>BC1 </i></b></TD>
<TD class='thr'><b><i>S B </i></b></TD>
</tr>
<tr>
<td bgcolor='#eeeeee' class='tdr'> 1</td>
<td bgcolor='#eeeeee' class='tdl'><B>Libpairtwo Player 2 (FM)</B></td>
<td bgcolor='#eeeeee' class='tdr'>1802</td>
<td bgcolor='#eeeeee' class='tdr'><B>3.0</B></td>
<td bgcolor='#eeeeee' class='tdr'><i>2602</i></td>
<td bgcolor='#eeeeee' class='tdc'> 4W +</td>
<td bgcolor='#eeeeee' class='tdc'> 2B +</td>
<td bgcolor='#eeeeee' class='tdc'>bye</td>
<td bgcolor='#eeeeee' class='tdc'><i> 0.0</i></td>
<td bgcolor='#eeeeee' class='tdc'><i>0</i></td>
<td bgcolor='#eeeeee' class='tdc'><i>0</i></td>
<td bgcolor='#eeeeee' class='tdc'><i> 0.0</i></td>
<td bgcolor='#eeeeee' class='tdc'><i> 0.00</i></td>
</tr>
<tr>
<td bgcolor='#cccccc' class='tdr'> 2</td>
<td bgcolor='#cccccc' class='tdl'><B>Libpairtwo Player 1 (*)</B></td>
<td bgcolor='#cccccc' class='tdr'>1801</td>
<td bgcolor='#cccccc' class='tdr'><B>1.5</B></td>
<td bgcolor='#cccccc' class='tdr'><i>1810</i></td>
<td bgcolor='#cccccc' class='tdc'> 3B +</td>
<td bgcolor='#cccccc' class='tdc'> 1W -</td>
<td bgcolor='#cccccc' class='tdc'> 4B =</td>
<td bgcolor='#cccccc' class='tdc'><i> 0.0</i></td>
<td bgcolor='#cccccc' class='tdc'><i>0</i></td>
<td bgcolor='#cccccc' class='tdc'><i>0</i></td>
<td bgcolor='#cccccc' class='tdc'><i> 0.0</i></td>
<td bgcolor='#cccccc' class='tdc'><i> 0.00</i></td>
</tr>
<tr>
<td bgcolor='#eeeeee' class='tdr'> 3</td>
<td bgcolor='#eeeeee' class='tdl'><B>Libpairtwo Player 3 (IM)</B></td>
<td bgcolor='#eeeeee' class='tdr'>1803</td>
<td bgcolor='#eeeeee' class='tdr'><B>1.0</B></td>
<td bgcolor='#eeeeee' class='tdr'><i>1331</i></td>
<td bgcolor='#eeeeee' class='tdc'> 2W -</td>
<td bgcolor='#eeeeee' class='tdc'>bye</td>
<td bgcolor='#eeeeee' class='tdc'>...</td>
<td bgcolor='#eeeeee' class='tdc'><i> 0.0</i></td>
<td bgcolor='#eeeeee' class='tdc'><i>0</i></td>
<td bgcolor='#eeeeee' class='tdc'><i>0</i></td>
<td bgcolor='#eeeeee' class='tdc'><i> 0.0</i></td>
<td bgcolor='#eeeeee' class='tdc'><i> 0.00</i></td>
</tr>
<tr>
<td bgcolor='#cccccc' class='tdr'> 4</td>
<td bgcolor='#cccccc' class='tdl'><B>Libpairtwo Player 4 (GM)</B></td>
<td bgcolor='#cccccc' class='tdr'>1804</td>
<td bgcolor='#cccccc' class='tdr'><B>0.5</B></td>
<td bgcolor='#cccccc' class='tdr'><i>1626</i></td>
<td bgcolor='#cccccc' class='tdc'> 1B -</td>
<td bgcolor='#cccccc' class='tdc'>...</td>
<td bgcolor='#cccccc' class='tdc'> 2W =</td>
<td bgcolor='#cccccc' class='tdc'><i> 0.0</i></td>
<td bgcolor='#cccccc' class='tdc'><i>0</i></td>
<td bgcolor='#cccccc' class='tdc'><i>0</i></td>
<td bgcolor='#cccccc' class='tdc'><i> 0.0</i></td>
<td bgcolor='#cccccc' class='tdc'><i> 0.00</i></td>
</tr>
</TABLE>
</DIV>
<P align='center'><A href='#Top'><FONT size='-1'>Top of Page</FONT></A>
</TABLE>
<!-- ========= -->
<!-- COPYRIGHT -->
<!-- ========= -->
<p>
<TABLE border='0'>
<TR>
<TD align='center' bgColor='#000090'>
<FONT color='white' size='-1'><b>(&copy;) FRBE 2005</b></font></TD>
<TD align='center' bgColor='#000090'>
<FONT color='white' size='-1'><b>PairTwo 6.13 (2015/08/10)</b></font></td>
</tr>
</TD></TR></TABLE>
</p>
</body>
</html>

@ -1,13 +1,14 @@
<?php
/**
* Class Constants
*
* Static class for constants
*
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
*/
namespace JeroenED\Libpairtwo;
@ -20,18 +21,35 @@ use JeroenED\Libpairtwo\Enums\Result;
*
* Static class for constants
*
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
*/
class Constants
{
const Won = [ Result::Won, Result::WonForfait, Result::WonBye, Result::WonAdjourned ];
const Draw = [ Result::Draw, Result::DrawAdjourned ];
const Lost = [ Result::Absent, Result::Bye, Result::Lost, Result::Adjourned ];
const NotPlayed = [ Result::Bye, Result::WonBye, Result::Absent ];
const Played = [ Result::Won, Result::WonForfait, Result::WonBye, Result::WonAdjourned, Result::Draw, Result::DrawAdjourned, Result::Absent, Result::Bye, Result::Lost, Result::Adjourned ];
const Black = [ Color::Black ];
const White = [ Color::White ];
public const BLACK = [Color::BLACK];
public const DRAW = [Result::DRAW, Result::DRAW_ADJOURNED];
public const LOST = [Result::ABSENT, Result::BYE, Result::LOST, Result::ADJOURNED];
public const NOTPLAYED = [Result::BYE, Result::WON_BYE, Result::ABSENT];
public const PLAYED = [
Result::WON,
Result::WON_FORFAIT,
Result::WON_BYE,
Result::WON_ADJOURNED,
Result::DRAW,
Result::DRAW_ADJOURNED,
Result::ABSENT,
Result::BYE,
Result::LOST,
Result::ADJOURNED
];
public const WHITE = [Color::WHITE];
public const WON = [Result::WON, Result::WON_FORFAIT, Result::WON_BYE, Result::WON_ADJOURNED];
}

@ -1,13 +1,14 @@
<?php
/**
* Enum Color
*
* List of all compatible colors
*
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
*/
namespace JeroenED\Libpairtwo\Enums;
@ -19,14 +20,16 @@ use MyCLabs\Enum\Enum;
*
* List of all compatible colors
*
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
*/
class Color extends Enum
{
const Black = 'B';
const White = 'W';
const None = '*';
public const BLACK = 'B';
public const NONE = '*';
public const WHITE = 'W';
}

@ -1,13 +1,14 @@
<?php
/**
* Enum Gameresult
*
* List of all compatible gameresults
*
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
*/
namespace JeroenED\Libpairtwo\Enums;
@ -19,24 +20,36 @@ use MyCLabs\Enum\Enum;
*
* List of all compatible gameresults
*
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
*/
class Gameresult extends Enum
{
const None = '-';
const WhiteWins = '1-0';
const Draw = '0.5-0.5';
const BlackWins = '0-1';
const WhiteWinsForfait = '1-0 FF';
const BlackWinsForfait = '0-1 FF';
const BothLoseForfait = '0-0 FF';
const BothWinAdjourned = '1-1 A';
const WhiteWinsBlackDrawsAdjourned = '1-0.5 A';
const WhiteDrawsBlackWinsAdjourned = '0.5-1 A';
const DrawAdjourned = '0.5-0.5 A';
const WhiteLoseBlackDrawsAdjourned = '0-0.5';
const WhiteDrawsBlackLoseAdjourned = '0.5-0';
public const BLACK_WINS = '0-1';
public const BLACK_WINS_FORFAIT = '0-1 FF';
public const BOTH_LOSE_FORFAIT = '0-0 FF';
public const BOTH_WIN_ADJOURNED = '1-1 A';
public const DRAW = '0.5-0.5';
public const DRAW_ADJOURNED = '0.5-0.5 A';
public const NONE = '-';
public const WHITE_DRAWS_BLACK_LOSE_ADJOURNED = '0.5-0';
public const WHITE_DRAWS_BLACK_WINS_ADJOURNED = '0.5-1 A';
public const WHITE_LOST_BLACK_DRAWS_ADJOURNED = '0-0.5';
public const WHITE_WINS = '1-0';
public const WHITE_WINS_BLACK_DRAWS_ADJOURNED = '1-0.5 A';
public const WHITE_WINS_FORFAIT = '1-0 FF';
}

@ -1,13 +1,14 @@
<?php
/**
* Enum Gender
*
* List of all compatible genders
*
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
*/
namespace JeroenED\Libpairtwo\Enums;
@ -19,14 +20,16 @@ use MyCLabs\Enum\Enum;
*
* List of all compatible genders
*
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
*/
class Gender extends Enum
{
const Neutral = 'X'; // Unforturnately, Incompatible with Pairtwo (Dinos)
const Male = 'M';
const Female = 'F';
public const FEMALE = 'F';
public const MALE = 'M';
public const NEUTRAL = 'X'; // Unfortunately, Incompatible with Pairtwo (Dinos)
}

@ -1,13 +1,14 @@
<?php
/**
* Enum Result
*
* List of all compatible results
*
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
*/
namespace JeroenED\Libpairtwo\Enums;
@ -19,22 +20,32 @@ use MyCLabs\Enum\Enum;
*
* List of all compatible results
*
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
*/
class Result extends Enum
{
const None = '*';
const Lost = '0';
const Draw = '0.5';
const Won = '1';
const Absent = '0 FF';
const WonForfait = '1 FF';
const Adjourned = '0 A';
const DrawAdjourned = '0.5 A';
const WonAdjourned = '1 A';
const Bye = '0 Bye';
const WonBye = '1 Bye';
public const ABSENT = '0 FF';
public const ADJOURNED = '0 A';
public const BYE = '0 Bye';
public const DRAW = '0.5';
public const DRAW_ADJOURNED = '0.5 A';
public const LOST = '0';
public const NONE = '*';
public const WON = '1';
public const WON_ADJOURNED = '1 A';
public const WON_BYE = '1 Bye';
public const WON_FORFAIT = '1 FF';
}

@ -1,13 +1,14 @@
<?php
/**
* Enum Tiebreak
*
* List of all compatible tiebreaks
*
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
*/
namespace JeroenED\Libpairtwo\Enums;
@ -19,34 +20,56 @@ use MyCLabs\Enum\Enum;
*
* List of all compatible tiebreaks
*
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
* @author Jeroen De Meerleer <schaak@jeroened.be>
* @category Main
* @package Libpairtwo
* @copyright Copyright (c) 2018-2019 Jeroen De Meerleer <schaak@jeroened.be>
*/
class Tiebreak extends Enum
{
const None = "";
const Keizer = "Keizer";
const Points = "Points";
const Buchholz = "Buchholz";
const BuchholzMed = "Buchholz Median";
const BuchholzCut = "Buchholz Cut";
const BuchholzMed2 = "Buchholz Median 2";
const BuchholzCut2 = "Buchholz Cut 2";
const Sonneborn = "Sonneborn-Berger";
const Kashdan = "Kashdan";
const SoccerKashdan = "Soccer Kashdan";
const Cumulative = "Cumulative";
const Between = "Mutual Result";
const Koya = "Koya";
const Baumbach = "Most wins"; // Ref: https://en.wikipedia.org/wiki/Tie-breaking_in_Swiss-system_tournaments#Most_wins_(Baumbach) Please tell me why?
const AveragePerformance = "Average performance";
const Performance = "Performance";
const Aro = "Average Rating";
const AroCut = "Average Rating Cut";
const BlackPlayed = "Black played";