git-svn-id: http://xe-core.googlecode.com/svn/trunk@1230 201d5d3c-b55e-5fd7-737f-ddc643e51545

This commit is contained in:
zero 2007-04-19 04:33:57 +00:00
parent c58b1925f0
commit 86b2b76c86
10 changed files with 53 additions and 45 deletions

View file

@ -353,6 +353,18 @@
if(!$args->module_srl) {
$output = $oModuleController->insertModule($args);
$msg_code = 'success_registed';
// 글작성, 파일첨부, 댓글 파일첨부, 관리에 대한 권한 지정
if($output->toBool()) {
$oMemberModel = &getModel('member');
$admin_group = $oMemberModel->getAdminGroup();
$admin_group_srl = $admin_group->group_srl;
$module_srl = $output->get('module_srl');
$grants = serialize(array('write_document'=>array($admin_group_srl), 'fileupload'=>array($admin_group_srl), 'comment_fileupload'=>array($admin_group_srl), 'manager'=>array($admin_group_srl)));
$oModuleController->updateModuleGrant($module_srl, $grants);
}
} else {
$output = $oModuleController->updateModule($args);
$msg_code = 'success_updated';

View file

@ -5,10 +5,6 @@
<title xml:lang="ko">목록</title>
<title xml:lang="en">list</title>
</grant>
<grant name="view" default="guest">
<title xml:lang="ko">열람</title>
<title xml:lang="en">view</title>
</grant>
<grant name="write_document" default="guest">
<title xml:lang="ko">글 작성</title>
<title xml:lang="en">write document</title>
@ -21,6 +17,10 @@
<title xml:lang="ko">파일 첨부</title>
<title xml:lang="en">file upload</title>
</grant>
<grant name="comment_fileupload" default="guest">
<title xml:lang="ko">댓글 파일 첨부</title>
<title xml:lang="en">comment file upload</title>
</grant>
<grant name="manager" default="root">
<title xml:lang="ko">관리</title>
<title xml:lang="en">manager</title>

View file

@ -22,7 +22,7 @@
<div>
<!--@foreach($group_list as $k => $v)-->
<span>
<input type="checkbox" name="{$key}" value="{$v->group_srl}" id="grant_{$key}_{$v->group_srl}" <!--@if(is_array($module_info->grants)&&in_array($v->group_srl,$module_info->grants[$key]))-->checked="true"<!--@end-->/>
<input type="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="true"<!--@end-->/>
<label for="grant_{$key}_{$v->group_srl}">{$v->title}</label>
</span>
<!--@end-->

View file

@ -31,6 +31,21 @@
$oModuleController->insertActionForward('board', 'view', 'dispBoardAdminGrantInfo');
$oModuleController->insertActionForward('board', 'controller', 'procBoardAdminUpdateSkinInfo');
// 기본 게시판 생성
// 설치된 기본 모듈이 있는지 확인
$output = executeQuery('module.getDefaultMidInfo');
if($output->data) return new Object();
// 기본 데이터 세팅
$args->board_name = 'board';
$args->browser_title = 'test module';
$args->is_default = 'Y';
$args->skin = 'default';
// 게시판 controller 생성
$oBoardController = &getController('board');
$oBoardController->procBoardAdminInsertBoard($args);
return new Object();
}

View file

@ -380,9 +380,12 @@
/**
* @brief 게시판 추가
**/
function procBoardAdminInsertBoard() {
function procBoardAdminInsertBoard($args = null) {
// 일단 입력된 값들을 모두 받아서 db 입력항목과 그외 것으로 분리
$args = Context::gets('module_srl','module_category_srl','board_name','skin','browser_title','description','is_default','header_text','footer_text','admin_id');
if(!$args) {
$args = Context::gets('module_srl','module_category_srl','board_name','skin','browser_title','description','is_default','header_text','footer_text','admin_id');
}
$args->module = 'board';
$args->mid = $args->board_name;
unset($args->board_name);
@ -418,6 +421,18 @@
if(!$args->module_srl) {
$output = $oModuleController->insertModule($args);
$msg_code = 'success_registed';
// 파일업로드, 댓글 파일업로드, 관리에 대한 권한 지정
if($output->toBool()) {
$oMemberModel = &getModel('member');
$admin_group = $oMemberModel->getAdminGroup();
$admin_group_srl = $admin_group->group_srl;
$module_srl = $output->get('module_srl');
$grants = serialize(array('fileupload'=>array($admin_group_srl), 'comment_fileupload'=>array($admin_group_srl), 'manager'=>array($admin_group_srl)));
$oModuleController->updateModuleGrant($module_srl, $grants);
}
} else {
$output = $oModuleController->updateModule($args);
$msg_code = 'success_updated';
@ -425,19 +440,6 @@
if(!$output->toBool()) return $output;
// 신규 입력일 경우 기본 권한 설정 (file upload, manager권한을 관리그룹으로 정함)
if($msg_code == 'success_registed') {
$oMemberModel = &getModel('member');
$admin_group = $oMemberModel->getAdminGroup();
$admin_group_srl = $admin_group->group_srl;
$module_srl = $output->get('module_srl');
$grants = serialize(array('fileupload'=>array($admin_group_srl), 'comment_fileupload'=>array($admin_group_srl), 'manager'=>array($admin_group_srl)));
$oModuleController = &getController('module');
$oModuleController->updateModuleGrant($module_srl, $grants);
}
$this->add('page',Context::get('page'));
$this->add('module_srl',$output->get('module_srl'));
$this->setMessage($msg_code);

View file

@ -404,10 +404,9 @@
$comment_srl = getNextSequence();
Context::set('comment_srl', $comment_srl);
}
// 에디터 모듈의 getEditor를 호출하여 세팅
$oEditorModel = &getModel('editor');
$comment_editor = $oEditorModel->getEditor($comment_srl, $this->grant->fileupload);
$comment_editor = $oEditorModel->getEditor($comment_srl, $this->grant->comment_fileupload);
Context::set('comment_editor', $comment_editor);
}

View file

@ -22,7 +22,7 @@
<div>
<!--@foreach($group_list as $k => $v)-->
<span>
<input type="checkbox" name="{$key}" value="{$v->group_srl}" id="grant_{$key}_{$v->group_srl}" <!--@if(is_array($module_info->grants)&&in_array($v->group_srl,$module_info->grants[$key]))-->checked="true"<!--@end-->/>
<input type="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="true"<!--@end-->/>
<label for="grant_{$key}_{$v->group_srl}">{$v->title}</label>
</span>
<!--@end-->

View file

@ -122,11 +122,12 @@
**/
function installDownloadedModule() {
// 수동으로 설치를 할 목록
$manual_modules = array('install','module');
$manual_modules = array('install','module','member');
// install, module 모듈은 미리 설치
$this->installModule('install', './modules/install/');
$this->installModule('module', './modules/module/');
$this->installModule('member', './modules/member/');
// 각 모듈의 schemas/*.xml 파일을 모두 찾아서 table 생성
$module_list = FileHandler::readDir('./modules/', NULL, false, true);

View file

@ -21,9 +21,6 @@
// module 모듈에서 사용할 디렉토리 생성
FileHandler::makeDir('./files/cache/module_info');
// 기본 모듈을 생성
$oModule = &getController('module');
$oModule->makeDefaultModule();
return new Object();
}

View file

@ -45,24 +45,6 @@
$this->setMessage($msg_code);
}
/**
* @brief 기본 모듈 생성
**/
function makeDefaultModule() {
// 설치된 기본 모듈이 있는지 확인
$output = executeQuery('module.getDefaultMidInfo');
if($output->data) return;
// 기본 데이터 세팅
$args->mid = 'board';
$args->browser_title = '테스트 모듈';
$args->is_default = 'Y';
$args->module = 'board';
$args->skin = 'default';
return $this->insertModule($args);
}
/**
* @brief 모듈의 기본 정보 입력
* 모듈의 정보를 입력받은 데이터를 serialize하여 등록한다.