A self hosted chat application with end-to-end encrypted messaging.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

78 lines
3.4 KiB

  1. <!DOCTYPE html>
  2. <html xmlns:th="http://www.thymeleaf.org" xmlns:sec="http://www.thymeleaf.org/extras/spring-security">
  3. <head>
  4. <div th:replace="fragments/head :: headFragment">
  5. <meta charset="UTF-8">
  6. <title id="pageTitle">Navbar Fragment</title>
  7. </div>
  8. <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.15.0/esm/popper.js" type="module"
  9. th:if="false"></script>
  10. <link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.3.1/css/bootstrap.css" th:if="false"
  11. rel="stylesheet" type="text/css">
  12. <script src="https://code.jquery.com/jquery-2.1.4.min.js" th:if="false"></script>
  13. <script src="http://blackpeppersoftware.github.io/thymeleaf-fragment.js/thymeleaf-fragment.js" defer="defer"
  14. th:if="false"></script>
  15. </head>
  16. <body>
  17. <th:block th:fragment="navbarFragment">
  18. <!-- <div class="container"> -->
  19. <nav class="navbar navbar-expand-sm bg-dark navbar-dark fixed-top">
  20. <div class="container">
  21. <a href="home.html" th:href="@{/}" class="navbar-brand">Chatto</a>
  22. <th:block th:include="fragments/navbar :: navbarContent"></th:block>
  23. </div>
  24. </nav>
  25. <!-- </div> -->
  26. </th:block>
  27. <th:block th:fragment="navbarContent">
  28. <div class="navbar-header">
  29. <button class="navbar-toggler" data-toggle="collapse" data-target="#navbarCollapse">
  30. <i class="fas fa-chevron-down"></i>
  31. </button>
  32. </div>
  33. <div class="collapse navbar-collapse" id="navbarCollapse">
  34. <ul class="navbar-nav ml-auto">
  35. <li class="nav-item">
  36. <a href="home.html" th:href="@{/}" class="nav-link">Home</a>
  37. </li>
  38. <li class="nav-item">
  39. <a href="user/home.html" sec:authorize="isFullyAuthenticated()" th:href="@{/user}"
  40. class="nav-link">User Area</a>
  41. </li>
  42. <li class="nav-item">
  43. <a th:href="@{/chat}" href="chat.html" class="nav-link">Chat</a>
  44. </li>
  45. <li class="nav-item">
  46. <a th:href="login" sec:authorize="!isFullyAuthenticated()" href="login.html"
  47. class="nav-link">Login</a>
  48. </li>
  49. <li class="nav-item">
  50. <a th:href="registration" sec:authorize="!isFullyAuthenticated()" href="registration.html"
  51. class="nav-link">Register</a>
  52. </li>
  53. <li class="nav-item">
  54. <a href="#" class="nav-link">About</a>
  55. </li>
  56. <li class="nav-item">
  57. <a href="#" class="nav-link">Contact</a>
  58. </li>
  59. <li class="nav-item">
  60. <a href="#" sec:authorize="hasRole('ROLE_ADMIN') || hasRole('ROLE_SUPER_USER')" th:href="@{/admin}"
  61. class="nav-link">
  62. Admin Area
  63. </a>
  64. </li>
  65. <li class="nav-item">
  66. <a href="#" sec:authorize="isFullyAuthenticated()" th:text="${#authentication.name}" class="nav-link text-white font-weight-bold">
  67. nova
  68. </a>
  69. </li>
  70. </ul>
  71. </div>
  72. </th:block>
  73. </body>
  74. </html>