@(u: User, playing: Option[Pov], blocked: Boolean, followable: Boolean, rel: Option[lila.relation.Relation], ping: Option[Int], crosstable: Option[lila.game.Crosstable])(implicit ctx: Context)
@ping.map { p => @signalBars(p) }
@u.profileOrDefault.countryInfo.map { c =>
@defining(u.username.size + c.shortName.size < 20) { spaceForNameText =>
@if(spaceForNameText) { @c.shortName }
}
}
@userLink(u, withPowerTip = false)
@if(u.engine && ctx.me.fold(true)(u !=) && !isGranted(_.UserSpy)) {
@trans.thisPlayerUsesChessComputerAssistance()
} else {
@u.best8Perfs.map { pt =>
@showPerfRating(u, pt)
}
}
@if(!ctx.pref.isBlindfold) {
@playing.map { pov =>
@gameFen(pov)
@playerText(pov.opponent, withRating = true)
@pov.game.clock.map { c =>
• @c.config.show
}
}
}
@ctx.userId.map { myId =>
@crosstable.filter(_.nonEmpty).map { cross =>
@trans.yourScore {
@cross.showScore(myId) - @cross.showOpponentScore(myId)
}
}
@if(myId != u.id && u.enabled) {
|
@if(!blocked) {
|
|
}
@relation.mini(u.id, blocked, followable, rel) |
}
}
@if(isGranted(_.UserSpy)) {
@if(u.lameOrTroll || u.disabled) {
@userMarks(u, None) }
@trans.nbGames.plural(u.count.game, u.count.game.localize), @momentFromNow(u.createdAt)
}