Skip to content

Commit

Permalink
Fix team rejoining
Browse files Browse the repository at this point in the history
  • Loading branch information
diamondburned committed Mar 18, 2024
1 parent 4ac8036 commit d27c9e0
Show file tree
Hide file tree
Showing 4 changed files with 12 additions and 22 deletions.
4 changes: 2 additions & 2 deletions server/db/sql_queries.sql
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ INSERT INTO teams (team_name, invite_code) VALUES (?, ?) RETURNING *;
-- name: JoinTeam :one
INSERT INTO team_members (team_name, user_name, is_leader) VALUES (?, ?, ?) RETURNING *;

-- name: LeaveTeam :one
DELETE FROM team_members WHERE team_name = ? AND user_name = ? RETURNING *;
-- name: LeaveTeam :exec
DELETE FROM team_members WHERE team_name = ? AND user_name = ?;

-- name: IsLeader :one
SELECT is_leader FROM team_members WHERE team_name = ? AND user_name = ?;
Expand Down
17 changes: 5 additions & 12 deletions server/db/sql_queries.sql.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 0 additions & 3 deletions server/frontend/pages/join.html
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,6 @@ <h2>Team Creation</h2>
title="Your name should be of length [2, 32] consisting of letters and spaces only!"
value="{{ .FillingUsername }}"
autocomplete="off"
{{ if .TeamName }}
disabled
{{ end }}
/>

<div class="team-grid">
Expand Down
10 changes: 5 additions & 5 deletions server/r_join.go
Original file line number Diff line number Diff line change
Expand Up @@ -115,9 +115,10 @@ func (s *Server) join(w http.ResponseWriter, r *http.Request) {
return
}

err := s.database.Tx(func(q *db.Queries) error {
err := s.database.Tx(func(q *db.Queries) (err error) {
var isLeader bool
if isAuthenticated {
isLeader, err := q.IsLeader(ctx, db.IsLeaderParams{
isLeader, err = q.IsLeader(ctx, db.IsLeaderParams{
TeamName: u.TeamName,
Username: u.Username,
})
Expand All @@ -128,7 +129,7 @@ func (s *Server) join(w http.ResponseWriter, r *http.Request) {
return fmt.Errorf("you cannot leave your own team")
}

_, err = q.LeaveTeam(ctx, db.LeaveTeamParams{
err = q.LeaveTeam(ctx, db.LeaveTeamParams{
TeamName: u.TeamName,
Username: u.Username,
})
Expand All @@ -137,7 +138,6 @@ func (s *Server) join(w http.ResponseWriter, r *http.Request) {
}
}

var isLeader bool
if data.TeamCode != "" {
t, err := q.FindTeamWithInviteCode(ctx, data.TeamCode)
if err != nil {
Expand All @@ -155,7 +155,7 @@ func (s *Server) join(w http.ResponseWriter, r *http.Request) {
isLeader = true
}

_, err := q.JoinTeam(ctx, db.JoinTeamParams{
_, err = q.JoinTeam(ctx, db.JoinTeamParams{
TeamName: data.TeamName,
Username: data.Username,
IsLeader: isLeader,
Expand Down

0 comments on commit d27c9e0

Please sign in to comment.