aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Reed <ebr@mediabrowser3.com>2013-05-23 11:07:25 -0400
committerEric Reed <ebr@mediabrowser3.com>2013-05-23 11:07:25 -0400
commit8452e2f1250b37aa6584faed2bb9d36ddef0a1b2 (patch)
tree269dd29cafb66b31878995b4bde1756a5f793c8c
parent9abafd83ebf1597ee052a452c2f7a6a82dcb11d9 (diff)
Add block unrated option
-rw-r--r--MediaBrowser.Controller/Entities/BaseItem.cs5
-rw-r--r--MediaBrowser.Controller/Entities/Folder.cs15
-rw-r--r--MediaBrowser.Model/Configuration/UserConfiguration.cs7
-rw-r--r--MediaBrowser.ServerApplication/App.config2
4 files changed, 28 insertions, 1 deletions
diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs
index 10b3aa722..ac8688f77 100644
--- a/MediaBrowser.Controller/Entities/BaseItem.cs
+++ b/MediaBrowser.Controller/Entities/BaseItem.cs
@@ -1072,6 +1072,11 @@ namespace MediaBrowser.Controller.Entities
return true;
}
+ if (user.Configuration.BlockNotRated && string.IsNullOrEmpty(CustomRating ?? OfficialRating))
+ {
+ return false;
+ }
+
return Ratings.Level(CustomRating ?? OfficialRating) <= user.Configuration.MaxParentalRating.Value;
}
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs
index 16bfff564..284994657 100644
--- a/MediaBrowser.Controller/Entities/Folder.cs
+++ b/MediaBrowser.Controller/Entities/Folder.cs
@@ -121,6 +121,21 @@ namespace MediaBrowser.Controller.Entities
}
/// <summary>
+ /// Never want folders to be blocked by "BlockNotRated"
+ /// </summary>
+ public override string OfficialRating
+ {
+ get
+ {
+ return !string.IsNullOrEmpty(base.OfficialRating) ? base.OfficialRating : "None";
+ }
+ set
+ {
+ base.OfficialRating = value;
+ }
+ }
+
+ /// <summary>
/// Removes the child.
/// </summary>
/// <param name="item">The item.</param>
diff --git a/MediaBrowser.Model/Configuration/UserConfiguration.cs b/MediaBrowser.Model/Configuration/UserConfiguration.cs
index deb6fdb3d..792ef574f 100644
--- a/MediaBrowser.Model/Configuration/UserConfiguration.cs
+++ b/MediaBrowser.Model/Configuration/UserConfiguration.cs
@@ -13,6 +13,12 @@ namespace MediaBrowser.Model.Configuration
public int? MaxParentalRating { get; set; }
/// <summary>
+ /// Gets or sets a value indicating whether items with no rating information should be blocked.
+ /// </summary>
+ /// <value><c>true</c> if items with no rating info should be blocked; otherwise, <c>false</c>.</value>
+ public bool BlockNotRated { get; set; }
+
+ /// <summary>
/// Gets or sets a value indicating whether [use custom library].
/// </summary>
/// <value><c>true</c> if [use custom library]; otherwise, <c>false</c>.</value>
@@ -48,6 +54,7 @@ namespace MediaBrowser.Model.Configuration
public UserConfiguration()
{
IsAdministrator = true;
+ BlockNotRated = true;
}
}
}
diff --git a/MediaBrowser.ServerApplication/App.config b/MediaBrowser.ServerApplication/App.config
index ca35b353c..06fe8b439 100644
--- a/MediaBrowser.ServerApplication/App.config
+++ b/MediaBrowser.ServerApplication/App.config
@@ -10,7 +10,7 @@
<targets async="true"></targets>
</nlog>
<appSettings>
- <add key="DebugProgramDataPath" value="..\..\..\..\ProgramData-Server" />
+ <add key="DebugProgramDataPath" value="%ApplicationData%\MediaBrowser-Server" />
<add key="ReleaseProgramDataPath" value="%ApplicationData%" />
<add key="ProgramDataFolderName" value="MediaBrowser-Server" />
<add key="ClientSettingsProvider.ServiceUri" value="" />