From c7ce8de90e9a8567ebdbd793e24d7d22d00fa11d Mon Sep 17 00:00:00 2001 From: "hehihoho3@gmail.com" Date: Tue, 16 Jun 2026 14:52:24 +0900 Subject: [PATCH] =?UTF-8?q?feat(ui):=20=EB=8C=80=EC=8B=9C=EB=B3=B4?= =?UTF-8?q?=EB=93=9C=20=EB=96=A1=EC=83=81=20=EB=A6=AC=EB=8D=94=EB=B3=B4?= =?UTF-8?q?=EB=93=9C=20=EC=8D=B8=EB=84=A4=EC=9D=BC=20=ED=81=B4=EB=A6=AD=20?= =?UTF-8?q?=EB=AF=B8=EB=A6=AC=EB=B3=B4=EA=B8=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 수집함처럼, 떡상 후보 리더보드의 썸네일을 클릭하면 YouTube 임베드(9:16) 미리보기 팝업이 바로 뜨도록 추가. 편집 정체성에 맞춘 모달(.fd-vmodal), 배경 클릭/ESC로 닫힘, 닫을 때 iframe 비워 재생 중지. Co-Authored-By: Claude Opus 4.8 (1M context) --- src/main/resources/templates/dashboard.html | 38 ++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/src/main/resources/templates/dashboard.html b/src/main/resources/templates/dashboard.html index 468b9c4..71191f2 100644 --- a/src/main/resources/templates/dashboard.html +++ b/src/main/resources/templates/dashboard.html @@ -69,6 +69,17 @@ + + +
+
+
+ 미리보기 + +
+
+
+
@@ -205,7 +227,8 @@ const ratio = v.viewsPerSubRatio!=null ? Number(v.viewsPerSubRatio).toFixed(0)+'×' : '–'; return `
${i+1}
- +
SHORTS · ${esc(v.channelTitle||'')} · ${fmt(v.viewCount)}
@@ -260,6 +283,19 @@ } catch(e){ alert('제외 실패: '+e.message); } } + // ----- 영상 미리보기 (수집함과 동일) ----- + function openVideoModal(vid, title){ + document.getElementById('vmTitle').textContent = title || '미리보기'; + document.getElementById('vmFrame').innerHTML = + ''; + document.getElementById('videoModal').classList.add('open'); + } + function closeVideoModal(){ + document.getElementById('vmFrame').innerHTML = ''; + document.getElementById('videoModal').classList.remove('open'); + } + document.addEventListener('keydown', e => { if(e.key === 'Escape') closeVideoModal(); }); + loadDashboard(); /*]]>*/