Changes between Version 2 and Version 3 of phpgwapi/internacionalizacao
- Timestamp:
- 12/13/07 14:44:33 (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
phpgwapi/internacionalizacao
v2 v3 1 2 1 = '''Internacionalização do Expresso Livre''' = 2 [[PageOutline]] 3 3 4 4 == Estrutura: == 5 5 6 6 Cada modulo possui seus arquivos de linguagem dentro da pasta nomedomodulo/setup/, o nome destes arquivos segue um padrão que é phpgw_ seguido da sigla da linguagem com a extensão .lang, por exemplo, a sigla para a linguagem português do Brasil é pt-br, então cada módulo que possui internacionalização para português precisa ter dentro da sua pasta setup um arquivo chamado phpgw_pt-br.lang com as strings utilizadas pelo módulo.[[br]][[br]] 7 Estes arquivos de linguagem tem a seguinte estrutura: String Chave <tab> Nome do modulo <tab> sigla da linguagem <tab> String na linguagem destino, abaixo segue um exemplo de um arquivo de linguagem Português do Brasil do modulo ExpressoMail:7 Estes arquivos de linguagem tem a seguinte estrutura: String Chave <tab> Nome do modulo <tab> sigla da linguagem <tab> String na linguagem destino, abaixo segue um exemplo de um arquivo de linguagem Português do Brasil do modulo [wiki:mail ExpressoMail]: 8 8 9 9 {{{ … … 12 12 Link expressoMail1_2 pt-br Link 13 13 }}} 14 Estes arquivos são lidos pelo modulo Setup e escritos no banco de dados do ExpressoLivre onde são acessados pelos modulos.14 Estes arquivos são lidos pelo modulo !Setup e escritos no banco de dados do !ExpressoLivre onde são acessados pelos módulos. 15 15 16 16 == Instalação de uma nova linguagem: == 17 17 18 Para instalar uma nova linguagem, é necessário que os arquivos de linguam estejam nos diretorios corretos, após isto, é preciso adicionar a linguagem no arquivo expresso/setup/lang/languages ( onde expresso é o diretorio da sua instalação do ExpressoLivre ) seguindo o padrão sigla <tab> Nome do idioma, Ex: pt-br Português do Brasil. Feito isso, acesse pelo browser o modulo setup do expresso (http://seuexpresso.com/setup), faça o login e clique no botão Manage Languages, a sua nova linguagem aparecerá na lista de linguagens disponiveis, agora é só clicar no botãoInstall.18 Para instalar uma nova linguagem, é necessário que os arquivos de tradução estejam nos diretórios corretos, após isto, é preciso adicionar a linguagem no arquivo expresso/setup/lang/languages (onde expresso é o diretório da sua instalação do !ExpressoLivre ) seguindo o padrão ''sigla <tab> Nome do idioma'', como ''pt-br Português do Brasil''. Feito isso, acesse pelo navegador o modulo setup do expresso (http://seuexpresso.com/setup), faça o login e clique no botão Manage Languages, a sua nova linguagem aparecerá na lista de linguagens disponíveis, agora é só clicar no botão !Install. 19 19 20 20 [[Image(setup-lang.png, 50%)]] … … 22 22 == Utilizando a API de internacionalização do Expresso Livre: == 23 23 24 Para utilizar string internacionalizadas no código do ExpressoLivre é simples, a API doeGroupware disponibiliza a função php:[[br]]24 Para utilizar mensagens internacionalizadas no código do !ExpressoLivre é simples, a !API do !eGroupware disponibiliza a função php:[[br]] 25 25 26 26 {{{ … … 28 28 }}} 29 29 30 onde $key é a string a ser internacionalizada e $m1..$m10 são parâmetros opcionais que podem ser inseridos seus valores dentro de $key da seguinte maneira, os valores %1 ... %10 serão substituidos pelos valores de $m1 ... $m10. ex:[[br]]30 onde $key é a string a ser internacionalizada e $m1..$m10 são parâmetros opcionais que podem inserir valores dentro de $key, onde os valores %1..%10 serão substituídos pelos valores de $m1 ... $m10. ex:[[br]] 31 31 32 32 {{{ 33 lang("Internacionalizando o %1.", " ExpressoLivre");33 lang("Internacionalizando o %1.", "!ExpressoLivre"); 34 34 }}} 35 35 36 irá retornar "Internacionalizando o ExpressoLivre." A string de retorno será na linguagem que está configurada nas opções do usuario, desde que $key esteja no arquivo de linguagem.36 irá retornar "Internacionalizando o !ExpressoLivre.". A string de retorno será na linguagem que está configurada nas opções do usuário, desde que $key esteja no arquivo de linguagem. 37 37 38 == Internacionalização nos módulos que utilizam JavaScript: ==38 == Internacionalização nos módulos que utilizam !JavaScript: == 39 39 40 40 === ExpressoMail: === 41 41 42 No ExpressoMail 1.2, as strings dos arquivos JavaScript são internacionalizadas usando a funçãoJavaScript:[[br]]42 No [wiki:mail ExpressoMail] 1.2, as strings dos arquivos !JavaScript são internacionalizadas usando a função !JavaScript:[[br]] 43 43 {{{ 44 44 function get_lang(_key,_arg1,_arg2,_arg3,_arg4); … … 47 47 Esta função tem a mesma estrutura da função php lang, por exemplo:[[br]] 48 48 {{{ 49 get_lang("Internacionalizando o %1.", " ExpressoLivre");49 get_lang("Internacionalizando o %1.", "!ExpressoLivre"); 50 50 }}} 51 51 52 irá retornar "Internacionalizando o ExpressoLivre." na linguagem configurada para o usuario.52 irá retornar "Internacionalizando o !ExpressoLivre." na linguagem configurada para o usuário. 53 53 === ContactCenter: === 54 54 55 No ContactCenter a internacionalização das strings em código JavaScript funciona de uma maneira um pouco diferente, este módulo não possui uma função em JavaScript para a internacionalização, por isso é utilizado a função do lang do php. Para fazer isso, é necessário adicionar as strings que serão internacionalizadas como elementos hidden no html, esses elementos são lidos e armazenados em variáveis JavaScript, para poderem ser utilizados.56 E isto é feito assim, os elementos hidden são adicionados no arquivo index.tpl ( contactcenter/templates/default/index.tpl ) Ex:[[br]]55 No [wiki:contactcenter ContactCenter] a internacionalização das strings em código !JavaScript funciona de uma maneira um pouco diferente pois, este módulo não possui uma função própria para a internacionalização, por isso é utilizado a função do lang do php. Para fazer isso, é necessário adicionar as strings que serão internacionalizadas como elementos hidden no html, esses elementos são lidos e armazenados em variáveis, para poderem ser utilizadas. 56 Os elementos hidden são adicionados no arquivo index.tpl ( contactcenter/templates/default/index.tpl ), ex:[[br]] 57 57 {{{ 58 58 <input id="cc_qa_save" type="hidden" value="{cc_qa_save}"> … … 62 62 $GLOBALS['phpgw']->template->set_var('cc_qa_save',lang('Save')); 63 63 }}} 64 No arquivo JavaScript é carregado o campo do template para uma variavel. Ex:[[br]]64 No arquivo !JavaScript é carregado o campo do template para uma variavel. Ex:[[br]] 65 65 {{{ 66 66 var lang_save = Element('cc_qa_save').value;