File tree 3 files changed +28
-0
lines changed
3 files changed +28
-0
lines changed Original file line number Diff line number Diff line change @@ -220,6 +220,7 @@ In the html page:
220
220
- ` reloadLang(lang: string): Observable<string|Object> ` : Calls resetLang and retrieves the translations object for the current loader
221
221
- ` resetLang(lang: string) ` : Removes the current translations for this lang . / ! \ You will have to call ` use ` , ` reloadLang ` or ` getTranslation ` again to be able to get translations
222
222
- ` getBrowserLang(): string | undefined ` : Returns the current browser lang if available , or undefined otherwise
223
+ - ` getBrowserCultureLang(): string | undefined ` : Returns the current browser culture language name (e .g . " de-DE" if available , or undefined otherwise
223
224
224
225
#### Write & use your own loader
225
226
If you want to write your own loader , you need to create a class that implements ` TranslateLoader ` .
Original file line number Diff line number Diff line change @@ -361,6 +361,11 @@ export class TranslateService {
361
361
this . translations [ lang ] = undefined ;
362
362
}
363
363
364
+ /**
365
+ * Returns the language code name from the browser, e.g. "de"
366
+ *
367
+ * @returns string
368
+ */
364
369
public getBrowserLang ( ) : string {
365
370
if ( typeof window === 'undefined' || typeof window . navigator === 'undefined' ) {
366
371
return undefined ;
@@ -379,4 +384,20 @@ export class TranslateService {
379
384
380
385
return browserLang ;
381
386
}
387
+
388
+ /**
389
+ * Returns the culture language code name from the browser, e.g. "de-DE"
390
+ *
391
+ * @returns string
392
+ */
393
+ public getBrowserCultureLang ( ) : string {
394
+ if ( typeof window === 'undefined' || typeof window . navigator === 'undefined' ) {
395
+ return undefined ;
396
+ }
397
+
398
+ let browserCultureLang : any = window . navigator . languages ? window . navigator . languages [ 0 ] : null ;
399
+ browserCultureLang = browserCultureLang || window . navigator . language || window . navigator . browserLanguage || window . navigator . userLanguage ;
400
+
401
+ return browserCultureLang ;
402
+ }
382
403
}
Original file line number Diff line number Diff line change @@ -294,6 +294,12 @@ describe('TranslateService', () => {
294
294
expect ( browserLang ) . toBeDefined ( ) ;
295
295
expect ( typeof browserLang === 'string' ) . toBeTruthy ( ) ;
296
296
} ) ;
297
+
298
+ it ( 'should be able to get the browserCultureLang' , ( ) => {
299
+ let browserCultureLand = translate . getBrowserCultureLang ( ) ;
300
+ expect ( browserCultureLand ) . toBeDefined ( ) ;
301
+ expect ( typeof browserCultureLand === 'string' ) . toBeTruthy ( ) ;
302
+ } ) ;
297
303
} ) ;
298
304
299
305
describe ( 'MissingTranslationHandler' , ( ) => {
You can’t perform that action at this time.
0 commit comments