Add rating date tootip, and avoid registering twice a player
This commit is contained in:
@@ -23,6 +23,9 @@ object PlayerHandler: PairgothApiHandler {
|
||||
val tournament = getTournament(request)
|
||||
val payload = getObjectPayload(request)
|
||||
val player = Player.fromJson(payload)
|
||||
player.externalIds.forEach { dbId, pId ->
|
||||
if (tournament.hasPlayer(dbId, pId)) badRequest("player already registered")
|
||||
}
|
||||
tournament.players[player.id] = player
|
||||
tournament.dispatchEvent(PlayerAdded, request, player.toJson())
|
||||
return Json.Object("success" to true, "id" to player.id)
|
||||
|
@@ -119,6 +119,7 @@ sealed class Tournament <P: Pairable>(
|
||||
}
|
||||
|
||||
fun pairedPlayers() = games.flatMap { it.values }.flatMap { listOf(it.black, it.white) }.toSet()
|
||||
fun hasPlayer(dbId: DatabaseId, pId: String) = players.values.filter { player -> pId == player.externalIds[dbId] }.isNotEmpty()
|
||||
}
|
||||
|
||||
// standard tournament of individuals
|
||||
|
Reference in New Issue
Block a user