Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions src/main/java/codesquad/service/UserService.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,24 @@
import codesquad.domain.User;
import codesquad.domain.UserRepository;
import codesquad.dto.UserDto;
import org.slf4j.Logger;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;
import java.util.Optional;

import static org.slf4j.LoggerFactory.getLogger;

@Service
public class UserService {

private static final Logger log = getLogger(UserService.class);
@Resource(name = "userRepository")
private UserRepository userRepository;

public User add(UserDto userDto) {
log.debug("asdfsag : {}" , userDto._toUser());
return userRepository.save(userDto._toUser());
}

Expand All @@ -27,6 +32,10 @@ public User update(User loginUser, long id, UserDto updatedUser) {
return userRepository.save(original);
}

public User findById(String userId) {
return userRepository.findByUserId(userId).orElseThrow(UnAuthorizedException::new);
}

public User findById(User loginUser, long id) {
return userRepository.findById(id)
.filter(user -> user.equals(loginUser))
Expand Down
5 changes: 5 additions & 0 deletions src/main/java/codesquad/web/UserController.java
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,11 @@ public String create(UserDto userDto) {
return "redirect:/users";
}

@GetMapping("")
public String login() {
return "/user/login";
}

@GetMapping("/{id}/form")
public String updateForm(@LoginUser User loginUser, @PathVariable long id, Model model) {
log.debug("LoginUser : {}", loginUser);
Expand Down
19 changes: 19 additions & 0 deletions src/main/resources/templates/base.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<!doctype html>
<html lang="en">
{{#block "header"}}
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
<title>Issue Tracking System</title>

<link href='https://fonts.googleapis.com/css?family=Roboto:regular,bold,italic,thin,light,bolditalic,black,medium&amp;lang=en'
rel='stylesheet' type='text/css'>
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<link rel="stylesheet" href="https://code.getmdl.io/1.1.3/material.blue_grey-orange.min.css">
<link rel="stylesheet" href="/css/styles.css">
</head>
{{/block}}

{{#block "middle"}}
{{/block}}
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@
<nav class="mdl-navigation">
<a class="mdl-navigation__link" href="/">Issues</a>
<a class="mdl-navigation__link" href="/milestone/list.html">Milestones</a>
<a class="mdl-navigation__link" href="/user/login.html">login</a>
<a class="mdl-navigation__link" href="/user/join.html">join</a>
<a class="mdl-navigation__link" href="/users/login">login</a>
<a class="mdl-navigation__link" href="/users/form">join</a>
</nav>
</div>
</header>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@
<nav class="mdl-navigation">
<a class="mdl-navigation__link" href="/">Issues</a>
<a class="mdl-navigation__link" href="/milestone/list.html">Milestones</a>
<a class="mdl-navigation__link" href="/user/login.html">login</a>
<a class="mdl-navigation__link" href="/user/join.html">join</a>
<a class="mdl-navigation__link" href="/users/login">login</a>
<a class="mdl-navigation__link" href="/users/form">join</a>
</nav>
</div>
</header>
Expand All @@ -39,7 +39,7 @@
</div>
<div class="issues__posts mdl-grid">
<div class="mdl-card mdl-shadow--4dp mdl-cell mdl-cell--12-col">
<form action="/join" enctype="multipart/form-data" method="post">
<form action="/users" enctype="multipart/form-data" method="post">
<div class="mdl-card__title mdl-color-text--grey-50" style="height:100px;">
<h4>Join Member</h4>
</div>
Expand Down
99 changes: 99 additions & 0 deletions src/main/resources/templates/user/updateForm.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
<title>Issue Tracking System</title>

<link href='https://fonts.googleapis.com/css?family=Roboto:regular,bold,italic,thin,light,bolditalic,black,medium&amp;lang=en'
rel='stylesheet' type='text/css'>
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<link rel="stylesheet" href="https://code.getmdl.io/1.1.3/material.blue_grey-orange.min.css">
<link rel="stylesheet" href="/css/styles.css">
</head>
<body>
<div class="issues issues--wrap mdl-layout mdl-js-layout has-drawer is-upgraded">

<header class="mdl-layout__header mdl-layout__header--waterfall">
<div class="mdl-layout__header-row">
<!-- Title -->
<span class="mdl-layout-title">Issue Tracking System</span>
<div class="mdl-layout-spacer"></div>
<!-- Tabs -->
<nav class="mdl-navigation">
<a class="mdl-navigation__link" href="/">Issues</a>
<a class="mdl-navigation__link" href="/milestone/list.html">Milestones</a>
<a class="mdl-navigation__link" href="/users/login">login</a>
<a class="mdl-navigation__link" href="/users/form">join</a>
</nav>
</div>
</header>

{{# user}}
<main class="mdl-layout__content">
<div class="issues-back">
<a class="mdl-button mdl-js-button mdl-js-ripple-effect mdl-button--icon back-btn" title="go back"
role="button">
<i class="material-icons" role="presentation">arrow_back</i>
</a>
</div>
<div class="issues__posts mdl-grid">
<div class="mdl-card mdl-shadow--4dp mdl-cell mdl-cell--12-col">
<form action="/users/{{id}}" enctype="multipart/form-data" method="post">
<div class="mdl-card__title mdl-color-text--grey-50" style="height:100px;">
<h4>Join Member</h4>
</div>

<div class="mdl-card__supporting-text">
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label" style="margin:0 auto">
<input class="mdl-textfield__input" type="text" id="userId" name="userId" readonly>
<label class="mdl-textfield__label" for="userId">User ID</label>
</div>
</div>
<div class="mdl-card__supporting-text">
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label" style="margin:0 auto">
<input class="mdl-textfield__input" type="text" id="name" name="name" required>
<label class="mdl-textfield__label" for="name">{{name}}</label>
</div>
</div>
<div class="mdl-card__supporting-text">
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label" style="margin:0 auto">
<input class="mdl-textfield__input" type="password" id="password" name="password" required>
<label class="mdl-textfield__label" for="password"></label>
</div>
</div>
<div class="mdl-card__supporting-text">
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label" style="margin:0 auto">
<input class="mdl-textfield__input" type="file" id="pic" name="pic">
<label class="mdl-textfield__label" for="pic">User Pic</label>
</div>
</div>
<div class="mdl-card__supporting-text">
<button class="mdl-button mdl-js-button mdl-button--raised mdl-button--colored" type="submit"
style="margin:10px auto; width:200px;">Submit
</button>
</div>

</form>
</div>
</div>
<footer class="mdl-mini-footer">
<div class="mdl-mini-footer--left-section">
<div class="mdl-logo mdl-color-text--grey-600">Proudly powered by <a href="https://github.com/Byeol">Byeol</a>
</div>
</div>
</footer>
</main>
{{/user}}
<div class="mdl-layout__obfuscator"></div>
</div>
<script src="https://code.getmdl.io/1.1.3/material.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<script>
$('.back-btn').on('click',function(){history.back();})


</script>
</body>
</html>