상위 문서 안내를 일반 내부 링크로 교정 |
본문 관련 용어에 내부 링크 3개 추가 및 매뉴얼 공통 둘러보기 연결 |
||
| 1번째 줄: | 1번째 줄: | ||
상위 문서: [[라이믹스/매뉴얼]] | 상위 문서: [[라이믹스/매뉴얼]] | ||
== 개요 == | == 개요 == | ||
라이믹스 | [[라이믹스/매뉴얼/라이믹스 프레임워크|라이믹스 프레임워크]]와 코어 [[라이믹스/매뉴얼/확장 기능 제작|모듈]]이 제공하는 이벤트를 정리한다. 서드파티 모듈은 별도 이벤트를 제공할 수 있다. 이벤트 이름과 호출 시점을 함께 지정하여 필요한 작업에 개입한다. | ||
== before와 after == | == before와 after == | ||
일반적으로 <code>before</code>는 작업 전, <code>after</code>는 작업 후에 호출된다. 공식 매뉴얼은 before에서 오류를 담은 <code>BaseObject</code>를 반환하거나 프레임워크 예외를 던져 작업을 중단할 수 있다고 설명한다. after는 이미 일어난 작업의 통보이므로 반환한 오류나 예외가 일반적으로 무시된다. 개별 이벤트의 실제 인자와 반환값 처리는 사용하는 버전의 호출 코드를 확인한다. | 일반적으로 <code>before</code>는 작업 전, <code>after</code>는 작업 후에 호출된다. 공식 매뉴얼은 before에서 오류를 담은 <code>BaseObject</code>를 반환하거나 프레임워크 예외를 던져 작업을 중단할 수 있다고 설명한다. after는 이미 일어난 작업의 통보이므로 반환한 오류나 예외가 일반적으로 무시된다. 개별 이벤트의 실제 인자와 반환값 처리는 사용하는 버전의 호출 코드를 확인한다. | ||
권한 확인이나 작업 금지 조건을 구현할 때 after에서 이미 끝난 작업을 취소할 수 있다고 가정하지 않는다. | 권한 확인이나 작업 금지 조건을 구현할 때 after에서 이미 끝난 작업을 취소할 수 있다고 가정하지 않는다. [[라이믹스/애드온|애드온]]의 <code>called_position</code>과 이벤트 이름은 서로 다른 인터페이스이므로 [[라이믹스/애드온]]과 구분한다. | ||
== 액션별 이벤트 == | == 액션별 이벤트 == | ||
| 257번째 줄: | 257번째 줄: | ||
== 출처 == | == 출처 == | ||
이 문서는 [https://rhymix.org/manual/reference/events 라이믹스 공식 매뉴얼]을 바탕으로 설명과 예제를 정리하였다. 공식 매뉴얼은 CC BY-SA 4.0으로 배포된다. 원문의 기여 이력은 [https://github.com/rhymix/rhymix-docs rhymix-docs 저장소]에서 확인할 수 있다. | 이 문서는 [https://rhymix.org/manual/reference/events 라이믹스 공식 매뉴얼]을 바탕으로 설명과 예제를 정리하였다. 공식 매뉴얼은 CC BY-SA 4.0으로 배포된다. 원문의 기여 이력은 [https://github.com/rhymix/rhymix-docs rhymix-docs 저장소]에서 확인할 수 있다. | ||
{{라이믹스 매뉴얼}} | |||
[[분류:라이믹스]] | [[분류:라이믹스]] | ||
[[분류:라이믹스/매뉴얼]] | [[분류:라이믹스/매뉴얼]] | ||
2026년 10월 17일 (토) 08:48 판
상위 문서: 라이믹스/매뉴얼
개요
라이믹스 프레임워크와 코어 모듈이 제공하는 이벤트를 정리한다. 서드파티 모듈은 별도 이벤트를 제공할 수 있다. 이벤트 이름과 호출 시점을 함께 지정하여 필요한 작업에 개입한다.
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 대역 · 시간대 · 포토스와이프 · 모바일 푸시 · 네모의 꿈 색상 |