fix(comments): 답글 배너 상시 표시 버그 수정 + 사번 대신 이름 표시

.reply-banner 에 display:flex 가 걸려 [hidden] 기본 규칙을 이겨 배너가
항상 보이던 문제를 .reply-banner[hidden]{display:none} 으로 해결.
댓글/대댓글 작성자·답글 대상·프로젝트 소유자를 사번 대신 이름(author_name/
owner_name)으로 표시하고, 사번은 title 툴팁으로 남긴다.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-02 14:13:50 +09:00
parent 3ddf920e56
commit 761b1a1936
3 changed files with 7 additions and 5 deletions

View File

@@ -55,6 +55,8 @@
.modal-foot { padding: 14px 24px 22px; border-top: 1px solid var(--divider); margin-top: 6px; background: var(--bg-soft); } .modal-foot { padding: 14px 24px 22px; border-top: 1px solid var(--divider); margin-top: 6px; background: var(--bg-soft); }
.reply-banner { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 9px; background: var(--accent-bg); border: 1px solid var(--accent-bd); border-radius: 7px; padding: 6px 10px; } .reply-banner { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 9px; background: var(--accent-bg); border: 1px solid var(--accent-bd); border-radius: 7px; padding: 6px 10px; }
/* hidden 속성이 켜져 있으면 확실히 숨긴다 (display:flex 가 [hidden] 기본 규칙을 이겨 항상 보이던 버그 방지). */
.reply-banner[hidden] { display: none; }
.reply-banner span { font-size: 12px; color: var(--accent-strong); } .reply-banner span { font-size: 12px; color: var(--accent-strong); }
.reply-banner button { background: transparent; border: 0; cursor: pointer; font-family: inherit; font-size: 12px; font-weight: 600; color: var(--link); } .reply-banner button { background: transparent; border: 0; cursor: pointer; font-family: inherit; font-size: 12px; font-weight: 600; color: var(--link); }
.comment-form { display: flex; gap: 10px; align-items: flex-end; } .comment-form { display: flex; gap: 10px; align-items: flex-end; }

View File

@@ -24,7 +24,7 @@
</div> </div>
<div class="modal-meta"> <div class="modal-meta">
<%- identicon(p.owner_sabun, 24) %> <%- identicon(p.owner_sabun, 24) %>
<span class="sabun"><%= p.owner_sabun %></span> <span class="sabun" title="<%= p.owner_sabun %>"><%= p.owner_name || p.owner_sabun %></span>
<span class="date">· <%= reltime(p.created_at) %> 공유</span> <span class="date">· <%= reltime(p.created_at) %> 공유</span>
<% if (p.lang) { %><span class="lang"><span class="lang-dot" style="background:<%= langColor(p.lang) %>"></span><%= p.lang %></span><% } %> <% if (p.lang) { %><span class="lang"><span class="lang-dot" style="background:<%= langColor(p.lang) %>"></span><%= p.lang %></span><% } %>
</div> </div>
@@ -72,13 +72,13 @@
<%- identicon(c.author_sabun, 28) %> <%- identicon(c.author_sabun, 28) %>
<div class="comment-main"> <div class="comment-main">
<div class="comment-head"> <div class="comment-head">
<span class="comment-author"><%= c.author_sabun %></span> <span class="comment-author" title="<%= c.author_sabun %>"><%= c.author_name || c.author_sabun %></span>
<span class="comment-time"><%= reltime(c.created_at) %></span> <span class="comment-time"><%= reltime(c.created_at) %></span>
<% if (isLgtm(c.body)) { %><span class="lgtm"><%- icon("check", { size: 11 }) %>LGTM</span><% } %> <% if (isLgtm(c.body)) { %><span class="lgtm"><%- icon("check", { size: 11 }) %>LGTM</span><% } %>
</div> </div>
<div class="comment-text"><%= c.body %></div> <div class="comment-text"><%= c.body %></div>
<div class="comment-actions"> <div class="comment-actions">
<button type="button" class="comment-link" data-reply-to="<%= c.id %>" data-reply-name="<%= c.author_sabun %>"><%- icon("reply", { size: 13 }) %>답글</button> <button type="button" class="comment-link" data-reply-to="<%= c.id %>" data-reply-name="<%= c.author_name || c.author_sabun %>"><%- icon("reply", { size: 13 }) %>답글</button>
<% if (c.author_sabun === me) { %> <% if (c.author_sabun === me) { %>
<form method="post" action="/comments/<%= c.id %>/delete" data-stop style="display:inline"> <form method="post" action="/comments/<%= c.id %>/delete" data-stop style="display:inline">
<input type="hidden" name="return_to" value="<%= returnTo %>" /> <input type="hidden" name="return_to" value="<%= returnTo %>" />
@@ -95,7 +95,7 @@
<%- identicon(r.author_sabun, 24) %> <%- identicon(r.author_sabun, 24) %>
<div class="comment-main"> <div class="comment-main">
<div class="comment-head"> <div class="comment-head">
<span class="comment-author"><%= r.author_sabun %></span> <span class="comment-author" title="<%= r.author_sabun %>"><%= r.author_name || r.author_sabun %></span>
<span class="comment-time"><%= reltime(r.created_at) %></span> <span class="comment-time"><%= reltime(r.created_at) %></span>
<% if (isLgtm(r.body)) { %><span class="lgtm"><%- icon("check", { size: 11 }) %>LGTM</span><% } %> <% if (isLgtm(r.body)) { %><span class="lgtm"><%- icon("check", { size: 11 }) %>LGTM</span><% } %>
</div> </div>

View File

@@ -160,7 +160,7 @@
<div class="fcard-foot"> <div class="fcard-foot">
<div class="fcard-author"> <div class="fcard-author">
<%- identicon(p.owner_sabun, 22) %> <%- identicon(p.owner_sabun, 22) %>
<span class="sabun"><%= p.owner_sabun %></span> <span class="sabun" title="<%= p.owner_sabun %>"><%= p.owner_name || p.owner_sabun %></span>
<span class="date">· <%= fdate(p.created_at) %></span> <span class="date">· <%= fdate(p.created_at) %></span>
</div> </div>
<div class="fcard-meta"> <div class="fcard-meta">