crowny-class 무로그인 강의 미리보기 확장
개요
class.crowny.org에서 로그인 없이도 잠긴(유료) 레슨의 내용을 "미리보기"로 볼 수 있게 확장.
기존 무로그인 체험모드(free 3강 재생)는 그대로 두고, 잠긴 92개 레슨 클릭 시 안내문 대신
목표·작업가이드 일부·영상 잠금 플레이스홀더 + 회원가입 CTA를 보여준다.
무엇을 했는지
1. public/class.html
- 잠긴 레슨(
data-locked=1) 클릭 시 기존 showLockedNotice()(단순 안내) 대신
showLessonPreview(lesson) 신규 함수 호출.
- 신규
#previewView 패널: week 태그 + 레슨 제목 + goal 전문 + workGuide 앞 40자(truncate40())
+ "…" + CSS
linear-gradient 흐림(
.preview-guide-fade::after) + 영상 자리 잠금 플레이스홀더
(
🔒 강의 영상은 수강생에게 열립니다) + 하단 CTA "회원가입하고 전체 95레슨 + 영상 열기" →
/join.html#signup.
loadLessonTrial()의 fallback(!lesson.free)도 showLockedNotice() → showLessonPreview()로 통일.
resetLessonView()에 previewView hidden 처리 추가(레슨 전환 시 정리).
- free 레슨 재생·로그인 흐름은 무변경(회귀 없음, 태그 개수 balanced 확인).
2. public/join.html
- 초기 진입 로직에
location.hash === '#signup' 분기 추가 → 해당 탭(.tab[data-tab="signup"])을
자동 클릭해 회원가입 카드로 진입. 로그인 탭 등 기존 흐름은 무변경.
3. public/index.html
- 커리큘럼 미리보기(
.curri-week)를 <a href="/class.html">로 변경(클릭 시 교실로 이동), hover 시
gold border.
- 섹션 안내에 한 줄 추가: "🔓 모든 레슨의 목표를 로그인 없이 미리 볼 수 있어요."
4. 서버/모듈 무접촉
GET /api/lesson/curriculum이 이미 95레슨 전체(잠긴 92개 포함)의 {goal, workGuide, free, ...}를
공개 반환하고 있음을 라이브 curl로 확인 — 서버 코드 수정 불필요.
5. 한선씨 동반
한선씨/프론트카피.한선에 미리보기요약(작업가이드) 함수 append(40자 절단 + "…" 말줄임,
부분(s,0,40) exclusive-end 규칙 준수). 컴파일+실행 검증 완료(EXIT=0).
- crownycode-learn: 사전 search "미리보기"/"말줄임" → 유사 패턴(fn_웹코드게시판__말줄임) HIT,
lookup "미리보기요약"은 MISS → 신규 함수 직접 작성 후
learn.sh add 1건 등록.
관련 파일
/Users/ef/crowny-class/public/class.html
/Users/ef/crowny-class/public/index.html
/Users/ef/crowny-class/public/join.html
/Users/ef/crowny-class/한선씨/프론트카피.한선
잔여 이슈
- 커리큘럼 랜딩(index.html)의 주차 블록은 페이지 이동만 하고 특정 레슨으로 딥링크하지 않음
(class.html이 개별 lessonId 쿼리 파라미터를 아직 지원하지 않음 — 추후 필요 시
?lesson=id 지원 추가 가능).
- 서버 재기동 없이 정적 파일만 교체(라이브 9864 그대로 서빙 확인,
/api/lesson/curriculum 실측 완료).