Added basic admin user profile page
This commit is contained in:
parent
e569420ca5
commit
9119fe57f3
@ -1,16 +1,24 @@
|
||||
package org.ros.chatto.controller;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
import org.ros.chatto.model.ChatUser;
|
||||
import org.ros.chatto.service.UserService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.server.ResponseStatusException;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
@Controller
|
||||
@RequestMapping("/admin")
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
public class AdminController {
|
||||
|
||||
@ -32,4 +40,14 @@ public class AdminController {
|
||||
public String usersPage() {
|
||||
return "admin/users";
|
||||
}
|
||||
|
||||
@GetMapping("/users/{userName}")
|
||||
public String userProfile(@PathVariable String userName) {
|
||||
Optional<ChatUser> maybeUser = userService.getUser(userName);
|
||||
if (!maybeUser.isPresent()) {
|
||||
throw new ResponseStatusException(HttpStatus.NOT_FOUND,
|
||||
"Requested user does not exist");
|
||||
}
|
||||
return "admin/user-profile";
|
||||
}
|
||||
}
|
||||
|
88
src/main/resources/templates/admin/user-profile.html
Normal file
88
src/main/resources/templates/admin/user-profile.html
Normal file
@ -0,0 +1,88 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns:th="http://www.thymeleaf.org">
|
||||
|
||||
<head>
|
||||
<div th:replace="fragments/head :: headFragment">
|
||||
<title id="pageTitle" th:text="${userName}">User Profile</title>
|
||||
</div>
|
||||
<script src="https://code.jquery.com/jquery-2.1.4.min.js" th:if="false"></script>
|
||||
<script src="http://blackpeppersoftware.github.io/thymeleaf-fragment.js/thymeleaf-fragment.js"
|
||||
data-template-prefix="../" defer="defer" th:if="false"></script>
|
||||
|
||||
<th:block th:include="fragments/admin :: headFragment"></th:block>
|
||||
|
||||
</head>
|
||||
<!-- TODO
|
||||
Make user admin / remove user from admin
|
||||
Change E2E passphrase
|
||||
Delete Messages
|
||||
-->
|
||||
|
||||
<!-- <div th:include="fragments/admin :: admin-sidebar"></div> -->
|
||||
|
||||
<body id="page-top">
|
||||
|
||||
<!-- Page Wrapper -->
|
||||
<div id="wrapper">
|
||||
|
||||
|
||||
<div th:include="fragments/admin :: sidebar-fragment"></div>
|
||||
|
||||
<!-- Content Wrapper -->
|
||||
<div id="content-wrapper" class="d-flex flex-column" style="background-color: #333;">
|
||||
|
||||
<!-- Main Content -->
|
||||
<div id="content">
|
||||
|
||||
<div th:include="fragments/admin :: topbar-fragment"></div>
|
||||
|
||||
<!-- Begin Page Content -->
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- Page Heading -->
|
||||
<div class="d-sm-flex align-items-center justify-content-between mb-4">
|
||||
<h1 class="h3 mb-0 text-light">Dashboard</h1>
|
||||
<a href="#" class="d-none d-sm-inline-block btn btn-sm btn-primary shadow-sm"><i
|
||||
class="fas fa-download fa-sm text-white-50"></i> Generate Report</a>
|
||||
</div>
|
||||
|
||||
<!-- Content Row -->
|
||||
<div class="row">
|
||||
|
||||
<div class="col-lg-4 mb-4 offset-lg-4">
|
||||
|
||||
<!-- Approach -->
|
||||
<div class="card bg-dark border border-dark text-white shadow mb-4">
|
||||
<div class="card-header bg-secondary border border-secondary py-3">
|
||||
<h6 class="m-0 font-weight-bold text-white">Development Approach</h6>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div th:text="${userName}">John</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- /.container-fluid -->
|
||||
|
||||
</div>
|
||||
<!-- End of Main Content -->
|
||||
|
||||
<div th:include="fragments/admin :: footer"></div>
|
||||
|
||||
</div>
|
||||
<!-- End of Content Wrapper -->
|
||||
|
||||
</div>
|
||||
<!-- End of Page Wrapper -->
|
||||
|
||||
<th:block th:include="fragments/admin :: modal"></th:block>
|
||||
<div th:if="false">
|
||||
<th:block th:include="admin :: modal"></th:block>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
Loading…
Reference in New Issue
Block a user