commit 513ff246eb03817deebf21e7e5af697c20cab0ac
parent 36251b685a423e903f0b38371595ae2174c07ae1
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Sat, 17 Jun 2023 13:44:02 -0700
display analyze link to authorized users
Diffstat:
2 files changed, 31 insertions(+), 31 deletions(-)
diff --git a/pkg/web/handlers/chess.go b/pkg/web/handlers/chess.go
@@ -588,9 +588,9 @@ func ChessGameHandler(c echo.Context) error {
var card1 string
if isSpectator {
- card1 = g.DrawSpectatorCard(0, key, isFlipped, authUser.ChessSoundsEnabled, authUser.IsAdmin)
+ card1 = g.DrawSpectatorCard(0, key, isFlipped, authUser.ChessSoundsEnabled, authUser.CanUseChessAnalyze)
} else {
- card1 = g.DrawPlayerCard(0, key, isFlipped, false, authUser.ChessSoundsEnabled, authUser.IsAdmin)
+ card1 = g.DrawPlayerCard(0, key, isFlipped, false, authUser.ChessSoundsEnabled, authUser.CanUseChessAnalyze)
}
send(card1)
diff --git a/pkg/web/handlers/interceptors/chess.go b/pkg/web/handlers/interceptors/chess.go
@@ -396,11 +396,11 @@ func (g *ChessGame) renderBoardB64(isFlipped bool) string {
return imgB64
}
-func (g *ChessGame) DrawPlayerCard(moveIdx int, key string, isBlack, isYourTurn, soundsEnabled, isAdmin bool) string {
- return g.drawPlayerCard(moveIdx, key, isBlack, false, isYourTurn, soundsEnabled, isAdmin)
+func (g *ChessGame) DrawPlayerCard(moveIdx int, key string, isBlack, isYourTurn, soundsEnabled, canUseChessAnalyze bool) string {
+ return g.drawPlayerCard(moveIdx, key, isBlack, false, isYourTurn, soundsEnabled, canUseChessAnalyze)
}
-func (g *ChessGame) drawPlayerCard(moveIdx int, key string, isBlack, isSpectator, isYourTurn, soundsEnabled, isAdmin bool) string {
+func (g *ChessGame) drawPlayerCard(moveIdx int, key string, isBlack, isSpectator, isYourTurn, soundsEnabled, canUseChessAnalyze bool) string {
htmlTmpl := `
<style>
#p1Status {
@@ -484,7 +484,7 @@ func (g *ChessGame) drawPlayerCard(moveIdx int, key string, isBlack, isSpectator
<tr style="height: 100%;">
<td colspan="2">
<div style="color: #eee; display: inline-block;">Outcome: <span id="outcome"></span></div>
- {{ if and .GameOver .IsAdmin }}
+ {{ if and .GameOver .CanUseChessAnalyze }}
<a style="color: #eee;" href="/chess/{{ .Key }}/analyze">Analyze</a>
{{ end }}
</td>
@@ -535,29 +535,29 @@ func (g *ChessGame) drawPlayerCard(moveIdx int, key string, isBlack, isSpectator
}
data := map[string]any{
- "SoundsEnabled": soundsEnabled,
- "Key": key,
- "IsFlipped": isBlack,
- "IsSpectator": isSpectator,
- "White": player1,
- "Black": player2,
- "Username": enemy.Username,
- "Table": template.HTML(g.renderBoardHTML(moveIdx, isBlack, imgB64, bestMove)),
- "ImgB64": imgB64,
- "Outcome": game.Outcome().String(),
- "GameOver": game.Outcome() != chess.NoOutcome,
- "PGN": game.String(),
- "WhiteAdvantage": whiteAdvantage,
- "WhiteScore": whiteScore,
- "BlackAdvantage": blackAdvantage,
- "BlackScore": blackScore,
- "IsAnalyzed": g.DbChessGame.AccuracyWhite != 0 && g.DbChessGame.AccuracyBlack != 0,
- "WhiteAccuracy": g.DbChessGame.AccuracyWhite,
- "BlackAccuracy": g.DbChessGame.AccuracyBlack,
- "Stats": stats,
- "ColumnWidth": columnWidth,
- "IsAdmin": isAdmin,
- "MoveIdx": moveIdx,
+ "SoundsEnabled": soundsEnabled,
+ "Key": key,
+ "IsFlipped": isBlack,
+ "IsSpectator": isSpectator,
+ "White": player1,
+ "Black": player2,
+ "Username": enemy.Username,
+ "Table": template.HTML(g.renderBoardHTML(moveIdx, isBlack, imgB64, bestMove)),
+ "ImgB64": imgB64,
+ "Outcome": game.Outcome().String(),
+ "GameOver": game.Outcome() != chess.NoOutcome,
+ "PGN": game.String(),
+ "WhiteAdvantage": whiteAdvantage,
+ "WhiteScore": whiteScore,
+ "BlackAdvantage": blackAdvantage,
+ "BlackScore": blackScore,
+ "IsAnalyzed": g.DbChessGame.AccuracyWhite != 0 && g.DbChessGame.AccuracyBlack != 0,
+ "WhiteAccuracy": g.DbChessGame.AccuracyWhite,
+ "BlackAccuracy": g.DbChessGame.AccuracyBlack,
+ "Stats": stats,
+ "ColumnWidth": columnWidth,
+ "CanUseChessAnalyze": canUseChessAnalyze,
+ "MoveIdx": moveIdx,
}
fns := template.FuncMap{
@@ -576,8 +576,8 @@ func (g *ChessGame) drawPlayerCard(moveIdx int, key string, isBlack, isSpectator
return buf1.String()
}
-func (g *ChessGame) DrawSpectatorCard(moveIdx int, key string, isFlipped, soundsEnabled, isAdmin bool) string {
- return g.drawPlayerCard(moveIdx, key, isFlipped, true, false, soundsEnabled, isAdmin)
+func (g *ChessGame) DrawSpectatorCard(moveIdx int, key string, isFlipped, soundsEnabled, CanUseChessAnalyze bool) string {
+ return g.drawPlayerCard(moveIdx, key, isFlipped, true, false, soundsEnabled, CanUseChessAnalyze)
}
func (b *Chess) GetGame(key string) (*ChessGame, error) {