admin UI bug fix

git-svn-id: http://xe-core.googlecode.com/svn/branches/maserati@12290 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
nagoon97 2012-11-23 05:57:50 +00:00
parent 5b4294eada
commit 76c448d62e
2 changed files with 163 additions and 71 deletions

View file

@ -68,6 +68,10 @@
<value xml:lang="ko"><![CDATA[사이트맵 수정]]></value> <value xml:lang="ko"><![CDATA[사이트맵 수정]]></value>
<value xml:lang="en"><![CDATA[Edit Sitemap]]></value> <value xml:lang="en"><![CDATA[Edit Sitemap]]></value>
</item> </item>
<item name="sitemap_name">
<value xml:lang="ko"><![CDATA[사이트맵 이름]]></value>
<value xml:lang="en"><![CDATA[Sitemap Name]]></value>
</item>
<item name="add_menu"> <item name="add_menu">
<value xml:lang="ko"><![CDATA[메뉴 추가]]></value> <value xml:lang="ko"><![CDATA[메뉴 추가]]></value>
<value xml:lang="en"><![CDATA[Add Menu Item]]></value> <value xml:lang="en"><![CDATA[Add Menu Item]]></value>
@ -84,6 +88,10 @@
<value xml:lang="ko"><![CDATA[사이트맵]]></value> <value xml:lang="ko"><![CDATA[사이트맵]]></value>
<value xml:lang="en"><![CDATA[Sitemap]]></value> <value xml:lang="en"><![CDATA[Sitemap]]></value>
</item> </item>
<item name="edit_sitemap">
<value xml:lang="ko"><![CDATA[사이트맵 편집]]></value>
<value xml:lang="en"><![CDATA[Edit Sitemap]]></value>
</item>
<item name="add_new_sitemap"> <item name="add_new_sitemap">
<value xml:lang="ko"><![CDATA[사이트맵 추가]]></value> <value xml:lang="ko"><![CDATA[사이트맵 추가]]></value>
<value xml:lang="en"><![CDATA[Add Menu]]></value> <value xml:lang="en"><![CDATA[Add Menu]]></value>
@ -233,8 +241,8 @@
<value xml:lang="vi"><![CDATA[Trải rộng]]></value> <value xml:lang="vi"><![CDATA[Trải rộng]]></value>
</item> </item>
<item name="menu_img_btn"> <item name="menu_img_btn">
<value xml:lang="ko"><![CDATA[이미지 버튼]]></value> <value xml:lang="ko"><![CDATA[메뉴 링크 이미지]]></value>
<value xml:lang="en"><![CDATA[Image button]]></value> <value xml:lang="en"><![CDATA[Menu link image]]></value>
<value xml:lang="jp"><![CDATA[イメージボタン]]></value> <value xml:lang="jp"><![CDATA[イメージボタン]]></value>
<value xml:lang="zh-CN"><![CDATA[图片按钮]]></value> <value xml:lang="zh-CN"><![CDATA[图片按钮]]></value>
<value xml:lang="zh-TW"><![CDATA[圖片按鈕]]></value> <value xml:lang="zh-TW"><![CDATA[圖片按鈕]]></value>
@ -249,7 +257,7 @@
<value xml:lang="en"><![CDATA[No image]]></value> <value xml:lang="en"><![CDATA[No image]]></value>
</item> </item>
<item name="menu_normal_btn"> <item name="menu_normal_btn">
<value xml:lang="ko"><![CDATA[일반]]></value> <value xml:lang="ko"><![CDATA[기본]]></value>
<value xml:lang="en"><![CDATA[Normal]]></value> <value xml:lang="en"><![CDATA[Normal]]></value>
<value xml:lang="jp"><![CDATA[一般ボタン]]></value> <value xml:lang="jp"><![CDATA[一般ボタン]]></value>
<value xml:lang="zh-CN"><![CDATA[普通]]></value> <value xml:lang="zh-CN"><![CDATA[普通]]></value>
@ -741,8 +749,8 @@ Menu không phải là người quản lý, nhiệm vụ của nó chỉ là li
<value xml:lang="en"><![CDATA[Install other layouts]]></value> <value xml:lang="en"><![CDATA[Install other layouts]]></value>
</item> </item>
<item name="layout_html_css_settings"> <item name="layout_html_css_settings">
<value xml:lang="ko"><![CDATA[레이아웃 HTML/CSS 설정]]></value> <value xml:lang="ko"><![CDATA[HTML/CSS 설정]]></value>
<value xml:lang="en"><![CDATA[Layout HTML/CSS settings]]></value> <value xml:lang="en"><![CDATA[HTML/CSS settings]]></value>
</item> </item>
<item name="use_site_default_skin"> <item name="use_site_default_skin">
<value xml:lang="ko"><![CDATA[사이트 기본 스킨 사용]]></value> <value xml:lang="ko"><![CDATA[사이트 기본 스킨 사용]]></value>
@ -792,6 +800,11 @@ Menu không phải là người quản lý, nhiệm vụ của nó chỉ là li
<value xml:lang="ko"><![CDATA[바로가기]]></value> <value xml:lang="ko"><![CDATA[바로가기]]></value>
<value xml:lang="en"><![CDATA[Shortcut]]></value> <value xml:lang="en"><![CDATA[Shortcut]]></value>
</item> </item>
<item name="shortcut_desc">
<value xml:lang="ko"><![CDATA[URL 또는 다른 메뉴에 대한 링크입니다.]]></value>
<value xml:lang="en"><![CDATA[A shortcut is a link to a URL or to another menu]]></value>
</item>
<item name="msg_target_is_sub_of_origin"> <item name="msg_target_is_sub_of_origin">
<value xml:lang="ko"><![CDATA[대상 메뉴가 원본 메뉴의 하위 메뉴 입니다.]]></value> <value xml:lang="ko"><![CDATA[대상 메뉴가 원본 메뉴의 하위 메뉴 입니다.]]></value>
<value xml:lang="en"><![CDATA[Target menu is sub of origin menu.]]></value> <value xml:lang="en"><![CDATA[Target menu is sub of origin menu.]]></value>

View file

@ -53,15 +53,35 @@
</li> </li>
</script> </script>
</section> </section>
<button type="button" class="x_btn x_btn-link _addSiteMap" style="position:absolute;right:5px;bottom:4px;color:#000"><i class="x_icon-plus-sign"></i> {$lang->add_new_sitemap}</button> <button type="button" class="x_btn x_btn-link _addSiteMap1" data-admin-show="#add_sitemap" style="position:absolute;right:5px;bottom:4px;color:#000"><i class="x_icon-plus-sign"></i> {$lang->add_new_sitemap}</button>
</div> </div>
</div> </div>
<div class="col" id="add_sitemap" style="display:none">
<section>
<h1>{$lang->add_new_sitemap}</h1>
<div class="cnt">
<ul class="nav _itemList">
<li>
<div class="multilingual x_input-append">
<label for="sitemapName">{$lang->sitemap_name}</label>
<input id="sitemapName" class="_sitemapName" type="text" required style="width:179px">
</div>
</li>
</ul>
<div class="btnBoth">
<button type="reset" class="x_btn x_pull-left" data-admin-hide="#sitemap_general">{$lang->cmd_cancel}</button>
<button type="button" class="x_btn x_btn-primary x_pull-right _save">{$lang->cmd_confirm}</button>
</div>
</div>
</section>
<button type="button" class="x_close" data-admin-hide="#add_sitemap">&times;</button>
</div>
<div class="col" id="propertiesRoot" style="display:none"> <div class="col" id="propertiesRoot" style="display:none">
<section> <section>
<h1 class="title"><!--사이트맵 이름--></h1> <h1 class="title"><!--사이트맵 이름--></h1>
<div class="cnt"> <div class="cnt">
<ul class="nav"> <ul class="nav">
<li><a href="#addSiteMap" data-admin-show="#add_sitemap">{$lang->edit_sitemap} <i class="x_icon-circle-arrow-right"></i></a></li> <li><a href="#sitemap_general" data-admin-show="#sitemap_general">{$lang->edit_sitemap} <i class="x_icon-circle-arrow-right"></i></a></li>
<li><a href="#add" data-admin-show="#add">{$lang->add_menu} <i class="x_icon-circle-arrow-right"></i></a></li> <li><a href="#add" data-admin-show="#add">{$lang->add_menu} <i class="x_icon-circle-arrow-right"></i></a></li>
<li><button type="button" class="_edit_paste" disabled>{$lang->paste}</button></li> <li><button type="button" class="_edit_paste" disabled>{$lang->paste}</button></li>
<li><button class="_delSiteMap" type="button">{$lang->cmd_delete}</button></li> <li><button class="_delSiteMap" type="button">{$lang->cmd_delete}</button></li>
@ -71,6 +91,26 @@
</section> </section>
<button type="button" class="x_close" data-admin-hide="#propertiesRoot">&times;</button> <button type="button" class="x_close" data-admin-hide="#propertiesRoot">&times;</button>
</div> </div>
<div class="col" id="sitemap_general" style="display:none">
<section>
<h1>{$lang->edit_sitemap}</h1>
<div class="cnt">
<ul class="nav _itemList">
<li>
<div class="multilingual x_input-append">
<label for="sitemapName2">{$lang->sitemap_name}</label>
<input id="sitemapName2" class="_sitemapName" type="text" required style="width:179px">
</div>
</li>
</ul>
<div class="btnBoth">
<button type="reset" class="x_btn x_pull-left" data-admin-hide="#sitemap_general">{$lang->cmd_cancel}</button>
<button type="button" class="x_btn x_btn-primary x_pull-right _save">{$lang->cmd_confirm}</button>
</div>
</div>
</section>
<button type="button" class="x_close" data-admin-hide="#sitemap_general">&times;</button>
</div>
<div class="col prop-general" id="properties"> <div class="col prop-general" id="properties">
<section> <section>
<h1><a href="#" target="_blank" class="title"><!--메뉴 이름--></a></h1> <h1><a href="#" target="_blank" class="title"><!--메뉴 이름--></a></h1>
@ -586,6 +626,7 @@
<button type="button" class="x_btn x_btn-inverse _ok">{$lang->cmd_confirm}</button> <button type="button" class="x_btn x_btn-inverse _ok">{$lang->cmd_confirm}</button>
</span> </span>
</div> </div>
<button type="button" class="x_close _cancel" style="position:absolute;top:0;right:0">&times;</button>
</fieldset> </fieldset>
<iframe name="submitTarget" src="about:_blank" style="position:absolute; top:-10000px; left:-10000px; width:1025px;height:769px"></iframe> <iframe name="submitTarget" src="about:_blank" style="position:absolute; top:-10000px; left:-10000px; width:1025px;height:769px"></iframe>
@ -612,6 +653,7 @@
xe.lang.img_uploaded = '{$lang->img_uploaded}'; xe.lang.img_uploaded = '{$lang->img_uploaded}';
xe.lang.img_deleted = '{$lang->img_deleted}'; xe.lang.img_deleted = '{$lang->img_deleted}';
xe.lang.no_use_layout = '{$lang->no_use_layout}'; xe.lang.no_use_layout = '{$lang->no_use_layout}';
xe.lang.shortcut_desc = '{$lang->shortcut_desc}';
</script> </script>
<!--[if IE 7]> <!--[if IE 7]>
@ -733,74 +775,16 @@ function onSiteMapReceived(htData){
$("#siteMapTree").removeClass("_node_renaming"); $("#siteMapTree").removeClass("_node_renaming");
}) })
.bind("rename_node.jstree", function(event, data){ .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 sTitle = data.args[1];
var params = {};
//console.log(htNodeInfo[$._xeAdminVar.sSelectedMenuSrl]);
var htOldInfo = htNodeInfo[$._xeAdminVar.sSelectedMenuSrl]; var htOldInfo = htNodeInfo[$._xeAdminVar.sSelectedMenuSrl];
if(htOldInfo.sText === sTitle) return; if(htOldInfo.sText === sTitle) return;
params['title'] = sTitle; var sMenuSrl = $._xeAdminVar.sSelectedMenuSrl;
params['menu_srl'] = $._xeAdminVar.sSelectedMenuSrl;
$.exec_json("menu.procMenuAdminUpdate", params, function(htData){
//console.log(htData);
if(htData.error !== 0){
alert(htData.message);
return;
}
$._xeAdminVar.sSelectOnload = $._xeAdminVar.sSelectedMenuSrl; renameSitemap(sMenuSrl, sTitle);
loadSiteMap();
return;
});
/*
var sSelectedMenuSrl = $._xeAdminVar.sSelectedMenuSrl;
console.log(sSelectedMenuSrl, $("#menu"+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();
});
*/
}) })
.bind("create_node.jstree", function (event, data) { .bind("create_node.jstree", function (event, data) {
//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){ .bind("select_node.jstree", function(event, data){
$("#siteMapTree input").blur(); $("#siteMapTree input").blur();
@ -1069,6 +1053,25 @@ function createTreeMarkup(aNode, sParentSrl, sMenuTree, sMenuTreeNode){
return $.tmpl( sMenuTree, {Nodes:sResult} ).get()[0].outerHTML; return $.tmpl( sMenuTree, {Nodes:sResult} ).get()[0].outerHTML;
} }
function renameSitemap(sMenuSrl, sTitle){
var $ = jQuery;
var params = {};
params.title = sTitle;
params.menu_srl = sMenuSrl;
$.exec_json("menu.procMenuAdminUpdate", params, function(htData){
if(htData.error !== 0){
alert(htData.message);
return;
}
$._xeAdminVar.sSelectOnload = sMenuSrl;
loadSiteMap();
return;
});
}
function showProp(sMenuId){ function showProp(sMenuId){
var $ = jQuery; var $ = jQuery;
$._htMarkupActionParam = {sMenuId: sMenuId}; $._htMarkupActionParam = {sMenuId: sMenuId};
@ -1104,7 +1107,7 @@ function setItemTypes(htTypes){
$._xeAdminVar.htItemTypes._SHORTCUT = { $._xeAdminVar.htItemTypes._SHORTCUT = {
title: xe.lang.shortcut, title: xe.lang.shortcut,
moduleName:'', moduleName:'',
description : "클릭 시에 특정 URL이나 다른 메뉴로 가는 메뉴" description : xe.lang.shortcut_desc
} }
//console.log($._xeAdminVar.htItemTypes); //console.log($._xeAdminVar.htItemTypes);
} }
@ -1395,6 +1398,8 @@ jQuery(function($){
$('#propertiesRoot').bind("hide", function(ev, htOpt){ $('#propertiesRoot').bind("hide", function(ev, htOpt){
if(htOpt && htOpt.bOpeningProp) return; if(htOpt && htOpt.bOpeningProp) return;
if($('#properties').is(':visible')) return;
$("#siteMapTree").jstree("deselect_all"); $("#siteMapTree").jstree("deselect_all");
}); });
$('#properties ._edit_cut').click(function(){ $('#properties ._edit_cut').click(function(){
@ -1409,6 +1414,58 @@ jQuery(function($){
$('#menu'+$._xeAdminVar.sCopySourceMenuSrl).addClass('_isCut'); $('#menu'+$._xeAdminVar.sCopySourceMenuSrl).addClass('_isCut');
}); });
$('#add_sitemap').bind('hide', function(){
var $panel = $(this);
$panel.find('INPUT._sitemapName').val('');
});
$('#add_sitemap ._save').click(function(){
var $panel = $('#add_sitemap');
var sTitle = $panel.find('INPUT._sitemapName').val();;
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;
$._xeAdminVar.sSelectOnload = htData.menu_srl;
loadSiteMap();
return;
});
});
$('#sitemap_general').bind('show', function(){
var sMenuId = $._xeAdminVar.sSelectedMenuSrl;
var htInfo = htNodeInfo[sMenuId];
var $panel = $(this);
$panel.find('INPUT._sitemapName').val(htInfo.title);
});
$('#sitemap_general ._save').click(function(){
var sTitle = $('#sitemap_general INPUT._sitemapName').val();
renameSitemap($._xeAdminVar.sSelectedMenuSrl, sTitle);
//./
/*
$.exec_json("menu.procMenuAdminUpdateItem", params, function(htData){
if(htData.error !== 0){
alert(htData.message);
return;
}
// select currently selected menu
$._xeAdminVar.sSelectOnload = $._xeAdminVar.sSelectedMenuSrl;
loadSiteMap();
});
*/
});
$('#properties ._edit_copy').click(function(){ $('#properties ._edit_copy').click(function(){
//console.log(2, $._xeAdminVar.sSelectedMenuSrl); //console.log(2, $._xeAdminVar.sSelectedMenuSrl);
@ -1495,6 +1552,8 @@ jQuery(function($){
sText : '<label><input type="checkbox"> ' + xe.lang.confirm_delete_all_item + '</label>', sText : '<label><input type="checkbox"> ' + xe.lang.confirm_delete_all_item + '</label>',
bDanger : true,
fnOnOK : function(){ fnOnOK : function(){
if(!$msgBox.find('input[type="checkbox"]').attr('checked')) return true; if(!$msgBox.find('input[type="checkbox"]').attr('checked')) return true;
@ -1567,6 +1626,8 @@ jQuery(function($){
$('#properties').bind("hide", function(ev, htOpt){ $('#properties').bind("hide", function(ev, htOpt){
if(htOpt && htOpt.bOpeningProp) return; if(htOpt && htOpt.bOpeningProp) return;
if($('#propertiesRoot').is(':visible')) return;
$("#siteMapTree").jstree("deselect_all"); $("#siteMapTree").jstree("deselect_all");
}); });
$('#properties ._chkUseAsHome').click(function(){ $('#properties ._chkUseAsHome').click(function(){
@ -3027,6 +3088,8 @@ console.log(11, htDesign.htLayoutSrl.P);
bSmall: true, bSmall: true,
bDanger: true,
fnOnOK : function(){ fnOnOK : function(){
$.exec_json("layout.procLayoutAdminDelete", { $.exec_json("layout.procLayoutAdminDelete", {
layout_srl : sLayoutSrl layout_srl : sLayoutSrl
@ -3200,6 +3263,8 @@ console.log(11, htDesign.htLayoutSrl.P);
bSmall : true, bSmall : true,
bDanger : true,
fnOnOK : function(){ fnOnOK : function(){
doDelete(sMenuSrl, true, sSelectOnload); doDelete(sMenuSrl, true, sSelectOnload);
} }
@ -3225,6 +3290,8 @@ console.log(11, htDesign.htLayoutSrl.P);
sText : '<label><input type="checkbox"> ' + xe.lang.confirm_delete_all_contents + '</label>', sText : '<label><input type="checkbox"> ' + xe.lang.confirm_delete_all_contents + '</label>',
bDanger : true,
fnOnOK : function(){ fnOnOK : function(){
if(!$msgBox.find('input[type="checkbox"]').attr('checked')) return true; if(!$msgBox.find('input[type="checkbox"]').attr('checked')) return true;
@ -3343,7 +3410,8 @@ console.log(11, htDesign.htLayoutSrl.P);
for(var sName in htData.skin_info_list){ for(var sName in htData.skin_info_list){
if(!htData.skin_info_list.hasOwnProperty(sName)) continue; if(!htData.skin_info_list.hasOwnProperty(sName)) continue;
//$._xeAdminVar.htItemTypes[sModuleType] //./
//$._xeAdminVar.htItemTypes[sType][sName].S = htInfo.title;
// if nothing is selected, select the first one. // if nothing is selected, select the first one.
if(htDesign.htSkin[sType] == ""){ if(htDesign.htSkin[sType] == ""){
@ -3501,15 +3569,26 @@ console.log(11, htDesign.htLayoutSrl.P);
}); });
$._xeAdminVar.msgBox = {}; $._xeAdminVar.msgBox = {};
function msgBox(htOptions){ function msgBox(htOptions){
// sTitle, sText, fnOnOK, fnOnCancel, bSmall, bAlert, fnOnShow, fnOnHide // sTitle, sText, fnOnOK, fnOnCancel, bSmall, bAlert, fnOnShow, fnOnHide, bDanger
htOptions = htOptions || {}; htOptions = htOptions || {};
var sTitle = htOptions.sTitle || ""; var sTitle = htOptions.sTitle || "";
var sText = htOptions.sText || ""; var sText = htOptions.sText || "";
var bDanger = htOptions.bDanger || false;
$msgBox.find("._title") .html(sTitle); $msgBox.find("._title") .html(sTitle);
$msgBox.find("._text").html(sText); $msgBox.find("._text").html(sText);
var $confirmBtn = $msgBox.find('._ok');
if(bDanger){
$confirmBtn.removeClass('x_btn-inverse');
$confirmBtn.addClass('x_btn-danger');
}else{
$confirmBtn.removeClass('x_btn-danger');
$confirmBtn.addClass('x_btn-inverse');
}
// #msgBox._small {width:400px;margin-left:-200px} // #msgBox._small {width:400px;margin-left:-200px}
// #msgBox._type_alert _cancel{display:none} // #msgBox._type_alert _cancel{display:none}
if(htOptions.bSmall){ if(htOptions.bSmall){