From 85475477047a3e2966f3bae0cd700013e103eae7 Mon Sep 17 00:00:00 2001 From: zero Date: Tue, 24 Apr 2007 02:09:17 +0000 Subject: [PATCH] git-svn-id: http://xe-core.googlecode.com/svn/trunk@1288 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- modules/blog/blog.controller.php | 2 +- modules/blog/blog.view.php | 4 +-- modules/blog/tpl/blog_info.html | 4 +++ modules/blog/tpl/blog_insert.html | 33 +++++++++++------ modules/blog/tpl/filter/insert_blog.xml | 1 + modules/board/board.controller.php | 2 +- modules/board/board.view.php | 2 +- modules/board/tpl/board_info.html | 4 +++ modules/board/tpl/board_insert.html | 35 +++++++++++++------ modules/board/tpl/filter/insert_board.xml | 1 + modules/module/lang/ko.lang.php | 8 +++++ modules/module/module.controller.php | 30 +++++++++++++++- modules/module/queries/insertModule.xml | 1 + modules/module/queries/isExistsModuleName.xml | 12 +++++++ modules/module/queries/updateModule.xml | 1 + modules/module/schemas/modules.xml | 1 + 16 files changed, 115 insertions(+), 26 deletions(-) create mode 100644 modules/module/queries/isExistsModuleName.xml diff --git a/modules/blog/blog.controller.php b/modules/blog/blog.controller.php index 4022da883..31fa1fd5a 100644 --- a/modules/blog/blog.controller.php +++ b/modules/blog/blog.controller.php @@ -353,7 +353,7 @@ **/ function procBlogAdminInsertBlog() { // 일단 입력된 값들을 모두 받아서 db 입력항목과 그외 것으로 분리 - $args = Context::gets('module_srl','module_category_srl','blog_name','skin','browser_title','description','is_default','header_text','footer_text','admin_id'); + $args = Context::gets('module_srl','module_category_srl','blog_name','skin','browser_title','description','is_default','header_text','footer_text','admin_id','open_rss'); $args->module = 'blog'; $args->mid = $args->blog_name; unset($args->blog_name); diff --git a/modules/blog/blog.view.php b/modules/blog/blog.view.php index 0b374e021..82220a154 100644 --- a/modules/blog/blog.view.php +++ b/modules/blog/blog.view.php @@ -103,8 +103,8 @@ Context::set('module_info',$this->module_info); Context::set('layout_info',$this->module_info); - // rss url 만듬 - if($this->grant->list) Context::set('rss_url', getUrl('','mid',$this->mid,'act','dispBlogRss')); + // rss url + if($this->module_info->open_rss != 'N') Context::set('rss_url', getUrl('','mid',$this->mid,'act','dispBoardRss')); } /** diff --git a/modules/blog/tpl/blog_info.html b/modules/blog/tpl/blog_info.html index b3d31f160..9f8c24594 100644 --- a/modules/blog/tpl/blog_info.html +++ b/modules/blog/tpl/blog_info.html @@ -19,6 +19,10 @@ {$lang->browser_title} {htmlspecialchars($module_info->browser_title)} + + {$lang->open_rss} + {$lang->open_rss_types[$module_info->open_rss]} + {$lang->list_count} {$module_info->list_count?$module_info->list_count:20} diff --git a/modules/blog/tpl/blog_insert.html b/modules/blog/tpl/blog_insert.html index f4f53d93d..984c5cd0f 100644 --- a/modules/blog/tpl/blog_insert.html +++ b/modules/blog/tpl/blog_insert.html @@ -28,6 +28,16 @@ {$lang->about_mid} + + + {$lang->is_default} + is_default=='Y')-->checked="true"/> + + + {$lang->about_default} + + + {$lang->category} @@ -49,6 +59,19 @@ {$lang->about_browser_title} + + {$lang->open_rss} + + + + + + {$lang->about_open_rss} + {$lang->skin} @@ -77,16 +100,6 @@ {$lang->about_page_count} - - - {$lang->is_default} - is_default=='Y')-->checked="true"/> - - - {$lang->about_default} - - - {$lang->description} diff --git a/modules/blog/tpl/filter/insert_blog.xml b/modules/blog/tpl/filter/insert_blog.xml index 8c23292c4..371a33a62 100644 --- a/modules/blog/tpl/filter/insert_blog.xml +++ b/modules/blog/tpl/filter/insert_blog.xml @@ -19,6 +19,7 @@ + diff --git a/modules/board/board.controller.php b/modules/board/board.controller.php index b8063167f..bbf40e231 100644 --- a/modules/board/board.controller.php +++ b/modules/board/board.controller.php @@ -383,7 +383,7 @@ function procBoardAdminInsertBoard($args = null) { // 일단 입력된 값들을 모두 받아서 db 입력항목과 그외 것으로 분리 if(!$args) { - $args = Context::gets('module_srl','module_category_srl','board_name','layout_srl','skin','browser_title','description','is_default','header_text','footer_text','admin_id'); + $args = Context::gets('module_srl','module_category_srl','board_name','layout_srl','skin','browser_title','description','is_default','header_text','footer_text','admin_id','open_rss'); } $args->module = 'board'; diff --git a/modules/board/board.view.php b/modules/board/board.view.php index 69f7c9f87..7312bbaa2 100644 --- a/modules/board/board.view.php +++ b/modules/board/board.view.php @@ -77,7 +77,7 @@ $this->setTemplatePath($template_path); // rss url - if($this->grant->view) Context::set('rss_url', getUrl('','mid',$this->mid,'act','dispBoardRss')); + if($this->module_info->open_rss != 'N') Context::set('rss_url', getUrl('','mid',$this->mid,'act','dispBoardRss')); } /** diff --git a/modules/board/tpl/board_info.html b/modules/board/tpl/board_info.html index 508f039c3..258dbfdf1 100644 --- a/modules/board/tpl/board_info.html +++ b/modules/board/tpl/board_info.html @@ -33,6 +33,10 @@ {$lang->use_category} {$lang->use}{$lang->notuse} + + {$lang->open_rss} + {$lang->open_rss_types[$module_info->open_rss]} + {$lang->list_count} {$module_info->list_count?$module_info->list_count:20} diff --git a/modules/board/tpl/board_insert.html b/modules/board/tpl/board_insert.html index ecb8677ce..d2dde8503 100644 --- a/modules/board/tpl/board_insert.html +++ b/modules/board/tpl/board_insert.html @@ -28,6 +28,17 @@ {$lang->about_mid} + + + + {$lang->is_default} + is_default=='Y')-->checked="true"/> + + + {$lang->about_default} + + + {$lang->category} @@ -42,6 +53,7 @@ {$lang->about_category} + {$lang->browser_title} @@ -83,6 +95,19 @@ {$lang->about_use_category} + + {$lang->open_rss} + + + + + + {$lang->about_open_rss} + {$lang->list_count} @@ -98,16 +123,6 @@ {$lang->about_page_count} - - - {$lang->is_default} - is_default=='Y')-->checked="true"/> - - - {$lang->about_default} - - - {$lang->description} diff --git a/modules/board/tpl/filter/insert_board.xml b/modules/board/tpl/filter/insert_board.xml index 3655b3fcc..64c88109d 100644 --- a/modules/board/tpl/filter/insert_board.xml +++ b/modules/board/tpl/filter/insert_board.xml @@ -20,6 +20,7 @@ + diff --git a/modules/module/lang/ko.lang.php b/modules/module/lang/ko.lang.php index d0591d2db..b023e0ea9 100644 --- a/modules/module/lang/ko.lang.php +++ b/modules/module/lang/ko.lang.php @@ -22,6 +22,12 @@ $lang->skin_default_info = '스킨 기본정보'; $lang->skin_maker = '스킨제작자'; $lang->skin_maker_homepage = '제작자 홈페이지'; + $lang->open_rss = 'RSS 공개'; + $lang->open_rss_types = array( + 'Y' => '전문 공개 ', + 'H' => '요약 공개', + 'N' => '공개하지 않음', + ); $lang->cmd_add_shortcut = "바로가기 추가"; $lang->cmd_install = "설치"; @@ -33,6 +39,7 @@ $lang->msg_new_module = "모듈 생성"; $lang->msg_update_module = "모듈 수정"; + $lang->msg_module_name_exists = "이미 존재하는 모듈이름입니다. 다른 이름을 입력해주세요."; $lang->msg_category_is_null = '등록된 분류가 없습니다'; $lang->msg_grant_is_null = '등록된 권한 대상이 없습니다'; $lang->msg_no_checked_document = '선택된 게시물이 없습니다'; @@ -53,4 +60,5 @@ $lang->about_page_count = '목록 하단 페이지 이동 하는 링크의 수를 지정하실 수 있습니다. (기본 10개)'; $lang->about_admin_id = '해당 모듈에 대해 최고 권한을 가지는 관리자를 지정할 수 있습니다.
,(콤마)로 다수 아이디 지정이 가능합니다. (관리자페이지 접근은 불가능)'; $lang->about_grant = '특정 권한의 대상을 모두 해제하시면 로그인하지 않은 회원까지 권한을 가질 수 있습니다'; + $lang->about_open_rss = '현재 모듈에 대한 RSS 공개를 선택하실 수 있습니다. 글 보는 권한과 상관없이 옵션에 따라 RSS가 공개됩니다'; ?> diff --git a/modules/module/module.controller.php b/modules/module/module.controller.php index 0b42fc39f..0e4f0a43d 100644 --- a/modules/module/module.controller.php +++ b/modules/module/module.controller.php @@ -73,6 +73,13 @@ $oDB = &DB::getInstance(); $oDB->begin(); + // 이미 존재하는 모듈 이름인지 체크 + $output = executeQuery('module.isExistsModuleName', $args); + if(!$output->toBool() || $output->data->count) { + $oDB->rollback(); + return new Object(-1, 'msg_module_name_exists'); + } + // module model 객체 생성 $oModuleModel = &getModel('module'); @@ -101,10 +108,31 @@ * @brief 모듈의 정보를 수정 **/ function updateModule($args) { + // begin transaction + $oDB = &DB::getInstance(); + $oDB->begin(); + + // 이미 존재하는 모듈 이름인지 체크 + $output = executeQuery('module.isExistsModuleName', $args); + if(!$output->toBool() || $output->data->count) { + $oDB->rollback(); + return new Object(-1, 'msg_module_name_exists'); + } + $output = executeQuery('module.updateModule', $args); - if(!$output->toBool()) return $output; + if(!$output->toBool()) { + $oDB->rollback(); + return $output; + } $output->add('module_srl',$args->module_srl); + if(!$output->toBool()) { + $oDB->rollback(); + return $output; + } + + $oDB->commit(); + return $output; } diff --git a/modules/module/queries/insertModule.xml b/modules/module/queries/insertModule.xml index d25c69c38..c813b5bb4 100644 --- a/modules/module/queries/insertModule.xml +++ b/modules/module/queries/insertModule.xml @@ -17,6 +17,7 @@ + diff --git a/modules/module/queries/isExistsModuleName.xml b/modules/module/queries/isExistsModuleName.xml new file mode 100644 index 000000000..3b11959d0 --- /dev/null +++ b/modules/module/queries/isExistsModuleName.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/modules/module/queries/updateModule.xml b/modules/module/queries/updateModule.xml index e77655ee0..1d3d8e4dc 100644 --- a/modules/module/queries/updateModule.xml +++ b/modules/module/queries/updateModule.xml @@ -15,6 +15,7 @@ + diff --git a/modules/module/schemas/modules.xml b/modules/module/schemas/modules.xml index d8878dde7..ed918546c 100644 --- a/modules/module/schemas/modules.xml +++ b/modules/module/schemas/modules.xml @@ -14,6 +14,7 @@ +