Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/vtex/front.i18n

Front end locale selector plugin
https://github.com/vtex/front.i18n

srv-checkout-ui xp-shopping

Last synced: about 1 month ago
JSON representation

Front end locale selector plugin

Awesome Lists containing this project

README

        

# front.i18n

O seletor front end de línguas.

Existem dois scripts no plugin: **vtex-i18n.js** e **vtex-locale-selector.js**. Sendo o segundo dependente do primeiro.

O **vtex-i18n.js** é responsável pelo locale, countryCode e currency do site. Enquanto o **vtex-locale-selector.js** cuida do plugin i18next.

Diferente do **vtex-locale-selector.js**, o **vtex-i18n.js** é iniciado automaticamente, não necessitando de nenhuma instanciação ou script extra.

O locale tem seu default definido na seguinte ordem de ocorrência:

```html







```

O countryCode irá setar como default :

```html




```

## vtex-i18n.js

Dependência: [jQuery](http://jquery.com/).

vtex.i18n.setLocale(locale)


Troca a língua corrente.



Param
tipo
exemplo
descrição




locale
string
"en-US"
Locale da língua a ser usada.


vtex.i18n.getLocale()


Retorna o locale corrente.


vtex.i18n.setLocaleCallback(callback)


Seta uma função de callback ao trocar a língua.



Param
tipo
exemplo
descrição




callback
function ou string
função ou "vtex.i18n.update"
Caso seja do tipo function, o callback chamará a função passando como parametro o novo locale. Caso seja do tipo string, assume-se que será chamado um canal do Radio.
Ex: para o parametro do tipo string vtex.i18n.update, um possível callback a ser chamado seria: radio('vtex.i18n.update').broadcast('pt-BR')


vtex.i18n.setCountryCode(countryCode)


Troca o countryCode a ser usado pela função vtex.i18n.getCurrencySymbol



Param
tipo
exemplo
descrição




countryCode
string
"USA"
countryCode do país.


vtex.i18n.getCountryCode()


Retorna o countryCode corrente.


vtex.i18n.setCountryCodeCallback(callback)


Seta uma função de callback ao trocar o countryCode.



Param
tipo
exemplo
descrição




callback
function ou string
função ou "vtex.countryCode.update"
Caso seja do tipo function, o callback chamará a função passando como parametro o novo countryCode. Caso seja do tipo string, assume-se que será chamado um canal do Radio.
Ex: para o parametro do tipo string vtex.countryCode.update, um possível callback a ser chamado seria: radio('vtex.countryCode.update').broadcast('ARG')


vtex.i18n.getCurrency(countryCode)


Retorna o símbolo monetário do país.



Param
tipo
exemplo
descrição




countryCode
string
"ARG" (opcional)
Tem como default o valor de vtex.i18n.getCountryCode ou pelo countryCode passado como parametro.

## vtex-locale-selector.js

Dependências: vtex-i18n.js, [jQuery](http://jquery.com/), [Select2](http://ivaynberg.github.io/select2/), [i18next](http://i18next.com/).

Primeiramente carregue todas as dependências. Em seguida, carregue seus arquivos de translations. Você pode encontrar um exemplo do formato a ser seguido em `/src/coffee/translation-en-US.coffee`.

Agora é só inicar o plugin no evento de `$(document).ready()` do jQuery com a função `vtex.i18n.init()`.

Para traduzir um elemento na página, adicione o atributo `data-i18n` com o valor da chave do arquivo de translation. Por exemplo:

```html


```

Caso queira traduzir um atributo do elemento HTML, como o atributo `title`, `alt` ou `placeholder`. Use o seguinte formato:

```html

```

Caso não queira ter um select para o usuário final trocar de língua, apenas não inclua o elemento com o id `#vtex-locale-selector`, tudo continuará a funcionar normalmente. Ou seja, você ainda poderá usar a API por Javascript.

vtex.i18n.init()


Inicia o plugin.

Podendo ser extensível com a biblioteca de pub/sub [Radio.js](http://radio.uxder.com/).

-------

VTEX - 2013