PAN-54 Created user registration page.
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
package edu.msudenver.tsp.website.controller;
|
||||
|
||||
import edu.msudenver.tsp.website.forms.UserCreationForm;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
@Slf4j
|
||||
@Controller
|
||||
@AllArgsConstructor
|
||||
@RequestMapping("/createuser")
|
||||
public class UserCreationController {
|
||||
@GetMapping({"/",""})
|
||||
public ModelAndView createUserPage() {
|
||||
LOG.info("Received request to display the user creation page: returning model with name 'User'");
|
||||
return new ModelAndView("User");
|
||||
}
|
||||
|
||||
@PostMapping({"/",""})
|
||||
public String registerUser(@Validated final UserCreationForm userCreationForm, final Model model) {
|
||||
model.addAttribute("userID", userCreationForm.getUserID());
|
||||
model.addAttribute("username", userCreationForm.getUsername());
|
||||
model.addAttribute("password", userCreationForm.getPassword());
|
||||
model.addAttribute("emailAddress", userCreationForm.getEmailAddress());
|
||||
model.addAttribute("firstName", userCreationForm.getFirstName());
|
||||
model.addAttribute("lastName", userCreationForm.getLastName());
|
||||
model.addAttribute("referrer", userCreationForm.getReferrer());
|
||||
model.addAttribute("TnCAgreement", userCreationForm.isAgreedToTerms());
|
||||
|
||||
LOG.info("Saving user {}...", userCreationForm);
|
||||
|
||||
return "success";
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package edu.msudenver.tsp.website.forms;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
public class UserCreationForm {
|
||||
private int userID;
|
||||
private String username;
|
||||
private String password;
|
||||
private String confirmPassword;
|
||||
private String emailAddress;
|
||||
private String firstName;
|
||||
private String lastName;
|
||||
private String referrer; // optional
|
||||
private boolean agreedToTerms;
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
<%@ page contentType="text/html; charset=UTF-8"
|
||||
pageEncoding="UTF-8"%>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>User Creation</title>
|
||||
</head>
|
||||
<body>
|
||||
<form method="post" action="">
|
||||
<label>Username:
|
||||
<input type="text" name="username"/>
|
||||
</label>
|
||||
<br>
|
||||
<label>Password:
|
||||
<input type="text" name="password"/>
|
||||
</label>
|
||||
<br>
|
||||
<label>Confirm Password:
|
||||
<input type="text" name="confirmPassword"/>
|
||||
</label>
|
||||
<br>
|
||||
<label>Email Address:
|
||||
<input type="text" name="emailAddress"/>
|
||||
</label>
|
||||
<br>
|
||||
<label>First Name:
|
||||
<input type="text" name="firstName"/>
|
||||
</label>
|
||||
<br>
|
||||
<label>Last Name:
|
||||
<input type="text" name="lastName"/>
|
||||
</label>
|
||||
<br>
|
||||
<label>I agree to the terms and conditions.
|
||||
<input type="checkbox" name="agreedToTerms"/>
|
||||
</label>
|
||||
<br>
|
||||
<input type="submit" value="Save">
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,23 @@
|
||||
package edu.msudenver.tsp.website.controller;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.runners.MockitoJUnitRunner;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
|
||||
@RunWith(MockitoJUnitRunner.class)
|
||||
public class UserCreationControllerTest {
|
||||
|
||||
private final UserCreationController userCreationController = new UserCreationController();
|
||||
|
||||
@Test
|
||||
public void testUserCreationPage() {
|
||||
final ModelAndView modelAndView = userCreationController.createUserPage();
|
||||
|
||||
assertNotNull(modelAndView);
|
||||
assertEquals("User", modelAndView.getViewName());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user