105 lines
5.4 KiB
HTML
Raw Normal View History

2024-10-10 17:37:22 +09:00
<!DOCTYPE html>
2025-09-08 16:35:09 +09:00
<html xmlns:th="http://www.thymeleaf.org"
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
xmlns:sec="http://www.thymeleaf.org/extras/spring-security"
layout:decorate="~{layout/default_layout}">
2025-08-05 16:14:01 +09:00
2025-09-08 16:35:09 +09:00
<th:block layout:fragment="head">
<link href="https://cdn.jsdelivr.net/npm/quill@2/dist/quill.snow.css" rel="stylesheet" />
<link href="https://cdn.jsdelivr.net/npm/quill-table-better@1/dist/quill-table-better.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/quill@2/dist/quill.js"></script>
<script src="https://cdn.jsdelivr.net/npm/quill-table-better@1/dist/quill-table-better.js"></script>
2025-09-08 18:21:57 +09:00
<script>document.addEventListener('DOMContentLoaded', function() {
initEditor(false)
fetchComments(serverData.id);
});</script>
2025-09-08 16:35:09 +09:00
</th:block>
2025-09-05 18:02:27 +09:00
2024-10-21 17:25:49 +09:00
<th:block layout:fragment="content" id="content">
2025-03-20 17:57:55 +09:00
<section class="wrapper style2">
2025-09-05 18:02:27 +09:00
<div class="container" sec:authorize="isAuthenticated()" onclick="loadEditor()" style="cursor: pointer;" title="클릭하여 수정하기">
2025-03-21 17:15:55 +09:00
<header class="major">
2025-09-08 16:35:09 +09:00
<h2 id="title_layer">
<span th:text="${srcPost.title}">게시물 제목이 여기에 표시됩니다</span>
<span style="font-size: 0.8em; color: #888; font-weight: normal; margin-left: 0.5em;">
(읽음: <span th:text="${srcPost.readCount}">0</span>)
</span>
</h2>
<p>
<span th:if="${srcPost.writer != null}" th:text="${'by ' + srcPost.writer + ' | '}" style="font-weight: 600;"></span>
<span th:text="${#temporals.format(T(java.time.Instant).ofEpochMilli(srcPost.writeTime).atZone(T(java.time.ZoneId).systemDefault()).toLocalDateTime(), 'yyyy-MM-dd HH:mm:ss')}"></span>
</p>
2025-03-21 17:15:55 +09:00
</header>
2025-09-08 16:35:09 +09:00
<div class="write_controllbox" style="margin-top: -1em; margin-bottom: 2em;">
<div class="write_option controlbox-category">
</div>
<div class="write_option controlbox-hashtag" id="hashtag_field">
</div>
<div class="write_option controlbox-location" id="location_field">
</div>
</div>
2025-03-21 17:15:55 +09:00
</div>
2025-09-08 16:35:09 +09:00
2025-09-05 18:02:27 +09:00
<div class="container open-login-popup" sec:authorize="isAnonymous()" to="#loginPopup" style="cursor: pointer;">
2025-03-21 17:15:55 +09:00
<header class="major">
2025-09-08 16:35:09 +09:00
<h2 id="title_layer_anon">
<span th:text="${srcPost.title}">게시물 제목이 여기에 표시됩니다</span>
<span style="font-size: 0.8em; color: #888; font-weight: normal; margin-left: 0.5em;">
(읽음: <span th:text="${srcPost.readCount}">0</span>)
</span>
</h2>
<p>
<span th:if="${srcPost.writer != null}" th:text="${'by ' + srcPost.writer + ' | '}" style="font-weight: 600;"></span>
<span th:text="${#temporals.format(T(java.time.Instant).ofEpochMilli(srcPost.writeTime).atZone(T(java.time.ZoneId).systemDefault()).toLocalDateTime(), 'yyyy-MM-dd HH:mm:ss')}"></span>
</p>
2025-03-20 17:57:55 +09:00
</header>
2025-09-08 16:35:09 +09:00
<div class="write_controllbox" style="margin-top: -1em; margin-bottom: 2em;">
<div class="write_option controlbox-category">
</div>
<div class="write_option controlbox-hashtag" id="hashtag_field_anon">
</div>
<div class="write_option controlbox-location" id="location_field_anon">
</div>
</div>
2025-03-20 17:57:55 +09:00
</div>
</section>
2025-09-05 18:02:27 +09:00
2025-03-19 18:27:39 +09:00
<section class="wrapper style1">
<div class="container">
2025-09-08 16:35:09 +09:00
<div id="content_inner">
2025-03-19 18:27:39 +09:00
<article>
2025-09-05 18:02:27 +09:00
<div id="editor"></div>
2025-09-08 16:35:09 +09:00
<div class="vote-controls" style="margin-top: 2em; text-align: center; border-top: 1px solid #e0e0e0; padding-top: 2em;" th:data-post-id="${srcPost.id}">
<button class="button" onclick="handleVote(this, 'like')">
👍 Like (<span class="like-count" th:text="${srcPost.voteCount}">0</span>)
</button>
<button class="button" onclick="handleVote(this, 'unlike')" style="margin-left: 1em;">
👎 Unlike (<span class="unlike-count" th:text="${srcPost.unlikeCount}">0</span>)
</button>
2025-03-19 18:27:39 +09:00
</div>
2025-09-05 18:02:27 +09:00
2025-03-20 17:57:55 +09:00
<h3 id="write" th:text="${srcPost.firstAddress}"></h3>
<h3 id="modify" th:text="${srcPost.modifyAddress}"></h3>
2025-03-19 18:27:39 +09:00
</article>
2025-09-05 18:02:27 +09:00
<section class="comment-section">
<h2>Comments</h2>
<div id="comment-form-container">
2025-09-08 18:21:57 +09:00
<div id="reply-status-bar" style="display: none;">
<span id="reply-status-text"></span>
<button id="btn-cancel-reply" onclick="cancelReply()">X 취소</button>
</div>
2025-09-05 18:02:27 +09:00
<textarea id="comment-input" placeholder="댓글을 입력하세요..."></textarea>
<button id="submit-comment" class="button">등록</button>
</div>
<div id="comments-list">
</div>
</section>
2025-03-19 18:27:39 +09:00
</div>
2024-10-23 10:07:45 +09:00
</div>
2025-03-19 18:27:39 +09:00
</section>
2024-10-21 17:25:49 +09:00
</th:block>
2025-09-05 18:02:27 +09:00
</html>