mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-24 05:39:58 +09:00
Create script for multi-lingual input control page
git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@8853 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
3cd09ec9ed
commit
b87aedbd2b
2 changed files with 89 additions and 101 deletions
|
|
@ -1,32 +1,47 @@
|
|||
jQuery(function($){
|
||||
|
||||
$('li')
|
||||
// multi-lingual text list
|
||||
$('#langList')
|
||||
.find('ul').hide().attr('aria-hidden','true').end() // collapse all language input control
|
||||
.delegate('button._edit', 'click', function(){
|
||||
var $this = $(this);
|
||||
/*, site_srl = $this.data('site_srl');
|
||||
currentClickedSiteObject = $this;*/
|
||||
var $this = $(this), $ul = $this.next('ul'), form;
|
||||
|
||||
var formObj = $this.parents().find('form').first();
|
||||
// toggle input control
|
||||
if($ul.attr('aria-hidden') == 'false') {
|
||||
$ul.slideUp('fast');
|
||||
$ul.attr('aria-hidden', 'true');
|
||||
}else{
|
||||
$ul.slideDown('fast');
|
||||
$ul.attr('aria-hidden', 'false');
|
||||
}
|
||||
|
||||
// TODO : 모듈 목록을 찾아서 셀렉트 박스에 할당
|
||||
var params = new Array();
|
||||
var response_tags = ['error', 'message', 'lang_list', 'lang_name'];
|
||||
params['lang_name'] = formObj.find('input[name=lang_name]').val();
|
||||
if($ul.data('lang-loaded') == true) return;
|
||||
|
||||
$ul.data('lang-loaded', true);
|
||||
form = $this.closest('form').get(0);
|
||||
|
||||
function on_complete(ret) {
|
||||
var name = ret['lang_name'], list = ret['lang_list']['item'], elems = form.elements, item;
|
||||
|
||||
$ul.find('label+textarea').prev('label').css('visibility','hidden');
|
||||
|
||||
if(!$.isArray(list)) list = [list];
|
||||
for(var i=0,c=list.length; i < c; i++) {
|
||||
item = list[i];
|
||||
if(item && item.lang_code && elems[item.lang_code]) {
|
||||
elems[item.lang_code].value = item.value;
|
||||
if(!item.value) $(elems[item.lang_code]).prev('label').css('visibility','visible');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
exec_xml(
|
||||
'module',
|
||||
'getModuleAdminLangListByName',
|
||||
{lang_name:form.elements['lang_name'].value},
|
||||
on_complete,
|
||||
'error,message,lang_list,lang_name'.split(',')
|
||||
);
|
||||
})
|
||||
|
||||
exec_xml('module','getModuleAdminLangListByName',params, completeGetModuleList, response_tags);
|
||||
});
|
||||
});
|
||||
|
||||
function completeGetModuleList(ret_obj, response_tags)
|
||||
{
|
||||
var langName = ret_obj['lang_name'];
|
||||
var langList = ret_obj['lang_list']['item'];
|
||||
if(!jQuery.isArray(langList)) langList = [langList];
|
||||
var htmlListBuffer = '';
|
||||
|
||||
for(var x in langList)
|
||||
{
|
||||
var objLang = langList[x];
|
||||
jQuery('#' + langName + '_' + objLang.lang_code).val(objLang.value);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue