Skip to content

Commit

Permalink
add ELO to results
Browse files Browse the repository at this point in the history
  • Loading branch information
vjuneja committed Mar 24, 2020
1 parent 63ab78c commit e14493b
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 21 deletions.
12 changes: 6 additions & 6 deletions src/app/OpeningGraph.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ class OpeningGraph {
}
currNode.gameResults.push(gameResult)
}
addMoveForFen(fullFen, move, result) {
addMoveForFen(fullFen, move, resultObject) {
let fen = simplifiedFen(fullFen)
var currNode = this.graph.nodes.get(fen)
if(!currNode) {
Expand All @@ -32,9 +32,9 @@ class OpeningGraph {
}

let whiteWin = 0, blackWin = 0, draw = 0
if(result === '1-0') {
if(resultObject.result === '1-0') {
whiteWin = 1
} else if (result === '0-1') {
} else if (resultObject.result === '0-1') {
blackWin = 1
} else {
draw = 1
Expand All @@ -50,7 +50,7 @@ class OpeningGraph {


}
addMoveAgainstFen(fullFen, move, result) {
addMoveAgainstFen(fullFen, move, resultObject) {
let fen = simplifiedFen(fullFen)

var currNode = this.graph.nodes.get(fen)
Expand All @@ -67,9 +67,9 @@ class OpeningGraph {
movesPlayedAgainst.set(move.san, movePlayedAgainst)
}
let whiteWin = 0, blackWin = 0, draw = 0
if(result === '1-0') {
if(resultObject.result === '1-0') {
whiteWin = 1
} else if (result === '0-1') {
} else if (resultObject.result === '0-1') {
blackWin = 1
} else {
draw = 1
Expand Down
22 changes: 11 additions & 11 deletions src/app/PGNReader.js
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@ export default class PGNReader {
let gamePlayerColor = (pgn.headers.White.toLowerCase() === playerName.toLowerCase()) ? "w" : "b"
if(pgn.moves[0] && pgn.moves[0].move_number === 1) {
let chess = new Chess()
let resultObject = this.gameResult(pgn)

pgn.moves.forEach(element => {
let fen = chess.fen()
let move = chess.move(element.move)
Expand All @@ -42,28 +44,26 @@ export default class PGNReader {
return
}
if(move.color === gamePlayerColor) {
openingGraph.addMoveForFen(fen, move, pgn.result)
openingGraph.addMoveForFen(fen, move, resultObject)
} else {
openingGraph.addMoveAgainstFen(fen,move, pgn.result)
openingGraph.addMoveAgainstFen(fen,move, resultObject)
}
})
let fen = chess.fen()
openingGraph.addGameResultOnFen(fen, this.gameResult(pgn))
openingGraph.addGameResultOnFen(fen, resultObject)
this.continueProcessingGames = notify(advancedFilters[Constants.FILTER_NAME_DOWNLOAD_LIMIT],1, openingGraph)
}
setTimeout(()=>{this.parsePGNTimed(pgnArray, advancedFilters, playerColor, index+1, playerName, notify, showError)},1)
}

gameResult(pgn) {
let result = pgn.headers.Result
let white = pgn.headers.White
let black = pgn.headers.Black
let url = pgn.headers.Link || pgn.headers.Site
return {
result:result,
white:white,
black:black,
url:url
result:pgn.result,
white:pgn.headers.White,
black:pgn.headers.Black,
whiteElo:pgn.headers.WhiteElo,
blackElo:pgn.headers.BlackElo,
url:pgn.headers.Link || pgn.headers.Site
}
}
}
13 changes: 9 additions & 4 deletions src/pres/MovesList.js
Original file line number Diff line number Diff line change
Expand Up @@ -28,16 +28,21 @@ export default class MovesList extends React.Component {
return <Table>
<TableBody>
{
this.props.gameResults.map(result =>
<TableRow className="moveRow" key = {`${result.url}`} onClick={this.launch(result.url)}>
this.props.gameResults.map(result => {
let whitePlayer = this.player(result.white, result.whiteElo)
let blackPlayer = this.player(result.black, result.blackElo)
return <TableRow className="moveRow" key = {`${result.url}`} onClick={this.launch(result.url)}>
<TableCell>
{result.result==="1-0"?<b>{result.white}</b>:result.white} {result.result} {result.result === "0-1"?<b>{result.black}</b>:result.black}
{result.result==="1-0"?<b>{whitePlayer}</b>:whitePlayer} {result.result} {result.result === "0-1"?<b>{blackPlayer}</b>:blackPlayer}
</TableCell>
</TableRow>
)}
})}
</TableBody>
</Table>
}
player(name, elo) {
return `${name} (${elo})`
}
movesTable() {
let hasMoves = (this.props.movesToShow && this.props.movesToShow.length>0)
return <Table>
Expand Down

0 comments on commit e14493b

Please sign in to comment.