-
-
-
-
+
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} |
+
+
+
+
+
+
+
+
+
+
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")} |
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
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 @@
-
-
-
-