feat(ui): 푸터 공용화(프로필에도 노출) + 프사 반영 지연 안내
- footer 를 _footer.ejs 파티션으로 분리해 대시보드·프로필 공용으로 include - footer 문구 '버그 제보:' → '버그 제보 -' - 프로필 사진 크롭 모달에 '반영까지 최대 몇 분' 안내(연한 힌트) 추가 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
12
views/_footer.ejs
Normal file
12
views/_footer.ejs
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
<%
|
||||||
|
// 공용 푸터. 대시보드·프로필 등 모든 화면에서 include 해서 재사용.
|
||||||
|
%>
|
||||||
|
<footer class="footer">
|
||||||
|
<div class="footer-inner">
|
||||||
|
<div class="footer-left">
|
||||||
|
<span class="footer-brand"><span><%- icon("code", { size: 14 }) %></span><%= brand %></span>
|
||||||
|
<span class="footer-bug">· 버그 제보 - <a href="https://gitea.bokdev.in/playground/ai-dev-portal/issues" target="_blank" rel="noopener">gitea 이슈</a></span>
|
||||||
|
</div>
|
||||||
|
<div class="footer-tech">Express + Postgres + Keycloak SSO · deployed on Kubero</div>
|
||||||
|
</div>
|
||||||
|
</footer>
|
||||||
@@ -176,15 +176,7 @@
|
|||||||
</section>
|
</section>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<footer class="footer">
|
<%- include("_footer") %>
|
||||||
<div class="footer-inner">
|
|
||||||
<div class="footer-left">
|
|
||||||
<span class="footer-brand"><span><%- icon("code", { size: 14 }) %></span><%= brand %></span>
|
|
||||||
<span class="footer-bug">· 버그 제보: <a href="https://gitea.bokdev.in/playground/ai-dev-portal/issues" target="_blank" rel="noopener">gitea 이슈</a></span>
|
|
||||||
</div>
|
|
||||||
<div class="footer-tech">Express + Postgres + Keycloak SSO · deployed on Kubero</div>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
<!-- 상세 모달 (app.js 가 detailStore 의 내용을 .modal 에 주입) -->
|
<!-- 상세 모달 (app.js 가 detailStore 의 내용을 .modal 에 주입) -->
|
||||||
<div class="modal-overlay" id="detailModal" hidden><div class="modal"></div></div>
|
<div class="modal-overlay" id="detailModal" hidden><div class="modal"></div></div>
|
||||||
|
|||||||
@@ -90,6 +90,8 @@
|
|||||||
</section>
|
</section>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
|
<%- include("_footer") %>
|
||||||
|
|
||||||
<% if (isSelf) { %>
|
<% if (isSelf) { %>
|
||||||
<!-- 프로필 사진 크롭 모달 -->
|
<!-- 프로필 사진 크롭 모달 -->
|
||||||
<div class="modal-overlay" id="cropModal" hidden>
|
<div class="modal-overlay" id="cropModal" hidden>
|
||||||
@@ -107,7 +109,7 @@
|
|||||||
<span><%- icon("search", { size: 13 }) %></span>
|
<span><%- icon("search", { size: 13 }) %></span>
|
||||||
<input type="range" id="cropZoom" min="1" max="4" step="0.01" value="1" />
|
<input type="range" id="cropZoom" min="1" max="4" step="0.01" value="1" />
|
||||||
</label>
|
</label>
|
||||||
<p class="crop-hint">사진을 드래그해 위치를 맞추고 슬라이더로 확대하세요. 정사각형으로 저장됩니다.</p>
|
<p class="crop-hint">사진을 드래그해 위치를 맞추고 슬라이더로 확대하세요. 정사각형으로 저장됩니다.<br>변경한 사진이 모든 화면에 반영되기까지 최대 몇 분 걸릴 수 있어요.</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-foot-actions">
|
<div class="modal-foot-actions">
|
||||||
<input type="file" id="avatarFile" accept="image/png,image/jpeg,image/webp" hidden />
|
<input type="file" id="avatarFile" accept="image/png,image/jpeg,image/webp" hidden />
|
||||||
|
|||||||
Reference in New Issue
Block a user