From 9da646c2b23fe441ddd531b9d5b692030ce094db Mon Sep 17 00:00:00 2001 From: misol Date: Sat, 6 Jun 2009 07:02:38 +0000 Subject: [PATCH] =?UTF-8?q?RSS=20=EC=A3=BC=EC=86=8C=20=EB=A7=81=ED=81=AC?= =?UTF-8?q?=20=EC=95=88=EB=9C=A8=EB=8A=94=20=EB=AC=B8=EC=A0=9C=20=EC=88=98?= =?UTF-8?q?=EC=A0=95,=20RSS=20=EB=A7=81=ED=81=AC-=EB=A6=AC=EB=9D=BC?= =?UTF-8?q?=EC=9D=B4=ED=8A=B8=20=EB=AA=A8=EB=93=9C=20=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=EC=8B=9C=20=EA=B7=9C=EC=B9=99=EC=97=90=20=EB=94=B0=EB=9D=BC=20?= =?UTF-8?q?=EA=B0=84=EB=8B=A8=ED=95=9C=20=EC=A3=BC=EC=86=8C=20=EC=82=AC?= =?UTF-8?q?=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://xe-core.googlecode.com/svn/sandbox@6485 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- common/tpl/common_layout.html | 3 --- modules/module/queries/deleteTrigger.xml | 12 +++++++++ modules/rss/rss.class.php | 12 ++++++--- modules/rss/rss.controller.php | 32 ++++++++++++++++++++++-- 4 files changed, 50 insertions(+), 9 deletions(-) create mode 100644 modules/module/queries/deleteTrigger.xml diff --git a/common/tpl/common_layout.html b/common/tpl/common_layout.html index 5174c9bd1..58f6fffbb 100644 --- a/common/tpl/common_layout.html +++ b/common/tpl/common_layout.html @@ -43,9 +43,6 @@ - - - {@ $ssl_actions = Context::getSSLActions() } diff --git a/modules/module/queries/deleteTrigger.xml b/modules/module/queries/deleteTrigger.xml new file mode 100644 index 000000000..99b733b06 --- /dev/null +++ b/modules/module/queries/deleteTrigger.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/rss/rss.class.php b/modules/rss/rss.class.php index 2230f8ac9..4065d52e7 100644 --- a/modules/rss/rss.class.php +++ b/modules/rss/rss.class.php @@ -21,7 +21,7 @@ $oModuleController->insertTrigger('module.dispAdditionSetup', 'rss', 'view', 'triggerDispRssAdditionSetup', 'before'); // 2007. 10. 19 출력하기 전에 rss url을 세팅하는 트리거 호출 - $oModuleController->insertTrigger('display', 'rss', 'controller', 'triggerRssUrlInsert', 'before'); + $oModuleController->insertTrigger('moduleHandler.proc', 'rss', 'controller', 'triggerRssUrlInsert', 'after'); return new Object(); } @@ -39,7 +39,9 @@ if(!$oModuleModel->getTrigger('module.dispAdditionSetup', 'rss', 'view', 'triggerDispRssAdditionSetup', 'before')) return true; // 2007. 10. 19 출력하기 전에 rss url을 세팅하는 트리거 호출 - if(!$oModuleModel->getTrigger('display', 'rss', 'controller', 'triggerRssUrlInsert', 'before')) return true; + if(!$oModuleModel->getTrigger('moduleHandler.proc', 'rss', 'controller', 'triggerRssUrlInsert', 'after')) return true; + + if($oModuleModel->getTrigger('display', 'rss', 'controller', 'triggerRssUrlInsert', 'before')) return true; return false; } @@ -60,8 +62,10 @@ $oModuleController->insertTrigger('module.dispAdditionSetup', 'rss', 'view', 'triggerDispRssAdditionSetup', 'before'); // 2007. 10. 19 출력하기 전에 rss url을 세팅하는 트리거 호출 - if(!$oModuleModel->getTrigger('display', 'rss', 'controller', 'triggerRssUrlInsert', 'before')) - $oModuleController->insertTrigger('display', 'rss', 'controller', 'triggerRssUrlInsert', 'before'); + if(!$oModuleModel->getTrigger('moduleHandler.proc', 'rss', 'controller', 'triggerRssUrlInsert', 'after')) + $oModuleController->insertTrigger('moduleHandler.proc', 'rss', 'controller', 'triggerRssUrlInsert', 'after'); + if($oModuleModel->getTrigger('display', 'rss', 'controller', 'triggerRssUrlInsert', 'before')) + $oModuleController->deleteTrigger('display', 'rss', 'controller', 'triggerRssUrlInsert', 'before'); return new Object(0, 'success_updated'); } diff --git a/modules/rss/rss.controller.php b/modules/rss/rss.controller.php index b7c186dcd..9ca5efb86 100644 --- a/modules/rss/rss.controller.php +++ b/modules/rss/rss.controller.php @@ -21,6 +21,7 @@ **/ function triggerRssUrlInsert() { $current_module_srl = Context::get('module_srl'); + $site_module_info = Context::get('site_module_info'); if(!$current_module_srl) { $current_module_info = Context::get('current_module_info'); @@ -33,8 +34,35 @@ $oRssModel = &getModel('rss'); $rss_config = $oRssModel->getRssModuleConfig($current_module_srl); - if($rss_config->open_rss != 'N') Context::set('rss_url', getUrl('','mid',Context::get('mid'),'act','rss')); - if($rss_config->open_rss != 'N') Context::set('atom_url', getUrl('','mid',Context::get('mid'),'act','atom')); + if($rss_config->open_rss != 'N') { + if(Context::isAllowRewrite()) { + $request_uri = Context::getRequestUri(); + if(Context::get('vid')) { + Context::set('rss_url', Context::getRequestUri().Context::get('vid').'/'.Context::get('mid').'/rss'); + Context::set('atom_url', Context::getRequestUri().Context::get('vid').'/'.Context::get('mid').'/atom'); + } + else { + Context::set('rss_url', $request_uri.Context::get('mid').'/rss'); + Context::set('atom_url', $request_uri.Context::get('mid').'/atom'); + } + } + else { + Context::set('rss_url', getUrl('','mid',Context::get('mid'),'act','rss')); + Context::set('atom_url', getUrl('','mid',Context::get('mid'),'act','atom')); + } + } + + if(Context::isInstalled() && $site_module_info->mid == Context::get('mid')) { + if(Context::isAllowRewrite() && !Context::get('vid')) { + $request_uri = Context::getRequestUri(); + Context::set('rss_url', $request_uri.'rss'); + Context::set('atom_url', $request_uri.'atom'); + } + else { + Context::set('rss_url', getUrl('','module','rss','act','rss')); + Context::set('atom_url', getUrl('','module','rss','act','atom')); + } + } return new Object(); }