diff --git a/modules/layout/conf/module.xml b/modules/layout/conf/module.xml index c65d76b60..06fa011cf 100644 --- a/modules/layout/conf/module.xml +++ b/modules/layout/conf/module.xml @@ -7,5 +7,6 @@ + diff --git a/modules/layout/lang/ko.lang.php b/modules/layout/lang/ko.lang.php index fa47fa269..ea78c1047 100644 --- a/modules/layout/lang/ko.lang.php +++ b/modules/layout/lang/ko.lang.php @@ -7,11 +7,16 @@ $lang->layout_name = '레이아웃 이름'; $lang->menu_count = '메뉴의 수'; - $lang->menu_name = '메뉴명'; - $lang->menu_mid = '연결모듈'; $lang->menu_management = '메뉴 관리'; $lang->depth = '단계'; + $lang->menu_name = '메뉴명'; + $lang->menu_url = '연결 url'; + $lang->menu_open_window = '새창 열기'; $lang->about_title = '모듈에 연결시 쉽게 구분할 수 있는 제목을 입력해주세요'; $lang->about_menu_management = "메뉴관리는 선택하신 레이아웃에서 사용하는 메뉴를 구성할 수 있도록 합니다.\n정해진 단계까지 메뉴를 구성 가능하며 입력하신 메뉴를 클릭하시면 상세 정보를 입력할 수 있습니다.\n폴더그림을 클릭하시면 메뉴를 확장하실 수 있습니다"; + + $lang->about_menu_name = "관리 및 브라우저 타이틀에 나타낼 메뉴의 이름을 입력해주세요"; + $lang->about_menu_url = "메뉴를 선택시 이동한 URL입니다.
다른 모듈을 설치하시고자 할때는 \"./?module=모듈명\" 또는
\"./?mid=모듈\"등으로 입력하시면 됩니다."; + $lang->about_menu_open_window = "메뉴 선택시 새창으로 띄울 것인지를 정할 수 있습니다"; ?> diff --git a/modules/layout/layout.model.php b/modules/layout/layout.model.php index 542694395..3a457906f 100644 --- a/modules/layout/layout.model.php +++ b/modules/layout/layout.model.php @@ -139,5 +139,21 @@ $this->add('menu_id', $menu_id); $this->add('menu_srl', $menu_srl); } + + /** + * @brief 특정 menu_srl의 정보를 이용하여 템플릿을 구한후 return + **/ + function getMenuInfo() { + $menu_id = Context::get('menu_id'); + $menu_srl = Context::get('menu_srl'); + $layuot = Context::get('layout'); + + require_once("./classes/template/TemplateHandler.class.php"); + $oTemplate = new TemplateHandler(); + $tpl = $oTemplate->compile($this->module_path.'tpl.admin', 'layout_menu_info'); + + $this->add('menu_id', $menu_id); + $this->add('tpl', $tpl); + } } ?> diff --git a/modules/layout/tpl.admin/insert_layout2.html b/modules/layout/tpl.admin/insert_layout2.html index 47fe96ed9..7c885ca84 100644 --- a/modules/layout/tpl.admin/insert_layout2.html +++ b/modules/layout/tpl.admin/insert_layout2.html @@ -8,7 +8,9 @@
- +
+ + @@ -41,18 +43,24 @@ ({$val->maxdepth} {$lang->depth}) diff --git a/modules/layout/tpl.admin/js/admin.js b/modules/layout/tpl.admin/js/admin.js index 0b12f35c6..eadd21c4a 100644 --- a/modules/layout/tpl.admin/js/admin.js +++ b/modules/layout/tpl.admin/js/admin.js @@ -1,9 +1,34 @@ /* 레이아웃 메뉴에를 클릭시 적용할 함수 */ -function doDisplayMenuInfo(menu_id, obj) { +function doGetMenuInfo(menu_id, obj) { // layout, menu_id, node_srl을 추출 var fo_obj = xGetElementById("fo_layout"); - var node_srl = obj.getAttribute("node_srl"); var layout = fo_obj.layout.value; + var node_srl = 0; + if(typeof(obj.getAttribute)!="undefined") { + node_srl = obj.getAttribute("node_srl"); + } else { + node_srl = obj.node_srl; + } + + var params = new Array(); + params["menu_id"] = menu_id; + params["layout"] = layout; + params["menu_srl"] = node_srl; // 서버에 요청하여 해당 노드의 정보를 수정할 수 있도록 한다. + var response_tags = new Array('error','message','menu_id', 'tpl'); + exec_xml('layout', 'getMenuInfo', params, completeGetMenuInfo, response_tags, params); +} + +/* 빈 메뉴 추가시 사용 */ +function doInsertLayoutMenu(menu_id) { + var params = {node_srl:0} + doGetMenuInfo(menu_id, params); +} + +/* 서버로부터 받아온 메뉴 정보를 출력 */ +function completeGetMenuInfo(ret_obj, response_tags) { + var menu_id = ret_obj['menu_id']; + var tpl = ret_obj['tpl']; + xInnerHtml("menu_zone_info_"+menu_id, tpl); } diff --git a/modules/layout/tpl.admin/layout_menu_info.html b/modules/layout/tpl.admin/layout_menu_info.html index 4b75cfe00..029761b24 100644 --- a/modules/layout/tpl.admin/layout_menu_info.html +++ b/modules/layout/tpl.admin/layout_menu_info.html @@ -1,10 +1,25 @@ -
{$lang->layout_name} {$info->title} ver {$info->version} ({$layout}) - - - - +
+ + +
+ +
+ + + +
+
+ +
-
- - -
+
++ - - + + - - + + + + + + + + + + + + + + +
{$lang->menu_name}name{$lang->menu_name}
{$lang->menu_mid}name{$lang->about_menu_name}
{$lang->menu_url}
{$lang->about_menu_url}
{$lang->menu_open_window}open_window=="Y")-->checked="true" />
{$lang->about_menu_open_window}