mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-14 00:39:57 +09:00
git-svn-id: http://xe-core.googlecode.com/svn/trunk@815 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
d7038c609f
commit
ff8af9927f
17 changed files with 0 additions and 0 deletions
8
modules/page/conf/info.xml
Normal file
8
modules/page/conf/info.xml
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<module version="0.1">
|
||||
<title xml:lang="ko">페이지 제작</title>
|
||||
<author email_address="zero@zeroboard.com" link="http://www.zeroboard.com" date="2007. 2. 28">
|
||||
<name xml:lang="ko">제로</name>
|
||||
<description xml:lang="ko">페이지를 제작하여 컨텐츠로 연결할 수 있는 모듈</description>
|
||||
</author>
|
||||
</module>
|
||||
17
modules/page/conf/module.xml
Normal file
17
modules/page/conf/module.xml
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<module>
|
||||
<grants />
|
||||
<actions>
|
||||
<action name="dispIndex" type="view" index="true" />
|
||||
<action name="dispAdminContent" type="view" admin_index="true" standalone="true" />
|
||||
<action name="dispAdminModuleConfig" type="view" standalone="true" />
|
||||
<action name="dispAdminPageInfo" type="view" standalone="true" />
|
||||
<action name="dispAdminInsertPage" type="view" standalone="true" />
|
||||
<action name="dispAdminDeletePage" type="view" standalone="true" />
|
||||
<action name="procInsertPage" type="controller" standalone="true" />
|
||||
<action name="procDeletePage" type="controller" standalone="true" />
|
||||
<action name="procInsertConfig" type="controller" standalone="true" />
|
||||
<action name="procUploadFile" type="controller" standalone="true" />
|
||||
<action name="procDeleteFile" type="controller" standalone="true" />
|
||||
</actions>
|
||||
</module>
|
||||
14
modules/page/lang/ko.lang.php
Normal file
14
modules/page/lang/ko.lang.php
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/pagemaker/lang/ko.lang.php
|
||||
* @author zero <zero@nzeo.com>
|
||||
* @brief 페이지생성기 (pagemaker) 모듈의 기본 언어팩
|
||||
**/
|
||||
$lang->about_mid = "모듈이름은 http://주소/?mid=모듈이름 처럼 직접 호출할 수 있는 값입니다. (영문+숫자만 가능)";
|
||||
$lang->about_category = "분류를 통한 관리를 할 수 있도록 합니다. 모듈 분류의 관리는 <a href=\"./?module=admin&act=dispCategory&mo=module\">모듈관리 > 모듈카테고리</a>에서 하실 수 있습니다.";
|
||||
$lang->about_browser_title = "브라우저의 제목에 나타나는 값입니다. RSS/Trackback에서도 사용됩니다.";
|
||||
$lang->about_default = "선택하시면 사이트에 mid값 없이 접속하였을 경우 기본으로 보여줍니다";
|
||||
|
||||
$lang->msg_new_module = "모듈 생성";
|
||||
$lang->msg_update_module = "모듈 수정";
|
||||
?>
|
||||
35
modules/page/pagemaker.class.php
Normal file
35
modules/page/pagemaker.class.php
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
<?php
|
||||
/**
|
||||
* @class pagemaker
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief pagemaker 모듈의 high class
|
||||
**/
|
||||
|
||||
class pagemaker extends ModuleObject {
|
||||
|
||||
/**
|
||||
* @brief 설치시 추가 작업이 필요할시 구현
|
||||
**/
|
||||
function moduleInstall() {
|
||||
// plugin 에서 사용할 cache디렉토리 생성
|
||||
FileHandler::makeDir('./files/cache/page');
|
||||
|
||||
return new Object();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 설치가 이상이 없는지 체크하는 method
|
||||
**/
|
||||
function moduleIsInstalled() {
|
||||
return new Object();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 업데이트 실행
|
||||
**/
|
||||
function moduleUpdate() {
|
||||
return new Object();
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
123
modules/page/pagemaker.controller.php
Normal file
123
modules/page/pagemaker.controller.php
Normal file
|
|
@ -0,0 +1,123 @@
|
|||
<?php
|
||||
/**
|
||||
* @class pagemakerController
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief pagemaker 모듈의 controller class
|
||||
**/
|
||||
|
||||
class pagemakerController extends pagemaker {
|
||||
|
||||
/**
|
||||
* @brief 초기화
|
||||
**/
|
||||
function init() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 페이지 추가
|
||||
**/
|
||||
function procInsertPage() {
|
||||
// 일단 입력된 값들을 모두 받아서 db 입력항목과 그외 것으로 분리
|
||||
$args = Context::gets('module_srl','layout_srl','module_category_srl','page_name','browser_title','content','is_default');
|
||||
$args->module = 'pagemaker';
|
||||
$args->mid = $args->page_name;
|
||||
unset($args->page_name);
|
||||
if($args->is_default!='Y') $args->is_default = 'N';
|
||||
|
||||
// module_srl이 넘어오면 원 모듈이 있는지 확인
|
||||
if($args->module_srl) {
|
||||
$oModuleModel = &getModel('module');
|
||||
$module_info = $oModuleModel->getModuleInfoByModuleSrl($args->module_srl);
|
||||
|
||||
// 만약 원래 모듈이 없으면 새로 입력하기 위한 처리
|
||||
if($module_info->module_srl != $args->module_srl) unset($args->module_srl);
|
||||
}
|
||||
|
||||
// module 모듈의 controller 객체 생성
|
||||
$oModuleController = &getController('module');
|
||||
|
||||
// is_default=='Y' 이면
|
||||
if($args->is_default=='Y') $oModuleController->clearDefaultModule();
|
||||
|
||||
// module_srl의 값에 따라 insert/update
|
||||
if(!$args->module_srl) {
|
||||
$output = $oModuleController->insertModule($args);
|
||||
$msg_code = 'success_registed';
|
||||
} else {
|
||||
$output = $oModuleController->updateModule($args);
|
||||
$msg_code = 'success_updated';
|
||||
}
|
||||
|
||||
if(!$output->toBool()) return $output;
|
||||
|
||||
$this->add("module_srl", $args->module_srl);
|
||||
$this->add("page", Context::get('page'));
|
||||
$this->setMessage($msg_code);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 페이지 삭제
|
||||
**/
|
||||
function procDeletePage() {
|
||||
$module_srl = Context::get('module_srl');
|
||||
|
||||
// 원본을 구해온다
|
||||
$oModuleController = &getController('module');
|
||||
$output = $oModuleController->deleteModule($module_srl);
|
||||
if(!$output->toBool()) return $output;
|
||||
|
||||
$this->add('module','pagemaker');
|
||||
$this->add('page',Context::get('page'));
|
||||
$this->setMessage('success_deleted');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 페이지 기본 정보의 추가
|
||||
**/
|
||||
function procInsertConfig() {
|
||||
// 기본 정보를 받음
|
||||
$args = Context::gets('test');
|
||||
|
||||
// module Controller 객체 생성하여 입력
|
||||
$oModuleController = &getController('module');
|
||||
$output = $oModuleController->insertModuleConfig('page',$args);
|
||||
return $output;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 첨부파일 업로드
|
||||
**/
|
||||
function procUploadFile() {
|
||||
// 기본적으로 필요한 변수 설정
|
||||
$upload_target_srl = Context::get('upload_target_srl');
|
||||
$module_srl = Context::get('module_srl');
|
||||
|
||||
// file class의 controller 객체 생성
|
||||
$oFileController = &getController('file');
|
||||
$output = $oFileController->insertFile($module_srl, $upload_target_srl);
|
||||
|
||||
// 첨부파일의 목록을 java script로 출력
|
||||
$oFileController->printUploadedFileList($upload_target_srl);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 첨부파일 삭제
|
||||
* 에디터에서 개별 파일 삭제시 사용
|
||||
**/
|
||||
function procDeleteFile() {
|
||||
// 기본적으로 필요한 변수인 upload_target_srl, module_srl을 설정
|
||||
$upload_target_srl = Context::get('upload_target_srl');
|
||||
$module_srl = Context::get('module_srl');
|
||||
$file_srl = Context::get('file_srl');
|
||||
|
||||
// file class의 controller 객체 생성
|
||||
$oFileController = &getController('file');
|
||||
if($file_srl) $output = $oFileController->deleteFile($file_srl, $this->grant->manager);
|
||||
|
||||
// 첨부파일의 목록을 java script로 출력
|
||||
$oFileController->printUploadedFileList($upload_target_srl);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
?>
|
||||
199
modules/page/pagemaker.view.php
Normal file
199
modules/page/pagemaker.view.php
Normal file
|
|
@ -0,0 +1,199 @@
|
|||
<?php
|
||||
/**
|
||||
* @class pagemakerView
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief pagemaker 모듈의 view 클래스
|
||||
**/
|
||||
|
||||
class pagemakerView extends pagemaker {
|
||||
|
||||
var $module_srl = 0;
|
||||
var $list_count = 20;
|
||||
var $page_count = 10;
|
||||
|
||||
/**
|
||||
* @brief 초기화
|
||||
**/
|
||||
function init() {
|
||||
// template path 지정
|
||||
$this->setTemplatePath($this->module_path.'tpl.admin');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 관리자 기능 호출시에 관련 정보들 세팅해줌
|
||||
**/
|
||||
function initAdmin() {
|
||||
// module_srl이 있으면 미리 체크하여 존재하는 모듈이면 module_info 세팅
|
||||
$module_srl = Context::get('module_srl');
|
||||
|
||||
// module model 객체 생성
|
||||
$oModuleModel = &getModel('module');
|
||||
|
||||
// 모듈 카테고리 목록을 구함
|
||||
$module_category = $oModuleModel->getModuleCategories();
|
||||
Context::set('module_category', $module_category);
|
||||
|
||||
// 템플릿 경로 구함 (page의 경우 tpl.admin에 관리자용 템플릿 모아놓음)
|
||||
$this->setTemplatePath($this->module_path.'tpl.admin');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 일반 요청시 출력
|
||||
**/
|
||||
function dispIndex() {
|
||||
// 템플릿에서 사용할 변수를 Context::set()
|
||||
if($this->module_srl) Context::set('module_srl',$this->module_srl);
|
||||
|
||||
Context::set('module_info', $this->module_info);
|
||||
Context::set('page_content', $this->module_info->content);
|
||||
|
||||
$this->setTemplatePath($this->module_path.'tpl.admin');
|
||||
$this->setTemplateFile('content');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 페이지 관리 목록 보여줌
|
||||
**/
|
||||
function dispAdminContent() {
|
||||
// 모듈 관련 정보 세팅
|
||||
$this->initAdmin();
|
||||
|
||||
// 등록된 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);
|
||||
|
||||
// 템플릿에 쓰기 위해서 context::set
|
||||
Context::set('total_count', $output->total_count);
|
||||
Context::set('total_page', $output->total_page);
|
||||
Context::set('page', $output->page);
|
||||
Context::set('page_list', $output->data);
|
||||
Context::set('page_navigation', $output->page_navigation);
|
||||
|
||||
// 템플릿 파일 지정
|
||||
$this->setTemplateFile('index');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 페이지에 필요한 기본 설정들
|
||||
**/
|
||||
function dispAdminModuleConfig() {
|
||||
// 관리자 관련 정보 세팅
|
||||
$this->initAdmin();
|
||||
|
||||
// 설정 정보를 받아옴 (module model 객체를 이용)
|
||||
$oModuleModel = &getModel('module');
|
||||
$config = $oModuleModel->getModuleConfig('pagemaker');
|
||||
Context::set('config',$config);
|
||||
|
||||
// 템플릿 파일 지정
|
||||
$this->setTemplateFile('page_config');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 선택된 페이지의 정보 출력
|
||||
**/
|
||||
function dispAdminPageInfo() {
|
||||
// 관리자 관련 정보 세팅
|
||||
$this->initAdmin();
|
||||
|
||||
// GET parameter에서 module_srl을 가져옴
|
||||
$module_srl = Context::get('module_srl');
|
||||
|
||||
// module model 객체 생성
|
||||
if($module_srl) {
|
||||
$oModuleModel = &getModel('module');
|
||||
$module_info = $oModuleModel->getModuleInfoByModuleSrl($module_srl);
|
||||
if($module_info->module_srl == $module_srl) Context::set('module_info',$module_info);
|
||||
else {
|
||||
unset($module_info);
|
||||
unset($module_srl);
|
||||
}
|
||||
}
|
||||
|
||||
// module_srl 값이 없다면 그냥 index 페이지를 보여줌
|
||||
if(!$module_srl) return $this->dispAdminContent();
|
||||
|
||||
// 레이아웃이 정해져 있다면 레이아웃 정보를 추가해줌(layout_title, layout)
|
||||
if($module_info->layout_srl) {
|
||||
$oLayoutModel = &getModel('layout');
|
||||
$layout_info = $oLayoutModel->getLayout($module_info->layout_srl);
|
||||
$module_info->layout = $layout_info->layout;
|
||||
$module_info->layout_title = $layout_info->layout_title;
|
||||
}
|
||||
|
||||
// 템플릿 파일 지정
|
||||
$this->setTemplateFile('page_info');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 페이지 추가 폼 출력
|
||||
**/
|
||||
function dispAdminInsertPage() {
|
||||
// 관리자 관련 정보 세팅
|
||||
$this->initAdmin();
|
||||
|
||||
// 레이아웃 목록을 구해옴
|
||||
$oLayoutMode = &getModel('layout');
|
||||
$layout_list = $oLayoutMode->getLayoutList();
|
||||
Context::set('layout_list', $layout_list);
|
||||
|
||||
// GET parameter에서 module_srl을 가져옴
|
||||
$module_srl = Context::get('module_srl');
|
||||
|
||||
// module_srl이 있으면 해당 모듈의 정보를 구해서 세팅
|
||||
if($module_srl) {
|
||||
$oModuleModel = &getModel('module');
|
||||
$module_info = $oModuleModel->getModuleInfoByModuleSrl($module_srl);
|
||||
if($module_info->module_srl == $module_srl) Context::set('module_info',$module_info);
|
||||
else {
|
||||
unset($module_info);
|
||||
unset($module_srl);
|
||||
}
|
||||
}
|
||||
|
||||
// module_srl이 없으면 sequence값으로 미리 구해 놓음
|
||||
if(!$module_srl) {
|
||||
$oDB = &DB::getInstance();
|
||||
$module_srl = $oDB->getNextSequence();
|
||||
}
|
||||
Context::set('module_srl',$module_srl);
|
||||
|
||||
// 플러그인 목록을 세팅
|
||||
$oPluginModel = &getModel('plugin');
|
||||
$plugin_list = $oPluginModel->getDownloadedPluginList();
|
||||
Context::set('plugin_list', $plugin_list);
|
||||
|
||||
// 에디터 모듈의 getEditor를 호출하여 세팅
|
||||
$oEditorView = &getView('editor');
|
||||
$editor = $oEditorView->getEditor($module_srl, true);
|
||||
Context::set('editor', $editor);
|
||||
|
||||
// 템플릿 파일 지정
|
||||
$this->setTemplateFile('page_insert');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 페이지 삭제 화면 출력
|
||||
**/
|
||||
function dispAdminDeletePage() {
|
||||
// 관리자 관련 정보 세팅
|
||||
$this->initAdmin();
|
||||
|
||||
$module_srl = Context::get('module_srl');
|
||||
if(!$module_srl) return $this->dispContent();
|
||||
|
||||
$oModuleModel = &getModel('module');
|
||||
$module_info = $oModuleModel->getModuleInfoByModuleSrl($module_srl);
|
||||
Context::set('module_info',$module_info);
|
||||
|
||||
// 템플릿 파일 지정
|
||||
$this->setTemplateFile('page_delete');
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
24
modules/page/queries/getPageList.xml
Normal file
24
modules/page/queries/getPageList.xml
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
<query id="getPageList" action="select">
|
||||
<tables>
|
||||
<table name="modules" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="*" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="equal" column="module" default="pagemaker" />
|
||||
<group pipe="and">
|
||||
<condition operation="like" column="mid" var="s_mid" pipe="or" />
|
||||
<condition operation="like" column="title" var="s_title" pipe="or" />
|
||||
<condition operation="like" column="comment" var="s_comment" pipe="or" />
|
||||
<condition operation="equal" column="module" var="s_module" pipe="or" />
|
||||
<condition operation="equal" column="module_category_srl" var="s_module_category_srl" pipe="or" />
|
||||
</group>
|
||||
</conditions>
|
||||
<navigation>
|
||||
<index var="sort_index" order="desc" />
|
||||
<list_count var="list_count" default="20" />
|
||||
<page_count var="page_count" default="10" />
|
||||
<page var="page" default="1" />
|
||||
</navigation>
|
||||
</query>
|
||||
1
modules/page/tpl/content.html
Normal file
1
modules/page/tpl/content.html
Normal file
|
|
@ -0,0 +1 @@
|
|||
{$page_content}
|
||||
10
modules/page/tpl/filter/delete_page.xml
Normal file
10
modules/page/tpl/filter/delete_page.xml
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
<filter name="delete_page" module="pagemaker" act="procDeletePage">
|
||||
<form>
|
||||
<node target="module_srl" required="true" />
|
||||
</form>
|
||||
<response callback_func="completeDeletePage">
|
||||
<tag name="error" />
|
||||
<tag name="message" />
|
||||
<tag name="page" />
|
||||
</response>
|
||||
</filter>
|
||||
7
modules/page/tpl/filter/insert_config.xml
Normal file
7
modules/page/tpl/filter/insert_config.xml
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<filter name="insert_config" module="pagemaker" act="procInsertConfig" confirm_msg_code="confirm_submit">
|
||||
<form />
|
||||
<response>
|
||||
<tag name="error" />
|
||||
<tag name="message" />
|
||||
</response>
|
||||
</filter>
|
||||
22
modules/page/tpl/filter/insert_page.xml
Normal file
22
modules/page/tpl/filter/insert_page.xml
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
<filter name="insert_page" module="pagemaker" act="procInsertPage" confirm_msg_code="confirm_submit">
|
||||
<form>
|
||||
<node target="mid" required="true" filter="alpha_number" />
|
||||
<node target="browser_title" required="true" maxlength="250" />
|
||||
<node target="content" required="true" />
|
||||
</form>
|
||||
<parameter>
|
||||
<param name="page_name" target="mid" />
|
||||
<param name="module_srl" target="module_srl" />
|
||||
<param name="module_category_srl" target="module_category_srl" />
|
||||
<param name="layout_srl" target="layout_srl" />
|
||||
<param name="browser_title" target="browser_title" />
|
||||
<param name="is_default" target="is_default" />
|
||||
<param name="content" target="content" />
|
||||
</parameter>
|
||||
<response callback_func="completeInsertPage">
|
||||
<tag name="error" />
|
||||
<tag name="message" />
|
||||
<tag name="module_srl" />
|
||||
<tag name="page" />
|
||||
</response>
|
||||
</filter>
|
||||
71
modules/page/tpl/index.html
Normal file
71
modules/page/tpl/index.html
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
<!--%import("js/admin.js")-->
|
||||
|
||||
<!-- 페이지 정보 -->
|
||||
<div>
|
||||
{$lang->total_count} {number_format($total_count)},
|
||||
{$lang->page_count} : {number_format($page)} / {number_format($total_page)}
|
||||
</div>
|
||||
|
||||
|
||||
<!-- 목록 -->
|
||||
<div>
|
||||
<table>
|
||||
<tr>
|
||||
<th>{$lang->no}</th>
|
||||
<th>
|
||||
<form action="./" method="get">
|
||||
<select name="category" onchange="doChangeCategory(this, '{getUrl('module_category_srl','')}')" >
|
||||
<option value="">{$lang->category}</option>
|
||||
<!--@foreach($module_category as $key => $val)-->
|
||||
<option value="{$key}" <!--@if($module_category_srl==$key)-->selected="true"<!--@end-->>{$val->title}</option>
|
||||
<!--@end-->
|
||||
</select>
|
||||
</form>
|
||||
</th>
|
||||
<th>{$lang->mid}</th>
|
||||
<th>{$lang->browser_title}</th>
|
||||
<th>{$lang->is_default}</th>
|
||||
<th>{$lang->regdate}</th>
|
||||
<th>{$lang->cmd_move}</th>
|
||||
<th>{$lang->cmd_delete}</th>
|
||||
</tr>
|
||||
<!--@foreach($page_list as $no => $val)-->
|
||||
<tr>
|
||||
<td>{$no}</td>
|
||||
<td>
|
||||
<!--@if(!$val->module_category_srl)-->
|
||||
{$lang->not_exists}
|
||||
<!--@else-->
|
||||
{$module_category[$val->module_category_srl]->title}
|
||||
<!--@end-->
|
||||
</td>
|
||||
<td><a href="{getUrl('act','dispAdminPageInfo','module_srl',$val->module_srl)}">{$val->mid}</a></td>
|
||||
<td>{$val->browser_title}</td>
|
||||
<td>{$val->is_default}</td>
|
||||
<td>{zdate($val->regdate,"Y-m-d")}</td>
|
||||
<td><a href="./?mid={$val->mid}" target="_blank">{$lang->cmd_move}</a></td>
|
||||
<td><!--@if($val->is_default!='Y')--><a href="{getUrl('act','dispAdminDeletePage','module_srl', $val->module_srl)}">{$lang->cmd_delete}</a><!--@end--></td>
|
||||
</tr>
|
||||
<!--@end-->
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!-- 버튼 -->
|
||||
<div>
|
||||
[<a href="{getUrl('act','dispAdminInsertPage','module_srl','')}">{$lang->cmd_make}</a>]
|
||||
</div>
|
||||
|
||||
<!-- 페이지 네비게이션 -->
|
||||
<div>
|
||||
<a href="{getUrl('page','','module_srl','')}">[{$lang->first_page}]</a>
|
||||
|
||||
<!--@while($page_no = $page_navigation->getNextPage())-->
|
||||
<!--@if($page == $page_no)-->
|
||||
{$page_no}
|
||||
<!--@else-->
|
||||
<a href="{getUrl('page',$page_no,'module_srl','')}">[{$page_no}]</a>
|
||||
<!--@end-->
|
||||
<!--@end-->
|
||||
|
||||
<a href="{getUrl('page',$page_navigation->last_page,'module_srl','')}">[{$lang->last_page}]</a>
|
||||
</div>
|
||||
42
modules/page/tpl/js/admin.js
Normal file
42
modules/page/tpl/js/admin.js
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
/**
|
||||
* @file : modules/pagemaker/js/admin.js
|
||||
* @author : zero <zero@nzeo.com>
|
||||
* @desc : pagemaker 모듈의 관리자용 javascript
|
||||
**/
|
||||
|
||||
/* 모듈 생성 후 */
|
||||
function completeInsertPage(ret_obj) {
|
||||
var error = ret_obj['error'];
|
||||
var message = ret_obj['message'];
|
||||
|
||||
var page = ret_obj['page'];
|
||||
var module_srl = ret_obj['module_srl'];
|
||||
|
||||
alert(message);
|
||||
|
||||
var url = "./?module=admin&mo=pagemaker&module_srl="+module_srl+"&act=dispAdminPageInfo";
|
||||
if(page) url += "&page="+page;
|
||||
|
||||
location.href = url;
|
||||
}
|
||||
|
||||
|
||||
/* 모듈 삭제 후 */
|
||||
function completeDeletePage(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=dispAdminContent";
|
||||
if(page) url += "&page="+page;
|
||||
|
||||
location.href = url;
|
||||
}
|
||||
|
||||
/* 카테고리 이동 */
|
||||
function doChangeCategory(sel_obj, url) {
|
||||
var module_category_srl = sel_obj.options[sel_obj.selectedIndex].value;
|
||||
if(!module_category_srl) location.href=url;
|
||||
else location.href=url+'&module_category_srl='+module_category_srl;
|
||||
}
|
||||
18
modules/page/tpl/page_config.html
Normal file
18
modules/page/tpl/page_config.html
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
<!--%import("filter/insert_config.xml")-->
|
||||
|
||||
<form action="./" method="get" onsubmit="return procFilter(this, insert_config)">
|
||||
<table border="1">
|
||||
<tr>
|
||||
<th rowspan="2">{$lang->test}</th>
|
||||
<td><input type="text" name="test" value="{$config->test}" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{$lang->about_test}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<input type="submit" value="{$lang->cmd_registration}" accesskey="s" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
28
modules/page/tpl/page_delete.html
Normal file
28
modules/page/tpl/page_delete.html
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
<!--%import("filter/delete_page.xml")-->
|
||||
<!--%import("js/admin.js")-->
|
||||
|
||||
<form action="./" method="get" onsubmit="return procFilter(this, delete_page)">
|
||||
<input type="hidden" name="page" value="{$page}" />
|
||||
<input type="hidden" name="module_srl" value="{$module_info->module_srl}" />
|
||||
<table>
|
||||
<tr>
|
||||
<th colspan="2">{$lang->confirm_delete}</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>{$lang->module_name}</th>
|
||||
<td>{$module_info->mid}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>{$lang->module}</th>
|
||||
<td>{$module_info->module}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<input type="submit" value="{$lang->cmd_delete}" />
|
||||
<input type="button" value="{$lang->cmd_back}" onclick="location.href='{getUrl('act','dispAdminContent')}'" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</form>
|
||||
|
||||
38
modules/page/tpl/page_info.html
Normal file
38
modules/page/tpl/page_info.html
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
<table border="1" width="100%">
|
||||
<col width="120" />
|
||||
<col width="*" />
|
||||
<tr>
|
||||
<th>{$lang->category}</th>
|
||||
<td>
|
||||
<!--@if(!$module_info->module_category_srl)-->
|
||||
{$lang->not_exists}
|
||||
<!--@else-->
|
||||
{$module_category[$module_info->module_category_srl]->title}
|
||||
<!--@end-->
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>{$lang->layout}</th>
|
||||
<td>
|
||||
<!--@if($module_info->layout_srl)-->
|
||||
{$module_info->layout_title} ({$module_info->layout})
|
||||
<!--@else-->
|
||||
{$lang->not_exists}
|
||||
<!--@end-->
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>{$lang->browser_title}</th>
|
||||
<td>{$module_info->browser_title}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>{$lang->content}</th>
|
||||
<td>{$module_info->content}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<input type="button" value="{$lang->cmd_list}" onclick="location.href='{getUrl('act','dispAdminContent')}'" />
|
||||
<input type="button" value="{$lang->cmd_modify}" onclick="location.href='{getUrl('act','dispAdminInsertPage')}'" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
94
modules/page/tpl/page_insert.html
Normal file
94
modules/page/tpl/page_insert.html
Normal file
|
|
@ -0,0 +1,94 @@
|
|||
<!--%import("filter/insert_page.xml")-->
|
||||
<!--%import("js/admin.js")-->
|
||||
|
||||
<div>
|
||||
<!--@if(!$module_srl)-->
|
||||
{$lang->msg_new_module}
|
||||
<!--@else-->
|
||||
{$lang->msg_update_module}
|
||||
<!--@end-->
|
||||
</div>
|
||||
|
||||
<form action="./" method="post" onsubmit="return procFilter(this, insert_page)" enctype="multipart/form-data">
|
||||
<input type="hidden" name="module" value="pagemaker" />
|
||||
<input type="hidden" name="page" value="{$page}" />
|
||||
<input type="hidden" name="module_srl" value="{$module_srl}" />
|
||||
<input type="hidden" name="content" value="{htmlspecialchars($module_info->content)}" />
|
||||
<!--@if($module_info->is_default=='Y')-->
|
||||
<input type="hidden" name="is_default" value="Y" />
|
||||
<!--@end-->
|
||||
<table width="100%" border="1">
|
||||
<tr>
|
||||
<th rowspan="2">{$lang->mid}</th>
|
||||
<td><input type="text" name="mid" value="{$module_info->mid}" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{$lang->about_mid}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th rowspan="2">{$lang->category}</th>
|
||||
<td>
|
||||
<select name="module_category_srl">
|
||||
<option value="0">{$lang->notuse}</option>
|
||||
<!--@foreach($module_category as $key => $val)-->
|
||||
<option value="{$key}" <!--@if($module_info->module_category_srl==$key)-->selected="true"<!--@end-->>{$val->title}</option>
|
||||
<!--@end-->
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{$lang->about_category}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th rowspan="2">{$lang->browser_title}</th>
|
||||
<td><input type="text" name="browser_title" value="{$module_info->browser_title}" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{$lang->about_browser_title}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th rowspan="2">{$lang->layout}</th>
|
||||
<td>
|
||||
<select name="layout_srl">
|
||||
<option value="0">{$lang->notuse}</option>
|
||||
<!--@foreach($layout_list as $key => $val)-->
|
||||
<option value="{$val->layout_srl}" <!--@if($module_info->layout_srl==$val->layout_srl)-->selected="true"<!--@end-->>{$val->title} ({$val->layout})</option>
|
||||
<!--@end-->
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{$lang->about_layout}</td>
|
||||
</tr>
|
||||
|
||||
<!--@if($module_info->is_default!='Y')-->
|
||||
<tr>
|
||||
<th rowspan="2">{$lang->is_default}</th>
|
||||
<td><input type="checkbox" name="is_default" value="Y" <!--@if($module_info->is_default=='Y')-->checked="true"<!--@end-->/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{$lang->about_default}</td>
|
||||
</tr>
|
||||
<!--@end-->
|
||||
<tr>
|
||||
<th>{$lang->plugin}</th>
|
||||
<td>
|
||||
<!--@foreach($plugin_list as $plugin)-->
|
||||
<a href="#" onclick="winopen('./?module=plugin&act=dispGenerateCodeInPage&selected_plugin={$plugin->plugin}&module_srl={$module_srl}','GenerateCodeInPage','left=10,top10,width=10,height=10,resizable=no,scrollbars=no,toolbars=no');return false;">{$plugin->title}</a>
|
||||
<!--@end-->
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>{$lang->content}</th>
|
||||
<td>
|
||||
{$editor}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<input type="button" value="{$lang->cmd_cancel}" onclick="location.href='{getUrl('act','dispAdminPageInfo','module_srl',$module_srl)}'" />
|
||||
<input type="submit" value="{$lang->cmd_registration}" accesskey="s" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
Loading…
Add table
Add a link
Reference in a new issue