aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/Localization/LocalizationManager.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-06-18 11:12:20 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-06-18 11:12:20 -0400
commitf98b619b643a9af7b892ce8a591972fac5bb21d4 (patch)
tree9ec546cbab765407ff154fb5f1a91388c0dc6c6c /MediaBrowser.Server.Implementations/Localization/LocalizationManager.cs
parentcf7c88a7e20ac6873d0ece94a04a5b787ba85483 (diff)
fix language selections
Diffstat (limited to 'MediaBrowser.Server.Implementations/Localization/LocalizationManager.cs')
-rw-r--r--MediaBrowser.Server.Implementations/Localization/LocalizationManager.cs33
1 files changed, 31 insertions, 2 deletions
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<CultureDto> GetCultures()
{
var type = GetType();
- var path = type.Namespace + ".cultures.json";
+ var path = type.Namespace + ".iso6392.txt";
+
+ var list = new List<CultureDto>();
using (var stream = type.Assembly.GetManifestResourceStream(path))
{
- return _jsonSerializer.DeserializeFromStream<List<CultureDto>>(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));
}
/// <summary>