JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
vanilla ckeditor-3.0.1
[ckeditor.git] / _source / core / lang.js
index 6ada788..1f0a05a 100644 (file)
@@ -92,12 +92,15 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
                 */\r
                load : function( languageCode, defaultLanguage, callback )\r
                {\r
-                       if ( !languageCode )\r
-                               languageCode = this.detect( defaultLanguage );\r
+                       // If no languageCode - fallback to browser or default.\r
+                       // If languageCode - fallback to no-localized version or default.\r
+                       if ( !languageCode || !CKEDITOR.lang.languages[ languageCode ] )\r
+                               languageCode = this.detect( defaultLanguage, languageCode );\r
 \r
                        if ( !this[ languageCode ] )\r
                        {\r
                                CKEDITOR.scriptLoader.load( CKEDITOR.getUrl(\r
+                                       '_source/' +    // @Packager.RemoveLine\r
                                        'lang/' + languageCode + '.js' ),\r
                                        function()\r
                                                {\r
@@ -121,11 +124,12 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
                 * @example\r
                 * alert( CKEDITOR.lang.detect( 'en' ) );  // e.g., in a German browser: "de"\r
                 */\r
-               detect : function( defaultLanguage )\r
+               detect : function( defaultLanguage, probeLanguage )\r
                {\r
                        var languages = this.languages;\r
+                       probeLanguage = probeLanguage || navigator.userLanguage || navigator.language;\r
 \r
-                       var parts = ( navigator.userLanguage || navigator.language )\r
+                       var parts = probeLanguage\r
                                        .toLowerCase()\r
                                        .match( /([a-z]+)(?:-([a-z]+))?/ ),\r
                                lang = parts[1],\r