diff options
Diffstat (limited to 'MediaBrowser.Controller')
| -rw-r--r-- | MediaBrowser.Controller/Entities/AdultVideo.cs | 6 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/Audio/Audio.cs | 8 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/BaseItem.cs | 39 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/Book.cs | 6 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/Game.cs | 14 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/IHasLanguage.cs | 15 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/IHasPreferredMetadataLanguage.cs | 6 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/Movies/BoxSet.cs | 6 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/Movies/Movie.cs | 6 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/TV/Series.cs | 6 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/Trailer.cs | 6 | ||||
| -rw-r--r-- | MediaBrowser.Controller/MediaBrowser.Controller.csproj | 1 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Providers/BaseItemXmlParser.cs | 4 |
13 files changed, 90 insertions, 33 deletions
diff --git a/MediaBrowser.Controller/Entities/AdultVideo.cs b/MediaBrowser.Controller/Entities/AdultVideo.cs index 9d19b5d92..f81cfa1f6 100644 --- a/MediaBrowser.Controller/Entities/AdultVideo.cs +++ b/MediaBrowser.Controller/Entities/AdultVideo.cs @@ -4,5 +4,11 @@ namespace MediaBrowser.Controller.Entities public class AdultVideo : Video, IHasPreferredMetadataLanguage { public string PreferredMetadataLanguage { get; set; } + + /// <summary> + /// Gets or sets the preferred metadata country code. + /// </summary> + /// <value>The preferred metadata country code.</value> + public string PreferredMetadataCountryCode { get; set; } } } diff --git a/MediaBrowser.Controller/Entities/Audio/Audio.cs b/MediaBrowser.Controller/Entities/Audio/Audio.cs index 9651a4f04..028fc964d 100644 --- a/MediaBrowser.Controller/Entities/Audio/Audio.cs +++ b/MediaBrowser.Controller/Entities/Audio/Audio.cs @@ -9,7 +9,7 @@ namespace MediaBrowser.Controller.Entities.Audio /// <summary> /// Class Audio /// </summary> - public class Audio : BaseItem, IHasMediaStreams, IHasAlbumArtist, IHasArtist, IHasMusicGenres, IHasLanguage + public class Audio : BaseItem, IHasMediaStreams, IHasAlbumArtist, IHasArtist, IHasMusicGenres { public Audio() { @@ -17,12 +17,6 @@ namespace MediaBrowser.Controller.Entities.Audio } /// <summary> - /// Gets or sets the language. - /// </summary> - /// <value>The language.</value> - public string Language { get; set; } - - /// <summary> /// Gets or sets a value indicating whether this instance has embedded image. /// </summary> /// <value><c>true</c> if this instance has embedded image; otherwise, <c>false</c>.</value> 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> diff --git a/MediaBrowser.Controller/Entities/Book.cs b/MediaBrowser.Controller/Entities/Book.cs index e4e1ab39c..298941378 100644 --- a/MediaBrowser.Controller/Entities/Book.cs +++ b/MediaBrowser.Controller/Entities/Book.cs @@ -24,6 +24,12 @@ namespace MediaBrowser.Controller.Entities public string PreferredMetadataLanguage { get; set; } /// <summary> + /// Gets or sets the preferred metadata country code. + /// </summary> + /// <value>The preferred metadata country code.</value> + public string PreferredMetadataCountryCode { get; set; } + + /// <summary> /// /// </summary> public override string MetaLocation diff --git a/MediaBrowser.Controller/Entities/Game.cs b/MediaBrowser.Controller/Entities/Game.cs index ce5f720ef..da95b7c44 100644 --- a/MediaBrowser.Controller/Entities/Game.cs +++ b/MediaBrowser.Controller/Entities/Game.cs @@ -5,7 +5,7 @@ using System.Collections.Generic; namespace MediaBrowser.Controller.Entities { - public class Game : BaseItem, IHasSoundtracks, IHasTrailers, IHasThemeMedia, IHasTags, IHasLanguage, IHasScreenshots, IHasPreferredMetadataLanguage + public class Game : BaseItem, IHasSoundtracks, IHasTrailers, IHasThemeMedia, IHasTags, IHasScreenshots, IHasPreferredMetadataLanguage { public List<Guid> SoundtrackIds { get; set; } @@ -14,6 +14,12 @@ namespace MediaBrowser.Controller.Entities public string PreferredMetadataLanguage { get; set; } + /// <summary> + /// Gets or sets the preferred metadata country code. + /// </summary> + /// <value>The preferred metadata country code.</value> + public string PreferredMetadataCountryCode { get; set; } + public Game() { MultiPartGameFiles = new List<string>(); @@ -26,12 +32,6 @@ namespace MediaBrowser.Controller.Entities ScreenshotImagePaths = new List<string>(); } - /// <summary> - /// Gets or sets the language. - /// </summary> - /// <value>The language.</value> - public string Language { get; set; } - public List<Guid> LocalTrailerIds { get; set; } /// <summary> diff --git a/MediaBrowser.Controller/Entities/IHasLanguage.cs b/MediaBrowser.Controller/Entities/IHasLanguage.cs deleted file mode 100644 index a1bb80098..000000000 --- a/MediaBrowser.Controller/Entities/IHasLanguage.cs +++ /dev/null @@ -1,15 +0,0 @@ - -namespace MediaBrowser.Controller.Entities -{ - /// <summary> - /// Interface IHasLanguage - /// </summary> - public interface IHasLanguage - { - /// <summary> - /// Gets or sets the language. - /// </summary> - /// <value>The language.</value> - string Language { get; set; } - } -} diff --git a/MediaBrowser.Controller/Entities/IHasPreferredMetadataLanguage.cs b/MediaBrowser.Controller/Entities/IHasPreferredMetadataLanguage.cs index facf71829..e3a233e49 100644 --- a/MediaBrowser.Controller/Entities/IHasPreferredMetadataLanguage.cs +++ b/MediaBrowser.Controller/Entities/IHasPreferredMetadataLanguage.cs @@ -11,5 +11,11 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The preferred metadata language.</value> string PreferredMetadataLanguage { get; set; } + + /// <summary> + /// Gets or sets the preferred metadata country code. + /// </summary> + /// <value>The preferred metadata country code.</value> + string PreferredMetadataCountryCode { get; set; } } } diff --git a/MediaBrowser.Controller/Entities/Movies/BoxSet.cs b/MediaBrowser.Controller/Entities/Movies/BoxSet.cs index 755f687ff..6144bdd71 100644 --- a/MediaBrowser.Controller/Entities/Movies/BoxSet.cs +++ b/MediaBrowser.Controller/Entities/Movies/BoxSet.cs @@ -33,6 +33,12 @@ namespace MediaBrowser.Controller.Entities.Movies public string PreferredMetadataLanguage { get; set; } + /// <summary> + /// Gets or sets the preferred metadata country code. + /// </summary> + /// <value>The preferred metadata country code.</value> + public string PreferredMetadataCountryCode { get; set; } + protected override bool GetBlockUnratedValue(UserConfiguration config) { return config.BlockUnratedMovies; diff --git a/MediaBrowser.Controller/Entities/Movies/Movie.cs b/MediaBrowser.Controller/Entities/Movies/Movie.cs index 34845c3c3..f9d3f845c 100644 --- a/MediaBrowser.Controller/Entities/Movies/Movie.cs +++ b/MediaBrowser.Controller/Entities/Movies/Movie.cs @@ -21,6 +21,12 @@ namespace MediaBrowser.Controller.Entities.Movies public List<Guid> ThemeSongIds { get; set; } public List<Guid> ThemeVideoIds { get; set; } + /// <summary> + /// Gets or sets the preferred metadata country code. + /// </summary> + /// <value>The preferred metadata country code.</value> + public string PreferredMetadataCountryCode { get; set; } + public string PreferredMetadataLanguage { get; set; } public Movie() diff --git a/MediaBrowser.Controller/Entities/TV/Series.cs b/MediaBrowser.Controller/Entities/TV/Series.cs index 8338f76db..f7e78ccd4 100644 --- a/MediaBrowser.Controller/Entities/TV/Series.cs +++ b/MediaBrowser.Controller/Entities/TV/Series.cs @@ -21,6 +21,12 @@ namespace MediaBrowser.Controller.Entities.TV public int SeasonCount { get; set; } + /// <summary> + /// Gets or sets the preferred metadata country code. + /// </summary> + /// <value>The preferred metadata country code.</value> + public string PreferredMetadataCountryCode { get; set; } + public Series() { AirDays = new List<DayOfWeek>(); diff --git a/MediaBrowser.Controller/Entities/Trailer.cs b/MediaBrowser.Controller/Entities/Trailer.cs index f746ae630..7000d04d3 100644 --- a/MediaBrowser.Controller/Entities/Trailer.cs +++ b/MediaBrowser.Controller/Entities/Trailer.cs @@ -14,6 +14,12 @@ namespace MediaBrowser.Controller.Entities public List<Guid> SoundtrackIds { get; set; } public string PreferredMetadataLanguage { get; set; } + + /// <summary> + /// Gets or sets the preferred metadata country code. + /// </summary> + /// <value>The preferred metadata country code.</value> + public string PreferredMetadataCountryCode { get; set; } public Trailer() { diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj index f0c7d3149..0c5c0a5cd 100644 --- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj +++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj @@ -86,7 +86,6 @@ <Compile Include="Entities\IHasBudget.cs" /> <Compile Include="Entities\IHasCriticRating.cs" /> <Compile Include="Entities\IHasImages.cs" /> - <Compile Include="Entities\IHasLanguage.cs" /> <Compile Include="Entities\IHasMediaStreams.cs" /> <Compile Include="Entities\IHasPreferredMetadataLanguage.cs" /> <Compile Include="Entities\IHasProductionLocations.cs" /> diff --git a/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs b/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs index c9f57a927..799f339f1 100644 --- a/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs +++ b/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs @@ -269,10 +269,10 @@ namespace MediaBrowser.Controller.Providers { var val = reader.ReadElementContentAsString(); - var hasLanguage = item as IHasLanguage; + var hasLanguage = item as IHasPreferredMetadataLanguage; if (hasLanguage != null) { - hasLanguage.Language = val; + hasLanguage.PreferredMetadataLanguage = val; } break; |
