From 396096b00c7ba3e7fbe9c25625f411b386ab8a64 Mon Sep 17 00:00:00 2001 From: Niquelle Date: Thu, 4 Nov 2021 20:15:34 -0400 Subject: [PATCH] completed studio --- .../spaday/controllers/UserController.java | 15 ++++++++------- .../java/org/launchcode/spaday/models/User.java | 12 ++++++++++++ src/main/resources/templates/user/add.html | 11 +++++++---- 3 files changed, 27 insertions(+), 11 deletions(-) diff --git a/src/main/java/org/launchcode/spaday/controllers/UserController.java b/src/main/java/org/launchcode/spaday/controllers/UserController.java index 2f8a0fb1..a657c040 100644 --- a/src/main/java/org/launchcode/spaday/controllers/UserController.java +++ b/src/main/java/org/launchcode/spaday/controllers/UserController.java @@ -3,24 +3,25 @@ import org.launchcode.spaday.models.User; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; +import org.springframework.validation.Errors; import org.springframework.web.bind.annotation.*; +import javax.validation.Valid; + @Controller @RequestMapping("user") public class UserController { @GetMapping("/add") - public String displayAddUserForm() { + public String displayAddUserForm(Model model) { + model.addAttribute(new User()); return "user/add"; } @PostMapping - public String processAddUserForm(Model model, @ModelAttribute User user, String verify) { - model.addAttribute("user", user); - model.addAttribute("verify", verify); - model.addAttribute("username", user.getUsername()); - model.addAttribute("email", user.getEmail()); - if (user.getPassword().equals(verify)) { + public String processAddUserForm(Model model, @ModelAttribute @Valid User user, Errors errors, String verify) { + + if (user.getPassword().equals(verify) && !errors.hasErrors()) { return "user/index"; } else { diff --git a/src/main/java/org/launchcode/spaday/models/User.java b/src/main/java/org/launchcode/spaday/models/User.java index 7c8bb028..97ef0eba 100644 --- a/src/main/java/org/launchcode/spaday/models/User.java +++ b/src/main/java/org/launchcode/spaday/models/User.java @@ -1,8 +1,20 @@ package org.launchcode.spaday.models; + +import javax.validation.constraints.Email; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Size; + public class User { + @NotBlank(message = "name is required!") + @Size(min=5, max = 15, message = "") private String username; + + @Email(message = "Invalid email. try again.") private String email; + + @NotBlank(message = "please enter a password.") + @Size(max=6, message = "password must be 6 characters long") private String password; public User() { diff --git a/src/main/resources/templates/user/add.html b/src/main/resources/templates/user/add.html index 40c6f056..0814f410 100644 --- a/src/main/resources/templates/user/add.html +++ b/src/main/resources/templates/user/add.html @@ -9,25 +9,28 @@
+

+

+

-

+