X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=_source%2Fcore%2Flang.js;h=1f0a05a272cc6bde3bc0abd8a229468bc48e5aac;hb=refs%2Ftags%2Fv3.0.1;hp=6ada788b7ae27fb018d0420003c2c07d524f4782;hpb=ea7e3453c7b0f023b050aca6d9f83ab372860d91;p=ckeditor.git diff --git a/_source/core/lang.js b/_source/core/lang.js index 6ada788..1f0a05a 100644 --- a/_source/core/lang.js +++ b/_source/core/lang.js @@ -92,12 +92,15 @@ For licensing, see LICENSE.html or http://ckeditor.com/license */ load : function( languageCode, defaultLanguage, callback ) { - if ( !languageCode ) - languageCode = this.detect( defaultLanguage ); + // If no languageCode - fallback to browser or default. + // If languageCode - fallback to no-localized version or default. + if ( !languageCode || !CKEDITOR.lang.languages[ languageCode ] ) + languageCode = this.detect( defaultLanguage, languageCode ); if ( !this[ languageCode ] ) { CKEDITOR.scriptLoader.load( CKEDITOR.getUrl( + '_source/' + // @Packager.RemoveLine 'lang/' + languageCode + '.js' ), function() { @@ -121,11 +124,12 @@ For licensing, see LICENSE.html or http://ckeditor.com/license * @example * alert( CKEDITOR.lang.detect( 'en' ) ); // e.g., in a German browser: "de" */ - detect : function( defaultLanguage ) + detect : function( defaultLanguage, probeLanguage ) { var languages = this.languages; + probeLanguage = probeLanguage || navigator.userLanguage || navigator.language; - var parts = ( navigator.userLanguage || navigator.language ) + var parts = probeLanguage .toLowerCase() .match( /([a-z]+)(?:-([a-z]+))?/ ), lang = parts[1],