Skip to content

Glitter Learning v1.2.13

Latest

Choose a tag to compare

@glitter-gim glitter-gim released this 29 Oct 21:01

Gnuboard7을 위한 독립형 학습 관리 시스템(LMS) 모듈

Glitter Learning은 Gnuboard7 기반 사이트에서 강좌 개설, 차시 관리, 수강 신청, 학습 진도 추적 및 수료 관리를 제공하는 독립형 LMS 모듈입니다.

이번 v1.2.13은 최초 공개 릴리스로, CKEditor 5 기반 HTML 콘텐츠 편집 기능과 서버 측 HTML 정제 보안 패치를 포함합니다.

주요 기능 (Features)

강좌 관리

  • 강좌 등록, 수정 및 삭제
  • 강좌 공개·비공개 상태 관리
  • 강좌별 차시 등록 및 순서 관리
  • 강좌 카테고리 및 난이도 설정
  • 대표 이미지, 학습 목표, 선수 학습 조건 및 예상 학습 시간 관리
  • 관리자 권한 기반 접근 제어

수강 및 학습 관리

  • 공개 강좌 목록 및 상세 조회
  • 회원별 수강 신청 및 수강 상태 관리
  • 차시별 학습 완료 처리
  • 학습 진도 추적
  • 강좌 수료 판정 및 수료 이력 관리
  • 회원별 학습 데이터 접근 제어

콘텐츠 편집

  • 공식 sirsoft-ckeditor5 플러그인 연동
  • 일반 텍스트 및 HTML 설명 모드 지원
  • 표, 이미지, 링크 등 리치 텍스트 콘텐츠 지원
  • 서버 측 HTML 정제
  • 기존 텍스트 콘텐츠와의 호환성 유지

확장성

  • Gnuboard7 공식 모듈 생명주기 지원
  • 독립적인 관리자 및 사용자 API
  • 템플릿에서 활용할 수 있는 학습 데이터 제공
  • Glitter Learning Academy 템플릿 연동

보안 수정 (Security Fixes)

HTML Sanitizer 보안 강화

HTML 정제 과정에서 <figure> 및 허용되지 않은 래퍼 요소의 자식 노드가 허용 목록 검사를 건너뛸 수 있던 문제를 수정했습니다.

주요 변경 사항:

  • DOM 자식 노드 재귀 정제
  • 순회 중 노드 이동에 따른 검사 누락 방지
  • 중첩 <figure> 안전 처리
  • 허용되지 않은 태그 및 이벤트 속성 제거
  • 위험한 링크·이미지 URL 차단
  • isSafeHref() 정규식 오류 수정
  • 정상적인 CKEditor 5 표 및 이미지 구조 보존

해당 수정은 관리자 콘텐츠 저장 및 미리보기에서 사용하는 서버 측 HTML 정제 경로에 적용됩니다.

호환성 및 요구사항 (Requirements)

항목 요구사항
플랫폼 Gnuboard7
PHP Gnuboard7 지원 PHP 버전
필수 플러그인 sirsoft-ckeditor5 >=1.2.13
모듈 식별자 glitter-learning
버전 1.2.13
라이선스 MIT
개발 및 배포 Glitter.kr

Gnuboard7 최소 지원 버전은 배포 패키지의 module.json을 확인해 주세요.

설치 및 업데이트 (Installation & Upgrade)

Gnuboard7의 공식 모듈 설치 및 업데이트 절차를 사용하세요.

기존 설치본을 v1.2.13로 업데이트하는 경우:

  • 기존 강좌 및 차시 데이터 유지
  • 수강·진도·수료 기록 유지
  • 데이터베이스 스키마 변경 없음
  • 기존 콘텐츠 일괄 재정제 없음

운영 환경에서는 업데이트 전에 데이터베이스와 모듈 파일을 백업하는 것을 권장합니다.

주의: 설치된 모듈 파일을 직접 덮어쓰지 말고 Gnuboard7 공식 모듈 생명주기를 이용하세요.

검증 (Validation)

v1.2.13 배포 과정에서 다음 항목을 확인했습니다.

  • PHP 구문 검사 통과
  • HTML 정제기 메모리 기반 검증 통과
  • 위험 태그·속성·URL 제거 확인
  • CKEditor 5 표 및 이미지 보존 확인
  • HTML 재정제 시 안전성 유지 확인
  • 공식 모듈 업데이트 성공
  • 번들·설치본 Sanitizer SHA-256 일치
  • 운영 데이터 및 기존 마이그레이션 이력 보존 확인

자동화 테스트 프레임워크를 이용한 전체 테스트와 모든 브라우저 조합에 대한 호환성 검증은 수행하지 않았습니다.

관련 프로젝트 (Related Projects)

  • Glitter Learning Academy — 학습자용 Academy 템플릿
  • Glitter Search Hub — 통합 검색 확장
  • Glitter HelpComm Installer — 커뮤니티 필수 게시판 초기화 모듈

각 프로젝트는 독립적인 버전과 배포 주기를 따릅니다.

라이선스 (License)

MIT License

Copyright © Glitter.kr


Glitter Learning v1.2.13 — Learn, Track, Complete.