diff --git a/src/jquery.uls.data.utils.js b/src/jquery.uls.data.utils.js index 4e31338..3cbdd76 100644 --- a/src/jquery.uls.data.utils.js +++ b/src/jquery.uls.data.utils.js @@ -20,38 +20,62 @@ ( function ( $ ) { "use strict"; + /** + * Log deprecated functions + */ + function deprecated( oldFunc, newFunc ) { + if ( window.console && window.console.log ) { + window.console.log( oldFunc + " is deprecated. Please use " + newFunc ); + } + } + /** * Returns the script of the language. * @param string language code * @return string */ - $.uls.data.script = function( language ) { + $.uls.data.getScript = function( language ) { return $.uls.data.languages[language][0]; }; + $.uls.data.script = function( language ) { // deprecated + deprecated( "script", "getScript" ); + return $.uls.data.getScript( language ); + }; + /** * Returns the regions in which a language is spoken. * @param string language code - * @return array of strings + * @return array|string 'UNKNOWN' */ - $.uls.data.regions = function( language ) { + $.uls.data.getRegions = function( language ) { return ( $.uls.data.languages[language] && $.uls.data.languages[language][1] ) || 'UNKNOWN'; }; + $.uls.data.regions = function( language ) { // deprecated + deprecated( "regions", "getRegions" ); + return $.uls.data.getRegions( language ); + }; + /** * Returns the autonym of the language. * @param string language code * @return string */ - $.uls.data.autonym = function( language ) { + $.uls.data.getAutonym = function( language ) { return ( $.uls.data.languages[language] && $.uls.data.languages[language][2] ) || language; }; + $.uls.data.autonym = function( language ) { // deprecated + deprecated( "autonym", "getAutonym" ); + return $.uls.data.getAutonym( language ); + }; + /** * Returns all language codes and corresponding autonyms * @return array */ - $.uls.data.autonyms = function() { + $.uls.data.getAutonyms = function() { var autonymsByCode = {}; for ( var language in $.uls.data.languages ) { @@ -61,11 +85,16 @@ return autonymsByCode; }; + $.uls.data.autonyms = function() { // deprecated + deprecated( "autonyms", "getAutonyms" ); + return $.uls.data.getAutonyms(); + }; + /** * Returns an array of all region codes. * @return array */ - $.uls.data.allRegions = function() { + $.uls.data.getAllRegions = function() { var allRegions = []; for( var region in $.uls.data.regiongroups ) { @@ -75,26 +104,36 @@ return allRegions; }; + $.uls.data.allRegions = function() { // deprecated + deprecated( "allRegions", "getAllRegions" ); + return $.uls.data.getAllRegions(); + }; + /** * Returns all languages written in script. * @param script string * @return array of strings (languages codes) */ - $.uls.data.languagesInScript = function( script ) { + $.uls.data.getLanguagesInScript = function( script ) { return $.uls.data.languagesInScripts( [ script ] ); }; + $.uls.data.languagesInScript = function( script ) { // deprecated + deprecated( "languagesInScript", "getLanguagesInScript" ); + return $.uls.data.getLanguagesInScript( script ); + }; + /** * Returns all languages written in the given scripts. * @param scripts array of strings * @return array of strings (languages codes) */ - $.uls.data.languagesInScripts = function( scripts ) { + $.uls.data.getLanguagesInScripts = function( scripts ) { var languagesInScripts = []; for ( var language in $.uls.data.languages ) { for ( var i = 0; i < scripts.length; i++ ) { - if ( scripts[i] === $.uls.data.script(language) ) { + if ( scripts[i] === $.uls.data.script( language ) ) { languagesInScripts.push( language ); break; } @@ -104,21 +143,31 @@ return languagesInScripts; }; + $.uls.data.languagesInScripts = function( scripts ) { // deprecated + deprecated( "languagesInScripts", "getLanguagesInScripts" ); + return $.uls.data.getLanguagesInScripts( scripts ); + }; + /** * Returns all languages in a given region. * @param region string * @return array of strings (languages codes) */ - $.uls.data.languagesInRegion = function( region ) { + $.uls.data.getLanguagesInRegion = function( region ) { return $.uls.data.languagesInRegions( [ region ] ); }; + $.uls.data.languagesInRegion = function( region ) { // deprecated + deprecated( "languagesInRegion", "getLanguagesInRegion" ); + return $.uls.data.getLanguagesInRegion( region ); + }; + /** * Returns all languages in given regions. * @param region array of strings. * @return array of strings (languages codes) */ - $.uls.data.languagesInRegions = function( regions ) { + $.uls.data.getLanguagesInRegions = function( regions ) { var languagesInRegions = []; for ( var language in $.uls.data.languages ) { @@ -133,22 +182,32 @@ return languagesInRegions; }; + $.uls.data.languagesInRegions = function( regions ) { // deprecated + deprecated( "languagesInRegions", "getLanguagesInRegions" ); + return $.uls.data.getLanguagesInRegions( regions ); + }; + /** * Returns all languages in a region group. * @param groupNum number. * @return array of strings (languages codes) */ - $.uls.data.languagesInRegionGroup = function( groupNum ) { + $.uls.data.getLanguagesInRegionGroup = function( groupNum ) { return $.uls.data.languagesInRegions( $.uls.data.regionsInGroup( groupNum ) ); }; + $.uls.data.languagesInRegionGroup = function( groupNum ) { // deprecated + deprecated( "languagesInRegionGroup", "getLanguagesInRegionGroup" ); + return $.uls.data.getLanguagesInRegionGroup( groupNum ); + }; + /** * Returns an associative array of languages in a region, * grouped by script. * @param string region code * @return associative array */ - $.uls.data.languagesByScriptInRegion = function( region ) { + $.uls.data.getLanguagesByScriptInRegion = function( region ) { var languagesByScriptInRegion = {}; for ( var language in $.uls.data.languages ) { @@ -164,31 +223,46 @@ return languagesByScriptInRegion; }; + $.uls.data.languagesByScriptInRegion = function( region ) { // deprecated + deprecated( "languagesByScriptInRegion", "getLanguagesByScriptInRegion" ); + return $.uls.data.getLanguagesByScriptInRegion( region ); + }; + /** * Returns an associative array of languages in a region, * grouped by script group. * @param string region code * @return associative array */ - $.uls.data.languagesByScriptGroupInRegion = function( region ) { + $.uls.data.getLanguagesByScriptGroupInRegion = function( region ) { return $.uls.data.languagesByScriptGroupInRegions( [ region ] ); }; + $.uls.data.languagesByScriptGroupInRegion = function( region ) { // deprecated + deprecated( "languagesByScriptGroupInRegion", "getLanguagesByScriptGroupInRegion" ); + return $.uls.data.getLanguagesByScriptGroupInRegion( region ); + }; + /** * Returns an associative array of all languages, * grouped by script group. * @return associative array */ - $.uls.data.allLanguagesByScriptGroup = function() { + $.uls.data.getAllLanguagesByScriptGroup = function() { return $.uls.data.languagesByScriptGroupInRegions( $.uls.data.allRegions() ); }; + $.uls.data.allLanguagesByScriptGroup = function() { // deprecated + deprecated( "allLanguagesByScriptGroup", "getAllLanguagesByScriptGroup" ); + return $.uls.data.getAllLanguagesByScriptGroup(); + }; + /** * Get the given list of languages grouped by script. * @param languages Array of language codes * @return {Object} Array of languages indexed by script codes */ - $.uls.data.languagesByScriptGroup = function( languages ) { + $.uls.data.getLanguagesByScriptGroup = function( languages ) { var languagesByScriptGroup = {}, scriptGroup, language, @@ -210,13 +284,18 @@ return languagesByScriptGroup; }; + $.uls.data.languagesByScriptGroup = function( languages ) { // deprecated + deprecated( "languagesByScriptGroup", "getLanguagesByScriptGroup" ); + return $.uls.data.getLanguagesByScriptGroup( languages ); + }; + /** * Returns an associative array of languages in several regions, * grouped by script group. * @param array of strings - region codes * @return associative array */ - $.uls.data.languagesByScriptGroupInRegions = function( regions ) { + $.uls.data.getLanguagesByScriptGroupInRegions = function( regions ) { var languagesByScriptGroupInRegions = {}; for ( var language in $.uls.data.languages ) { @@ -235,12 +314,17 @@ return languagesByScriptGroupInRegions; }; + $.uls.data.languagesByScriptGroupInRegions = function( regions ) { // deprecated + deprecated( "languagesByScriptGroupInRegions", "getLanguagesByScriptGroupInRegions" ); + return $.uls.data.getLanguagesByScriptGroupInRegions( regions ); + }; + /** * Returns an array of languages grouped by region group, * region, script group and script. * @return associative array */ - $.uls.data.allLanguagesByRegionAndScript = function() { + $.uls.data.getAllLanguagesByRegionAndScript = function() { var allLanguagesByRegionAndScript = {}, region, regionGroup; @@ -277,12 +361,17 @@ return allLanguagesByRegionAndScript; }; + $.uls.data.allLanguagesByRegionAndScript = function() { // deprecated + deprecated( "allLanguagesByRegionAndScript", "getAllLanguagesByRegionAndScript" ); + return $.uls.data.getAllLanguagesByRegionAndScript(); + }; + /** * Returns all regions in a region group. * @param number groupNum * @return array of strings */ - $.uls.data.regionsInGroup = function( groupNum ) { + $.uls.data.getRegionsInGroup = function( groupNum ) { var regionsInGroup = []; for ( var region in $.uls.data.regiongroups ) { @@ -294,13 +383,18 @@ return regionsInGroup; }; + $.uls.data.regionsInGroup = function( groupNum ) { // deprecated + deprecated( "regionsInGroup", "getRegionsInGroup" ); + return $.uls.data.getRegionsInGroup( groupNum ); + }; + /** * Returns the script group of a script or 'Other' if it doesn't * belong to any group. * @param string script code * @return string script group name */ - $.uls.data.groupOfScript = function( script ) { + $.uls.data.getGroupOfScript = function( script ) { for ( var group in $.uls.data.scriptgroups ) { if ( $.inArray( script, $.uls.data.scriptgroups[group] ) !== -1 ) { return group; @@ -310,15 +404,25 @@ return 'Other'; }; + $.uls.data.groupOfScript = function( script ) { // deprecated + deprecated( "groupOfScript", "getGroupOfScript" ); + return $.uls.data.getGroupOfScript( script ); + }; + /** * Returns the script group of a language. * @param string language code * @return string script group name */ - $.uls.data.scriptGroupOfLanguage = function( language ) { + $.uls.data.getScriptGroupOfLanguage = function( language ) { return $.uls.data.groupOfScript( $.uls.data.script( language ) ); }; + $.uls.data.scriptGroupOfLanguage = function( language ) { // deprecated + deprecated( "scriptGroupOfLanguage", "getScriptGroupOfLanguage" ); + return $.uls.data.getScriptGroupOfLanguage( language ); + }; + /** * A callback for sorting languages by autonym. * Can be used as an argument to a sort function. @@ -353,7 +457,12 @@ * @param string Territory code * @return list of language codes */ - $.uls.data.languagesInTerritory = function( territory ) { + $.uls.data.getLanguagesInTerritory = function( territory ) { return $.uls.data.territories[territory]; }; + + $.uls.data.languagesInTerritory = function( territory ) { // deprecated + deprecated( "languagesInTerritory", "getLanguagesInTerritory" ); + return $.uls.data.getLanguagesInTerritory( territory ); + }; } ( jQuery ) );