이정수
|
0b8da9d19f
|
feat(posts): 기본 카테고리 5종 시드 + 카테고리별 목록 뷰 재설계
포스트 보드는 편집형 일방 발행 모델(Unity 블로그 참조)이나 post_categories 시드가 0건이라 목록 탭이 '전체' 하나만 렌더됐다. 기본 카테고리 5종(공지/개발일지/쇼케이스/자료·튜토리얼/업계 소식)을 멱등 마이그레이션(ON CONFLICT DO NOTHING)으로 시드하고, 목록 카테고리별 뷰 표현층을 재설계했다.
- 카테고리 탭: '편집 마스트헤드 인덱스'로 재설계 — 서수 01~05(sort_order 근거) + 카테고리 hue 밑줄 rule + 로드 staggered reveal. 오버플로는 가로 스크롤(단일행 signature 보존), :focus-visible 링, aria-current='page' 추가.
- 카드 뱃지: 전 카드 동일 amber pill 제거 → 카테고리 hue dot + 조용한 대문자 라벨.
- 카테고리 hue 5색 토큰(저채도 인쇄물 팔레트, light/dark). slug는 catToken() 화이트리스트로 방출(임의 slug의 CSS 주입 차단).
- 빈상태 2종 split: posts-empty-nocats(카테고리 0개)/posts-empty-noposts(특정 카테고리 글 0개). 편집 톤 카피, 소비자에겐 글쓰기 CTA 미노출(일방 발행 정합). 구 posts-empty.jspf 삭제.
- 기능 로직(categoryId 필터·keyset 페이지네이션) 불변. JSP escape 유지, bibimbap.css 0변경, prefers-reduced-motion 존중.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UqyLwTxF3FmW1eJCWN8yAo
|
2026-07-24 17:12:58 +09:00 |
이정수
|
fa6a301fb5
|
fix(game): 좋아요 서버 영속화 — 상세 토글이 explore 카운트에 반영되도록
좋아요가 서버에 저장되지 않고 브라우저 localStorage 에만 토글되어
explore/상세가 읽는 games.like_count 컬럼이 갱신되지 않던 버그 수정.
- POST /game/{id}/like 토글 엔드포인트 신설 (CSRF→로그인→존재 게이트, @Transactional)
- GameLikesMapper: findByGameAndUser/deleteByGameAndUser 추가 (addGameLike 재사용)
- GamesMapper: incrementLikeCount/decrementLikeCount(GREATEST 0)/getLikeCount 추가
- game_likes row 변경 + games.like_count ±1 단일 트랜잭션 동기화
- 상세 addGameModel 이 로그인 사용자 기존 좋아요 여부(liked) 모델 주입
- game-detail.jsp 좋아요 버튼을 localStorage→fetch POST 로 교체
- explore 5개 조회 쿼리 무변경 (컬럼 갱신으로 자동 반영)
- game_likes UNIQUE(game_id,user_key) schema 반영 + 마이그레이션 작성 (DB 미적용)
- GameLikeControllerTest 7건 (회귀 AC-1 포함)
검증: L1 PASS (컴파일 + 7/7 + 컨트롤러 회귀 219/219). L2(dev DB) skip.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K3FeMrbtxfTScjrwUukyHD
|
2026-06-29 16:09:54 +09:00 |