/* NHN (developers@xpressengine.com) */ jQuery(function($){ // get add/edit menu title var $lang = $('#editMenu h2:first span'); xe.lang.add_menu = $lang.eq(0).text(); xe.lang.edit_menu = $lang.eq(1).text(); var $grant_lang = $('#groupList select[name=menu_grant_default] option'); xe.lang.grant_to_all = $grant_lang.eq(0).text(); xe.lang.grant_to_login_user = $grant_lang.eq(1).text(); xe.lang.grant_to_group = $grant_lang.eq(2).text(); $lang.empty(); $('form.siteMap') .delegate('li:not(.placeholder)', 'dropped.st', function() { var $this = $(this), $pkey, $mkey, is_child; $pkey = $this.find('>input._parent_key'); is_child = !!$this.parent('ul').parent('li').length; if(is_child) { $pkey.val($this.parent('ul').parent('li').find('>input._item_key').val()); } else { $pkey.val('0'); } }); var editForm = $('#editForm'); var menuSrl = null; var menuForm = null; var menuUrl = null; $('a._edit').click(function(){ resetEditForm(); var itemKey = $(this).parent().prevAll('._item_key').val(); var itemLayoutKey = $(this).parent().prevAll('._item_layout_key').val(); var moduleSrl = $(this).parent().prevAll('input._module_srl_key').val(); editForm.find('input[name=module_srl]').val(moduleSrl); menuSrl = $(this).parents().prevAll('input[name=menu_srl]').val(); menuForm = $('#menu_'+menuSrl); var menuItemSrl = null; menuItemSrl = itemKey; var params = new Array(); var response_tags = new Array('menu_item'); params['menu_item_srl'] = menuItemSrl; exec_xml("menu","getMenuAdminItemInfo", params, completeGetActList, response_tags); }); function completeGetActList(obj) { var menuItem = obj.menu_item; menuUrl = menuItem.url; var successReturnUrl = editForm.find('input[name=success_return_url]').val() + menuItem.menu_srl; var menuName = $('
').html(menuItem.name).text(); editForm.find('.h2').text(xe.lang.edit_menu); editForm.find('input[name=menu_srl]').val(menuItem.menu_srl); editForm.find('input[name=menu_item_srl]').val(menuItem.menu_item_srl); editForm.find('input[name=parent_srl]').val(menuItem.parent_srl); editForm.find('input[name=menu_name_key]').val(menuItem.name_key); editForm.find('input[name=menu_name]').val(menuName); editForm.find('input[name=success_return_url]').val(successReturnUrl); var moduleType = menuItem.moduleType; if(menuItem.pageType) moduleType = menuItem.pageType; var inputCType = editForm.find('input[name=cType]'); if(moduleType == 'url') { inputCType[2].checked = true; editForm.find('input[name=menu_url]').val(menuItem.url); } else { inputCType[1].checked = true; editForm.find('select[name=module_type]').val(moduleType); editForm.find('select[name=select_menu_url]').val(menuItem.url); editForm.find('select[name=layout_srl]').val(menuItem.layoutSrl); } typeCheck(); getModuleList(); var openWindow = menuItem.open_window; var openWindowForm = editForm.find('input=[name=menu_open_window]'); if(openWindow == 'Y') openWindowForm[1].checked = true; else openWindowForm[0].checked = true; var expand = menuItem.expand; var expandForm = editForm.find('input=[name=menu_expand]'); if(expand == 'Y') expandForm[0].checked = true; else expandForm[0].checked = false; // button image if(menuItem.normal_btn) $('#normal_btn_preview').html(' Delete'); if(menuItem.hover_btn) $('#hover_btn_preview').html(' Delete'); if(menuItem.active_btn) $('#active_btn_preview').html(' Delete'); var htmlBuffer = ''; htmlBuffer+='
'+groupObj.title+'' } htmlBuffer +='
'; $('#groupList').html(htmlBuffer); // reset label var checked_labels = []; editForm.find('label').css('font-weight', ''); editForm.find('input:checked').each(function(){ editForm.find('label[for='+this.id+']').css('font-weight', 'bold'); }); } $('a._delete').click(function() { if(confirmDelete()) { menuSrl = $(this).parents().prevAll('input[name=menu_srl]').val(); menuForm = $('#menu_'+menuSrl); var menu_item_srl = $(this).parent().prevAll('._item_key').val(); menuForm.find('input[name=menu_item_srl]').val(menu_item_srl); menuForm.find('input[name=act]').val('procMenuAdminDeleteItem'); menuForm.submit(); } }); var kindModuleLayer = $('#kindModule'); var createModuleLayer = $('#createModule'); var selectModuleLayer = $('#sModule_id'); var insertUrlLayer = $('#insertUrl'); var selectLayoutLayer = $('#selectLayout'); function resetEditForm() { kindModuleLayer.hide(); createModuleLayer.hide() selectModuleLayer.hide() insertUrlLayer.hide() selectLayoutLayer.hide() editForm.find('input[name=menu_item_srl]').val(''); editForm.find('input[name=parent_srl]').val(0); editForm.find('input[name=menu_name]').val(''); editForm.find('input[name=cType]').attr('checked', false); editForm.find('input[name=create_menu_url]').val(''); editForm.find('select[name=layout_srl]').val(xe.current_layout); editForm.find('input[name=menu_url]').val(''); editForm.find('input[name=menu_open_window]')[0].checked = true; editForm.find('input[name=group_srls\\[\\]]').attr('checked', false); editForm.find('label').css('font-weight', ''); } $('a._add').click(function() { var $this = $(this); resetEditForm(); editForm.find('.h2').text(xe.lang.add_menu); editForm.find('input[name=menu_srl]').val($this.closest('form').find('input[name=menu_srl]:first').val()); editForm.find('input[name=parent_srl]').val($this.parent().prevAll('input._item_key').val()); }); $('input._typeCheck').click(typeCheck); var checkedValue = null; function typeCheck() { var inputTypeCheck = $('input._typeCheck'); for(var i=0; i<3; i++) { if(inputTypeCheck[i].checked) { checkedValue = inputTypeCheck[i].value; break; } } if(checkedValue == 'CREATE') { kindModuleLayer.show(); createModuleLayer.show(); selectModuleLayer.hide(); insertUrlLayer.hide(); selectLayoutLayer.show(); changeLayoutList(); } else if(checkedValue == 'SELECT') { kindModuleLayer.show(); createModuleLayer.hide(); selectModuleLayer.show(); insertUrlLayer.hide(); selectLayoutLayer.show(); changeLayoutList(); } // type is URL else { kindModuleLayer.hide(); createModuleLayer.hide() selectModuleLayer.hide() insertUrlLayer.show() selectLayoutLayer.hide() } } $('#kModule').change(getModuleList).change(); function getModuleList() { var params = new Array(); var response_tags = ['error', 'message', 'module_list']; exec_xml('module','procModuleAdminGetList',params, completeGetModuleList, response_tags); } var layoutList = new Array(); var moduleList = new Array(); function completeGetModuleList(ret_obj) { var module = $('#kModule').val(); if(module == 'WIDGET' || module == 'ARTICLE' || module == 'OUTSIDE') module = 'page'; var htmlBuffer = ""; if(ret_obj.module_list[module] != undefined) { var midList = ret_obj.module_list[module].list; var midListByCategory = new Object(); for(x in midList) { if(!midList.hasOwnProperty(x)){ continue; } var midObject = midList[x]; if(!midListByCategory[midObject.module_category_srl]) { midListByCategory[midObject.module_category_srl] = new Array(); } midListByCategory[midObject.module_category_srl].push(midObject); } for(x in midListByCategory) { var midGroup = midListByCategory[x]; htmlBuffer += '' for(y in midGroup) { var midObject = midGroup[y]; htmlBuffer += '' } } else htmlBuffer = ''; selectModuleLayer.html(htmlBuffer); changeLayoutList(); } $('#sModule_id').change(changeLayoutList).change(); function changeLayoutList() { if(checkedValue == 'SELECT') { var mid = $('#sModule_id').val(); $('#layoutSrl').val(layoutList[mid]); editForm.find('input[name=module_srl]').val(moduleList[mid]); } else if(checkedValue == 'CREATE') { $('#layoutSrl').val(xe.current_layout); } } function tgMapBtn(){ $('.x .siteMap>ul:visible').next('.btnArea').slideDown(50); $('.x .siteMap>ul:hidden').next('.btnArea').slideUp(50); } tgMapBtn(); $('a.tgMap').click(function() { var $this = $(this); var curToggleStatus = getCookie('sitemap_toggle_'+$this.attr('href')); var toggleStatus = curToggleStatus == 1 ? '0' : 1; $($this.attr('href')).slideToggle('fast'); $this.closest('.siteMap').toggleClass('fold'); setCookie('sitemap_toggle_'+$this.attr('href'), toggleStatus); setTimeout(function(){ tgMapBtn(); }, 250); return false; }); }); function confirmDelete() { if(confirm(xe.lang.confirm_delete)) return true; return false; } /* 메뉴 권한 선택용 */ function doShowMenuGrantZone() { jQuery(".grant_default").each( function() { var id = "#zone_menu_grant"; if(!jQuery(this).val()) jQuery(id).css("display","block"); else jQuery(id).css("display","none"); } ); }