1. 에디터 모듈의 추가 설정 부분을 확장하여 업로드 권한/컴포넌트/기본컴포넌트/html사용등의 권한과 에디터 높이/스킨등을 상세히 설정할 수 있도록 기능 추가.

2. 게시판 모듈(board)의 경우 기본 설정 - 추가 설정 - 권한 설정을 여러개의 게시판에 대해서 일괄 적용할 수 있도록 기능 추가


git-svn-id: http://xe-core.googlecode.com/svn/sandbox@3519 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
zero 2008-01-14 08:58:27 +00:00
parent 77195b282a
commit 62ff4b1fae
54 changed files with 710 additions and 230 deletions

View file

@ -102,20 +102,80 @@
* @brief 에디터의 모듈별 추가 확장 폼을 저장
**/
function procEditorAdminInsertModuleConfig() {
// 필요한 변수를 받아옴
$module_srl = Context::get('target_module_srl');
$editor_skin = Context::get('editor_skin');
// 기존 설정을 가져옴
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('editor');
$config->module_config[$module_srl] = $editor_skin;
// 대상을 구함
$module_srl = Context::get('target_module_srl');
// 여러개의 모듈 일괄 설정일 경우
if(preg_match('/^([0-9,]+)$/',$module_srl)) $module_srl = explode(',',$module_srl);
else $module_srl = array($module_srl);
$editor_config = null;
$editor_config->editor_skin = Context::get('editor_skin');
$editor_config->comment_editor_skin = Context::get('comment_editor_skin');
$enable_html_grant = trim(Context::get('enable_html_grant'));
if($enable_html_grant) $editor_config->enable_html_grant = explode('|@|', $enable_html_grant);
else $editor_config->enable_html_grant = array();
$enable_comment_html_grant = trim(Context::get('enable_comment_html_grant'));
if($enable_comment_html_grant) $editor_config->enable_comment_html_grant = explode('|@|', $enable_comment_html_grant);
else $editor_config->enable_comment_html_grant = array();
$upload_file_grant = trim(Context::get('upload_file_grant'));
if($upload_file_grant) $editor_config->upload_file_grant = explode('|@|', $upload_file_grant);
else $editor_config->upload_file_grant = array();
$comment_upload_file_grant = trim(Context::get('comment_upload_file_grant'));
if($comment_upload_file_grant) $editor_config->comment_upload_file_grant = explode('|@|', $comment_upload_file_grant);
else $editor_config->comment_upload_file_grant = array();
$enable_default_component_grant = trim(Context::get('enable_default_component_grant'));
if($enable_default_component_grant) $editor_config->enable_default_component_grant = explode('|@|', $enable_default_component_grant);
else $editor_config->enable_default_component_grant = array();
$enable_comment_default_component_grant = trim(Context::get('enable_comment_default_component_grant'));
if($enable_comment_default_component_grant) $editor_config->enable_comment_default_component_grant = explode('|@|', $enable_comment_default_component_grant);
else $editor_config->enable_comment_default_component_grant = array();
$enable_component_grant = trim(Context::get('enable_component_grant'));
if($enable_component_grant) $editor_config->enable_component_grant = explode('|@|', $enable_component_grant);
else $editor_config->enable_component_grant = array();
$enable_comment_component_grant = trim(Context::get('enable_comment_component_grant'));
if($enable_comment_component_grant) $editor_config->enable_comment_component_grant = explode('|@|', $enable_comment_component_grant);
else $editor_config->enable_comment_component_grant = array();
$editor_config->editor_height = (int)Context::get('editor_height');
$editor_config->comment_editor_height = (int)Context::get('comment_editor_height');
$editor_config->enable_height_resizable = Context::get('enable_height_resizable');
$editor_config->enable_comment_height_resizable = Context::get('enable_comment_height_resizable');
$editor_config->enable_autosave = Context::get('enable_autosave');
if($editor_config->enable_height_resizable != 'Y') $editor_config->enable_height_resizable = 'N';
if($editor_config->enable_comment_height_resizable != 'Y') $editor_config->enable_comment_height_resizable = 'N';
if($editor_config->enable_autosave != 'Y') $editor_config->enable_autosave = 'N';
for($i=0;$i<count($module_srl);$i++) {
$srl = trim($module_srl[$i]);
if(!$srl) continue;
$config->module_config[$srl] = $editor_config;
}
// module Controller 객체 생성하여 입력
$oModuleController = &getController('module');
$output = $oModuleController->insertModuleConfig('editor',$config);
return $output;
$this->setError(-1);
$this->setMessage('success_updated');
}
/**

View file

@ -25,14 +25,32 @@
* @brief 모듈별 에디터 설정을 return
**/
function getEditorConfig($module_srl) {
// 선택된 모듈의 trackback설정을 가져옴
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('editor');
if(!$GLOBLAS['__editor_module_config__']) {
// 선택된 모듈의 trackback설정을 가져옴
$oModuleModel = &getModel('module');
$GLOBLAS['__editor_module_config__'] = $oModuleModel->getModuleConfig('editor');
}
$editor_skin = $config->module_config[$module_srl];
if(!$editor_skin) $editor_skin = "default";
$editor_config = $GLOBLAS['__editor_module_config__']->module_config[$module_srl];
return $editor_skin;
if(!is_object($editor_config)) $editor_config = null;
if(!is_array($editor_config->enable_html_grant)) $editor_config->enable_html_grant = array();
if(!is_array($editor_config->enable_comment_html_grant)) $editor_config->enable_comment_html_grant = array();
if(!is_array($editor_config->upload_file_grant)) $editor_config->upload_file_grant = array();
if(!is_array($editor_config->comment_upload_file_grant)) $editor_config->comment_upload_file_grant = array();
if(!is_array($editor_config->enable_default_component_grant)) $editor_config->enable_default_component_grant = array();
if(!is_array($editor_config->enable_comment_default_component_grant)) $editor_config->enable_comment_default_component_grant = array();
if(!is_array($editor_config->enable_component_grant)) $editor_config->enable_component_grant = array();
if(!is_array($editor_config->enable_comment_component_grant)) $editor_config->enable_comment_component_grant= array();
if(!$editor_config->editor_height) $editor_config->editor_height = 500;
if(!$editor_config->comment_editor_height) $editor_config->comment_editor_height = 200;
if($editor_config->enable_height_resizable!='N') $editor_config->enable_height_resizable= "Y";
if($editor_config->enable_comment_height_resizable!='Y') $editor_config->enable_comment_height_resizable= "N";
if($editor_config->enable_autosave!='N') $editor_config->enable_autosave = "Y";
return $editor_config;
}
/**
@ -73,11 +91,8 @@
else $editor_height = $option->height;
// 스킨 설정
if(!$option->skin) {
$module_srl = Context::get('module_srl');
$skin = $this->getEditorConfig($module_srl);
} else $skin = $option->skin;
$skin = $option->skin;
if(!$skin) $skin = 'default';
/**
* 자동백업 기능 체크 ( 수정일 경우는 사용하지 않음)
@ -179,6 +194,112 @@
return $oTemplate->compile($tpl_path, $tpl_file);
}
/**
* @brief 모듈별 설정이 반영된 에디터 template을 return
* getEditor() 동일한 결과물을 return하지만 getModuleEditor() 모듈별 추가 설정을 통해 직접 제어되는 설정을 이용하여 에디터를 생성함
*
* document/ comment 2가지 종류를 이용함.
* 굳이 나눈 이유는 하나의 모듈에서 2 종류의 에디터 사용을 위해서인데 게시판이나 블로그등 원글과 그에 연관된 (댓글) 위한 용도임.
**/
function getModuleEditor($type = 'document', $module_srl, $upload_target_srl, $primary_key_name, $content_key_name) {
// 지정된 모듈의 에디터 설정을 구해옴
$editor_config = $this->getEditorConfig($module_srl);
// type에 따른 설정 정리
if($type == 'document') {
$config->editor_skin = $editor_config->editor_skin;
$config->upload_file_grant = $editor_config->upload_file_grant;
$config->enable_default_component_grant = $editor_config->enable_default_component_grant;
$config->enable_component_grant = $editor_config->enable_component_grant;
$config->enable_html_grant = $editor_config->enable_html_grant;
$config->editor_height = $editor_config->editor_height;
$config->enable_height_resizable = $editor_config->enable_height_resizable;
$config->enable_autosave = $editor_config->enable_autosave;
} else {
$config->editor_skin = $editor_config->comment_editor_skin;
$config->upload_file_grant = $editor_config->comment_upload_file_grant;
$config->enable_default_component_grant = $editor_config->enable_comment_default_component_grant;
$config->enable_component_grant = $editor_config->enable_comment_component_grant;
$config->enable_html_grant = $editor_config->enable_comment_html_grant;
$config->editor_height = $editor_config->comment_editor_height;
$config->enable_height_resizable = $editor_config->enable_comment_height_resizable;
$config->enable_autosave = 'N';
}
// 권한 체크를 위한 현재 로그인 사용자의 그룹 설정 체크
if(Context::get('is_logged')) {
$logged_info = Context::get('logged_info');
$group_list = $logged_info->group_list;
} else {
$group_list = array();
}
// 에디터 옵션 변수를 미리 설정
$option->skin = $config->editor_skin;
// 파일 업로드 권한 체크
$option->allow_fileupload = false;
if(count($config->upload_file_grant)) {
foreach($group_list as $group_srl => $group_info) {
if(in_array($group_srl, $config->upload_file_grant)) {
$option->allow_fileupload = true;
break;
}
}
} else $option->allow_fileupload = true;
// 기본 컴포넌트 사용 권한
$option->enable_default_component = false;
if(count($config->enable_default_component_grant)) {
foreach($group_list as $group_srl => $group_info) {
if(in_array($group_srl, $config->enable_default_component_grant)) {
$option->enable_default_component = true;
break;
}
}
} else $option->enable_default_component = true;
// 확장 컴포넌트 사용 권한
$option->enable_component = false;
if(count($config->enable_component_grant)) {
foreach($group_list as $group_srl => $group_info) {
if(in_array($group_srl, $config->enable_component_grant)) {
$option->enable_component = true;
break;
}
}
} else $option->enable_component = true;
// HTML 편집 권한
$enable_html = false;
if(count($config->enable_html_grant)) {
foreach($group_list as $group_srl => $group_info) {
if(in_array($group_srl, $config->enable_html_grant)) {
$enable_html = true;
break;
}
}
} else $enable_html = true;
if($enable_html) $option->disable_html = false;
else $option->disable_html = true;
// 높이 설정
$option->height = $config->editor_height;
// 높이 조절 옵션 설정
$option->resizable = $config->enable_height_resizable=='Y'?true:false;
// 자동 저장 유무 옵션 설정
$option->enable_autosave = $config->enable_autosave=='Y'?true:false;
// 기타 설정
$option->primary_key_name = $primary_key_name;
$option->content_key_name = $content_key_name;
return $this->getEditor($upload_target_srl, $option);
}
/**
* @brief 자동저장되어 있는 정보를 가져옴
**/

View file

@ -66,23 +66,29 @@
**/
function triggerDispEditorAdditionSetup(&$obj) {
$current_module_srl = Context::get('module_srl');
$current_module_srls = Context::get('module_srls');
if(!$current_module_srl) {
if(!$current_module_srl && !$current_module_srls) {
// 선택된 모듈의 정보를 가져옴
$current_module_info = Context::get('current_module_info');
$current_module_srl = $current_module_info->module_srl;
if(!$current_module_srl) return new Object();
}
if(!$current_module_srl) return new Object();
// 에디터 설정을 구함
$oEditorModel = &getModel('editor');
$editor_skin = $oEditorModel->getEditorConfig($current_module_srl);
Context::set('editor_skin', $editor_skin);
$editor_config = $oEditorModel->getEditorConfig($current_module_srl);
Context::set('editor_config', $editor_config);
// 에디터 스킨 목록을 구함
$editor_skin_list = FileHandler::readDir('./modules/editor/skins');
Context::set('editor_skin_list', $editor_skin_list);
// 그룹 목록을 구함
$oMemberModel = &getModel('member');
$group_list = $oMemberModel->getGroups();
Context::set('group_list', $group_list);
// 템플릿 파일 지정
$oTemplate = &TemplateHandler::getInstance();

View file

@ -28,6 +28,24 @@
$lang->cmd_disable = "Inactive";
$lang->cmd_enable = "Active";
$lang->editor_skin = '에디터 스킨';
$lang->upload_file_grant = '파일 첨부 권한';
$lang->enable_default_component_grant = '기본 컴포넌트 사용 권한';
$lang->enable_component_grant = '컴포넌트 사용 권한';
$lang->enable_html_grant = 'HTML편집 권한';
$lang->enable_autosave = '자동저장 사용';
$lang->height_resizable = '높이 조절 가능';
$lang->editor_height = '에디터 높이';
$lang->about_editor_skin = '에디터 스킨을 선택하실 수 있습니다';
$lang->about_upload_file_grant = '파일을 첨부할 수 있는 권한을 지정하실 수 있습니다 (모두 해제시 아무나 첨부 가능합니다)';
$lang->about_default_component_grant = '에디터에서 사용되는 기본 컴포넌트를 사용할 수 있는 권한을 지정할 수 있습니다. (모두 해제시 아무나 사용 가능합니다)';
$lang->about_component_grant = '기본 컴포넌트외의 확장 컴포넌트 기능을 사용할 수 있는 권한을 지정할 수 있습니다. (모두 해제시 아무나 사용 가능합니다)';
$lang->about_editor_height = '에디터의 기본 높이를 지정하실 수 있습니다';
$lang->about_editor_height_resizable = '에디터의 높이를 직접 변경할 수 있도록 허용합니다';
$lang->about_enable_html_grant = 'HTML편집 권한을 부여할 수 있습니다.';
$lang->about_enable_autosave = '글작성시 자동 저장 기능을 활성화 시킬 수 있습니다';
$lang->edit->fontname = 'Font';
$lang->edit->fontsize = 'Size';
$lang->edit->use_paragraph = 'Paragraph Function';

View file

@ -28,6 +28,24 @@
$lang->cmd_disable = "Desactivado";
$lang->cmd_enable = "activado";
$lang->editor_skin = '에디터 스킨';
$lang->upload_file_grant = '파일 첨부 권한';
$lang->enable_default_component_grant = '기본 컴포넌트 사용 권한';
$lang->enable_component_grant = '컴포넌트 사용 권한';
$lang->enable_html_grant = 'HTML편집 권한';
$lang->enable_autosave = '자동저장 사용';
$lang->height_resizable = '높이 조절 가능';
$lang->editor_height = '에디터 높이';
$lang->about_editor_skin = '에디터 스킨을 선택하실 수 있습니다';
$lang->about_upload_file_grant = '파일을 첨부할 수 있는 권한을 지정하실 수 있습니다 (모두 해제시 아무나 첨부 가능합니다)';
$lang->about_default_component_grant = '에디터에서 사용되는 기본 컴포넌트를 사용할 수 있는 권한을 지정할 수 있습니다. (모두 해제시 아무나 사용 가능합니다)';
$lang->about_component_grant = '기본 컴포넌트외의 확장 컴포넌트 기능을 사용할 수 있는 권한을 지정할 수 있습니다. (모두 해제시 아무나 사용 가능합니다)';
$lang->about_editor_height = '에디터의 기본 높이를 지정하실 수 있습니다';
$lang->about_editor_height_resizable = '에디터의 높이를 직접 변경할 수 있도록 허용합니다';
$lang->about_enable_html_grant = 'HTML편집 권한을 부여할 수 있습니다.';
$lang->about_enable_autosave = '글작성시 자동 저장 기능을 활성화 시킬 수 있습니다';
$lang->edit->fontname = 'Fuente';
$lang->edit->fontsize = 'Tamaño';
$lang->edit->use_paragraph = 'Párrafo';

View file

@ -28,6 +28,24 @@
$lang->cmd_disable = "未使用";
$lang->cmd_enable = "使用";
$lang->editor_skin = '에디터 스킨';
$lang->upload_file_grant = '파일 첨부 권한';
$lang->enable_default_component_grant = '기본 컴포넌트 사용 권한';
$lang->enable_component_grant = '컴포넌트 사용 권한';
$lang->enable_html_grant = 'HTML편집 권한';
$lang->enable_autosave = '자동저장 사용';
$lang->height_resizable = '높이 조절 가능';
$lang->editor_height = '에디터 높이';
$lang->about_editor_skin = '에디터 스킨을 선택하실 수 있습니다';
$lang->about_upload_file_grant = '파일을 첨부할 수 있는 권한을 지정하실 수 있습니다 (모두 해제시 아무나 첨부 가능합니다)';
$lang->about_default_component_grant = '에디터에서 사용되는 기본 컴포넌트를 사용할 수 있는 권한을 지정할 수 있습니다. (모두 해제시 아무나 사용 가능합니다)';
$lang->about_component_grant = '기본 컴포넌트외의 확장 컴포넌트 기능을 사용할 수 있는 권한을 지정할 수 있습니다. (모두 해제시 아무나 사용 가능합니다)';
$lang->about_editor_height = '에디터의 기본 높이를 지정하실 수 있습니다';
$lang->about_editor_height_resizable = '에디터의 높이를 직접 변경할 수 있도록 허용합니다';
$lang->about_enable_html_grant = 'HTML편집 권한을 부여할 수 있습니다.';
$lang->about_enable_autosave = '글작성시 자동 저장 기능을 활성화 시킬 수 있습니다';
$lang->edit->fontname = 'フォント';
$lang->edit->fontsize = 'フォントサイズ';
$lang->edit->use_paragraph = '段落機能';

View file

@ -28,6 +28,24 @@
$lang->cmd_disable = "비활성";
$lang->cmd_enable = "활성";
$lang->editor_skin = '에디터 스킨';
$lang->upload_file_grant = '파일 첨부 권한';
$lang->enable_default_component_grant = '기본 컴포넌트 사용 권한';
$lang->enable_component_grant = '컴포넌트 사용 권한';
$lang->enable_html_grant = 'HTML편집 권한';
$lang->enable_autosave = '자동저장 사용';
$lang->height_resizable = '높이 조절 가능';
$lang->editor_height = '에디터 높이';
$lang->about_editor_skin = '에디터 스킨을 선택하실 수 있습니다';
$lang->about_upload_file_grant = '파일을 첨부할 수 있는 권한을 지정하실 수 있습니다 (모두 해제시 아무나 첨부 가능합니다)';
$lang->about_default_component_grant = '에디터에서 사용되는 기본 컴포넌트를 사용할 수 있는 권한을 지정할 수 있습니다. (모두 해제시 아무나 사용 가능합니다)';
$lang->about_component_grant = '기본 컴포넌트외의 확장 컴포넌트 기능을 사용할 수 있는 권한을 지정할 수 있습니다. (모두 해제시 아무나 사용 가능합니다)';
$lang->about_editor_height = '에디터의 기본 높이를 지정하실 수 있습니다';
$lang->about_editor_height_resizable = '에디터의 높이를 직접 변경할 수 있도록 허용합니다';
$lang->about_enable_html_grant = 'HTML편집 권한을 부여할 수 있습니다.';
$lang->about_enable_autosave = '글작성시 자동 저장 기능을 활성화 시킬 수 있습니다';
$lang->edit->fontname = '글꼴';
$lang->edit->fontsize = '크기';
$lang->edit->use_paragraph = '문단기능';

View file

@ -28,6 +28,24 @@
$lang->cmd_disable = "Неавтивно";
$lang->cmd_enable = "Активно";
$lang->editor_skin = '에디터 스킨';
$lang->upload_file_grant = '파일 첨부 권한';
$lang->enable_default_component_grant = '기본 컴포넌트 사용 권한';
$lang->enable_component_grant = '컴포넌트 사용 권한';
$lang->enable_html_grant = 'HTML편집 권한';
$lang->enable_autosave = '자동저장 사용';
$lang->height_resizable = '높이 조절 가능';
$lang->editor_height = '에디터 높이';
$lang->about_editor_skin = '에디터 스킨을 선택하실 수 있습니다';
$lang->about_upload_file_grant = '파일을 첨부할 수 있는 권한을 지정하실 수 있습니다 (모두 해제시 아무나 첨부 가능합니다)';
$lang->about_default_component_grant = '에디터에서 사용되는 기본 컴포넌트를 사용할 수 있는 권한을 지정할 수 있습니다. (모두 해제시 아무나 사용 가능합니다)';
$lang->about_component_grant = '기본 컴포넌트외의 확장 컴포넌트 기능을 사용할 수 있는 권한을 지정할 수 있습니다. (모두 해제시 아무나 사용 가능합니다)';
$lang->about_editor_height = '에디터의 기본 높이를 지정하실 수 있습니다';
$lang->about_editor_height_resizable = '에디터의 높이를 직접 변경할 수 있도록 허용합니다';
$lang->about_enable_html_grant = 'HTML편집 권한을 부여할 수 있습니다.';
$lang->about_enable_autosave = '글작성시 자동 저장 기능을 활성화 시킬 수 있습니다';
$lang->edit->fontname = 'Шрифт';
$lang->edit->fontsize = 'Размер';
$lang->edit->use_paragraph = 'Функции параграфа';

View file

@ -28,6 +28,24 @@
$lang->cmd_disable = "非激活";
$lang->cmd_enable = "激活";
$lang->editor_skin = '에디터 스킨';
$lang->upload_file_grant = '파일 첨부 권한';
$lang->enable_default_component_grant = '기본 컴포넌트 사용 권한';
$lang->enable_component_grant = '컴포넌트 사용 권한';
$lang->enable_html_grant = 'HTML편집 권한';
$lang->enable_autosave = '자동저장 사용';
$lang->height_resizable = '높이 조절 가능';
$lang->editor_height = '에디터 높이';
$lang->about_editor_skin = '에디터 스킨을 선택하실 수 있습니다';
$lang->about_upload_file_grant = '파일을 첨부할 수 있는 권한을 지정하실 수 있습니다 (모두 해제시 아무나 첨부 가능합니다)';
$lang->about_default_component_grant = '에디터에서 사용되는 기본 컴포넌트를 사용할 수 있는 권한을 지정할 수 있습니다. (모두 해제시 아무나 사용 가능합니다)';
$lang->about_component_grant = '기본 컴포넌트외의 확장 컴포넌트 기능을 사용할 수 있는 권한을 지정할 수 있습니다. (모두 해제시 아무나 사용 가능합니다)';
$lang->about_editor_height = '에디터의 기본 높이를 지정하실 수 있습니다';
$lang->about_editor_height_resizable = '에디터의 높이를 직접 변경할 수 있도록 허용합니다';
$lang->about_enable_html_grant = 'HTML편집 권한을 부여할 수 있습니다.';
$lang->about_enable_autosave = '글작성시 자동 저장 기능을 활성화 시킬 수 있습니다';
$lang->edit->fontname = '字体';
$lang->edit->fontsize = '大小';
$lang->edit->use_paragraph = '段落功能';

View file

@ -27,9 +27,9 @@
.xeEditor .textAreaDragIndicator { text-align:center; background:url(../images/lineTextAreaDrag.gif) repeat-x left center; padding:5px 0 5px 0; }
.xeEditor .textAreaDragIndicatorBar { background:url(../images/buttonTextAreaDrag.gif) no-repeat center; cursor:move;height:14px;}
.xeEditor .editor_info { clear:both; padding:5px 20px 0 10px; overflow:hidden;}
.xeEditor .editor_info { clear:both; padding:5px 10px 0 10px; overflow:hidden;}
.xeEditor .editor_info .editor_option { float:left; color:#888888; }
.xeEditor .editor_info .editor_autosaved_message { color:#888888; float:right; }
.xeEditor .editor_info .editor_autosaved_message { display:none; color:#888888; float:right; }
.xeEditor .inputTypeTextArea { background:#fbfbfb; padding:1em; width:94%;}
.xeEditor #textAreaDrag {}

View file

@ -138,7 +138,7 @@
</div>
<!--@end-->
<!--@if($enable_autosave)-->
<div class="editor_autosaved_message" id="editor_autosaved_message_{$editor_sequence}">&nbsp;</div>
<div class="editor_autosaved_message" id="editor_autosaved_message_{$editor_sequence}"></div>
<!--@end-->
</div>
<!--@end-->

View file

@ -36,7 +36,7 @@
.xeEditor .editor_info { clear:both; padding:5px 10px 5px 10px; overflow:hidden;}
.xeEditor .editor_info .editor_option { float:left; color:#888888; }
.xeEditor .editor_info .editor_autosaved_message { color:#888888; float:right; }
.xeEditor .editor_info .editor_autosaved_message { color:#888888; float:right; display:none;}
.xeEditor .inputTypeTextArea { background:#fbfbfb; padding:1em; width:94%;}
.xeEditor #textAreaDrag {}

View file

@ -121,19 +121,27 @@
<!--@end-->
<!-- HTML 모드 사용 기능 및 자동저장 메세지 출력용 -->
<!--@if($html_mode || $enable_autosave)-->
<div class="editor_info">
<!--@if($html_mode)-->
<div class="editor_option">
<input type="checkbox" id="use_html_{$editor_sequence}" value="Y" onclick="editorChangeMode(this, '{$editor_sequence}');" /> <label for="use_html_{$editor_sequence}">HTML</label>
</div>
<!--@end-->
<!--@if($enable_autosave)-->
<div class="editor_autosaved_message" id="editor_autosaved_message_{$editor_sequence}">&nbsp;</div>
<!--@end-->
</div>
<!--@end-->
<!-- 에디터 출력 -->
<div class="editor_iframe_box"><iframe id="editor_iframe_{$editor_sequence}" frameborder="0" width="100%" height="{$editor_height}" style="background-color:transparent;"></iframe></div>
<textarea id="editor_textarea_{$editor_sequence}" class="editor_iframe_textarea" style="display:none; height:{$editor_height}" rows="10" cols="10"></textarea>
<!-- 에디터 크기 조절 bar -->
<!--@if($enable_resizable)-->
<div class="textAreaDragIndicator"><div class="textAreaDragIndicatorBar" id="editor_drag_bar_{$editor_sequence}"></div></div>
<!--@end-->
<!--@if($allow_fileupload)-->
<!-- 첨부파일 영역 -->

View file

@ -1,6 +1,6 @@
@charset "utf-8";
.xeEditor .editor_info .editor_autosaved_message { color:#888888; text-align:right; }
.xeEditor .optionDE { width:100%; clear:both; overflow:hidden; background:#f8f8f8; border-bottom:1px solid #e1e1e1; height:29px;}
.xeEditor .editor_info .editor_autosaved_message { display:none; color:#888888; text-align:right; }
.xeEditor .optionDE { width:100%; clear:both; overflow:hidden; background:#f8f8f8; height:29px;}
.xeEditor .optionDE .buttonGroup { white-space:nowrap; position:relative; display:block; float:left; height:21px; overflow:hidden; padding-left:2px;}
.xeEditor .optionDE img { float:left; display:block; margin-right:.5em; cursor:pointer;}
.xeEditor .optionD { padding:.5em 0 .5em .8em; overflow:hidden; float:left; border-right:1px solid #e0e0e0;}

View file

@ -119,4 +119,4 @@
.xed table.datatable td {
border-bottom: 1px solid #000;
border-right: 1px solid #000;
}
}

View file

@ -230,4 +230,4 @@
.xqQuickSearch li.selected {
background-color: #ffd;
}
}

View file

@ -44,7 +44,6 @@
</div>
<!--@end-->
<!-- HTML 모드 사용 기능 및 자동저장 메세지 출력용 -->
<div class="editor_info">
<div class="editor_autosaved_message" id="editor_autosaved_message_{$editor_sequence}">&nbsp;</div>
@ -55,7 +54,9 @@
<textarea id="editor_textarea_{$editor_sequence}" class="editor_iframe_textarea" style="display:none; height:{$editor_height}" rows="10" cols="10"></textarea>
<!-- 에디터 크기 조절 bar -->
<!--@if($enable_resizable)-->
<div class="textAreaDragIndicator"><div class="textAreaDragIndicatorBar" id="editor_drag_bar_{$editor_sequence}"></div></div>
<!--@end-->
<!--@if($allow_fileupload)-->
<!-- 첨부파일 영역 -->

View file

@ -1,23 +1,135 @@
<!--%import("filter/insert_editor_module_config.xml")-->
<form action="./" method="post" onsubmit="return procFilter(this, insert_editor_module_config)">
<input type="hidden" name="target_module_srl" value="{$module_info->module_srl}" />
<input type="hidden" name="target_module_srl" value="{$module_info->module_srl?$module_info->module_srl:$module_srls}" />
<table cellspacing="0" class="adminTable">
<col width="150" />
<col />
<col width="100" />
<col />
<caption>{$lang->editor}</caption>
<tr>
<th scope="row">{$lang->editor}</th>
<th scope="col">&nbsp;</th>
<th scope="col">{$lang->document}</td>
<th scope="col">{$lang->comment}</td>
</tr>
<tr>
<th rowspan="2">{$lang->editor_skin}</th>
<td>
<select name="editor_skin">
<!--@foreach($editor_skin_list as $editor)-->
<option value="{$editor}" <!--@if($editor==$editor_skin)-->selected="selected"<!--@end-->>{$editor}</option>
<option value="{$editor}" <!--@if($editor==$editor_config->editor_skin)-->selected="selected"<!--@end-->>{$editor}</option>
<!--@end-->
</select>
</td>
<th class="centerButton">
<td>
<select name="comment_editor_skin">
<!--@foreach($editor_skin_list as $editor)-->
<option value="{$editor}" <!--@if($editor==$editor_config->comment_editor_skin)-->selected="selected"<!--@end-->>{$editor}</option>
<!--@end-->
</select>
</td>
</tr>
<tr>
<td colspan="2">{$lang->about_editor_skin}</td>
</tr>
<tr>
<th rowspan="2">{$lang->enable_html_grant}</th>
<td>
<!--@foreach($group_list as $k => $v)-->
<input type="checkbox" name="enable_html_grant" value="{$k}" id="enable_html_{$k}" <!--@if(in_array($k, $editor_config->enable_html_grant))-->checked="checked"<!--@end-->/> <label for="enable_html_{$k}">{$v->title}</label> <br />
<!--@end-->
</td>
<td>
<!--@foreach($group_list as $k => $v)-->
<input type="checkbox" name="enable_comment_html_grant" value="{$k}" id="enable_comment_html_{$k}" <!--@if(in_array($k, $editor_config->enable_comment_html_grant))-->checked="checked"<!--@end-->/> <label for="enable_comment_html_{$k}">{$v->title}</label> <br />
<!--@end-->
</td>
</tr>
<tr>
<td colspan="2">{$lang->about_enable_html_grant}</td>
</tr>
<tr>
<th rowspan="2">{$lang->upload_file_grant}</th>
<td>
<!--@foreach($group_list as $k => $v)-->
<input type="checkbox" name="upload_file_grant" value="{$k}" id="fileupload_{$k}" <!--@if(in_array($k, $editor_config->upload_file_grant))-->checked="checked"<!--@end-->/> <label for="fileupload_{$k}">{$v->title}</label> <br />
<!--@end-->
</td>
<td>
<!--@foreach($group_list as $k => $v)-->
<input type="checkbox" name="comment_upload_file_grant" value="{$k}" id="comment_fileupload_{$k}" <!--@if(in_array($k, $editor_config->comment_upload_file_grant))-->checked="checked"<!--@end-->/> <label for="comment_fileupload_{$k}">{$v->title}</label> <br />
<!--@end-->
</td>
</tr>
<tr>
<td colspan="2">{$lang->about_upload_file_grant}</td>
</tr>
<tr>
<th rowspan="2">{$lang->enable_default_component_grant}</th>
<td>
<!--@foreach($group_list as $k => $v)-->
<input type="checkbox" name="enable_default_component_grant" value="{$k}" id="default_componen_{$k}" <!--@if(in_array($k, $editor_config->enable_default_component_grant))-->checked="checked"<!--@end-->/> <label for="default_componen_{$k}">{$v->title}</label> <br />
<!--@end-->
</td>
<td>
<!--@foreach($group_list as $k => $v)-->
<input type="checkbox" name="enable_comment_default_component_grant" value="{$k}" id="comment_default_component_{$k}" <!--@if(in_array($k, $editor_config->enable_comment_default_component_grant))-->checked="checked"<!--@end-->/> <label for="comment_default_component_{$k}">{$v->title}</label> <br />
<!--@end-->
</td>
</tr>
<tr>
<td colspan="2">{$lang->about_default_component_grant}</td>
</tr>
<tr>
<th rowspan="2">{$lang->enable_component_grant}</th>
<td>
<!--@foreach($group_list as $k => $v)-->
<input type="checkbox" name="enable_component_grant" value="{$k}" id="componen_{$k}" <!--@if(in_array($k, $editor_config->enable_component_grant))-->checked="checked"<!--@end-->/> <label for="componen_{$k}">{$v->title}</label> <br />
<!--@end-->
</td>
<td>
<!--@foreach($group_list as $k => $v)-->
<input type="checkbox" name="enable_comment_component_grant" value="{$k}" id="comment_component_{$k}" <!--@if(in_array($k, $editor_config->enable_comment_component_grant))-->checked="checked"<!--@end-->/> <label for="comment_component_{$k}">{$v->title}</label> <br />
<!--@end-->
</td>
</tr>
<tr>
<td colspan="2">{$lang->about_component_grant}</td>
</tr>
<tr>
<th rowspan="2">{$lang->editor_height}</th>
<td>
<input type="text" name="editor_height" value="{$editor_config->editor_height}" class="inputTypeText w80" />px
</td>
<td>
<input type="text" name="comment_editor_height" value="{$editor_config->comment_editor_height}" class="inputTypeText w80" />px
</td>
</tr>
<tr>
<td colspan="2">{$lang->about_editor_height}</td>
</tr>
<tr>
<th rowspan="2">{$lang->height_resizable}</th>
<td>
<input type="checkbox" value="Y" name="enable_height_resizable" <!--@if($editor_config->enable_height_resizable=='Y')-->checked="checked"<!--@end-->/>
</td>
<td>
<input type="checkbox" value="Y" name="enable_comment_height_resizable" <!--@if($editor_config->enable_comment_height_resizable=='Y')-->checked="checked"<!--@end-->/>
</td>
</tr>
<tr>
<td colspan="2">{$lang->about_editor_height_resizable}</td>
</tr>
<tr>
<th rowspan="2">{$lang->enable_autosave}</th>
<td colspan="2"><input type="checkbox" value="Y" name="enable_autosave" <!--@if($editor_config->enable_autosave=='Y')-->checked="checked"<!--@end-->/></td>
</tr>
<tr>
<td colspan="2">{$lang->about_enable_autosave}</td>
</tr>
<tr>
<th class="button" colspan="3">
<span class="button"><input type="submit" value="{$lang->cmd_save}"/></span>
</th>
</tr>

View file

@ -121,7 +121,7 @@ function editorStart(editor_sequence, primary_key, content_key, editor_height) {
//'<link rel="stylesheet" href="'+request_uri+'common/css/default.css" type="text/css" />'+
//'<link rel="stylesheet" href="'+request_uri+editor_path+'css/editor.css" type="text/css" />'+
'<style type="text/css">'+
'body {font-size:9pt;height:'+editor_height+'px; padding:0; margin:0; background-color:transparent; line-height:140%;}'+
'body {font-size:9pt;height:'+editor_height+'px; padding:5px; margin:0; background-color:transparent; line-height:140%;}'+
'</style>'+
'</head><body editor_sequence="'+editor_sequence+'">'+
content+

View file

@ -66,6 +66,7 @@ function _editorAutoSave() {
editorAutoSaveObj.content = content;
var obj = xGetElementById("editor_autosaved_message_"+editor_sequence);
obj.style.display = 'block';
var oDate = new Date();
html = oDate.getHours()+':'+oDate.getMinutes()+' '+auto_saved_msg;
xInnerHtml(obj, html);