From f98b619b643a9af7b892ce8a591972fac5bb21d4 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Wed, 18 Jun 2014 11:12:20 -0400 Subject: fix language selections --- .../Localization/LocalizationManager.cs | 33 ++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) (limited to 'MediaBrowser.Server.Implementations/Localization/LocalizationManager.cs') diff --git a/MediaBrowser.Server.Implementations/Localization/LocalizationManager.cs b/MediaBrowser.Server.Implementations/Localization/LocalizationManager.cs index 85c3aaa56..e1f5bcfdc 100644 --- a/MediaBrowser.Server.Implementations/Localization/LocalizationManager.cs +++ b/MediaBrowser.Server.Implementations/Localization/LocalizationManager.cs @@ -108,12 +108,41 @@ namespace MediaBrowser.Server.Implementations.Localization public IEnumerable GetCultures() { var type = GetType(); - var path = type.Namespace + ".cultures.json"; + var path = type.Namespace + ".iso6392.txt"; + + var list = new List(); using (var stream = type.Assembly.GetManifestResourceStream(path)) { - return _jsonSerializer.DeserializeFromStream>(stream); + using (var reader = new StreamReader(stream)) + { + while (!reader.EndOfStream) + { + var line = reader.ReadLine(); + + if (!string.IsNullOrWhiteSpace(line)) + { + var parts = line.Split('|'); + + if (parts.Length == 5) + { + list.Add(new CultureDto + { + DisplayName = parts[3], + Name = parts[3], + ThreeLetterISOLanguageName = parts[0], + TwoLetterISOLanguageName = parts[2] + }); + } + } + } + } } + + return list.Where(i => !string.IsNullOrWhiteSpace(i.Name) && + !string.IsNullOrWhiteSpace(i.DisplayName) && + !string.IsNullOrWhiteSpace(i.ThreeLetterISOLanguageName) && + !string.IsNullOrWhiteSpace(i.TwoLetterISOLanguageName)); } /// -- cgit v1.2.3