diff --git a/classes/editor/EditorHandler.class.php b/classes/editor/EditorHandler.class.php
new file mode 100644
index 000000000..ad7ca966a
--- /dev/null
+++ b/classes/editor/EditorHandler.class.php
@@ -0,0 +1,12 @@
+
diff --git a/classes/plugin/PluginHandler.class.php b/classes/plugin/PluginHandler.class.php
index 5c406f9bc..3c74dced6 100644
--- a/classes/plugin/PluginHandler.class.php
+++ b/classes/plugin/PluginHandler.class.php
@@ -3,7 +3,6 @@
* @class PluginHandler
* @author zero (zero@nzeo.com)
* @brief addon을 호출하여 실행
- * @todo 미구현
**/
class PluginHandler {
diff --git a/common/js/xml_handler.js b/common/js/xml_handler.js
index 60a3c1d99..01d4f56e2 100644
--- a/common/js/xml_handler.js
+++ b/common/js/xml_handler.js
@@ -20,6 +20,8 @@ function exec_xml(module, act, params, callback_func, response_tags, callback_fu
var waiting_obj = document.getElementById("waitingforserverresponse");
waiting_obj.style.visibility = "visible";
+ xTop(waiting_obj, xScrollTop()+20);
+ xLeft(waiting_obj, xScrollLeft()+20);
oXml.request(xml_response_filter, oXml, callback_func, response_tags, callback_func_arg, fo_obj);
}
diff --git a/config/config.inc.php b/config/config.inc.php
index 13efb1db0..d8b39b636 100644
--- a/config/config.inc.php
+++ b/config/config.inc.php
@@ -49,6 +49,7 @@
require_once("./classes/file/FileHandler.class.php");
require_once("./classes/object/Object.class.php");
require_once("./classes/plugin/PluginHandler.class.php");
+ require_once("./classes/editor/EditorHandler.class.php");
require_once("./classes/module/ModuleObject.class.php");
require_once("./classes/module/ModuleHandler.class.php");
require_once("./classes/display/DisplayHandler.class.php");
diff --git a/modules/editor/components/urllink/urllink.class.php b/modules/editor/components/urllink/urllink.class.php
new file mode 100644
index 000000000..db90ad626
--- /dev/null
+++ b/modules/editor/components/urllink/urllink.class.php
@@ -0,0 +1,43 @@
+upload_target_srl = $upload_target_srl;
+ }
+
+ /**
+ * @brief 에디터에서 처음 요청을 받을 경우 실행이 되는 부분이다.
+ * execute의 경우 2가지 경우가 생긴다.
+ * 직접 에디터 아래의 component area로 삽입할 html 코드를 만드는 것과 popup 윈도우를 띄우는 것인데
+ * popup윈도우를 띄울 경우는 getPopupContent() 이라는 method가 실행이 되니 구현하여 놓아야 한다
+ **/
+ function execute() {
+
+ $url = sprintf('./?module=editor&act=dispPopup&target_srl=%s&component=urllink', $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 "haha";
+ }
+
+ }
+?>
diff --git a/modules/editor/conf/module.xml b/modules/editor/conf/module.xml
index 01bd075d9..3c9b73c73 100644
--- a/modules/editor/conf/module.xml
+++ b/modules/editor/conf/module.xml
@@ -3,5 +3,6 @@