diff --git a/addons/rainbow_link/js/rainbow.js b/addons/rainbow_link/js/rainbow.js index fb9b35727..a4239c6bd 100644 --- a/addons/rainbow_link/js/rainbow.js +++ b/addons/rainbow_link/js/rainbow.js @@ -41,6 +41,14 @@ var clrOrg; // A color before the change var TimerID; // Timer ID +if(xIE4Up) { + xAddEventListener(document, 'mouseover', doRainbowAnchor); + xAddEventListener(document, 'mouseout', stopRainbowAnchor); +} else { + xAddEventListener(document, 'mouseover', Mozilla_doRainbowAnchor); + xAddEventListener(document, 'mouseout', Mozilla_stopRainbowAnchor); +} +/* if (document.all) { document.onmouseover = doRainbowAnchor; document.onmouseout = stopRainbowAnchor; @@ -50,6 +58,7 @@ else if (document.getElementById) { document.onmouseover = Mozilla_doRainbowAnchor; document.onmouseout = Mozilla_stopRainbowAnchor; } +*/ //============================================================================= @@ -128,14 +137,15 @@ function stopRainbowAnchor() // Mozilla_doRainbowAnchor(for Netscape6 and Mozilla browser) // This function begins to change a color. (of a anchor, automatically) //============================================================================= -function Mozilla_doRainbowAnchor(e) +function Mozilla_doRainbowAnchor(evt) { + var e = new xEvent(evt); if (act == 0) { obj = e.target; while (obj.nodeName != 'A' && obj.nodeName != 'BODY') { obj = obj.parentNode; - if (obj.nodeName == 'A' || obj.nodeName == 'BODY') - break; + if(typeof(obj)=='undefined'||!obj) return; + if (obj.nodeName == 'A' || obj.nodeName == 'BODY') break; } if (obj.nodeName == 'A' && obj.href != '') { diff --git a/addons/rainbow_link/rainbow_link.addon.php b/addons/rainbow_link/rainbow_link.addon.php index 931f2d66d..61cc57db8 100644 --- a/addons/rainbow_link/rainbow_link.addon.php +++ b/addons/rainbow_link/rainbow_link.addon.php @@ -10,6 +10,14 @@ * rainbow.js는 http://www.dynamicdrive.com에서 제작하였으며 저작권을 가지고 있습니다. **/ + // admin 모듈의 경우 무조건 패스 + /* + if(Context::get('module') == 'admin') { + $this->rainbow_link_is_called = true; + return; + } + */ + // 한번이라도 요청이 되었다면 패스 if($this->rainbow_link_is_called) return; $this->rainbow_link_is_called = true; diff --git a/modules/krzip/conf/module.xml b/modules/krzip/conf/module.xml index 20d6bac9b..685353430 100644 --- a/modules/krzip/conf/module.xml +++ b/modules/krzip/conf/module.xml @@ -2,6 +2,8 @@ + + diff --git a/modules/krzip/krzip.class.php b/modules/krzip/krzip.class.php index 1f034f553..f815fc64e 100644 --- a/modules/krzip/krzip.class.php +++ b/modules/krzip/krzip.class.php @@ -9,7 +9,7 @@ var $hostname = 'kr.zip.zeroboard.com'; var $port = 80; - var $query = '/server.php?addr3=%s'; + var $query = '/server.php?addr3='; } ?> diff --git a/modules/krzip/krzip.controller.php b/modules/krzip/krzip.controller.php new file mode 100644 index 000000000..6042e5f5b --- /dev/null +++ b/modules/krzip/krzip.controller.php @@ -0,0 +1,33 @@ +krzip_server_hostname) $args->krzip_server_hostname = $this->hostname; + if(!$args->krzip_server_port) $args->krzip_server_port = $this->port; + if(!$args->krzip_server_query) $args->krzip_server_query = $this->query; + + // module Controller 객체 생성하여 입력 + $oModuleController = &getController('module'); + $output = $oModuleController->insertModuleConfig('krzip',$args); + return $output; + } + + } +?> diff --git a/modules/krzip/krzip.model.php b/modules/krzip/krzip.model.php index 76f39e154..b0ce3ceea 100644 --- a/modules/krzip/krzip.model.php +++ b/modules/krzip/krzip.model.php @@ -18,12 +18,19 @@ * 동이름을 입력받아서 지정된 서버에 우편번호 목록을 요청한다 **/ function getZipCodeList() { + // 설정 정보를 받아옴 (module model 객체를 이용) + $oModuleModel = &getModel('module'); + $config = $oModuleModel->getModuleConfig('krzip'); + if($args->krzip_server_hostname) $this->hostname = $args->krzip_server_hostname; + if($args->krzip_server_port) $this->port = $args->krzip_server_port; + if($args->krzip_server_query) $this->query = $args->krzip_server_query; + // 동네 이름을 받음 $addr = trim(Context::get('addr')); if(!$addr) return new Object(-1,'msg_not_exists_addr'); // 지정된 서버에 요청을 시도한다 - $query_string = sprintf($this->query,urlencode($addr)); + $query_string = $this->query.urlencode($addr); $fp = fsockopen($this->hostname, $this->port, $errno, $errstr); if(!$fp) return new Object(-1, 'msg_fail_to_socket_open'); diff --git a/modules/krzip/krzip.view.php b/modules/krzip/krzip.view.php new file mode 100644 index 000000000..0fe41e628 --- /dev/null +++ b/modules/krzip/krzip.view.php @@ -0,0 +1,32 @@ +setTemplatePath($this->module_path.'tpl.admin'); + } + + /** + * @brief 애드온 목록을 보여줌 + **/ + function dispConfig() { + // 설정 정보를 받아옴 (module model 객체를 이용) + $oModuleModel = &getModel('module'); + $config = $oModuleModel->getModuleConfig('krzip'); + Context::set('config',$config); + + // 템플릿 파일 지정 + $this->setTemplateFile('index'); + } + + + } +?> diff --git a/modules/krzip/lang/ko.lang.php b/modules/krzip/lang/ko.lang.php index 2605c381e..d01c9959e 100644 --- a/modules/krzip/lang/ko.lang.php +++ b/modules/krzip/lang/ko.lang.php @@ -5,6 +5,16 @@ * @desc : 한국어 언어팩 (기본적인 내용만 수록) **/ + // 일반 단어들 + $lang->krzip_server_hostname = "우편번호 검사 서버의 이름"; + $lang->krzip_server_port = "우편번호 검사 서버 포트"; + $lang->krzip_server_query = "우편번호 검사 서버 경로"; + + // 설명문 + $lang->about_krzip_server_hostname = "우편번호를 검사하여 결과 목록을 가져올 서버의 도메인을 입력해주세요"; + $lang->about_krzip_server_port = "우편번호를 검사서버의 포트 번호를 입력해주세요"; + $lang->about_krzip_server_query = "우편번호를 검사서버에 요청할 query url을 입력해 주세요"; + // 에러 메세지들 $lang->msg_not_exists_addr = "검색하려는 대상이 없습니다"; $lang->msg_fail_to_socket_open = "우편번호 검색 대상 서버 접속이 실패하였습니다"; diff --git a/modules/krzip/tpl.admin/filter/insert_config.xml b/modules/krzip/tpl.admin/filter/insert_config.xml new file mode 100644 index 000000000..838f14be7 --- /dev/null +++ b/modules/krzip/tpl.admin/filter/insert_config.xml @@ -0,0 +1,11 @@ + +
+ + + + + + + + +
diff --git a/modules/krzip/tpl.admin/index.html b/modules/krzip/tpl.admin/index.html new file mode 100644 index 000000000..77ca9874d --- /dev/null +++ b/modules/krzip/tpl.admin/index.html @@ -0,0 +1,33 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + +
{$lang->krzip_server_hostname} +
{$lang->about_krzip_server_hostname}
{$lang->krzip_server_port} +
{$lang->about_krzip_server_port}
{$lang->krzip_server_query} +
{$lang->about_krzip_server_query}
+ + +
+