attempts at fixing registraiton form

This commit is contained in:
Sky Johnson 2025-08-27 22:39:40 -05:00
parent 10095f4255
commit e9d1e12c8d
3 changed files with 9 additions and 4 deletions

Binary file not shown.

View File

@ -41,11 +41,11 @@ func RenderPage(ctx sushi.Ctx, title, tmplPath string, additionalData map[string
data := map[string]any{ data := map[string]any{
"_title": PageTitle(title), "_title": PageTitle(title),
"authenticated": ctx.IsAuthenticated(), "authenticated": ctx.IsAuthenticated(),
"user": ctx.GetCurrentUser(),
"csrf": csrf.HiddenField(ctx), "csrf": csrf.HiddenField(ctx),
"_totaltime": totalTime, "_totaltime": totalTime,
"_version": "1.0.0", "_version": "1.0.0",
"_build": "dev", "_build": "dev",
"user": ctx.GetCurrentUser().(*users.User),
"_memalloc": m.Alloc / 1024 / 1024, "_memalloc": m.Alloc / 1024 / 1024,
"_errormsg": sess.GetFlashMessage("error"), "_errormsg": sess.GetFlashMessage("error"),
"_successmsg": sess.GetFlashMessage("success"), "_successmsg": sess.GetFlashMessage("success"),

View File

@ -112,21 +112,26 @@ func processRegister(ctx sushi.Ctx) {
"email": email, "email": email,
} }
sess := ctx.GetCurrentSession()
if err := validateRegistration(username, email, userPassword, confirmPassword); err != nil { if err := validateRegistration(username, email, userPassword, confirmPassword); err != nil {
fmt.Println("Error occured: " + err.Error())
setFlashAndFormData(ctx, err.Error(), formData) setFlashAndFormData(ctx, err.Error(), formData)
ctx.Redirect("/register") ctx.Redirect("/register")
return return
} }
// Check if username already exists // Check if username already exists
if _, err := users.ByUsername(username); err == nil { if _, err := users.ByUsername(username); err != nil {
fmt.Println("Username already exists")
setFlashAndFormData(ctx, "Username already exists", formData) setFlashAndFormData(ctx, "Username already exists", formData)
ctx.Redirect("/register") ctx.Redirect("/register")
return return
} }
// Check if email already exists // Check if email already exists
if _, err := users.ByEmail(email); err == nil { if _, err := users.ByEmail(email); err != nil {
fmt.Println("Email already exists")
setFlashAndFormData(ctx, "Email already registered", formData) setFlashAndFormData(ctx, "Email already registered", formData)
ctx.Redirect("/register") ctx.Redirect("/register")
return return
@ -135,6 +140,7 @@ func processRegister(ctx sushi.Ctx) {
// Ensure class ID exists (should always, unless someone modified the form) // Ensure class ID exists (should always, unless someone modified the form)
class, err := classes.Find(classID) class, err := classes.Find(classID)
if err != nil { if err != nil {
fmt.Println("Invalid class ID")
setFlashAndFormData(ctx, "Invalid class selected", formData) setFlashAndFormData(ctx, "Invalid class selected", formData)
ctx.Redirect("/register") ctx.Redirect("/register")
return return
@ -175,7 +181,6 @@ func processRegister(ctx sushi.Ctx) {
ctx.Login(user.ID, user) ctx.Login(user.ID, user)
// Set success message // Set success message
sess := ctx.GetCurrentSession()
sess.SetFlash("success", fmt.Sprintf("Greetings, %s!", user.Username)) sess.SetFlash("success", fmt.Sprintf("Greetings, %s!", user.Username))
ctx.Redirect("/") ctx.Redirect("/")