본문 관련 용어에 내부 링크 3개 추가 및 매뉴얼 공통 둘러보기 연결 |
주제별 분류 적용: 확장 기능 개발·API와 함수; 상위 분류 중복 정리 |
||
| 260번째 줄: | 260번째 줄: | ||
{{라이믹스 매뉴얼}} | {{라이믹스 매뉴얼}} | ||
[[분류:라이믹스]] | [[분류:라이믹스/매뉴얼/확장 기능 개발|이벤트 목록]] | ||
[[분류:라이믹스/매뉴얼]] | [[분류:라이믹스/매뉴얼/API와 함수|이벤트 목록]] | ||
2026년 10월 17일 (토) 09:20 기준 최신판
상위 문서: 라이믹스/매뉴얼
개요[편집 / 원본 편집]
라이믹스 프레임워크와 코어 모듈이 제공하는 이벤트를 정리한다. 서드파티 모듈은 별도 이벤트를 제공할 수 있다. 이벤트 이름과 호출 시점을 함께 지정하여 필요한 작업에 개입한다.
before와 after[편집 / 원본 편집]
일반적으로 before는 작업 전, after는 작업 후에 호출된다. 공식 매뉴얼은 before에서 오류를 담은 BaseObject를 반환하거나 프레임워크 예외를 던져 작업을 중단할 수 있다고 설명한다. after는 이미 일어난 작업의 통보이므로 반환한 오류나 예외가 일반적으로 무시된다. 개별 이벤트의 실제 인자와 반환값 처리는 사용하는 버전의 호출 코드를 확인한다.
권한 확인이나 작업 금지 조건을 구현할 때 after에서 이미 끝난 작업을 취소할 수 있다고 가정하지 않는다. 애드온의 called_position과 이벤트 이름은 서로 다른 인터페이스이므로 라이믹스/애드온과 구분한다.
액션별 이벤트[편집 / 원본 편집]
act:모듈명.액션명은 해당 액션을 호출할 때만 발생한다. 모든 요청에서 실행되는 이벤트보다 개입 범위를 좁힐 수 있다. 공식 문서의 모듈 선언 예시는 다음과 같은 속성 형식이다.
<eventHandler beforeAction="모듈명.액션명" ... />
<eventHandler afterAction="모듈명.액션명" ... />
...는 나머지 필수 속성을 생략한 표기이며 그대로 사용하는 XML이 아니다. 플러그인에서는 $this->beforeAction()·$this->afterAction() 인터페이스를 안내한다. 지원 버전과 등록 방식은 실제 자료 구조에 맞춰 확인한다.
이벤트 표[편집 / 원본 편집]
아래 목록은 공식 매뉴얼의 이벤트 표를 기준으로 정리하였다. 동일 이름·시점이 중복된 행은 하나로 합쳤다. 2.2+ 등 버전 표시가 있는 이벤트는 이전 버전에서도 제공된다고 가정하지 않는다.
코어 라이프사이클[편집 / 원본 편집]
| 순서 | 이벤트 이름 | 호출 시점 | 비고 |
|---|---|---|---|
| 1 | moduleHandler.init | before/after | |
| 2 | moduleObject.proc | before | |
| 3 | act:모듈명.액션명 | before/after | |
| 4 | moduleObject.proc | after | |
| 5 | moduleHandler.proc | after | |
| 6 | layout | before | |
| 7 | display | before/after |
모듈 라이프사이클[편집 / 원본 편집]
| 모듈 | 이벤트 이름 | 호출 시점 | 비고 |
|---|---|---|---|
| module | module.deleteModule | before/after | |
| module | module.dispAdditionSetup | before/after | |
| module | module.getModuleAdminScopes | after | |
| module | module.insertModuleConfig | before/after | 2.2+ |
| module | module.insertModulePartConfig | before/after | 2.2+ |
| module | module.procModuleAdminCopyModule | after |
회원[편집 / 원본 편집]
| 모듈 | 이벤트 이름 | 호출 시점 | 비고 |
|---|---|---|---|
| member | member.addMemberToGroup | before/after | |
| member | member.deleteGroup | before/after | |
| member | member.deleteMember | before/after | |
| member | member.deleteScrapDocument | before/after | |
| member | member.dispMemberSignUpForm | before | |
| member | member.doAutoLogin | before/after | |
| member | member.doLogin | before/after | |
| member | member.doLogout | before/after | |
| member | member.getMemberMenu | before/after | |
| member | member.insertGroup | before/after | |
| member | member.insertMember | before/after | |
| member | member.insertMemberDevice | before/after | |
| member | member.procMemberAuthAccount | before/after | |
| member | member.procMemberCheckValue | before/after | |
| member | member.procMemberInsert | before/after | |
| member | member.procMemberModifyInfo | before/after | |
| member | member.procMemberScrapDocument | before/after | |
| member | member.removeMemberFromGroup | before/after | |
| member | member.updateGroup | before/after | |
| member | member.updateMember | before/after | |
| member | member.updateMemberEmailAddress | after |
문서[편집 / 원본 편집]
| 모듈 | 이벤트 이름 | 호출 시점 | 비고 |
|---|---|---|---|
| document | document.copyDocumentModule | add | deprecated |
| document | document.copyDocumentModule | before/after | |
| document | document.copyDocumentModule.each | before/after | |
| document | document.declaredDocument | before/after | |
| document | document.declaredDocumentCancel | before/after | |
| document | document.deleteCategory | before/after | |
| document | document.deleteDocument | before/after | |
| document | document.getComments | after | |
| document | document.getDocumentList | before/after | |
| document | document.getDocumentMenu | before/after | |
| document | document.getNoticeList | before/after | |
| document | document.getThumbnail | before | |
| document | document.insertCategory | before/after | |
| document | document.insertDocument | before/after | |
| document | document.manage | before/after | |
| document | document.moveDocumentModule | before/after | |
| document | document.moveDocumentToTrash | before/after | |
| document | document.publishDocument | before/after | |
| document | document.restoreTrash | after | |
| document | document.updateCategory | before/after | |
| document | document.updateDocument | before/after | |
| document | document.updateReadedCount | before/after | |
| document | document.updateVotedCount | before/after | |
| document | document.updateVotedCountCancel | before/after |
댓글[편집 / 원본 편집]
| 모듈 | 이벤트 이름 | 호출 시점 | 비고 |
|---|---|---|---|
| comment | comment.copyCommentByDocument | add | deprecated |
| comment | comment.copyCommentByDocument.each | before/after | |
| comment | comment.declaredComment | before/after | |
| comment | comment.declaredCommentCancel | before/after | |
| comment | comment.deleteComment | before/after | |
| comment | comment.getCommentList | before/after | |
| comment | comment.getCommentMenu | before/after | |
| comment | comment.getThumbnail | before | |
| comment | comment.getTotalCommentList | before/after | |
| comment | comment.insertComment | before/after | |
| comment | comment.moveCommentToTrash | before/after | |
| comment | comment.procCommentAdminChangeStatus | after | |
| comment | comment.sendEmailToAdminAfterInsertComment | after | |
| comment | comment.updateComment | before/after | |
| comment | comment.updateVotedCount | before/after | |
| comment | comment.updateVotedCountCancel | before/after |
파일[편집 / 원본 편집]
| 모듈 | 이벤트 이름 | 호출 시점 | 비고 |
|---|---|---|---|
| file | file.deleteFile | before/after | |
| file | file.downloadFile | before/after | |
| file | file.insertFile | before/after |
커뮤니케이션 모듈[편집 / 원본 편집]
| 모듈 | 이벤트 이름 | 호출 시점 | 비고 |
|---|---|---|---|
| communication | communication.addFriend | before/after | |
| communication | communication.deleteFriend | before/after | |
| communication | communication.deleteMessage | before/after | |
| communication | communication.deleteMessages | before/after | |
| communication | communication.sendMessage | before/after |
회원 포인트[편집 / 원본 편집]
| 모듈 | 이벤트 이름 | 호출 시점 | 비고 |
|---|---|---|---|
| point | point.setPoint | before/after |
기타[편집 / 원본 편집]
| 모듈 | 이벤트 이름 | 호출 시점 | 비고 |
|---|---|---|---|
| admin | admin.dashboard | before | |
| board | module.dispAdditionSetup | before/after | |
| editor | editor.deleteSavedDoc | after | |
| install | menu.getModuleListInSitemap | after | |
| menu | menu.getModuleListInSitemap | after | |
| ncenterlite | ncenterlite._insertNotify | before/after | |
| Rhymix Framework | mail.send | before/after | |
| Rhymix Framework | push.send | before/after | |
| Rhymix Framework | sms.send | before/after |
같이 보기[편집 / 원본 편집]
출처[편집 / 원본 편집]
이 문서는 라이믹스 공식 매뉴얼을 바탕으로 설명과 예제를 정리하였다. 공식 매뉴얼은 CC BY-SA 4.0으로 배포된다. 원문의 기여 이력은 rhymix-docs 저장소에서 확인할 수 있다.
| 라이믹스 · 설치·운영·개발 매뉴얼 둘러보기 | |
|---|---|
| 설치·이전 | 설치 환경 · 설치 · 업데이트 · XE에서 이전 · 호환성 점검 · nginx · 도메인 변경 |
| 운영 | 백업·복원 · 업로드·서버 진단 · 캐시·성능 · Crontab · 보안 · 릴리즈 노트 |
| 개발 | 확장 기능 제작 · 애드온 · DB 연산자 · 라우터 · 이벤트 · 개발 보안 |
| 테마·API | 테마 제작 · 템플릿 v1 · 템플릿 v2 · 프레임워크 · PHP 전역 함수 · JS 라이브러리 · JS 함수 · 레거시 JS 함수 · String 확장 |
| 기여·연동 | 이슈·PR · 코딩 규칙 · 라이선스 · IP 대역 · 시간대 · 포토스와이프 · 모바일 푸시 · 네모의 꿈 색상 |