Commit Graph

29 Commits

Author SHA1 Message Date
Gerhard Schlager e2770bc1c4 FIX: async reload of locales could result in missing translations 2018-10-01 17:14:36 +02:00
Guo Xiang Tan 8dc1463ab3 Enable `Lint/ShadowingOuterLocalVariable` for Rubocop. 2018-09-04 10:16:42 +08:00
Maja Komel 182d9a4666 FIX: escape regex chars when searching site texts 2018-09-02 17:25:57 +10:00
Gerhard Schlager eb52c5469e FEATURE: Allow plugins to register a new locale 2018-01-25 14:57:41 +01:00
Guo Xiang Tan 5012d46cbd Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
Guo Xiang Tan a4399c2eab FIX: Translation overrides were not cached by locale properly. 2017-07-07 12:28:00 +09:00
Guo Xiang Tan 52e654b3ac FIX: Translation fallback was not using fallback's translation override.
https://meta.discourse.org/t/discobot-falling-back-to-site-locale-is-not-using-customized-copies/65140
2017-07-03 14:52:27 +09:00
Régis Hanol a2c04be718 FIX: eradicate I18n fallback issues 💣
FIX: client's translation overrides were not working when the current locale was missing a key
FIX: ExtraLocalesController.show was not properly handling multiple translations
FIX: JsLocaleHelper#output_locale was not properly handling multiple translations

FIX: ExtraLocalesController.show's spec which was randomly failing
FIX: JsLocaleHelper#output_locale was muting cached translations hashes

REFACTOR: move 'enableVerboseLocalization' to the 'localization' initializer
REFACTOR: remove unused I18n.js methods (getFallbacks, localize, parseDate, toTime, strftime, toCurrency, toPercentage)
REFACTOR: remove all I18n.pluralizationRules and instead use MessageFormat's pluralization rules

TEST: add tests for localization initializer
TEST: add tests for I18n.js
2017-02-24 11:31:21 +01:00
Régis Hanol 038eb6f645 FIX: translations with a symbol as key should also be overridable 2016-08-24 11:53:03 +02:00
Robin Ward cc25716e47 FIX: Allow message format translations to be overridden 2016-04-08 14:49:50 -04:00
Guo Xiang Tan ced86aa890 FIX: N+1 query on topics view page. 2016-02-23 16:22:40 +08:00
Gerhard Schlager 8481548def FIX: Load fallback locales after reloading translations 2016-02-22 22:48:56 +01:00
Gerhard Schlager 80c9fa4dca FIX: Load translation overrides for more than one locale 2016-02-22 22:48:56 +01:00
Robin Ward d1ebb9d0b5 FIX: I18n Fallbacks were not applying correctly 2015-12-23 12:09:18 -05:00
Sam b8a47a1129 FIX: if a string was missing catch the throw
if overrides were in play and we tried to translate a
missing string we would throw an exception
2015-12-09 17:10:51 +11:00
Robin Ward de88be2fbc Support for "Only show overridden" in site text customization 2015-11-30 15:25:08 -05:00
Robin Ward 5e93140f85 FEATURE: Can override any translation via an admin interface 2015-11-27 11:35:19 -05:00
Robin Ward 1506eba28d Support for overriding client side translation keys 2015-11-20 17:14:01 -05:00
Robin Ward e168c5fde3 PERF: Much more performant, multisite aware I18n overrides 2015-11-19 16:36:59 -05:00
Robin Ward 7f4ca91e06 FIX: I18n overrides should be multisite aware 2015-11-18 16:05:53 -05:00
Robin Ward 3720783c1b Refactor to our own Discourse I18n backend
This removes some monkey patches and makes testing easier.
It will also support database backed I18n changes.
2015-11-13 16:35:02 -05:00
Kane York ecfa17b5a7 FEATURE: Localization fallbacks (server-side)
The FallbackLocaleList object tells I18n::Backend::Fallbacks what order the
languages should be attempted in. Because of the translate_accelerator patch,
the SiteSetting.default_locale is *not* guaranteed to be fully loaded after the
server starts, so a call to ensure_loaded! is added after the locale is set for
the current user.

The declarations of config.i18n.fallbacks = true in the environment files were
actually garbage, because the I18n.default_locale was
SiteSetting.default_locale, so there was nothing to fall back to. *derp*
2015-07-15 10:17:36 -07:00
Sam 830ce05fe6 PERF: simplify and shrink the translation cache
FIX: leaking objects into the translation cache causing sidekiq to grow
2015-03-30 16:31:36 +11:00
Sam 3c6aede1aa using wrong var here 2015-02-12 14:40:07 +11:00
Sam a5f46c98c1 PERF: only load locale files we are using
We used to load up all translations in all languages
2015-02-12 12:08:14 +11:00
Régis Hanol 17f75bbe92 BUGFIX: fallback to en translation when interpolation is missing 2014-02-26 18:42:16 +01:00
Sam a28a0bbeeb PERF: stop messing with strings that come back from I18n.t
allows better caching
2014-02-18 14:10:03 +11:00
Sam 7d9fd350d3 dup is critical cause people are mucking with stuff that comes out of the cache 2013-04-26 16:18:55 +10:00
Sam 737bb96737 translation accelerator 2013-04-24 14:40:09 +10:00