aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Entities
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller/Entities')
-rw-r--r--MediaBrowser.Controller/Entities/AdultVideo.cs6
-rw-r--r--MediaBrowser.Controller/Entities/Audio/Audio.cs8
-rw-r--r--MediaBrowser.Controller/Entities/BaseItem.cs39
-rw-r--r--MediaBrowser.Controller/Entities/Book.cs6
-rw-r--r--MediaBrowser.Controller/Entities/Game.cs14
-rw-r--r--MediaBrowser.Controller/Entities/IHasLanguage.cs15
-rw-r--r--MediaBrowser.Controller/Entities/IHasPreferredMetadataLanguage.cs6
-rw-r--r--MediaBrowser.Controller/Entities/Movies/BoxSet.cs6
-rw-r--r--MediaBrowser.Controller/Entities/Movies/Movie.cs6
-rw-r--r--MediaBrowser.Controller/Entities/TV/Series.cs6
-rw-r--r--MediaBrowser.Controller/Entities/Trailer.cs6
11 files changed, 88 insertions, 30 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()
{