diff --git a/modules/editor/components/edithtml/edithtml.html b/modules/editor/components/html_editor/edithtml.html similarity index 100% rename from modules/editor/components/edithtml/edithtml.html rename to modules/editor/components/html_editor/edithtml.html diff --git a/modules/editor/components/html_editor/html_editor.class.php b/modules/editor/components/html_editor/html_editor.class.php new file mode 100644 index 000000000..314b40f79 --- /dev/null +++ b/modules/editor/components/html_editor/html_editor.class.php @@ -0,0 +1,57 @@ +upload_target_srl = $upload_target_srl; + $this->component_path = $component_path; + } + + /** + * @brief 에디터에서 처음 요청을 받을 경우 실행이 되는 부분이다. + * execute의 경우 2가지 경우가 생긴다. + * 직접 에디터 아래의 component area로 삽입할 html 코드를 만드는 것과 popup 윈도우를 띄우는 것인데 + * popup윈도우를 띄울 경우는 getPopupContent() 이라는 method가 실행이 되니 구현하여 놓아야 한다 + **/ + function execute() { + + $url = sprintf('./?module=editor&act=dispPopup&target_srl=%s&component=html_editor', $this->upload_target_srl); + + $this->add('tpl', ''); + $this->add('open_window', 'Y'); + $this->add('popup_url', $url); + } + + /** + * @brief popup window요청시 다시 call이 될 method. popup window에 출력할 내용을 추가하면 된다 + **/ + function getPopupContent() { + // 템플릿을 미리 컴파일해서 컴파일된 소스를 return + $tpl_path = $this->component_path.'tpl'; + $tpl_file = 'popup.html'; + + Context::set("tpl_path", $tpl_path); + + // 이모티콘을 모두 가져옴 + $html_editor_list = FileHandler::readDir($tpl_path.'/images'); + Context::set('html_editor_list', $html_editor_list); + + require_once("./classes/template/TemplateHandler.class.php"); + $oTemplate = new TemplateHandler(); + return $oTemplate->compile($tpl_path, $tpl_file); + } + + } +?> diff --git a/modules/editor/components/edithtml/icon.gif b/modules/editor/components/html_editor/icon.gif similarity index 100% rename from modules/editor/components/edithtml/icon.gif rename to modules/editor/components/html_editor/icon.gif diff --git a/modules/editor/components/html_editor/tpl/popup.css b/modules/editor/components/html_editor/tpl/popup.css new file mode 100644 index 000000000..b94734a2a --- /dev/null +++ b/modules/editor/components/html_editor/tpl/popup.css @@ -0,0 +1,9 @@ +#emoticon_area { + width:230px; + padding:10px 0px 10px 0px; + text-align:center; +} + +#emoticon_area img { + margin:2px; +} diff --git a/modules/editor/components/html_editor/tpl/popup.js b/modules/editor/components/html_editor/tpl/popup.js new file mode 100644 index 000000000..448dbe4ad --- /dev/null +++ b/modules/editor/components/html_editor/tpl/popup.js @@ -0,0 +1,8 @@ +function insertImage(obj) { + if(typeof(opener)=='undefined') return; + + opener.editorInsertEmoticon(obj); + opener.editorFocus(opener.editorPrevSrl); + + window.close(); +}