dkforest

A forum and chat platform (onion)
git clone https://git.dasho.dev/n0tr1v/dkforest.git
Log | Files | Refs | LICENSE

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:
Mpkg/web/handlers/chess.go | 4++--
Mpkg/web/handlers/interceptors/chess.go | 58+++++++++++++++++++++++++++++-----------------------------
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) {