diff options
Diffstat (limited to 'MediaBrowser.Model/Configuration/NotificationOptions.cs')
| -rw-r--r-- | MediaBrowser.Model/Configuration/NotificationOptions.cs | 90 |
1 files changed, 9 insertions, 81 deletions
diff --git a/MediaBrowser.Model/Configuration/NotificationOptions.cs b/MediaBrowser.Model/Configuration/NotificationOptions.cs index fedc1c2f8..d6517e895 100644 --- a/MediaBrowser.Model/Configuration/NotificationOptions.cs +++ b/MediaBrowser.Model/Configuration/NotificationOptions.cs @@ -70,19 +70,23 @@ namespace MediaBrowser.Model.Configuration public NotificationOption GetOptions(string type) { - return Options.FirstOrDefault(i => string.Equals(type, i.Type, StringComparison.OrdinalIgnoreCase)); + foreach (NotificationOption i in Options) + { + if (string.Equals(type, i.Type, StringComparison.OrdinalIgnoreCase)) return i; + } + return null; } public bool IsEnabled(string type) { - var opt = GetOptions(type); + NotificationOption opt = GetOptions(type); return opt != null && opt.Enabled; } public bool IsServiceEnabled(string service, string notificationType) { - var opt = GetOptions(notificationType); + NotificationOption opt = GetOptions(notificationType); return opt == null || !opt.DisabledServices.Contains(service, StringComparer.OrdinalIgnoreCase); @@ -90,7 +94,7 @@ namespace MediaBrowser.Model.Configuration public bool IsEnabledToMonitorUser(string type, string userId) { - var opt = GetOptions(type); + NotificationOption opt = GetOptions(type); return opt != null && opt.Enabled && !opt.DisabledMonitorUsers.Contains(userId, StringComparer.OrdinalIgnoreCase); @@ -98,7 +102,7 @@ namespace MediaBrowser.Model.Configuration public bool IsEnabledToSendToUser(string type, string userId, UserConfiguration userConfig) { - var opt = GetOptions(type); + NotificationOption opt = GetOptions(type); if (opt != null && opt.Enabled) { @@ -118,80 +122,4 @@ namespace MediaBrowser.Model.Configuration return false; } } - - public class NotificationOption - { - public string Type { get; set; } - - /// <summary> - /// User Ids to not monitor (it's opt out) - /// </summary> - public string[] DisabledMonitorUsers { get; set; } - - /// <summary> - /// User Ids to send to (if SendToUserMode == Custom) - /// </summary> - public string[] SendToUsers { get; set; } - - /// <summary> - /// Gets or sets a value indicating whether this <see cref="NotificationOption"/> is enabled. - /// </summary> - /// <value><c>true</c> if enabled; otherwise, <c>false</c>.</value> - public bool Enabled { get; set; } - - /// <summary> - /// Gets or sets the title format string. - /// </summary> - /// <value>The title format string.</value> - public string Title { get; set; } - - /// <summary> - /// Gets or sets the description. - /// </summary> - /// <value>The description.</value> - public string Description { get; set; } - - /// <summary> - /// Gets or sets the disabled services. - /// </summary> - /// <value>The disabled services.</value> - public string[] DisabledServices { get; set; } - - /// <summary> - /// Gets or sets the send to user mode. - /// </summary> - /// <value>The send to user mode.</value> - public SendToUserType SendToUserMode { get; set; } - - public NotificationOption() - { - DisabledServices = new string[] { }; - DisabledMonitorUsers = new string[] { }; - SendToUsers = new string[] { }; - } - } - - public enum NotificationType - { - ApplicationUpdateAvailable, - ApplicationUpdateInstalled, - AudioPlayback, - GamePlayback, - InstallationFailed, - PluginError, - PluginInstalled, - PluginUpdateInstalled, - PluginUninstalled, - NewLibraryContent, - ServerRestartRequired, - TaskFailed, - VideoPlayback - } - - public enum SendToUserType - { - All = 0, - Admins = 1, - Custom = 2 - } } |
