Update authentication, reauth, logout to use new transactions

This commit is contained in:
2025-02-17 18:58:34 +11:00
parent 417daf0028
commit 2c61cec55c
17 changed files with 306 additions and 121 deletions

View File

@@ -5,6 +5,7 @@ import (
"net/http"
"projectreshoot/config"
"projectreshoot/db"
"projectreshoot/handlers"
"projectreshoot/middleware"
"projectreshoot/view/page"
@@ -17,7 +18,8 @@ func addRoutes(
mux *http.ServeMux,
logger *zerolog.Logger,
config *config.Config,
conn *sql.DB,
oldconn *sql.DB,
conn *db.SafeConn,
staticFS *http.FileSystem,
) {
// Health check
@@ -42,7 +44,7 @@ func addRoutes(
handlers.HandleLoginRequest(
config,
logger,
conn,
oldconn,
)))
// Register page and handlers
@@ -55,7 +57,7 @@ func addRoutes(
handlers.HandleRegisterRequest(
config,
logger,
conn,
oldconn,
)))
// Logout
@@ -85,17 +87,17 @@ func addRoutes(
mux.Handle("POST /change-username",
middleware.RequiresLogin(
middleware.RequiresFresh(
handlers.HandleChangeUsername(logger, conn),
handlers.HandleChangeUsername(logger, oldconn),
),
))
mux.Handle("POST /change-bio",
middleware.RequiresLogin(
handlers.HandleChangeBio(logger, conn),
handlers.HandleChangeBio(logger, oldconn),
))
mux.Handle("POST /change-password",
middleware.RequiresLogin(
middleware.RequiresFresh(
handlers.HandleChangePassword(logger, conn),
handlers.HandleChangePassword(logger, oldconn),
),
))
}

View File

@@ -5,6 +5,7 @@ import (
"net/http"
"projectreshoot/config"
"projectreshoot/db"
"projectreshoot/middleware"
"github.com/rs/zerolog"
@@ -14,7 +15,8 @@ import (
func NewServer(
config *config.Config,
logger *zerolog.Logger,
conn *sql.DB,
oldconn *sql.DB,
conn *db.SafeConn,
staticFS *http.FileSystem,
) http.Handler {
mux := http.NewServeMux()
@@ -22,6 +24,7 @@ func NewServer(
mux,
logger,
config,
oldconn,
conn,
staticFS,
)