diff options
author | Bryan Berry <bryan@olenepal.org> | 2010-03-13 09:46:57 (GMT) |
---|---|---|
committer | Bryan Berry <bryan@olenepal.org> | 2010-03-13 09:46:57 (GMT) |
commit | 83d9cd19b4e4d4bfbe5567ec72fed1bf866feb0f (patch) | |
tree | 7618e101b3b5bb03213e355633680be3a02eadeb | |
parent | de2519111ecf44a75cfb58c2db3a8027b074282c (diff) |
restore newer versions
-rw-r--r-- | js/jquery.i18n.js | 109 | ||||
-rwxr-xr-x | js/ui.kFooter.js | 23 | ||||
-rwxr-xr-x | js/ui.kHeader.js | 14 |
3 files changed, 73 insertions, 73 deletions
diff --git a/js/jquery.i18n.js b/js/jquery.i18n.js index 4eb303f..aad8f27 100644 --- a/js/jquery.i18n.js +++ b/js/jquery.i18n.js @@ -1,30 +1,36 @@ -/* Copyright Bryan W Berry, 2009, +/* Copyright Bryan W Berry, 2009, * under the MIT license http://www.opensource.org/licenses/mit-license.php - * + * * this library is heavily influenced by the GNU LIBC library * http://www.gnu.org/software/libc/manual/html_node/Locales.html */ (function($){ - // PG: Maybe put everything in namespace i18n and rename the following function $.i18n.gettext? - - $.i18n = function(string, locale){ - var lang = locale || $.i18n.lang; - if (!$.i18n[lang] || !$.i18n[lang].strings){ - return string; - } - return this.i18n[lang].strings['default'][string]||string; - }; - - $.i18n.cgettext = function(context, string, locale){ - var lang = locale || $.i18n.lang; - if (!this.i18n[lang] || !this.i18n[lang].strings){ - return string; - } - return this.i18n[lang].strings[context][string]||string; - }; + $.i18n = {}; + + + $.i18n.gettext = function(string) { + var lang = $.i18n.lang; + if (!$.i18n[lang] || !$.i18n[lang].strings) { + return string; + } + return $.i18n[lang].strings[string]||string; + }; + + + + $.i18n.pgettext = function(context, string) { + var lang = $.i18n.lang; + if (!$.i18n[lang] || + !$.i18n[lang].contextualized_strings || + !$.i18n[lang].contextualized_strings[context]) { + return string; + } + return $.i18n[lang].contextualized_strings[context][string]||string; + }; // You can override this in messages.<lang>.json. + // We should maybe extract this from the .mo file. $.i18n.choose_pluralized_msg = function (choices, n) { return n == 1 ? choices[0] : choices[1]; }; @@ -40,55 +46,54 @@ n); }; - $._ = $.i18n; - $._c = $.i18n.cgettext; + $._ = $.i18n.gettext; - $.i18n.setLocale = function (locale){ - $.i18n.lang = locale; - }; + $.i18n.setLocale = function (locale){ + $.i18n.lang = locale; + }; - $.i18n.getLocale = function (){ - return $.i18n.lang; - }; + $.i18n.getLocale = function (){ + return $.i18n.lang; + }; - /** + /** * Converts a number to numerals in the specified locale. Currently only * supports devanagari numerals for Indic languages like Nepali and Hindi * @param {Number} Number to be converted * @param {locale} locale that number should be converted to - * @returns {String} Unicode string for localized numeral + * @returns {String} Unicode string for localized numeral */ - $.i18n._n = function(num, locale){ + $.i18n._n = function(num, locale){ - locale = locale || $.i18n.lang; + locale = locale || $.i18n.lang; - if (!this.i18n[locale] || !this.i18n[locale].numeralBase ){ - return num; - } + if (!this.i18n[locale] || !this.i18n[locale].numeralBase ){ + return num; + } - //48 is the base for western numerals - var numBase = $.i18n[$.i18n.lang].numeralBase || 48; - var prefix = $.i18n[$.i18n.lang].numeralPrefix || "u00"; - - var convertDigit = function(digit){ - return '\\' + prefix + - (numBase + parseInt(digit)).toString(16); - }; - - var charArray = num.toString().split("").map(convertDigit); - return eval('"' + charArray.join('') + '"'); - }; - - $._n = $.i18n._n; - - /* ToDo + //48 is the base for western numerals + var numBase = $.i18n[$.i18n.lang].numeralBase || 48; + var prefix = $.i18n[$.i18n.lang].numeralPrefix || "u00"; + + var convertDigit = function(digit){ + return '\\' + prefix + + (numBase + parseInt(digit)).toString(16); + }; + + var charArray = num.toString().split("").map(convertDigit); + return eval('"' + charArray.join('') + '"'); + }; + + $._n = $.i18n._n; + + /* ToDo * implement sprintf - * conversion functions for monetary and numeric + * conversion functions for monetary and numeric * sorting functions (collation) for different locales */ - })(jQuery); +})(jQuery); diff --git a/js/ui.kFooter.js b/js/ui.kFooter.js index d5ede51..44eaafa 100755 --- a/js/ui.kFooter.js +++ b/js/ui.kFooter.js @@ -157,12 +157,6 @@ stopTimer : function(){ this._setData('timerRunning', false); }, - _c : function(val){ - if($.i18n){ - return $._c('$.ui.kFooter', val); - } - return val; - }, _n : function(val, loc){ if ($.i18n){ return $._n(val, loc); @@ -195,11 +189,13 @@ if(options.scoreboard === true){ - var $scoreboard = $("<li class='left'>" + this._c("Score") + + var $scoreboard = $("<li class='left'>" + + $.i18n.pgettext("$.ui.kFooter", "Score") + "</li>" + "<li class='left'>" + "<span id='kFooterScore' class='ui-corner-all number'>" + this._n(score) + "</span></li>" + - "<li class='left'>" + this._c("Total") + "</li>" + + "<li class='left'>" + + $.i18n.pgettext("$.ui.kFooter", "Total") + "</li>" + "<li class='left'><span id='kFooterTotal' " + "class='ui-corner-all number'>" + this._n(total) + "</span></li>") @@ -211,7 +207,8 @@ } if(options.timer === true){ - this._$timer = $("<li class='left'>" + this._c("Timer") + + this._$timer = $("<li class='left'>" + + $.i18n.pgettext("$.ui.kFooter", "Timer") + "</li>" + "<li class='left'><span id='kFooterMins'" + "class='ui-corner-all" + @@ -235,7 +232,7 @@ "<span class='ui-icon ui-icon-arrowrefresh-1-w'>" + "</span>" + "<span class='text left'>" + - this._c('Play Again') + + $.i18n.pgettext("$.ui.kFooter", "Play Again") + "</span></button></li>") .click(function(){ self.startTimer(); @@ -249,7 +246,8 @@ "class='ui-corner-all ui-state-default'>" + "<span class='ui-icon ui-icon-pause'>" + "</span>" + - "<span class='text left'>" + this._c('Pause') + + "<span class='text left'>" + + $.i18n.pgettext("$.ui.kFooter", "Pause") + "</span></button></li>") .click(function(){ self.stopTimer(); @@ -263,7 +261,8 @@ "class='ui-corner-all ui-state-default'>" + "<span class='ui-icon ui-icon-play'>" + "</span>" + - "<span class='text left'>" + this._c('Start') + + "<span class='text left'>" + + $.i18n.pgettext("$.ui.kFooter", "Start") + "</span></button></li>") .click(function(){ self.startTimer(); diff --git a/js/ui.kHeader.js b/js/ui.kHeader.js index 966c85a..83cf545 100755 --- a/js/ui.kHeader.js +++ b/js/ui.kHeader.js @@ -18,13 +18,7 @@ $.widget('ui.kHeader', /** @lends $.ui.kHeader.prototype */ - { _c : function(val){ - if($.i18n){ - return $._c('$.ui.kHeader', val); - } - return val; - }, - _n : function(val, loc){ + { _n : function(val, loc){ if ($.i18n){ return $._n(val, loc); } @@ -66,14 +60,16 @@ if (options.lessonPlan){ $("<div>" + "<a href='./kDoc.html?back=index.html&doc=lessonPlan'>" + - this._c("Lesson Plan") + "</a></div>") + $.i18n.pgettext("$.ui.kHeader", "Lesson Plan") + + "</a></div>") .appendTo($dropDownArea); } if (options.teachersNote){ $("<div>" + "<a href='./kDoc.html?back=index.html&doc=teachersNote'>" + - this._c("Teacher's Note") + "</a></div>") + $.i18n.pgettext("$.ui.kHeader", "Teacher's Note") + + "</a></div>") .appendTo($dropDownArea); } |