Go to the source code of this file.
|
| 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;}};}) |
|
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){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;}};} 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