Index: src/main/resources/templates/common/navbar.html
===================================================================
--- src/main/resources/templates/common/navbar.html	(revision 5306751d2d24af6bfb27078e1727d579fa8b5939)
+++ src/main/resources/templates/common/navbar.html	(revision 0f4f5521e24d4ce3122add41ffb78a46c75e0500)
@@ -38,5 +38,6 @@
                     <a sec:authorize="isAnonymous()" type="button" class="btn btn-outline-light me-2" th:href="@{/login}">Login</a>
                     <a sec:authorize="isAnonymous()" type="button" class="btn btn-warning" th:href="@{/register}">Sign-up</a>
-                    <a sec:authorize="isAuthenticated()" type="button" class="btn btn-outline-light me-2" th:href="@{/userInformation}">My profile - <span th:text="${user.firstName}"></span></a>
+                    <a sec:authorize="isAuthenticated() and hasAuthority('USER')" type="button" class="btn btn-outline-light me-2" th:href="@{/userInformation}">My profile - <span th:text="${user.firstName}"></span></a>
+                    <a sec:authorize="isAuthenticated() and hasAuthority('MODERATOR')" type="button" class="btn btn-outline-light me-2" th:href="@{/moderator/myApprovedPosts}">My approved posts - <span th:text="${user.firstName} + ${user.lastName}"></span></a>
                     <a sec:authorize="isAuthenticated()" type="button" class="btn btn-warning" th:href="@{/logout}">Logout</a>
                 </div>
Index: src/main/resources/templates/moderatorPost.html
===================================================================
--- src/main/resources/templates/moderatorPost.html	(revision 5306751d2d24af6bfb27078e1727d579fa8b5939)
+++ src/main/resources/templates/moderatorPost.html	(revision 0f4f5521e24d4ce3122add41ffb78a46c75e0500)
@@ -24,18 +24,23 @@
                 <div id="myCarousel" class="carousel carousel-dark slide card" data-bs-ride="carousel">
                     <div class="carousel-indicators">
-                        <button th:each="image, itrStat : ${post.moderatorPath}" type="button" data-bs-target="#myCarousel"
-                                th:data-bs-slide-to="${itrStat.index}" th:classappend="${itrStat.index} == 0 ? active"></button>
+                        <button th:each="image, itrStat : ${post.moderatorPath}" type="button"
+                                data-bs-target="#myCarousel"
+                                th:data-bs-slide-to="${itrStat.index}"
+                                th:classappend="${itrStat.index} == 0 ? active"></button>
                     </div>
                     <div class="carousel-inner">
-                        <div th:each="image, itrStat : ${post.moderatorPath}" th:classappend="${itrStat.index} == 0 ? active"
+                        <div th:each="image, itrStat : ${post.moderatorPath}"
+                             th:classappend="${itrStat.index} == 0 ? active"
                              class="carousel-item">
                             <img class="card-img" th:src="${image}" style="object-fit: contain">
                         </div>
                     </div>
-                    <button class="carousel-control-prev" type="button" data-bs-target="#myCarousel" data-bs-slide="prev">
+                    <button class="carousel-control-prev" type="button" data-bs-target="#myCarousel"
+                            data-bs-slide="prev">
                         <span class="carousel-control-prev-icon" aria-hidden="true"></span>
                         <span class="visually-hidden">Previous</span>
                     </button>
-                    <button class="carousel-control-next" type="button" data-bs-target="#myCarousel" data-bs-slide="next">
+                    <button class="carousel-control-next" type="button" data-bs-target="#myCarousel"
+                            data-bs-slide="next">
                         <span class="carousel-control-next-icon" aria-hidden="true"></span>
                         <span class="visually-hidden">Next</span>
@@ -50,5 +55,6 @@
                 <p th:text="${post.description}"></p>
                 <h5>Funds needed:</h5>
-                <p><span th:text="${total}"></span>/<span th:text="${post.fundsNeeded}"></span> - <span th:text="${post.currency}"></span></p>
+                <p><span th:text="${total}"></span>/<span th:text="${post.fundsNeeded}"></span> - <span
+                        th:text="${post.currency}"></span></p>
                 <h5>Date due:</h5>
                 <p th:text="${post.dateDue}"></p>
@@ -61,22 +67,29 @@
                 <p><span th:text="${createdByFirstName}"></span> <span th:text="${createdByLastName}"></span></p>
 
-                <a class="btn btn-success" th:href="@{/moderator/approvePost(postid=${post.id})}">Approve</a>
-                <button type="button" class="btn btn-danger" data-bs-toggle="modal" data-bs-target="#staticBackdrop">
-                    Dont Approve
-                </button>
+                <div th:unless="${approved}">
+                    <a class="btn btn-success" th:href="@{/moderator/approvePost(postid=${post.id})}">Approve</a>
+                    <button type="button" class="btn btn-danger" data-bs-toggle="modal"
+                            data-bs-target="#staticBackdrop">
+                        Dont Approve
+                    </button>
+                </div>
 
                 <!-- Modal -->
-                <div class="modal fade" id="staticBackdrop" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" aria-labelledby="staticBackdropLabel" aria-hidden="true">
+                <div class="modal fade" id="staticBackdrop" data-bs-backdrop="static" data-bs-keyboard="false"
+                     tabindex="-1" aria-labelledby="staticBackdropLabel" aria-hidden="true">
                     <div class="modal-dialog modal-dialog-centered">
                         <div class="modal-content">
                             <div class="modal-header">
-                                <h5 class="modal-title" id="staticBackdropLabel">Donate</h5>
-                                <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
+                                <h5 class="modal-title" id="staticBackdropLabel">Dont approve</h5>
+                                <button type="button" class="btn-close" data-bs-dismiss="modal"
+                                        aria-label="Close"></button>
                             </div>
                             <div class="modal-body">
                                 <div class="card-body">
-                                    <form th:action="@{/moderator/dontApprove(postid=${post.id})}" method="post" id="myForm">
+                                    <form th:action="@{/moderator/dontApprove(postid=${post.id})}" method="post"
+                                          id="myForm">
                                         <label for="description">Description</label>
-                                        <textarea class="form-control" id="description" name="description" rows="5"></textarea>
+                                        <textarea class="form-control" id="description" name="description"
+                                                  rows="5"></textarea>
                                     </form>
                                 </div>
Index: src/main/resources/templates/myProfile.html
===================================================================
--- src/main/resources/templates/myProfile.html	(revision 5306751d2d24af6bfb27078e1727d579fa8b5939)
+++ src/main/resources/templates/myProfile.html	(revision 0f4f5521e24d4ce3122add41ffb78a46c75e0500)
@@ -245,6 +245,4 @@
                                                 Add collected funds
                                             </button>
-                                            <a class="btn btn-sm btn-danger"
-                                               th:href="@{/deletePost(postid=${post.id})}">Delete</a>
                                         </div>
                                     </div>
Index: src/main/resources/templates/post.html
===================================================================
--- src/main/resources/templates/post.html	(revision 5306751d2d24af6bfb27078e1727d579fa8b5939)
+++ src/main/resources/templates/post.html	(revision 0f4f5521e24d4ce3122add41ffb78a46c75e0500)
@@ -60,7 +60,17 @@
             <h5>Created by:</h5>
             <p><span th:text="${createdByFirstName}"></span> <span th:text="${createdByLastName}"></span></p>
-
-            <button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#staticBackdrop">
+            <h5>Approved by:</h5>
+            <p th:unless="${moderatorFirstName}">Not approved</p>
+            <p><span th:text="${moderatorFirstName}"></span> <span th:text="${moderatorLastName}"></span></p>
+
+            <button sec:authorize="isAuthenticated()" type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#staticBackdrop">
                 Donate
+            </button>
+            <a sec:authorize="isAnonymous()" type="button" class="btn btn-primary" th:href="@{/login}">
+                Donate
+            </a>
+            <button type="button" class="btn btn-danger" data-bs-toggle="modal"
+                    data-bs-target="#staticBackdrop1">
+                Report
             </button>
 
@@ -126,4 +136,30 @@
                 </div>
             </div>
+            <div class="modal fade" id="staticBackdrop1" data-bs-backdrop="static" data-bs-keyboard="false"
+                 tabindex="-1" aria-labelledby="staticBackdropLabel1" aria-hidden="true">
+                <div class="modal-dialog modal-dialog-centered">
+                    <div class="modal-content">
+                        <div class="modal-header">
+                            <h5 class="modal-title" id="staticBackdropLabel1">Report post</h5>
+                            <button type="button" class="btn-close" data-bs-dismiss="modal"
+                                    aria-label="Close"></button>
+                        </div>
+                        <div class="modal-body">
+                            <div class="card-body">
+                                <form th:action="@{/report(postid=${post.id})}" method="post"
+                                      id="myForm1">
+                                    <label for="description">Description</label>
+                                    <textarea class="form-control" id="description" name="description"
+                                              rows="5"></textarea>
+                                </form>
+                            </div>
+                        </div>
+                        <div class="modal-footer">
+                            <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
+                            <input type="submit" class="btn btn-primary" form="myForm1" value="Confirm">
+                        </div>
+                    </div>
+                </div>
+            </div>
         </div>
     </div>
Index: src/main/resources/templates/reportPost.html
===================================================================
--- src/main/resources/templates/reportPost.html	(revision 0f4f5521e24d4ce3122add41ffb78a46c75e0500)
+++ src/main/resources/templates/reportPost.html	(revision 0f4f5521e24d4ce3122add41ffb78a46c75e0500)
@@ -0,0 +1,138 @@
+<html lang="en" xmlns:th="http://www.w3.org/1999/xhtml" xmlns:sec="http://www.w3.org/1999/xhtml">
+<head>
+    <meta charset="UTF-8"/>
+    <meta name="viewport" content="width=device-width, initial-scale=1"/>
+    <title>Register</title>
+    <!-- Bootstrap core CSS -->
+    <link href="/css/bootstrap.min.css" rel="stylesheet"/>
+    <link href="/css/carousel.css" rel="stylesheet"/>
+    <meta name="theme-color" content="#7952b3"/>
+</head>
+<body>
+<header th:replace="common/navbar :: navbar"></header>
+<br/>
+<br/>
+<br/>
+<div th:if="${notFound}">
+    Post not found
+</div>
+<div th:unless="${notFound}">
+    <div class="row">
+        <div class="col-md-6" style="margin-left: 5px">
+            <div class="col-md-12">
+
+                <div id="myCarousel" class="carousel carousel-dark slide card" data-bs-ride="carousel">
+                    <div class="carousel-indicators">
+                        <button th:each="image, itrStat : ${post.donationPost.moderatorPath}" type="button"
+                                data-bs-target="#myCarousel"
+                                th:data-bs-slide-to="${itrStat.index}"
+                                th:classappend="${itrStat.index} == 0 ? active"></button>
+                    </div>
+                    <div class="carousel-inner">
+                        <div th:each="image, itrStat : ${post.donationPost.moderatorPath}"
+                             th:classappend="${itrStat.index} == 0 ? active"
+                             class="carousel-item">
+                            <img class="card-img" th:src="${image}" style="object-fit: contain">
+                        </div>
+                    </div>
+                    <button class="carousel-control-prev" type="button" data-bs-target="#myCarousel"
+                            data-bs-slide="prev">
+                        <span class="carousel-control-prev-icon" aria-hidden="true"></span>
+                        <span class="visually-hidden">Previous</span>
+                    </button>
+                    <button class="carousel-control-next" type="button" data-bs-target="#myCarousel"
+                            data-bs-slide="next">
+                        <span class="carousel-control-next-icon" aria-hidden="true"></span>
+                        <span class="visually-hidden">Next</span>
+                    </button>
+                </div>
+            </div>
+        </div>
+        <div class="col-md-5" style="margin-left: 5px">
+            <div class="col-md-12">
+                <h1 th:text="${post.donationPost.title}"></h1>
+                <h5>Description:</h5>
+                <p th:text="${post.donationPost.description}"></p>
+                <h5>Funds needed:</h5>
+                <p><span th:text="${total}"></span>/<span th:text="${post.donationPost.fundsNeeded}"></span> - <span
+                        th:text="${post.donationPost.currency}"></span></p>
+                <h5>Date due:</h5>
+                <p th:text="${post.donationPost.dateDue}"></p>
+                <h5>Bank account:</h5>
+                <p th:text="${post.donationPost.bankAccount}"></p>
+                <h5>Phone numbers:</h5>
+                <p><span th:text="${post.donationPost.phoneNumbers[0]}"></span> - Telekom</p>
+                <p><span th:text="${post.donationPost.phoneNumbers[1]}"></span> - A1</p>
+                <h5>Created by:</h5>
+                <p><span th:text="${createdByFirstName}"></span> <span th:text="${createdByLastName}"></span></p>
+                <h5>Approved by:</h5>
+                <p th:unless="${moderatorFirstName}">Not approved</p>
+                <p><span th:text="${moderatorFirstName}"></span> <span th:text="${moderatorLastName}"></span></p>
+
+                <div th:if="${report}">
+                    <a class="btn btn-success" th:href="@{/moderator/dismiss(postid=${post.id})}">Dismiss</a>
+                    <button type="button" class="btn btn-danger" data-bs-toggle="modal"
+                            data-bs-target="#staticBackdrop">
+                        Delete
+                    </button>
+                </div>
+            </div>
+        </div>
+    </div>
+    <div class="modal fade" id="staticBackdrop" data-bs-backdrop="static" data-bs-keyboard="false"
+         tabindex="-1" aria-labelledby="staticBackdropLabel" aria-hidden="true">
+        <div class="modal-dialog modal-dialog-centered">
+            <div class="modal-content">
+                <div class="modal-header">
+                    <h5 class="modal-title" id="staticBackdropLabel">Delete post</h5>
+                    <button type="button" class="btn-close" data-bs-dismiss="modal"
+                            aria-label="Close"></button>
+                </div>
+                <div class="modal-body">
+                    <div class="card-body">
+                        <form th:action="@{/moderator/deletePost(postid=${post.id})}" method="post"
+                              id="myForm">
+                            <label for="description">Description</label>
+                            <textarea class="form-control" id="description" name="description"
+                                      rows="5"></textarea>
+                        </form>
+                    </div>
+                </div>
+                <div class="modal-footer">
+                    <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
+                    <input type="submit" class="btn btn-primary" form="myForm" value="Confirm">
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+<div class="row" th:if="${report}">
+    <div class="col-md-12">
+        <div class="col-md-8">
+            <h3>Reports</h3>
+            <div class="card mb-3">
+                <div class="card-body">
+                    <div class="row">
+                        <div class="col">
+                            <h6>Description</h6>
+                        </div>
+                        <div class="col text-secondary">
+                            <h6>User</h6>
+                        </div>
+                    </div>
+                    <div class="row" th:each="reason : ${post.reasons}">
+                        <div class="col">
+                            <h6 th:text="${reason.description}"></h6>
+                        </div>
+                        <div class="col text-secondary" th:text="${reason.user.firstName} + ' ' + ${reason.user.lastName}">
+                        </div>
+                        <hr class="dropdown-divider">
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+<script src="/js/bootstrap.min.js"></script>
+</body>
+</html>
Index: src/main/resources/templates/reportedPosts.html
===================================================================
--- src/main/resources/templates/reportedPosts.html	(revision 0f4f5521e24d4ce3122add41ffb78a46c75e0500)
+++ src/main/resources/templates/reportedPosts.html	(revision 0f4f5521e24d4ce3122add41ffb78a46c75e0500)
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<html lang="en" xmlns:th="http://www.w3.org/1999/xhtml">
+<head>
+    <meta charset="UTF-8"/>
+    <meta name="viewport" content="width=device-width, initial-scale=1"/>
+    <title>Album</title>
+    <!-- Bootstrap core CSS -->
+    <link href="/css/bootstrap.min.css" rel="stylesheet"/>
+</head>
+<body>
+<header th:replace="common/navbar :: navbar"></header>
+<hr class="dropdown-divider">
+<br/>
+<br/>
+<main>
+    <p th:if="${noPosts}">No posts</p>
+    <div th:unless="${noPosts}" class="album py-5 bg-light">
+        <div class="container">
+
+            <div class="row row-cols-1 row-cols-sm-2 row-cols-md-3 g-3">
+                <div class="col" th:each="post : ${postList}">
+                    <div class="card shadow-sm">
+                        <img class="card-img" style="object-fit: contain" width="100%" height="225"
+                             th:src="${post.donationPost.imagesPath[0]}">
+                        <div class="card-body overflow-hidden">
+                            <h4 th:text="${post.donationPost.title}" style="height: 60px"></h4>
+                            <p class="card-text text-truncate" style="height: 45px" th:text="${post.donationPost.description}"></p>
+                            <div class="d-flex justify-content-between align-items-center">
+                                <div class="btn-group">
+                                    <a class="btn btn-sm btn-outline-secondary" th:href="@{/moderator/reportPost(postid=${post.id})}">Open</a>
+                                </div>
+                                <span class="text-muted">Date due: <small th:text="${post.donationPost.dateDue}"></small></span>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <hr class="ui-menu-divider" />
+    </div>
+
+</main>
+<script src="/js/bootstrap.min.js"></script>
+</body>
+</html>
