Newer
Older
teacher-diary / src / main / resources / templates / layout / auth.html
<!DOCTYPE html>
<html lang="ru" xmlns:th="http://www.thymeleaf.org">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title th:text="${pageTitle != null} ? ${pageTitle} + ' | Teacher Diary' : 'Teacher Diary'">Teacher Diary</title>

        <!-- Bootstrap CSS -->
        <link rel="stylesheet" th:href="@{/webjars/bootstrap/5.3.3/css/bootstrap.min.css}">
        <!-- Bootstrap Icons CDN (надёжнее чем webjars) -->
        <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css">
        <!-- Custom CSS -->
        <link rel="stylesheet" th:href="@{/css/auth.css}">
    </head>
    <body class="auth-body">
        <div class="auth-container">
            <div class="auth-card">
                <!-- Logo -->
                <div class="auth-logo">
                    <i class="bi bi-journal-bookmark-fill"></i>
                    <h1>Teacher Diary</h1>
                </div>

                <!-- Alerts -->
                <th:block th:if="${message}">
                    <div class="alert alert-success" role="alert">
                        <i class="bi bi-check-circle me-2"></i>
                        <span th:text="${message}"></span>
                    </div>
                </th:block>

                <th:block th:if="${error}">
                    <div class="alert alert-danger" role="alert">
                        <i class="bi bi-exclamation-circle me-2"></i>
                        <span th:text="${error}"></span>
                    </div>
                </th:block>

                <!-- Content -->
                <th:block th:replace="${content}"></th:block>
            </div>

            <div class="auth-footer">
                <p>&copy; 2026 Teacher Diary</p>
            </div>
        </div>

        <!-- Bootstrap JS -->
        <script th:src="@{/webjars/bootstrap/5.3.3/js/bootstrap.bundle.min.js}"></script>
        <th:block th:replace="${scripts}"></th:block>
    </body>
</html>