diff --git a/modules/addon/addon.class.php b/modules/addon/addon.class.php index 427f62d0b..87f62b200 100644 --- a/modules/addon/addon.class.php +++ b/modules/addon/addon.class.php @@ -13,9 +13,16 @@ * @brief 설치시 추가 작업이 필요할시 구현 **/ function moduleInstall() { + // action forward에 등록 (관리자 모드에서 사용하기 위함) + $oModuleController = &getController('module'); + $oModuleController->insertActionFoward('addon', 'dispAddonIndex'); + $oModuleController->insertActionFoward('addon', 'dispAddonInfo'); + $oModuleController->insertActionFoward('addon', 'procToggleActivateAddon'); + // 몇가진 애드온을 기본으로 설치 상태로 지정 $oAddonController = &getController('addon'); $oAddonController->doActivate('spamfilter'); + $oAddonController->doActivate('message'); return new Object(); } diff --git a/modules/module/module.controller.php b/modules/module/module.controller.php index 78059b9be..2a205018f 100644 --- a/modules/module/module.controller.php +++ b/modules/module/module.controller.php @@ -94,6 +94,20 @@ return $output; } + /** + * @brief action forward 추가 + * action foward는 등록된 action이 요청된 모듈에 없을 경우 찾아서 포워딩을 하는 구조이다 + * 모듈의 설치시에 사용된다. + **/ + function insertActionForward($module, $action) { + $args->module = $module; + $args->action = $action; + + $oDB = &DB::getInstance(); + $output = $oDB->executeQuery('module.insertActionFoward', $args); + return $output; + } + /** * @brief 모듈의 기타 정보를 변경 **/ diff --git a/modules/module/queries/insertActionFoward.xml b/modules/module/queries/insertActionFoward.xml new file mode 100644 index 000000000..9f6905e0d --- /dev/null +++ b/modules/module/queries/insertActionFoward.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/modules/module/schemas/action_forward.xml b/modules/module/schemas/action_forward.xml new file mode 100644 index 000000000..aabf3cb76 --- /dev/null +++ b/modules/module/schemas/action_forward.xml @@ -0,0 +1,4 @@ +
+ + +