diff --git a/modules/menu/tpl/sitemap.html b/modules/menu/tpl/sitemap.html
index 7e5449de6..81ecbc2b1 100644
--- a/modules/menu/tpl/sitemap.html
+++ b/modules/menu/tpl/sitemap.html
@@ -19,16 +19,16 @@
@@ -660,17 +659,78 @@ function onSiteMapReceived(htData){
})
.bind("loaded.jstree", function (event, data) {
data.inst.open_all();
+
+ var sRenameId = $._xeAdminVar.sRenameOnload;
+ $._xeAdminVar.sRenameOnload = null;
+
+ if(sRenameId){
+ console.log('renaming', sRenameId);
+ $("#siteMapTree").jstree("rename", $("#menu"+sRenameId));
+ }
})
+ .bind("rename_node.jstree", function(event, data){
+ console.log(1, event, data);
+ /*
+ var params = new Array();
+ params['menu_srl'] = '889';
+ params['title'] = "제목2";
+ exec_xml("menu","procMenuAdminUpdate", params, completeTmp)
+ */
+ var sTitle = data.args[1];
+ var params = {};
+
+ //console.log(htNodeInfo[$._xeAdminVar.sSelectedMenuSrl]);
+ var htOldInfo = htNodeInfo[$._xeAdminVar.sSelectedMenuSrl];
+ if(htOldInfo.sText === sTitle) return;
+
+ params['title'] = sTitle;
+ params['menu_srl'] = $._xeAdminVar.sSelectedMenuSrl;
+ $.exec_json("menu.procMenuAdminUpdate", params, function(htData){
+ console.log(htData);
+ if(htData.error !== 0){
+ alert(htData.message);
+ return;
+ }
+
+ loadSiteMap();
+ return;
+ });
+ })
.bind("create_node.jstree", function (event, data) {
- var btns = $("
").addClass("side").html(' ');
- data.rslt.obj.append(btns);
+ //console.log(data.args[2].data[0]);
+ var sTitle = data.args[2].data[0];
+ var params = {};
+ params['title'] = sTitle;
+ $.exec_json("menu.procMenuAdminInsert", params, function(htData){
+ console.log(htData);
+ if(htData.error !== 0){
+ alert(htData.message);
+ return;
+ }
+
+ $._xeAdminVar.sRenameOnload = htData.menu_srl;
+ $._xeAdminVar.sSelectedMenuSrl = htData.menu_srl;
+
+ loadSiteMap();
+ return;
+ /*
+ $(data.rslt.obj).attr("id", "menu"+htData.menu_srl);
+ $(data.rslt.obj).find('a').attr("data-param", '{ "sMenuId":"'+htData.menu_srl+'"}');
+ */
+
+ });
})
.bind("select_node.jstree", function(event, data){
- var sSelectedSrl = data.rslt.obj.attr("id").replace("menu", "");
- $._xeAdminVar.sSelectedSrl = sSelectedSrl;
+ $("#siteMapTree input").blur();
+ //console.log($("#siteMapTree input"));
+
+ var sSelectedMenuSrl = data.rslt.obj.attr("id").replace("menu", "");
+ $._xeAdminVar.sSelectedMenuSrl = sSelectedMenuSrl;
- showProp(sSelectedSrl);
+ showProp(sSelectedMenuSrl);
});
+
+ $('#site_map').nextAll().hide();
}
var htNodeInfo = {};
@@ -789,6 +849,15 @@ function showProp(sMenuId){
}
}
+function loadSiteMap(){
+ var $ = jQuery;
+
+ var params = {};
+ var response_tags = new Array('menuList');
+ params['menu_srl'] = 0;
+ $.exec_json("menu.getMenuAdminSiteMap", params, onSiteMapReceived);
+}
+
jQuery(function($){
var _hide = $.fn.hide;
$.fn.hide = function(speed, easing, callback, htOpt) {
@@ -830,16 +899,13 @@ jQuery(function($){
return $result;
}
- $('#site_map').nextAll().hide();
+// $('#site_map').nextAll().hide();
//$( "#tmpl_siteMap" ).template( "siteMap" );
$( "#tmpl_menuTree" ).template( "menuTree" );
$( "#tmpl_menuTreeNode" ).template( "menuTreeNode" );
- var params = {};
- var response_tags = new Array('menuList');
- params['menu_srl'] = 0;
- $.exec_json("menu.getMenuAdminSiteMap", params, onSiteMapReceived);
+ loadSiteMap();
//$.jstree._themes = "PATH/TO/FOLDER/";
//$.jstree._themes = "/maserati/modules/menu/tpl/css/themes/";
@@ -897,6 +963,10 @@ jQuery(function($){
}
// -----------------------------------------------------------------------------------------
+ $("#site_map ._addSiteMap").click(function(){
+ $("#siteMapTree").jstree("deselect_all");
+ $("#siteMapTree").jstree("create", null, "first", { data: "New Sitemap" }, null, true);
+ });
$('#propertiesRoot').bind("show", function(ev, htOpt){
$('#site_map').next().hide(null, null, null, htOpt);
@@ -911,6 +981,20 @@ jQuery(function($){
$("#siteMapTree").jstree("deselect_all");
});
+ $("._delSiteMap").click(function(){
+ var sSelectedMenuSrl = $._xeAdminVar.sSelectedMenuSrl;
+ var params = {};
+ params['menu_srl'] = sSelectedMenuSrl;
+ $.exec_json("menu.procMenuAdminDelete", params, function(htData){
+ console.log(htData);
+ if(htData.error !== 0){
+ alert(htData.message);
+ return;
+ }
+
+ loadSiteMap();
+ });
+ });
$('#properties').bind("show", function(ev, htOpt){
$('#site_map').next().hide(null, null, null, htOpt);
@@ -986,8 +1070,67 @@ jQuery(function($){
$('#download').bind("hide", function(){
});
+ $('#add_page').bind("show", function(){
+ $._xeAdminVar.sSelectedModuleName = $._htMarkupActionParam.moduleName;
+ $._xeAdminVar.sSelectedModuleTitle = $._htMarkupActionParam.moduleTitle;
+
+ $(this).find("._title").html($._xeAdminVar.sSelectedModuleTitle);
+ });
+ $('#add_page ._save').bind("click", function(){
+ var sMenuName = $("#menuName1").val();
+ var sMID = $("#mid1").val();
+
+ var sSelectedModuleName = $._xeAdminVar.sSelectedModuleName;
+ var sSelectedMenuSrl = $._xeAdminVar.sSelectedMenuSrl;
+
+ console.log($._xeAdminVar, sSelectedModuleName, sSelectedMenuSrl, sMenuName, sMID);
+ /*
+ var params = new Array();
+ var response_tags = new Array('menu_item_srl');
+ params['ruleset'] = "insertMenuItem";
+ params['act'] = "procMenuAdminInsertItem";
+ params['menu_srl'] = "sitemap 번호";
+ params['menu_name_key'] = "메뉴의 이름에 다국어가 쓰였을 경우 해당 변수 명 (ex: $user_lang->userLang20120919153529020)";
+ params['menu_name'] = "사용자에게 보여줘야 할 메뉴명";
+ params['module_type'] = "모듈의 타입"; //page module일 경우 WIDGET, ARTICLE, OUTSIDE의 값을 가질 수 있으며 기타 다른 모듈은 모듈명을 사용한다.
+ params['mid'] = "모듈을 생성할 경우 모듈 mid";
+ params['menu_open_window'] = "링크를 새창으로 열 것인지의 여부('Y', 'N')";
+ params['menu_expand'] = "처음 로딩 시 메뉴가 열려 있도록 할 것인지의 여부 (Y', 'N')"
+ params['parent_srl'] = "특정 메뉴 아이템(node) 아래에 속하게 만들고 싶을 경우 해당 아이템(node)의 menu_item_srl 값. 최상위 메뉴로 만들고 싶을 경우 0을 사용하면 됨.";
+
+ exec_xml("menu","procMenuAdminInsert", params, completeTmp, response_tags)
+ */
+ var params = {};
+ var response_tags = new Array('menu_item_srl');
+ params['ruleset'] = "insertMenuItem";
+ params['act'] = "procMenuAdminInsertItem";
+ params['menu_srl'] = 59;
+ params['menu_name_key'] = "";
+ //params['title'] = 'title'; -> 이 값 넣으면 사이트맵 생성됨
+ params['menu_name'] = sMenuName;
+ params['module_type'] = sSelectedModuleName;
+ params['mid'] = sMID;
+ params['menu_open_window'] = "N";
+ params['menu_expand'] = "N"
+ params['parent_srl'] = sSelectedMenuSrl;
+ /*
+ ruleset=insertMenuItem&act=procMenuAdminInsert&menu_srl=&menu_name_key=&menu_name=3333&module_type=OUTSIDE&mid=1111&menu_open_window=N&menu_expand=N&parent_srl=60&module=menu
+ */
+ $.exec_json("menu.procMenuAdminInsertItem", params, function(htData){
+ console.log(htData);
+ });
+ /*
+ Array
+ (
+ [error] => "0"
+ [message] => "등록했습니다."
+ [menu_item_srl] => "2"
+ )
+ */
+ });
+
$('#default').bind("show", function(){
- var htInfo = htNodeInfo[$._xeAdminVar.sSelectedSrl];
+ var htInfo = htNodeInfo[$._xeAdminVar.sSelectedMenuSrl];
console.log(htInfo);