mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-05-08 19:42:15 +09:00
css 및 js 호출순서 조정기능 추가
git-svn-id: http://xe-core.googlecode.com/svn/sandbox@5785 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
4f380d9c48
commit
61851f1dfe
2149 changed files with 109090 additions and 18689 deletions
|
|
@ -1,17 +1,11 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<module>
|
||||
<grants>
|
||||
<grant name="view" default="guest">
|
||||
<title xml:lang="ko">열람</title>
|
||||
<title xml:lang="zh-CN">查看</title>
|
||||
<title xml:lang="jp">閲覧</title>
|
||||
<title xml:lang="en">view</title>
|
||||
<title xml:lang="zh-TW">檢視</title>
|
||||
</grant>
|
||||
</grants>
|
||||
<grants />
|
||||
<permissions />
|
||||
<actions>
|
||||
<action name="dispOpageIndex" type="view" index="true" />
|
||||
<action name="dispOpageAdminContent" type="view" admin_index="true" standalone="true" />
|
||||
<action name="dispOpageAdminGrantInfo" type="view" standalone="true" />
|
||||
<action name="dispOpageAdminModuleConfig" type="view" standalone="true" />
|
||||
<action name="dispOpageAdminInfo" type="view" standalone="true" />
|
||||
<action name="dispOpageAdminInsert" type="view" standalone="true" />
|
||||
|
|
|
|||
|
|
@ -5,11 +5,11 @@
|
|||
* @brief 외부 페이지(opage) 모듈의 기본 언어팩
|
||||
**/
|
||||
|
||||
$lang->opage = "외부 페이지";
|
||||
$lang->opage_path = "외부 문서 위치";
|
||||
$lang->opage_caching_interval = "캐싱 시간 설정";
|
||||
$lang->opage = '외부 페이지';
|
||||
$lang->opage_path = '외부 문서 위치';
|
||||
$lang->opage_caching_interval = '캐싱 시간 설정';
|
||||
|
||||
$lang->about_opage = "XE가 아닌 외부 html 또는 php파일을 XE에서 사용할 수 있도록 하는 모듈입니다.<br />절대경로, 상대경로를 이용할 수 있으며 http:// 로 시작할 경우 서버 외부의 페이지도 표시할 수 있습니다";
|
||||
$lang->about_opage_path= "외부문서의 위치를 입력해주세요.<br />/path1/path2/sample.php 와 같이 절대경로나 ../path2/sample.php와 같은 상대경로 모두 사용가능합니다.<br />http://url/sample.php 와 같이 사용하면 결과를 받아다가 출력을 하게 됩니다.<br />현재 XE가 설치된 절대경로는 다음과 같습니다.<br />";
|
||||
$lang->about_opage_caching_interval = "단위는 분이며 정해진 시간동안은 임시 저장한 데이터를 출력하도록 합니다.<br />다른 서버의 정보를 출력하거나 데이터 출력시 많은 자원이 필요하면 원하시는 분 단위로 캐싱하시는 것을 추천해드립니다.<br />0 으로 하시면 캐싱을 하지 않습니다";
|
||||
$lang->about_opage = 'XE가 아닌 외부 html 또는 php파일을 XE에서 사용할 수 있도록 하는 모듈입니다.<br />절대경로, 상대경로를 이용할 수 있으며 http:// 로 시작할 경우 서버 외부의 페이지도 표시할 수 있습니다';
|
||||
$lang->about_opage_path= '외부문서의 위치를 입력해주세요.<br />/path1/path2/sample.php 와 같이 절대경로나 ../path2/sample.php와 같은 상대경로 모두 사용가능합니다.<br />http://url/sample.php 와 같이 사용하면 결과를 받아다가 출력을 하게 됩니다.<br />현재 XE가 설치된 절대경로는 다음과 같습니다.<br />';
|
||||
$lang->about_opage_caching_interval = '단위는 분이며 정해진 시간동안은 임시 저장한 데이터를 출력하도록 합니다.<br />다른 서버의 정보를 출력하거나 데이터 출력시 많은 자원이 필요하면 원하시는 분 단위로 캐싱하시는 것을 추천해드립니다.<br />0 으로 하시면 캐싱을 하지 않습니다';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
$lang->opage_path = "外部頁面路徑";
|
||||
$lang->opage_caching_interval = "暫存時間設置";
|
||||
|
||||
$lang->about_opage = "此模組可把外部HTML或PHP檔案插入到 XE中的模組。<br />可以使用絕對路徑及相對路徑。而且使用以http://開頭的網址時,可以把外部主機中的頁面插入到XE當中。";
|
||||
$lang->about_opage_path= "請輸入外部檔案路徑。<br />可以使用如同 /path1/path2/sample.php的絕對路徑或如 ../path2/sample.php的相對路徑。<br />如使用http://url/sample.php之類的地址,可以把此頁面的輸出結果顯示到XE內部的指定位置。<br />目前安裝的XE絕對路徑如下:<br />";
|
||||
$lang->about_opage_caching_interval = "單位為分。暫存時間內頁面將輸出臨時儲存的資料。<br />輸出外部主機訊息或資料時,如消耗資源很大,盡量把暫存時間設置大一點。<br />0 表示不暫存。";
|
||||
$lang->about_opage = "此模組可把外部HTML或PHP檔案插入到XE中的模組。<br />可以使用絕對路徑及相對路徑。而且使用以『http://』開頭的網址時,可以把外部主機中的頁面插入到XE當中。";
|
||||
$lang->about_opage_path= "請輸入外部檔案路徑。<br />可以使用像『/path1/path2/sample.php』的絕對路徑或是『../path2/sample.php』的相對路徑。<br />如果是用『http://url/sample.php』之類的網址,會將此頁面的結果顯示到XE內部的指定位置。<br />目前安裝的XE絕對路徑如下:<br />";
|
||||
$lang->about_opage_caching_interval = "單位為分。暫存時間內頁面將輸出臨時儲存的資料。<br />輸出外部主機訊息或資料時,如消耗資源很大,盡量把暫存時間設大一點。<br />『0』表示不暫存。";
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -17,64 +17,39 @@
|
|||
* @brief 외부페이지 추가
|
||||
**/
|
||||
function procOpageAdminInsert() {
|
||||
// module 모듈의 controller 객체 생성
|
||||
// module 모듈의 model/controller 객체 생성
|
||||
$oModuleController = &getController('module');
|
||||
$oModuleModel = &getModel('module');
|
||||
|
||||
// 기본 모듈 정보로 등록된 변수 구함
|
||||
$module_args = Context::gets('module_srl','module_category_srl','browser_title','is_default','layout_srl');
|
||||
$module_args->module = 'opage';
|
||||
$module_args->mid = Context::get('opage_name');
|
||||
if($module_args->is_default!='Y') $module_args->is_default = 'N';
|
||||
|
||||
// 외부 문서 위치, 캐싱 시간은 extra_vars에 저장
|
||||
$config_args = Context::gets('path','caching_interval');
|
||||
$module_args->extra_vars = serialize($config_args);
|
||||
// 게시판 모듈의 정보 설정
|
||||
$args = Context::getRequestVars();
|
||||
$args->module = 'opage';
|
||||
$args->mid = $args->opage_name;
|
||||
unset($args->opage_name);
|
||||
|
||||
// module_srl이 넘어오면 원 모듈이 있는지 확인
|
||||
if($module_args->module_srl) {
|
||||
$oModuleModel = &getModel('module');
|
||||
$module_info = $oModuleModel->getModuleInfoByModuleSrl($module_args->module_srl);
|
||||
if($args->module_srl) {
|
||||
$module_info = $oModuleModel->getModuleInfoByModuleSrl($args->module_srl);
|
||||
if($module_info->module_srl != $args->module_srl) unset($args->module_srl);
|
||||
}
|
||||
|
||||
// is_default=='Y' 이면 기본 모듈을 제거
|
||||
if($module_args->is_default=='Y') $oModuleController->clearDefaultModule();
|
||||
|
||||
// module_srl의 값에 따라 insert/update
|
||||
if($module_info->module_srl != $module_args->module_srl) {
|
||||
$output = $oModuleController->insertModule($module_args);
|
||||
if(!$args->module_srl) {
|
||||
$output = $oModuleController->insertModule($args);
|
||||
$msg_code = 'success_registed';
|
||||
$module_info->module_srl = $output->get('module_srl');
|
||||
} else {
|
||||
$output = $oModuleController->updateModule($module_args);
|
||||
$output = $oModuleController->updateModule($args);
|
||||
$msg_code = 'success_updated';
|
||||
|
||||
// 캐시 파일 삭제
|
||||
$cache_file = sprintf("./files/cache/opage/%d.cache.php", $module_info->module_srl);
|
||||
if(file_exists($cache_file)) FileHandler::removeFile($cache_file);
|
||||
}
|
||||
|
||||
// 등록 실패시 에러 반환
|
||||
if(!$output->toBool()) return $output;
|
||||
|
||||
/**
|
||||
* 권한 저장
|
||||
**/
|
||||
// 현 모듈의 권한 목록을 가져옴
|
||||
$grant_list = $this->xml_info->grant;
|
||||
|
||||
if(count($grant_list)) {
|
||||
foreach($grant_list as $key => $val) {
|
||||
$group_srls = Context::get($key);
|
||||
if($group_srls) $arr_grant[$key] = explode('|@|',$group_srls);
|
||||
}
|
||||
$grants = serialize($arr_grant);
|
||||
}
|
||||
|
||||
$oModuleController = &getController('module');
|
||||
$oModuleController->updateModuleGrant($module_info->module_srl, $grants);
|
||||
|
||||
// 캐시 파일 삭제
|
||||
$cache_file = sprintf("./files/cache/opage/%d.cache.php", $module_info->module_srl);
|
||||
if(file_exists($cache_file)) FileHandler::removeFile($cache_file);
|
||||
|
||||
// 등록 성공후 return될 메세지 정리
|
||||
$this->add("module_srl", $module_args->module_srl);
|
||||
$this->add("module_srl", $output->get('module_srl'));
|
||||
$this->add("opage", Context::get('opage'));
|
||||
$this->setMessage($msg_code);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,153 +1,153 @@
|
|||
<?php
|
||||
/**
|
||||
* @class opageAdminView
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief opage 모듈의 admin view 클래스
|
||||
**/
|
||||
|
||||
class opageAdminView extends opage {
|
||||
|
||||
var $module_srl = 0;
|
||||
var $list_count = 20;
|
||||
var $page_count = 10;
|
||||
|
||||
/**
|
||||
* @brief 초기화
|
||||
**/
|
||||
function init() {
|
||||
// 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);
|
||||
|
||||
// 템플릿 경로 구함 (opage의 경우 tpl에 관리자용 템플릿 모아놓음)
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 외부페이지 관리 목록 보여줌
|
||||
**/
|
||||
function dispOpageAdminContent() {
|
||||
$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 = executeQuery('opage.getOpageList', $args);
|
||||
|
||||
// 템플릿에 쓰기 위해서 context::set
|
||||
Context::set('total_count', $output->total_count);
|
||||
Context::set('total_page', $output->total_page);
|
||||
Context::set('page', $output->page);
|
||||
Context::set('opage_list', $output->data);
|
||||
Context::set('page_navigation', $output->page_navigation);
|
||||
|
||||
// 템플릿 파일 지정
|
||||
$this->setTemplateFile('index');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 선택된 외부페이지의 정보 출력
|
||||
**/
|
||||
function dispOpageAdminInfo() {
|
||||
// GET parameter에서 module_srl을 가져옴
|
||||
$module_srl = Context::get('module_srl');
|
||||
|
||||
// module model 객체 생성
|
||||
if($module_srl) {
|
||||
$oOpageModel = &getModel('opage');
|
||||
$module_info = $oOpageModel->getOpage($module_srl);
|
||||
if(!$module_info) {
|
||||
unset($module_info);
|
||||
unset($module_srl);
|
||||
} else {
|
||||
Context::set('module_info',$module_info);
|
||||
}
|
||||
|
||||
// module_srl 값이 없다면 그냥 index 외부페이지를 보여줌
|
||||
} else {
|
||||
return $this->dispOpageAdminContent();
|
||||
}
|
||||
|
||||
// 레이아웃이 정해져 있다면 레이아웃 정보를 추가해줌(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;
|
||||
}
|
||||
|
||||
// 레이아웃 목록을 구해옴
|
||||
$oLayoutMode = &getModel('layout');
|
||||
$layout_list = $oLayoutMode->getLayoutList();
|
||||
Context::set('layout_list', $layout_list);
|
||||
|
||||
|
||||
// 템플릿 파일 지정
|
||||
$this->setTemplateFile('opage_info');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 외부페이지 추가 폼 출력
|
||||
**/
|
||||
function dispOpageAdminInsert() {
|
||||
// 권한 그룹의 목록을 가져온다
|
||||
$oMemberModel = &getModel('member');
|
||||
$group_list = $oMemberModel->getGroups();
|
||||
Context::set('group_list', $group_list);
|
||||
|
||||
// module.xml에서 권한 관련 목록을 구해옴
|
||||
$grant_list = $this->xml_info->grant;
|
||||
Context::set('grant_list', $grant_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) $module_srl = getNextSequence();
|
||||
Context::set('module_srl',$module_srl);
|
||||
|
||||
// 레이아웃 목록을 구해옴
|
||||
$oLayoutMode = &getModel('layout');
|
||||
$layout_list = $oLayoutMode->getLayoutList();
|
||||
Context::set('layout_list', $layout_list);
|
||||
|
||||
|
||||
// 템플릿 파일 지정
|
||||
$this->setTemplateFile('opage_insert');
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief 외부페이지 삭제 화면 출력
|
||||
**/
|
||||
function dispOpageAdminDelete() {
|
||||
$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('opage_delete');
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
/**
|
||||
* @class opageAdminView
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief opage 모듈의 admin view 클래스
|
||||
**/
|
||||
|
||||
class opageAdminView extends opage {
|
||||
|
||||
var $module_srl = 0;
|
||||
var $list_count = 20;
|
||||
var $page_count = 10;
|
||||
|
||||
/**
|
||||
* @brief 초기화
|
||||
**/
|
||||
function init() {
|
||||
// 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);
|
||||
|
||||
// 템플릿 경로 구함 (opage의 경우 tpl에 관리자용 템플릿 모아놓음)
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 외부페이지 관리 목록 보여줌
|
||||
**/
|
||||
function dispOpageAdminContent() {
|
||||
$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 = executeQuery('opage.getOpageList', $args);
|
||||
|
||||
// 템플릿에 쓰기 위해서 context::set
|
||||
Context::set('total_count', $output->total_count);
|
||||
Context::set('total_page', $output->total_page);
|
||||
Context::set('page', $output->page);
|
||||
Context::set('opage_list', $output->data);
|
||||
Context::set('page_navigation', $output->page_navigation);
|
||||
|
||||
// 템플릿 파일 지정
|
||||
$this->setTemplateFile('index');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 선택된 외부페이지의 정보 출력
|
||||
**/
|
||||
function dispOpageAdminInfo() {
|
||||
// GET parameter에서 module_srl을 가져옴
|
||||
$module_srl = Context::get('module_srl');
|
||||
|
||||
// module model 객체 생성
|
||||
if($module_srl) {
|
||||
$oOpageModel = &getModel('opage');
|
||||
$module_info = $oOpageModel->getOpage($module_srl);
|
||||
if(!$module_info) {
|
||||
unset($module_info);
|
||||
unset($module_srl);
|
||||
} else {
|
||||
Context::set('module_info',$module_info);
|
||||
}
|
||||
|
||||
// module_srl 값이 없다면 그냥 index 외부페이지를 보여줌
|
||||
} else {
|
||||
return $this->dispOpageAdminContent();
|
||||
}
|
||||
|
||||
// 레이아웃이 정해져 있다면 레이아웃 정보를 추가해줌(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;
|
||||
}
|
||||
|
||||
// 레이아웃 목록을 구해옴
|
||||
$oLayoutMode = &getModel('layout');
|
||||
$layout_list = $oLayoutMode->getLayoutList();
|
||||
Context::set('layout_list', $layout_list);
|
||||
|
||||
|
||||
// 템플릿 파일 지정
|
||||
$this->setTemplateFile('opage_info');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 외부페이지 추가 폼 출력
|
||||
**/
|
||||
function dispOpageAdminInsert() {
|
||||
// 권한 그룹의 목록을 가져온다
|
||||
$oMemberModel = &getModel('member');
|
||||
$group_list = $oMemberModel->getGroups();
|
||||
Context::set('group_list', $group_list);
|
||||
|
||||
// module.xml에서 권한 관련 목록을 구해옴
|
||||
$grant_list = $this->xml_info->grant;
|
||||
Context::set('grant_list', $grant_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) $module_srl = getNextSequence();
|
||||
Context::set('module_srl',$module_srl);
|
||||
|
||||
// 레이아웃 목록을 구해옴
|
||||
$oLayoutMode = &getModel('layout');
|
||||
$layout_list = $oLayoutMode->getLayoutList();
|
||||
Context::set('layout_list', $layout_list);
|
||||
|
||||
|
||||
// 템플릿 파일 지정
|
||||
$this->setTemplateFile('opage_insert');
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief 외부페이지 삭제 화면 출력
|
||||
**/
|
||||
function dispOpageAdminDelete() {
|
||||
$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('opage_delete');
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
|
|
@ -11,13 +11,6 @@
|
|||
* @brief 설치시 추가 작업이 필요할시 구현
|
||||
**/
|
||||
function moduleInstall() {
|
||||
// action forward에 등록 (관리자 모드에서 사용하기 위함)
|
||||
$oModuleController = &getController('module');
|
||||
$oModuleController->insertActionForward('opage', 'view', 'dispOpageIndex');
|
||||
$oModuleController->insertActionForward('opage', 'view', 'dispOpageAdminContent');
|
||||
$oModuleController->insertActionForward('opage', 'view', 'dispOpageAdminInsert');
|
||||
$oModuleController->insertActionForward('opage', 'view', 'dispOpageAdminDelete');
|
||||
|
||||
// opage 에서 사용할 cache디렉토리 생성
|
||||
FileHandler::makeDir('./files/cache/opage');
|
||||
|
||||
|
|
@ -28,14 +21,6 @@
|
|||
* @brief 설치가 이상이 없는지 체크하는 method
|
||||
**/
|
||||
function checkUpdate() {
|
||||
$oModuleModel = &getModel('module');
|
||||
|
||||
// 외부페이지 모듈을 업그레이드로 설치하였을 경우 필요한 action 값의 여부 체크 (2007. 09. 17)
|
||||
if(!$oModuleModel->getActionForward('dispOpageIndex')) return true;
|
||||
if(!$oModuleModel->getActionForward('dispOpageAdminContent')) return true;
|
||||
if(!$oModuleModel->getActionForward('dispOpageAdminInsert')) return true;
|
||||
if(!$oModuleModel->getActionForward('dispOpageAdminDelete')) return true;
|
||||
|
||||
// cache 디렉토리가 없으면 바로 디렉토리 생성
|
||||
if(!is_dir('./files/cache/opage')) FileHandler::makeDir('./files/cache/opage');
|
||||
|
||||
|
|
@ -46,23 +31,6 @@
|
|||
* @brief 업데이트 실행
|
||||
**/
|
||||
function moduleUpdate() {
|
||||
$oModuleModel = &getModel('module');
|
||||
$oModuleController = &getController('module');
|
||||
|
||||
// 외부페이지 모듈을 업그레이드로 설치하였을 경우 필요한 action 값 등록
|
||||
if(!$oModuleModel->getActionForward('dispOpageIndex'))
|
||||
$oModuleController->insertActionForward('opage', 'view', 'dispOpageIndex');
|
||||
|
||||
if(!$oModuleModel->getActionForward('dispOpageAdminContent'))
|
||||
$oModuleController->insertActionForward('opage', 'view', 'dispOpageAdminContent');
|
||||
|
||||
if(!$oModuleModel->getActionForward('dispOpageAdminInsert'))
|
||||
$oModuleController->insertActionForward('opage', 'view', 'dispOpageAdminInsert');
|
||||
|
||||
if(!$oModuleModel->getActionForward('dispOpageAdminDelete'))
|
||||
$oModuleController->insertActionForward('opage', 'view', 'dispOpageAdminDelete');
|
||||
|
||||
|
||||
return new Object(0, 'success_updated');
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -19,9 +19,6 @@
|
|||
* @brief 일반 요청시 출력
|
||||
**/
|
||||
function dispOpageIndex() {
|
||||
// 권한 체크
|
||||
if(!$this->grant->view) return $this->stop('msg_not_permitted');
|
||||
|
||||
// 외부 페이지 모듈의 정보를 구함
|
||||
$oOpageModel = &getModel('opage');
|
||||
$module_info = $oOpageModel->getOpage($this->module_srl);
|
||||
|
|
|
|||
3
modules/opage/tpl/grant_list.html
Normal file
3
modules/opage/tpl/grant_list.html
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
<!--#include("./header.html")-->
|
||||
|
||||
{$grant_content}
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
<!--%import("js/blog_admin.js")-->
|
||||
<!--%import("js/opage_admin.js")-->
|
||||
<h3>{$lang->opage} <span class="gray">{$lang->cmd_management}</span></h3>
|
||||
<h3 class="xeAdmin">{$lang->opage} <span class="gray">{$lang->cmd_management}</span></h3>
|
||||
|
||||
<div class="infoText">{nl2br($lang->about_opage)}</div>
|
||||
|
|
|
|||
|
|
@ -2,21 +2,21 @@
|
|||
<!--#include("header.html")-->
|
||||
|
||||
<!-- 정보 -->
|
||||
<div class="summary">
|
||||
<strong>Total</strong> <em>{number_format($total_count)}</em>, page <strong>{number_format($opage)}</strong>/{number_format($total_opage)}
|
||||
</div>
|
||||
|
||||
<form action="./" method="get" onsubmit="return doChangeCategory(this);" id="fo_list">
|
||||
|
||||
<!-- 목록 -->
|
||||
<table cellspacing="0" class="adminTable">
|
||||
<table cellspacing="0" class="rowTable">
|
||||
<caption>Total {number_format($total_count)}, page {number_format($opage)}/{number_format($total_opage)}</caption>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col"><div>{$lang->no}</div></th>
|
||||
<th scope="col"><div><input type="checkbox" onclick="XE.checkboxToggleAll(); return false;" /></div></th>
|
||||
<th scope="col">
|
||||
<div>
|
||||
<form action="./" method="get" onsubmit="return doChangeCategory(this);">
|
||||
<input type="hidden" name="module" value="{$module}" />
|
||||
<input type="hidden" name="act" value="{$act}" />
|
||||
<select name="module_category_srl" class="w120">
|
||||
<select name="module_category_srl" class="fullWidth">
|
||||
<option value="">{$lang->module_category}</option>
|
||||
<!--@foreach($module_category as $key => $val)-->
|
||||
<option value="{$key}" <!--@if($module_category_srl==$key)-->selected="selected"<!--@end-->>{$val->title}</option>
|
||||
|
|
@ -25,7 +25,6 @@
|
|||
<option value="-1">{$lang->cmd_management}</option>
|
||||
</select>
|
||||
<input type="submit" name="go_button" id="go_button" value="GO" class="buttonTypeGo" />
|
||||
</form>
|
||||
</div>
|
||||
</th>
|
||||
<th scope="col" class="half_wide"><div>{$lang->mid}</div></th>
|
||||
|
|
@ -39,6 +38,7 @@
|
|||
<!--@foreach($opage_list as $no => $val)-->
|
||||
<tr class="row{$cycle_idx}">
|
||||
<td class="number center">{$no}</td>
|
||||
<td class="center"><input type="checkbox" name="cart" value="{$val->module_srl}" /></td>
|
||||
<td>
|
||||
<!--@if(!$val->module_category_srl)-->
|
||||
{$lang->not_exists}
|
||||
|
|
@ -46,22 +46,29 @@
|
|||
{$module_category[$val->module_category_srl]->title}
|
||||
<!--@end-->
|
||||
</td>
|
||||
<td><a href="{getUrl('act','dispOpageAdminInsert','module_srl',$val->module_srl)}">{htmlspecialchars($val->mid)}</a></td>
|
||||
<td><a href="{getUrl('act','dispOpageAdminInsert','module_srl',$val->module_srl)}">{htmlspecialchars($val->browser_title)}</a></td>
|
||||
<td class="date nowrap center">{zdate($val->regdate,"Y-m-d")}</td>
|
||||
<td class="view center"><a href="{getUrl('','mid',$val->mid)}" onclick="window.open(this.href); return false;">{$lang->cmd_view}</a></td>
|
||||
<td class="copy center"><a href="./?module=module&act=dispModuleAdminCopyModule&module_srl={$val->module_srl}" onclick="popopen(this.href);return false;">{$lang->cmd_copy}</a></td>
|
||||
<td class="delete center"><!--@if($val->is_default!='Y')--><a href="{getUrl('act','dispOpageAdminDelete','module_srl', $val->module_srl)}">{$lang->cmd_delete}</a><!--@end--></td>
|
||||
<td>{htmlspecialchars($val->mid)}</td>
|
||||
<td><a href="{getUrl('','mid',$val->mid)}" onclick="window.open(this.href); return false;">{htmlspecialchars($val->browser_title)}</a></td>
|
||||
<td>{zdate($val->regdate,"Y-m-d")}</td>
|
||||
<td><a href="{getUrl('act','dispOpageAdminInsert','module_srl',$val->module_srl)}" class="buttonSet buttonSetting"><span>{$lang->cmd_setup}</a></span></td>
|
||||
<td><a href="./?module=module&act=dispModuleAdminCopyModule&module_srl={$val->module_srl}" onclick="popopen(this.href);return false;" class="buttonSet buttonCopy"><span>{$lang->cmd_copy}</span></a></td>
|
||||
<td><!--@if($val->is_default!='Y')--><a href="{getUrl('act','dispOpageAdminDelete','module_srl', $val->module_srl)}" class="buttonSet buttonDelete"><span>{$lang->cmd_delete}</span></a><!--@end--></td>
|
||||
</tr>
|
||||
<!--@end-->
|
||||
<tr>
|
||||
<td colspan="8" class="right">
|
||||
<a href="{getUrl('act','dispOpageAdminInsert','module_srl','')}" class="button"><span>{$lang->cmd_make}</span></a>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<!-- 버튼 -->
|
||||
<div class="clear">
|
||||
<div class="fl">
|
||||
<a href="{getUrl('','module','module','act','dispModuleAdminModuleSetup')}" onclick="doCartSetup(this.href); return false;" class="button green"><span>{$lang->cmd_setup}</span></a>
|
||||
<a href="{getUrl('','module','module','act','dispModuleAdminModuleGrantSetup')}" onclick="doCartSetup(this.href); return false;" class="button blue"><span>{$lang->cmd_manage_grant}</span></a>
|
||||
</div>
|
||||
<div class="fr ">
|
||||
<a href="{getUrl('act','dispOpageAdminInsert','module_srl','')}" class="button black strong"><span>{$lang->cmd_make}</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<!-- 페이지 네비게이션 -->
|
||||
<div class="pagination a1">
|
||||
|
|
|
|||
|
|
@ -47,3 +47,16 @@ function doChangeCategory(fo_obj) {
|
|||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 일괄 설정 */
|
||||
function doCartSetup(url) {
|
||||
var module_srl = new Array();
|
||||
jQuery('#fo_list input[name=cart]:checked').each(function() {
|
||||
module_srl[module_srl.length] = jQuery(this).val();
|
||||
});
|
||||
|
||||
if(module_srl.length<1) return;
|
||||
|
||||
url += "&module_srls="+module_srl.join(',');
|
||||
popopen(url,'modulesSetup');
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,8 +5,8 @@
|
|||
<form action="./" method="get" onsubmit="return procFilter(this, delete_opage)">
|
||||
<input type="hidden" name="opage" value="{$opage}" />
|
||||
<input type="hidden" name="module_srl" value="{$module_info->module_srl}" />
|
||||
<table cellspacing="0" class="adminTable">
|
||||
<caption>{$lang->confirm_delete}</caption>
|
||||
<h4 class="xeAdmin">{$lang->confirm_delete}</h4>
|
||||
<table cellspacing="0" class="rowTable">
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->module_name}</div></th>
|
||||
<td class="wide">{$module_info->mid}</td>
|
||||
|
|
@ -16,10 +16,10 @@
|
|||
<td>{$module_info->module}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" class="right">
|
||||
<th colspan="2" class="button">
|
||||
<span class="button black strong"><input type="submit" value="{$lang->cmd_delete}" /></span>
|
||||
<a href="{getUrl('act','dispOpageAdminContent')}" class="button"><span>{$lang->cmd_back}</span></a>
|
||||
<span class="button"><input type="submit" value="{$lang->cmd_delete}" /></span>
|
||||
</td>
|
||||
</th>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<input type="hidden" name="is_default" value="Y" />
|
||||
<!--@end-->
|
||||
|
||||
<table cellspacing="0" class="adminTable">
|
||||
<table cellspacing="0" class="rowTable">
|
||||
<tr class="row2">
|
||||
<th scope="row"><div>{$lang->mid}</div></th>
|
||||
<td colspan="3">
|
||||
|
|
@ -40,7 +40,8 @@
|
|||
<tr>
|
||||
<th scope="row"><div>{$lang->browser_title}</div></th>
|
||||
<td colspan="3">
|
||||
<input type="text" name="browser_title" value="{htmlspecialchars($module_info->browser_title)}" class="inputTypeText w400" />
|
||||
<input type="text" name="browser_title" value="{htmlspecialchars($module_info->browser_title)}" class="inputTypeText w400" id="browser_title"/>
|
||||
<a href="{getUrl('','module','module','act','dispModuleAdminLangcode','target','browser_title')}" onclick="popopen(this.href);return false;" class="buttonSet buttonSetting"><span>{$lang->cmd_find_langcode}</span></a>
|
||||
<p>{$lang->about_browser_title}</p>
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -70,34 +71,16 @@
|
|||
<p>{$lang->about_opage_path}<b>{realpath("./")}</b></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="col"><div>{$lang->grant}</div></th>
|
||||
<th scope="col" colspan="3"><div>{$lang->target}</div></th>
|
||||
</tr>
|
||||
<!--@foreach($grant_list as $key => $val)-->
|
||||
<tr class="row{$cycle_idx}">
|
||||
<th scope="row"><div>{$val->title}</div></th>
|
||||
<td class="wide">
|
||||
<!--@foreach($group_list as $k => $v)-->
|
||||
<input type="checkbox" class="checkbox" name="{$key}" value="{$v->group_srl}" id="grant_{$key}_{$v->group_srl}" <!--@if(is_array($module_info->grants[$key])&&in_array($v->group_srl,$module_info->grants[$key]))-->checked="checked"<!--@end-->/>
|
||||
<label for="grant_{$key}_{$v->group_srl}">{$v->title}</label>
|
||||
<!--@end-->
|
||||
</td>
|
||||
<td class="selectAll center"><a href="#" onclick="XE.checkboxToggleAll('{$key}', { checked:true }); return false;" class="blue">{$lang->cmd_select_all}</a></td>
|
||||
<td class="deSelectAll center"><a href="#" onclick="XE.checkboxToggleAll('{$key}', { checked:false }); return false;" class="red">{$lang->cmd_unselect_all}</a></td>
|
||||
</tr>
|
||||
<!--@end-->
|
||||
<tr class="row2">
|
||||
<td colspan="4" class="right">
|
||||
<span class="button"><input type="submit" value="{$lang->cmd_save}" accesskey="s" /></span>
|
||||
<th colspan="4" class="button">
|
||||
<span class="button black strong"><input type="submit" value="{$lang->cmd_save}" accesskey="s" /></span>
|
||||
<!--@if($module == 'admin')-->
|
||||
<span class="button"><input type="button" value="{$lang->cmd_list}" onclick="location.href='./?module=admin&act=dispOpageAdminContent';return false;" /></span>
|
||||
<!--@else-->
|
||||
<span class="button"><input type="button" value="{$lang->cmd_back}" onclick="location.href=current_url.setQuery('module_srl','').setQuery('act','');return false;" /></span>
|
||||
<!--@end-->
|
||||
</td>
|
||||
</th>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue