parameciofm/paramecio/citoplasma/templates/forms/i18nform.phtml
Antonio de la Rosa 0b15435ee4 Fixes in i18n
2017-04-30 05:32:18 +02:00

84 lines
2.1 KiB
PHTML

${add_js_home_local('tools.js', 'admin')}
<%
choose=''
%>
<div id="languages_form">
<%def name="select_lang(i18n, lang_selected)">
% if i18n==lang_selected:
<%
return "choose_flag"
%>
% else:
<%
return "no_choose_flag"
%>
% endif
</%def>
<%def name="hide_lang(i18n, lang_selected)">
% if i18n!=lang_selected:
style="display:none;"
% endif
</%def>
<input type="hidden" name="${name_form}" id="${name_form}_i18n_value" value="" />
% if lang_selected!=None:
% for i18n in arr_i18n:
${form.change_name(name_form+'_'+i18n)}
<%
form.default_value=default_value[i18n]
%>
<span ${hide_lang(i18n, lang_selected)} id="${name_form}_${i18n}_switch" class="${name_form}_i18n_form">${form.form()|n}</span>
% endfor
% for i18n in arr_i18n:
<a class="${select_lang(i18n, lang_selected)} ${name_form}_i18n_flag lang_form" id="${name_form}_${i18n}_element" href="#"><img src="${make_media_url_module('images/languages/'+i18n+'.png', 'admin')}" alt="${name_form}_${i18n}"/></a>
% endfor
% endif
</div>
<script>
$(".${name_form}_i18n_flag").click(function () {
$('.${name_form}_i18n_flag').removeClass('choose_flag').addClass('no_choose_flag');
$(this).addClass('choose_flag');
name_id=$(this).attr('id').replace('_element', '');
name_form=name_id.split('_')[0];
$('.'+name_form+'_i18n_form').hide();
$('#'+name_id+'_switch').show();
return false;
});
//In submit convert in json
$(".${name_form}_i18n_flag").closest('form').submit( function () {
arr_i18n={}
$(".${name_form}_i18n_form").each(function () {
var lang=$(this).attr('id').replace('text_','').replace('_switch', '');
var child_input=$('#${name_form}_'+lang+'_form');
arr_i18n[lang]=child_input.val();
});
//$("#${name_form}_i18n_value").val(JSON.stringify(arr_i18n));
//$("#${name_form}_i18n_value").attr('value', JSON.stringify(arr_i18n));
document.getElementById("${name_form}_i18n_value").value=JSON.stringify(arr_i18n);
return true;
});
</script>