commit bef03bdb0d7a018c7f095c31b8fdadd71aac72cb
parent 3631e795f662cec5ce5d48f62fab2477b23ce309
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Wed, 9 Nov 2022 14:21:57 -0800
improvements
Diffstat:
4 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/pkg/database/utils/utils.go b/pkg/database/utils/utils.go
@@ -14,7 +14,7 @@ func GetZeroUser() database.User {
return zeroUser
}
-func SendNewChessGameMessages(key string, zeroUser, player1, player2 database.User) {
+func SendNewChessGameMessages(key, roomKey string, roomID int64, zeroUser, player1, player2 database.User) {
// Send game link to players
getPlayerMsg := func(opponent database.User) (raw string, msg string) {
raw = `Chess game against ` + opponent.Username
@@ -22,9 +22,9 @@ func SendNewChessGameMessages(key string, zeroUser, player1, player2 database.Us
return
}
raw, msg := getPlayerMsg(player2)
- _, _ = database.CreateMsg(raw, msg, "", config.GeneralRoomID, zeroUser.ID, &player1.ID)
+ _, _ = database.CreateMsg(raw, msg, roomKey, roomID, zeroUser.ID, &player1.ID)
raw, msg = getPlayerMsg(player1)
- _, _ = database.CreateMsg(raw, msg, "", config.GeneralRoomID, zeroUser.ID, &player2.ID)
+ _, _ = database.CreateMsg(raw, msg, roomKey, roomID, zeroUser.ID, &player2.ID)
// Send notifications to chess games subscribers
raw = `Chess game: ` + player1.Username + ` VS ` + player2.Username
@@ -34,6 +34,6 @@ func SendNewChessGameMessages(key string, zeroUser, player1, player2 database.Us
if user.ID == player1.ID || user.ID == player2.ID {
continue
}
- _, _ = database.CreateMsg(raw, msg, "", config.GeneralRoomID, zeroUser.ID, &user.ID)
+ _, _ = database.CreateMsg(raw, msg, roomKey, roomID, zeroUser.ID, &user.ID)
}
}
diff --git a/pkg/web/handlers/api/v1/chess.go b/pkg/web/handlers/api/v1/chess.go
@@ -382,7 +382,7 @@ func (b *Chess) GetGames() (out []ChessGame) {
return
}
-func (b *Chess) NewGame1(player1, player2 database.User) (*ChessGame, error) {
+func (b *Chess) NewGame1(roomKey string, roomID int64, player1, player2 database.User) (*ChessGame, error) {
if player1.ID == player2.ID {
return nil, errors.New("can't play yourself")
}
@@ -391,7 +391,7 @@ func (b *Chess) NewGame1(player1, player2 database.User) (*ChessGame, error) {
g := b.NewGame(key, player1, player2)
zeroUser := dutils.GetZeroUser()
- dutils.SendNewChessGameMessages(key, zeroUser, player1, player2)
+ dutils.SendNewChessGameMessages(key, roomKey, roomID, zeroUser, player1, player2)
return g, nil
}
diff --git a/pkg/web/handlers/api/v1/slashInterceptor.go b/pkg/web/handlers/api/v1/slashInterceptor.go
@@ -969,7 +969,7 @@ func handleChessCmd(c *Command) (handled bool) {
c.err = errors.New("invalid username")
return true
}
- if _, err := ChessInstance.NewGame1(player1, player2); err != nil {
+ if _, err := ChessInstance.NewGame1(c.roomKey, c.room.ID, player1, player2); err != nil {
c.err = err
return true
}
diff --git a/pkg/web/handlers/handlers.go b/pkg/web/handlers/handlers.go
@@ -4168,7 +4168,7 @@ func ChessHandler(c echo.Context) error {
data.Error = "invalid username"
return c.Render(http.StatusOK, "chess", data)
}
- if _, err := v1.ChessInstance.NewGame1(*authUser, player2); err != nil {
+ if _, err := v1.ChessInstance.NewGame1("", config.GeneralRoomID, *authUser, player2); err != nil {
data.Error = err.Error()
return c.Render(http.StatusOK, "chess", data)
}