From 3b980a8183503b07b45292d796c13507b26f9dc8 Mon Sep 17 00:00:00 2001 From: zero Date: Mon, 26 Mar 2007 11:38:02 +0000 Subject: [PATCH] git-svn-id: http://xe-core.googlecode.com/svn/trunk@674 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- modules/board/board.controller.php | 19 ---- modules/board/conf/module.xml | 1 - ...or_component.xml => editor_components.xml} | 0 modules/pagemaker/conf/module.xml | 5 +- modules/pagemaker/pagemaker.class.php | 33 ------- modules/pagemaker/pagemaker.controller.php | 83 ++--------------- modules/pagemaker/pagemaker.model.php | 12 --- modules/pagemaker/pagemaker.view.php | 90 +++++-------------- modules/pagemaker/queries/getPageList.xml | 24 +++++ modules/pagemaker/tpl.admin/filter/insert.xml | 13 --- modules/pagemaker/tpl.admin/index.html | 75 ++++++++++++++++ modules/pagemaker/tpl.admin/js/admin.js | 23 ----- modules/pagemaker/tpl.admin/list.html | 76 ---------------- modules/pagemaker/tpl.admin/write_form.html | 79 ---------------- 14 files changed, 132 insertions(+), 401 deletions(-) rename modules/editor/schemas/{editor_component.xml => editor_components.xml} (100%) create mode 100644 modules/pagemaker/queries/getPageList.xml delete mode 100644 modules/pagemaker/tpl.admin/filter/insert.xml create mode 100644 modules/pagemaker/tpl.admin/index.html delete mode 100644 modules/pagemaker/tpl.admin/js/admin.js delete mode 100644 modules/pagemaker/tpl.admin/list.html delete mode 100644 modules/pagemaker/tpl.admin/write_form.html diff --git a/modules/board/board.controller.php b/modules/board/board.controller.php index f6ea40926..b5df92a19 100644 --- a/modules/board/board.controller.php +++ b/modules/board/board.controller.php @@ -299,25 +299,6 @@ $oFileModel->procDownload($file_srl, $sid); } - /** - * @brief document_srl의 등록 유무를 체크하여 등록되지 않았다면 첨부파일 삭제 - * - * 글 작성중 저장하지 않고 빠져나갔을 경우에 대비한 코드인데\n - * javascript로 빠져나가는 경우 확인이 어려워서 사용되지 않을 코드 - **/ - function procClearFile() { - $upload_target_srl = Context::get('upload_target_srl'); - - // upload_target_srl의 글이 등록되어 있다면 pass - $oDocumentModel = &getModel('upload_target'); - $data = $oDocumentModel->getDocument($upload_target_srl); - if($data) exit(); - - // 등록되어 있지 않다면 첨부파일 삭제 - $oFileController = &getController('file'); - $oFileController->deleteFiles($this->module_srl, $upload_target_srl); - } - /** * @brief 권한 추가 **/ diff --git a/modules/board/conf/module.xml b/modules/board/conf/module.xml index 4c6c670a2..1046f346e 100644 --- a/modules/board/conf/module.xml +++ b/modules/board/conf/module.xml @@ -51,7 +51,6 @@ - diff --git a/modules/editor/schemas/editor_component.xml b/modules/editor/schemas/editor_components.xml similarity index 100% rename from modules/editor/schemas/editor_component.xml rename to modules/editor/schemas/editor_components.xml diff --git a/modules/pagemaker/conf/module.xml b/modules/pagemaker/conf/module.xml index c00cf6abe..eb34852b4 100644 --- a/modules/pagemaker/conf/module.xml +++ b/modules/pagemaker/conf/module.xml @@ -2,10 +2,7 @@ - - - - + diff --git a/modules/pagemaker/pagemaker.class.php b/modules/pagemaker/pagemaker.class.php index 88a882355..64f3df307 100644 --- a/modules/pagemaker/pagemaker.class.php +++ b/modules/pagemaker/pagemaker.class.php @@ -31,38 +31,5 @@ return new Object(); } - /** - * @brief 관리자에서 요청될때 초기화 할 것들을 정리 - **/ - function initAdmin() { - - // pagemaker 모듈로 등록된 module_srl을 구함 - $oPagemakerModel = &getModel('pagemaker'); - $this->module_srl = $oPagemakerModel->getModuleSrl(); - - - // 카테고리를 사용하는지 확인후 사용시 카테고리 목록을 구해와서 Context에 세팅 - /* - if($this->module_info->use_category=='Y') { - $oDocumentModel = &getModel('document'); - $this->category_list = $oDocumentModel->getCategoryList($this->module_srl); - Context::set('category_list', $this->category_list); - } - */ - - // 에디터 세팅 - $editor = "default"; - Context::set('editor', $editor); - $editor_path = sprintf("./editor/%s/", $editor); - Context::set('editor_path', $editor_path); - Context::loadLang($editor_path); - - // 템플릿에서 사용할 변수를 Context::set() - if($this->module_srl) Context::set('module_srl',$this->module_srl); - - // 업로드 권한 부여 - $this->grant->fileupload = true; - } - } ?> diff --git a/modules/pagemaker/pagemaker.controller.php b/modules/pagemaker/pagemaker.controller.php index 772b05cc4..f0ee6909f 100644 --- a/modules/pagemaker/pagemaker.controller.php +++ b/modules/pagemaker/pagemaker.controller.php @@ -11,89 +11,22 @@ * @brief 초기화 **/ function init() { - $this->initAdmin(); - } - - /** - * @brief 문서 입력 - **/ - function procInsertDocument() { - - // 글작성시 필요한 변수를 세팅 - $obj = Context::getRequestVars(); - $obj->module_srl = $this->module_srl; - - // document module의 model 객체 생성 - $oDocumentModel = &getModel('document'); - - // document module의 controller 객체 생성 - $oDocumentController = &getController('document'); - - // 이미 존재하는 글인지 체크 - $document = $oDocumentModel->getDocument($obj->document_srl, $this->grant->manager); - - // 이미 존재하는 경우 수정 - if($document->document_srl == $obj->document_srl) { - $output = $oDocumentController->updateDocument($document, $obj); - $msg_code = 'success_updated'; - - // 그렇지 않으면 신규 등록 - } else { - $output = $oDocumentController->insertDocument($obj); - $msg_code = 'success_registed'; - $obj->document_srl = $output->get('document_srl'); - } - if(!$output->toBool()) return $output; - - // 트랙백 발송 - $trackback_url = Context::get('trackback_url'); - $trackback_charset = Context::get('trackback_charset'); - if($trackback_url) { - $oTrackbackController = &getController('trackback'); - $oTrackbackController->sendTrackback($obj, $trackback_url, $trackback_charset); - } - - $this->add('document_srl', $output->get('document_srl')); - $this->add('page', $output->get('page')); - $this->setMessage($msg_code); - } - - /** - * @brief 문서 삭제 - **/ - function procDeleteDocument() { - // 문서 번호 확인 - $document_srl = Context::get('document_srl'); - if(!$document_srl) return $this->doError('msg_invalid_document'); - - // document module model 객체 생성 - $oDocumentController = &getController('document'); - - // 삭제 시도 - $output = $oDocumentController->deleteDocument($document_srl, true); - if(!$output->toBool()) return $output; - - $this->add('page', $output->get('page')); - $this->setMessage('success_deleted'); } /** * @brief 첨부파일 업로드 **/ function procUploadFile() { - // 업로드 권한이 없거나 정보가 없을시 종료 - if(!Context::isUploaded()) exit(); - - // 기본적으로 필요한 변수인 document_srl, module_srl을 설정 - $document_srl = Context::get('document_srl'); + // 기본적으로 필요한 변수 설정 + $upload_target_srl = Context::get('upload_target_srl'); $module_srl = $this->module_srl; // file class의 controller 객체 생성 $oFileController = &getController('file'); - $output = $oFileController->insertFile($module_srl, $document_srl); + $output = $oFileController->insertFile($module_srl, $upload_target_srl); // 첨부파일의 목록을 java script로 출력 - $oFileController->printUploadedFileList($document_srl); + $oFileController->printUploadedFileList($upload_target_srl); } /** @@ -101,17 +34,17 @@ * 에디터에서 개별 파일 삭제시 사용 **/ function procDeleteFile() { - // 기본적으로 필요한 변수인 document_srl, module_srl을 설정 - $document_srl = Context::get('document_srl'); + // 기본적으로 필요한 변수인 upload_target_srl, module_srl을 설정 + $upload_target_srl = Context::get('upload_target_srl'); $module_srl = $this->module_srl; $file_srl = Context::get('file_srl'); // file class의 controller 객체 생성 $oFileController = &getController('file'); - if($file_srl) $output = $oFileController->deleteFile($file_srl, true); + if($file_srl) $output = $oFileController->deleteFile($file_srl, $this->grant->manager); // 첨부파일의 목록을 java script로 출력 - $oFileController->printUploadedFileList($document_srl); + $oFileController->printUploadedFileList($upload_target_srl); } diff --git a/modules/pagemaker/pagemaker.model.php b/modules/pagemaker/pagemaker.model.php index 30edaa526..ae34677ac 100644 --- a/modules/pagemaker/pagemaker.model.php +++ b/modules/pagemaker/pagemaker.model.php @@ -13,17 +13,5 @@ function init() { } - /** - * @brief pagemaker로 등록된 module_srl을 찾아서 return - * pagemaker의 내용은 게시판처럼 document에 저장이 된다. - * 설치시에 pagemaker 모듈을 modules에 등록을 하며 이 module_srl은 sequence값으로 입력되기에 찾아야한다. - **/ - function getModuleSrl() { - $oModuleModel = &getModel('module'); - $module_info = $oModuleModel->getModuleInfoByMid('pagemaker'); - $module_srl = $module_info->module_srl; - return $module_srl; - } - } ?> diff --git a/modules/pagemaker/pagemaker.view.php b/modules/pagemaker/pagemaker.view.php index 4a96b1828..b2c5e0c59 100644 --- a/modules/pagemaker/pagemaker.view.php +++ b/modules/pagemaker/pagemaker.view.php @@ -20,88 +20,46 @@ } /** - * @brief 목록 출력 + * @brief 페이지 관리 목록 보여줌 **/ - function dispList() { - $this->initAdmin(); - - // 목록 구현에 필요한 변수들을 가져온다 - $page_srl = Context::get('page_srl'); - $page = Context::get('page'); + function dispAdminContent() { + // 등록된 page 모듈을 불러와 세팅 + $oDB = &DB::getInstance(); + $args->sort_index = "module_srl"; + $args->page = Context::get('page'); + $args->list_count = 40; + $args->page_count = 10; + $args->s_module_category_srl = Context::get('module_category_srl'); + $output = $oDB->executeQuery('pagemaker.getPageList', $args); - // document 객체를 생성. 기본 데이터 구조의 경우 document모듈만 쓰면 만사 해결.. -_-; - $oDocumentModel = &getModel('document'); - - // 목록을 구하기 위한 옵션 - $args->module_srl = $this->module_srl; ///< 현재 모듈의 module_srl - $args->page = $page; ///< 페이지 - $args->list_count = $this->list_count; ///< 한페이지에 보여줄 글 수 - $args->page_count = $this->page_count; ///< 페이지 네비게이션에 나타날 페이지의 수 - - $args->search_target = Context::get('search_target'); ///< 검색 대상 (title, contents...) - $args->search_keyword = Context::get('search_keyword'); ///< 검색어 - if($this->module_info->use_category=='Y') $args->category_srl = Context::get('category'); ///< 카테고리 사용시 선택된 카테고리 - - $args->sort_index = 'list_order'; ///< 소팅 값 - - // 목록 구함, document->getDocumentList 에서 걍 알아서 다 해버리는 구조이다... (아.. 이거 나쁜 버릇인데.. ㅡ.ㅜ 어쩔수 없다) - $output = $oDocumentModel->getDocumentList($args); - - // 템플릿에 쓰기 위해서 document_model::getDocumentList() 의 return object에 있는 값들을 세팅 + // 템플릿에 쓰기 위해서 context::set Context::set('total_count', $output->total_count); Context::set('total_page', $output->total_page); Context::set('page', $output->page); - Context::set('document_list', $output->data); + Context::set('page_list', $output->data); Context::set('page_navigation', $output->page_navigation); - // 템플릿에서 사용할 검색옵션 세팅 - $count_search_option = count($this->search_option); - for($i=0;$i<$count_search_option;$i++) { - $search_option[$this->search_option[$i]] = Context::getLang($this->search_option[$i]); - } - Context::set('search_option', $search_option); - - $this->setTemplateFile('list'); + // 템플릿 파일 지정 + $this->setTemplateFile('index'); } /** - * @brief 작성 화면 출력 + * @brief 페이지에 필요한 기본 설정들 **/ - function dispWrite() { + function dispAdminModuleConfig() { + // 관리자 관련 정보 세팅 $this->initAdmin(); - // GET parameter에서 document_srl을 가져옴 - $document_srl = Context::get('document_srl'); + // 설정 정보를 받아옴 (module model 객체를 이용) + $oModuleModel = &getModel('module'); + $config = $oModuleModel->getModuleConfig('page'); + Context::set('config',$config); - // document 모듈 객체 생성 - $oDocumentModel = &getModel('document'); - - // 지정된 글이 없다면 (신규) 새로운 번호를 만든다 - if($document_srl) { - $document = $oDocumentModel->getDocument($document_srl, $this->grant->manager); - if(!$document) { - unset($document_srl); - Context::set('document_srl',''); - } - } - - // 문서 번호가 없으면 새로운 값을 받아옴 - if(!$document_srl) { - $oDB = &DB::getInstance(); - $document_srl = $oDB->getNextSequence(); - } - - Context::set('document_srl',$document_srl); - Context::set('document', $document); - - // 에디터 모듈의 getEditor를 호출하여 세팅 - $oEditorView = &getView('editor'); - $editor = $oEditorView->getEditor($document_srl, true); - Context::set('editor', $editor); - - $this->setTemplateFile('write_form'); + // 템플릿 파일 지정 + $this->setTemplateFile('page_config'); } + } ?> diff --git a/modules/pagemaker/queries/getPageList.xml b/modules/pagemaker/queries/getPageList.xml new file mode 100644 index 000000000..e448ca8e2 --- /dev/null +++ b/modules/pagemaker/queries/getPageList.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/modules/pagemaker/tpl.admin/filter/insert.xml b/modules/pagemaker/tpl.admin/filter/insert.xml deleted file mode 100644 index a39c26e38..000000000 --- a/modules/pagemaker/tpl.admin/filter/insert.xml +++ /dev/null @@ -1,13 +0,0 @@ - -
- - - - - - - - - - -
diff --git a/modules/pagemaker/tpl.admin/index.html b/modules/pagemaker/tpl.admin/index.html new file mode 100644 index 000000000..c3246e45b --- /dev/null +++ b/modules/pagemaker/tpl.admin/index.html @@ -0,0 +1,75 @@ + + + +
+ {$lang->total_count} {number_format($total_count)}, + {$lang->page_count} : {number_format($page)} / {number_format($total_page)} +
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
{$lang->no} +
+ +
+
{$lang->mid}{$lang->browser_title}{$lang->is_default}{$lang->skin}{$lang->admin_id}{$lang->regdate}{$lang->cmd_move}{$lang->cmd_delete}
{$no} + + {$lang->not_exists} + + {$module_category[$val->module_category_srl]->title} + + {$val->mid}{$val->browser_title}{$val->is_default}{$val->skin}{$val->admin_id}{zdate($val->regdate,"Y-m-d")}{$lang->cmd_move}{$lang->cmd_delete}
+ + + + + + +
+ [{$lang->first_page}] + + + + {$page_no} + + [{$page_no}] + + + + [{$lang->last_page}] +
diff --git a/modules/pagemaker/tpl.admin/js/admin.js b/modules/pagemaker/tpl.admin/js/admin.js deleted file mode 100644 index f8f8ba9e3..000000000 --- a/modules/pagemaker/tpl.admin/js/admin.js +++ /dev/null @@ -1,23 +0,0 @@ -/* 글쓰기 작성후 */ -function completeDocumentInserted(ret_obj) { - var error = ret_obj['error']; - var message = ret_obj['message']; - var page = ret_obj['page']; - var document_srl = ret_obj['document_srl']; - var url = "./?module=admin&mo=pagemaker&act=dispWrite&document_srl="+document_srl; - if(page) url += "&page="+page; - location.href = url; -} - -/* 글 삭제 */ -function completeDeleteDocument(ret_obj) { - var error = ret_obj['error']; - var message = ret_obj['message']; - var page = ret_obj['page']; - - alert(message); - - var url = "./?module=admin&mo=pagemaker&act=dispWrite&document_srl="+document_srl; - if(page) url += "&page="+page; - location.href = url; -} diff --git a/modules/pagemaker/tpl.admin/list.html b/modules/pagemaker/tpl.admin/list.html deleted file mode 100644 index dc35f013c..000000000 --- a/modules/pagemaker/tpl.admin/list.html +++ /dev/null @@ -1,76 +0,0 @@ - -
- {$lang->document_count} : {number_format($total_count)}, - {$lang->page_count} : {number_format($page)} / {number_format($total_page)} -
- - -
- - - - - - - - - - - - - - - - - - - -
{$lang->no} -
- -
-
{$lang->title}{$lang->date}
{$no}{$category_list[$val->category_srl]->title} - {$val->title} - {zdate($val->regdate,"Y-m-d")}
-
- - - - - -
-
- - - - - - -
-
- - -
- [{$lang->first_page}] - - - - {$page_no} - - [{$page_no}] - - - - [{$lang->last_page}] -
diff --git a/modules/pagemaker/tpl.admin/write_form.html b/modules/pagemaker/tpl.admin/write_form.html deleted file mode 100644 index 791402f0c..000000000 --- a/modules/pagemaker/tpl.admin/write_form.html +++ /dev/null @@ -1,79 +0,0 @@ - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
{$lang->category} - -
{$lang->title}
  - is_secret== "Y")-->checked="true" id="is_secret" /> - - - allow_comment != "N")-->checked="true" id="allow_comment" /> - - - lock_comment == "Y")-->checked="true" id="lock_comment" /> - - - allow_trackback != "N")-->checked="true" id="allow_trackback" /> - -
{$lang->content}{$editor}
{$lang->cmd_send_trackback} - - -
{$lang->tag} -
- {$lang->about_tag} -
- - -
- -