Elgg  Version 5.1
Functions
i18n.js File Reference

Go to the source code of this file.

Functions

 define (['jquery', 'elgg', 'sprintf'], function($, elgg, sprintf){var translations_data=[];return{reset:function(){translations_data=[];}, initLanguage:function(language){language=language||elgg.config.current_language;if(typeof translations_data[language]!== 'undefined'){return;}$.ajax({url:elgg.get_simplecache_url('languages/'+language+ '.js'), dataType: 'json', async:false, success:function(translations){translations_data[language]=translations;}});}, addTranslation:function(lang, translations){if(typeof translations_data[lang]=== 'undefined'){translations_data[lang]={};}$.extend(translations_data[lang], translations);}, echo:function(key, argv, language){if(typeof argv=== 'string'){language=argv;argv=[];}this.initLanguage(language);var dlang=elgg.config.current_language;language=language||dlang;argv=argv||[];var map=translations_data[language]||translations_data[dlang];if(map &&(typeof map[key]=== 'string')){return sprintf.vsprintf(map[key], argv);}return key;}};})
 

Function Documentation

define ( function($, elgg, sprintf){var translations_data=[];return{reset:function(){translations_data=[];}, initLanguage:function(language){language=language||elgg.config.current_language;if(typeof translations_data[language]!== 'undefined'){return;}$.ajax({url:elgg.get_simplecache_url('languages/'+language+ '.js'), dataType: 'json', async:false, success:function(translations){translations_data[language]=translations;}});}, addTranslation:function(lang, translations){if(typeof translations_data[lang]=== 'undefined'){translations_data[lang]={};}$.extend(translations_data[lang], translations);}, echo:function(key, argv, language){if(typeof argv=== 'string'){language=argv;argv=[];}this.initLanguage(language);var dlang=elgg.config.current_language;language=language||dlang;argv=argv||[];var map=translations_data[language]||translations_data[dlang];if(map &&(typeof map[key]=== 'string')){return sprintf.vsprintf(map[key], argv);}return key;}};}  )
Parameters
function($,elgg,sprintf){vartranslations_data=[];return{reset:function(){translations_data=[];}, initLanguage:function(language){language=language||elgg.config.current_language;if(typeof translations_data[language]!== 'undefined'){return;}$.ajax({url:elgg.get_simplecache_url('languages/'+language+ '.js'), dataType: 'json', async:false, success:function(translations){translations_data[language]=translations;}});}, addTranslation:function(lang, translations){if(typeof translations_data[lang]=== 'undefined'){translations_data[lang]={};}$.extend(translations_data[lang], translations);}, echo:function(key, argv, language){if(typeof argv=== 'string'){language=argv;argv=[];}this.initLanguage(language);var dlang=elgg.config.current_language;language=language||dlang;argv=argv||[];var map=translations_data[language]||translations_data[dlang];if(map &&(typeof map[key]=== 'string')){return sprintf.vsprintf(map[key], argv);}return key;}};} Helper function to reset all registered translations. Mainly used for testing purposes.

Initializes a language.

Parameters
{String}language The language key (defaults to the current language)

Analogous to the php version. Merges translations for a given language into the current translations map.

Parameters
{String}lang The language key
{Array}translations Array of translations

Translates a string

Parameters
{String}key Message key
{Array}argv vsprintf() arguments
{String}language Requested language. Not recommended (see above).
Returns
{String} The translation or the given key if no translation available