X-Git-Url: https://jasonwoof.com/gitweb/?p=ckeditor.git;a=blobdiff_plain;f=_source%2Fcore%2Flang.js;h=1f0a05a272cc6bde3bc0abd8a229468bc48e5aac;hp=6ada788b7ae27fb018d0420003c2c07d524f4782;hb=8761695d9b70afe75905deaac88f78c1f8aeb32d;hpb=ea7e3453c7b0f023b050aca6d9f83ab372860d91 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],