diff --git a/modules/menu/tpl/sitemap.html b/modules/menu/tpl/sitemap.html
index 48be858e8..64a884a1c 100644
--- a/modules/menu/tpl/sitemap.html
+++ b/modules/menu/tpl/sitemap.html
@@ -872,49 +872,95 @@ function onSiteMapReceived(htData){
sMenuSrl = aSource[0].id.replace("menu", "");
sParentSrl = aNewParent[0].id.replace("menu", "");
sTargetSrl = aTargetPosRef[0].id.replace("menu", "");
- if(sParentSrl === sTargetSrl || sTargetPos === "first"){
- sTargetSrl = 0;
- }else{
- htTargetInfo = htNodeInfo[sTargetSrl];
- htParentInfo = htNodeInfo[htTargetInfo.sParentSrl];
+
+ switch(sTargetPos){
+ case "after":
+ // use the values as-is
+ break;
- console.log(htParentInfo);
+ case "before":
+ htTargetInfo = htNodeInfo[sTargetSrl];
+ htParentInfo = htNodeInfo[htTargetInfo.sParentSrl];
+
+ console.log(htParentInfo);
- aNode = htParentInfo.list;
+ aNode = htParentInfo.aNode;
- for(var i=0, nLen=aNode.length; i", sTargetSrl);
- if(aNode[i].sNodeSrl == sTargetSrl){
-
- console.log('found');
- break;
+ for(var i=0, nLen=aNode.length; i", sTargetSrl);
+ if(aNode[i].sNodeSrl == sTargetSrl){
+ console.log('found');
+ break;
+ }
}
- }
- console.log(999, i);
- //if(sParentSrl === sTargetSrl || sTargetPos === "first"){
- //htNodeInfo
+ console.log(999, i);
+
+ if(i === 0){
+ sTargetSrl = 0;
+ }else{
+ sTargetSrl = aNode[i - 1].sNodeSrl;
+ }
+ break;
+
+ case "first":
+ sTargetSrl = 0;
+ break;
+
+ case "last":
+ htParentInfo = htNodeInfo[sParentSrl];
+ console.log(222, htParentInfo, sParentSrl);
+
+ aNode = htParentInfo.aNode;
+ if(aNode.length == 0){
+ sTargetSrl = 0;
+ }else{
+ sTargetSrl = aNode[aNode.length - 1].sNodeSrl;
+ }
+ break;
+
+ default:
+ break;
}
+
+ //if(sParentSrl === sTargetSrl || sTargetPos === "first"){
+ //htNodeInfo
+//
//aNode[i].sParentSrl
//sTargetSrl = ;
//sParentSrl = ;
console.log(sMenuSrl, sTargetSrl, sParentSrl);
- /*
- params['menu_srl'] = 101;
- params['mode'] = 'move';
+
+ var params = {};
+
+ params['mode'] = 'move';
- // 위치를 이동 할 메뉴의 srl
- params['target_srl'] = 196;
+ // 위치를 이동 할 메뉴의 srl
+ params['target_srl'] = sMenuSrl;
- // 어느 부모 밑으로 이동 할지
- params['parent_srl'] = 186;
+ // 어느 부모 밑으로 이동 할지
+ params['parent_srl'] = sParentSrl;
- // parent_srl 하위의 어느 노드 뒤에 삽입 할지.
- // 0: parent_srl 바로 밑에.
- // 다른 값: 해당 srl을 가진 노드 밑에
- params['source_srl'] = 0;
- exec_xml("menu","procMenuAdminMoveItem", params, completeTmp);
- */
+ // parent_srl 하위의 어느 노드 뒤에 삽입 할지.
+ // 0: parent_srl 바로 밑에.
+ // 다른 값: 해당 srl을 가진 노드 밑에
+ params['source_srl'] = sTargetSrl;
+ //exec_xml("menu","procMenuAdminMoveItem", params, completeTmp);
+
+ $.exec_json("menu.procMenuAdminMoveItem", params, function(htData){
+ console.log(htData);
+ if(htData.error !== 0){
+ alert(htData.message);
+ return;
+ }
+
+ // select the newly created menu
+ //$._xeAdminVar.sSelectOnload = htData.menu_item_srl;
+
+ // select currently selected menu
+ $._xeAdminVar.sSelectOnload = sMenuSrl;
+ loadSiteMap();
+ });
});
$('#site_map').nextAll().hide();
@@ -1007,6 +1053,7 @@ function createTreeMarkup(aNode, sParentSrl, sMenuTree, sMenuTreeNode){
}
htNodeInfo[sNodeSrl] = aNode[i];
+ htNodeInfo[sNodeSrl].aNode = aSubNode || [];
htNodeInfo[sNodeSrl].nNodeType = nNodeType;
htNodeInfo[sNodeSrl].sNodeSrl = sNodeSrl;