mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-05-10 20:44:28 +09:00
git-svn-id: http://xe-core.googlecode.com/svn/trunk@141 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
ba268e8f1d
commit
a35379d3a6
6 changed files with 28 additions and 114 deletions
11
.htaccess
11
.htaccess
|
|
@ -1,5 +1,6 @@
|
||||||
RewriteEngine on
|
RewriteEngine On
|
||||||
RewriteRule ^rss/([a-zA-Z0-9\_\-]*)$ ./index.php?mid=$1&act=dispRss
|
RewriteRule ^rss/([[:alnum:]]+)$ ./index.php?mid=$1&act=dispRss [L]
|
||||||
RewriteRule ^trackback/([0-9]*)$ ./index.php?document_srl=$1&act=procReceiveTrackback
|
RewriteRule ^trackback/([[:digit:]]+)$ ./index.php?document_srl=$1&act=procReceiveTrackback [L]
|
||||||
RewriteRule ^([0-9]+)$ ./index.php?document_srl=$1
|
RewriteRule ^admin ./index.php?module=admin [L]
|
||||||
RewriteRule ^([a-zA-Z\_]+)$ ./index.php?mid=$1
|
RewriteRule ^([[:digit:]]+)$ ./index.php?document_srl=$1 [L]
|
||||||
|
RewriteRule ^([[:alnum:]]+)$ ./index.php?mid=$1 [L]
|
||||||
|
|
|
||||||
82
admin.php
82
admin.php
|
|
@ -1,82 +0,0 @@
|
||||||
<?php
|
|
||||||
/**
|
|
||||||
* @file admin.php
|
|
||||||
* @author zero <zero@nzeo.com>
|
|
||||||
* @brief 관리자 페이지
|
|
||||||
*
|
|
||||||
* 추가되는 모듈의 관리를 위해 소스코드의 변경을 피하기 위해\n
|
|
||||||
* 관리자 페이지는 각 모듈의 admin action을 호출하여 구성을 한다.
|
|
||||||
**/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief 필요한 설정 파일들을 include
|
|
||||||
**/
|
|
||||||
require_once("./config/config.inc.php");
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Context 객체를 생성하여 초기화\n
|
|
||||||
* 모든 Request Argument/ 환경변수등을 세팅
|
|
||||||
**/
|
|
||||||
$oContext = &Context::getInstance();
|
|
||||||
$oContext->init();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief 설치가 안되어 있다면 index.php로 이동
|
|
||||||
* ModuleHandler를 이용하지 않기에 별도로 체크를 해주어야 함
|
|
||||||
**/
|
|
||||||
if(!Context::isInstalled()) {
|
|
||||||
header("location:./index.php");
|
|
||||||
exit();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief 관리자페이지에서 모듈의 선택은 sid로 한다.
|
|
||||||
**/
|
|
||||||
$sid = Context::get('sid');
|
|
||||||
if($sid) {
|
|
||||||
$oModule = module_manager::getAdminModuleObject($sid);
|
|
||||||
if(!$oModule) {
|
|
||||||
$sid = null;
|
|
||||||
Context::set('sid',$sid);
|
|
||||||
unset($oModule);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief 관리자(admin) 모듈 객체 생성
|
|
||||||
**/
|
|
||||||
$oAdmin = getModule('admin');
|
|
||||||
$oAdmin->moduleInit(null);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief 역시 ModuleHandler를 이용하지 않기에 직접 act 검사
|
|
||||||
**/
|
|
||||||
$act = Context::get('act');
|
|
||||||
if(!$sid&&!$oAdmin->isExistsAct($act)) $act = 'dispAdminIndex';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief 관리자 모듈의 실행 결과가 있으면 해당 실행결과를 출력
|
|
||||||
**/
|
|
||||||
if($oAdmin->proc($act)) {
|
|
||||||
$oModule = &$oAdmin;
|
|
||||||
/**
|
|
||||||
* @brief 관리자 모듈의 실행 결과가 없으면 호출된 다른 모듈의 관리자를 확인
|
|
||||||
**/
|
|
||||||
} else {
|
|
||||||
$oModule = module_manager::getAdminModuleObject($sid);
|
|
||||||
if($oModule) {
|
|
||||||
$oModule->moduleInit(null);
|
|
||||||
$oModule->proc();
|
|
||||||
|
|
||||||
// 관리자용 레이아웃으로 변경
|
|
||||||
$oModule->setLayoutPath($oAdmin->getLayoutPath());
|
|
||||||
$oModule->setLayoutTpl($oAdmin->getLayoutTpl());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief DisplayHandler 객체를 생성하여 모듈의 처리 결과를 출력
|
|
||||||
**/
|
|
||||||
$oDisplayHandler = new DisplayHandler();
|
|
||||||
$oDisplayHandler->printContent($oModule);
|
|
||||||
?>
|
|
||||||
|
|
@ -53,8 +53,10 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
// 모듈 정보에서 module 이름을 구해움
|
// 모듈 정보에서 module 이름을 구해움
|
||||||
$module = $module_info->module;
|
if($module_info) {
|
||||||
$mid = $module_info->mid;
|
$module = $module_info->module;
|
||||||
|
$mid = $module_info->mid;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 만약 모듈이 없다면 잘못된 모듈 호출에 대한 오류를 message 모듈을 통해 호출
|
// 만약 모듈이 없다면 잘못된 모듈 호출에 대한 오류를 message 모듈을 통해 호출
|
||||||
|
|
|
||||||
|
|
@ -11,42 +11,32 @@
|
||||||
* @brief 초기화
|
* @brief 초기화
|
||||||
**/
|
**/
|
||||||
function init() {
|
function init() {
|
||||||
// 관리자 모듈 목록을 세팅
|
// template path 지정
|
||||||
$oModuleModel = &getModel('module');
|
$this->setTemplatePath($this->module_path.'tpl');
|
||||||
$module_list = $oModuleModel->getAdminModuleList();
|
|
||||||
Context::set('module_list', $module_list);
|
|
||||||
|
|
||||||
// 접속 사용자에 대한 체크
|
// 접속 사용자에 대한 체크
|
||||||
$oMemberModel = &getModel('member');
|
$oMemberModel = &getModel('member');
|
||||||
$logged_info = $oMemberModel->getLoggedInfo();
|
$logged_info = $oMemberModel->getLoggedInfo();
|
||||||
|
|
||||||
|
|
||||||
// 로그인 하지 않았다면 로그인 폼 출력
|
// 로그인 하지 않았다면 로그인 폼 출력
|
||||||
if(!$oMemberModel->isLogged()) return $this->act = 'dispLogin';
|
if(!$oMemberModel->isLogged()) return Context::set('act','dispLogin');
|
||||||
|
|
||||||
// 로그인되었는데 관리자(member->is_admin!=1)가 아니면 오류 표시
|
// 로그인되었는데 관리자(member->is_admin!=1)가 아니면 오류 표시
|
||||||
if($logged_info->is_admin != 'Y') {
|
if($logged_info->is_admin != 'Y') {
|
||||||
Context::set('msg_code', 'msg_is_not_administrator');
|
Context::set('msg_code', 'msg_is_not_administrator');
|
||||||
return $this->act = 'dispError';
|
Context::set('act','dispError');
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 관리자 모듈 목록을 세팅
|
||||||
|
$oModuleModel = &getModel('module');
|
||||||
|
$module_list = $oModuleModel->getModuleList();
|
||||||
|
Context::set('module_list', $module_list);
|
||||||
|
|
||||||
// 관리자용 레이아웃으로 변경
|
// 관리자용 레이아웃으로 변경
|
||||||
//$this->setLayoutPath($this->getLayoutPath());
|
$this->setLayoutPath($this->getTemplatePath());
|
||||||
//$this->setLayoutTpl($this->getLayoutTpl());
|
$this->setLayoutFile('layout.html');
|
||||||
|
|
||||||
// 로그인/로그아웃 act의 경우는 패스~
|
|
||||||
if(in_array($this->act, array('procLogin', 'procLogout'))) return true;
|
|
||||||
|
|
||||||
// 접속 사용자에 대한 체크
|
|
||||||
$logged_info = $oMemberModel->getLoggedInfo();
|
|
||||||
|
|
||||||
// 로그인되었는데 관리자(member->is_admin!=1)가 아니면 오류 표시
|
|
||||||
if($logged_info->is_admin != 'Y') {
|
|
||||||
$this->setError(-1);
|
|
||||||
$this->setMessage('msg_is_not_administrator');
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -2,5 +2,8 @@
|
||||||
<module default_action="dispAdminIndex" management_action="">
|
<module default_action="dispAdminIndex" management_action="">
|
||||||
<actions>
|
<actions>
|
||||||
<action name="dispAdminIndex" type="view" grant="root" />
|
<action name="dispAdminIndex" type="view" grant="root" />
|
||||||
<actions>
|
<action name="dispLogin" type="view" grant="guest" />
|
||||||
|
<action name="dispLogout" type="view" grant="root" />
|
||||||
|
<action name="dispError" type="view" grant="guest" />
|
||||||
|
</actions>
|
||||||
</module>
|
</module>
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,7 @@
|
||||||
<a href="{getUrl('act','dispLogin')}">[{$lang->cmd_login}]</a>
|
<a href="{getUrl('act','dispLogin')}">[{$lang->cmd_login}]</a>
|
||||||
<!--@end-->
|
<!--@end-->
|
||||||
<!--@if($logged_info->is_admin=='Y')-->
|
<!--@if($logged_info->is_admin=='Y')-->
|
||||||
<a href="./admin.php?sid=board&act=dispModuleInfo&module_srl={$module_srl}" target="_blank">[{$lang->cmd_management}]</a>
|
<a href="{getUrl('module','admin','sid',$module,'act','dispModuleInfo','module_srl',$module_srl,'mid','')}" target="_blank">[{$lang->cmd_management}]</a>
|
||||||
<!--@end-->
|
<!--@end-->
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue