diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-12-28 11:58:13 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-12-28 11:58:13 -0500 |
| commit | 28b0ff1e75a937d16e8c8cd09fb3369e0961d0d2 (patch) | |
| tree | b5b5c264b154836c858a7fc5d75aa557f1a75547 /MediaBrowser.Controller/Entities/BaseItem.cs | |
| parent | 0a3b16dfbe06261ea6674d4efe7db2e61d391969 (diff) | |
allow custom language per item
Diffstat (limited to 'MediaBrowser.Controller/Entities/BaseItem.cs')
| -rw-r--r-- | MediaBrowser.Controller/Entities/BaseItem.cs | 39 |
1 files changed, 38 insertions, 1 deletions
diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs index 6e5024a45..a02369b2c 100644 --- a/MediaBrowser.Controller/Entities/BaseItem.cs +++ b/MediaBrowser.Controller/Entities/BaseItem.cs @@ -960,7 +960,7 @@ namespace MediaBrowser.Controller.Entities /// Gets the preferred metadata language. /// </summary> /// <returns>System.String.</returns> - public virtual string GetPreferredMetadataLanguage() + public string GetPreferredMetadataLanguage() { string lang = null; @@ -973,6 +973,13 @@ namespace MediaBrowser.Controller.Entities if (string.IsNullOrEmpty(lang)) { + lang = Parents.OfType<IHasPreferredMetadataLanguage>() + .Select(i => i.PreferredMetadataLanguage) + .FirstOrDefault(i => !string.IsNullOrEmpty(i)); + } + + if (string.IsNullOrEmpty(lang)) + { lang = ConfigurationManager.Configuration.PreferredMetadataLanguage; } @@ -980,6 +987,36 @@ namespace MediaBrowser.Controller.Entities } /// <summary> + /// Gets the preferred metadata language. + /// </summary> + /// <returns>System.String.</returns> + public string GetPreferredMetadataCountryCode() + { + string lang = null; + + var hasLang = this as IHasPreferredMetadataLanguage; + + if (hasLang != null) + { + lang = hasLang.PreferredMetadataCountryCode; + } + + if (string.IsNullOrEmpty(lang)) + { + lang = Parents.OfType<IHasPreferredMetadataLanguage>() + .Select(i => i.PreferredMetadataCountryCode) + .FirstOrDefault(i => !string.IsNullOrEmpty(i)); + } + + if (string.IsNullOrEmpty(lang)) + { + lang = ConfigurationManager.Configuration.MetadataCountryCode; + } + + return lang; + } + + /// <summary> /// Determines if a given user has access to this item /// </summary> /// <param name="user">The user.</param> |
