diff options
Diffstat (limited to 'MediaBrowser.Model/Users')
| -rw-r--r-- | MediaBrowser.Model/Users/ForgotPasswordAction.cs | 10 | ||||
| -rw-r--r-- | MediaBrowser.Model/Users/ForgotPasswordResult.cs | 23 | ||||
| -rw-r--r-- | MediaBrowser.Model/Users/PinRedeemResult.cs | 17 | ||||
| -rw-r--r-- | MediaBrowser.Model/Users/UserAction.cs | 15 | ||||
| -rw-r--r-- | MediaBrowser.Model/Users/UserActionType.cs | 8 | ||||
| -rw-r--r-- | MediaBrowser.Model/Users/UserPolicy.cs | 121 |
6 files changed, 194 insertions, 0 deletions
diff --git a/MediaBrowser.Model/Users/ForgotPasswordAction.cs b/MediaBrowser.Model/Users/ForgotPasswordAction.cs new file mode 100644 index 000000000..f75b1d74b --- /dev/null +++ b/MediaBrowser.Model/Users/ForgotPasswordAction.cs @@ -0,0 +1,10 @@ + +namespace MediaBrowser.Model.Users +{ + public enum ForgotPasswordAction + { + ContactAdmin = 0, + PinCode = 1, + InNetworkRequired = 2 + } +} diff --git a/MediaBrowser.Model/Users/ForgotPasswordResult.cs b/MediaBrowser.Model/Users/ForgotPasswordResult.cs new file mode 100644 index 000000000..7dbb1e96b --- /dev/null +++ b/MediaBrowser.Model/Users/ForgotPasswordResult.cs @@ -0,0 +1,23 @@ +using System; + +namespace MediaBrowser.Model.Users +{ + public class ForgotPasswordResult + { + /// <summary> + /// Gets or sets the action. + /// </summary> + /// <value>The action.</value> + public ForgotPasswordAction Action { get; set; } + /// <summary> + /// Gets or sets the pin file. + /// </summary> + /// <value>The pin file.</value> + public string PinFile { get; set; } + /// <summary> + /// Gets or sets the pin expiration date. + /// </summary> + /// <value>The pin expiration date.</value> + public DateTime? PinExpirationDate { get; set; } + } +} diff --git a/MediaBrowser.Model/Users/PinRedeemResult.cs b/MediaBrowser.Model/Users/PinRedeemResult.cs new file mode 100644 index 000000000..6a01bf2d4 --- /dev/null +++ b/MediaBrowser.Model/Users/PinRedeemResult.cs @@ -0,0 +1,17 @@ + +namespace MediaBrowser.Model.Users +{ + public class PinRedeemResult + { + /// <summary> + /// Gets or sets a value indicating whether this <see cref="PinRedeemResult"/> is success. + /// </summary> + /// <value><c>true</c> if success; otherwise, <c>false</c>.</value> + public bool Success { get; set; } + /// <summary> + /// Gets or sets the users reset. + /// </summary> + /// <value>The users reset.</value> + public string[] UsersReset { get; set; } + } +} diff --git a/MediaBrowser.Model/Users/UserAction.cs b/MediaBrowser.Model/Users/UserAction.cs new file mode 100644 index 000000000..5f401b9f0 --- /dev/null +++ b/MediaBrowser.Model/Users/UserAction.cs @@ -0,0 +1,15 @@ +using System; + +namespace MediaBrowser.Model.Users +{ + public class UserAction + { + public string Id { get; set; } + public string ServerId { get; set; } + public Guid UserId { get; set; } + public Guid ItemId { get; set; } + public UserActionType Type { get; set; } + public DateTime Date { get; set; } + public long? PositionTicks { get; set; } + } +} diff --git a/MediaBrowser.Model/Users/UserActionType.cs b/MediaBrowser.Model/Users/UserActionType.cs new file mode 100644 index 000000000..493de6272 --- /dev/null +++ b/MediaBrowser.Model/Users/UserActionType.cs @@ -0,0 +1,8 @@ + +namespace MediaBrowser.Model.Users +{ + public enum UserActionType + { + PlayedItem = 0 + } +} diff --git a/MediaBrowser.Model/Users/UserPolicy.cs b/MediaBrowser.Model/Users/UserPolicy.cs new file mode 100644 index 000000000..8bddafb5a --- /dev/null +++ b/MediaBrowser.Model/Users/UserPolicy.cs @@ -0,0 +1,121 @@ +using MediaBrowser.Model.Configuration; +using System; + +namespace MediaBrowser.Model.Users +{ + public class UserPolicy + { + /// <summary> + /// Gets or sets a value indicating whether this instance is administrator. + /// </summary> + /// <value><c>true</c> if this instance is administrator; otherwise, <c>false</c>.</value> + public bool IsAdministrator { get; set; } + + /// <summary> + /// Gets or sets a value indicating whether this instance is hidden. + /// </summary> + /// <value><c>true</c> if this instance is hidden; otherwise, <c>false</c>.</value> + public bool IsHidden { get; set; } + + /// <summary> + /// Gets or sets a value indicating whether this instance is disabled. + /// </summary> + /// <value><c>true</c> if this instance is disabled; otherwise, <c>false</c>.</value> + public bool IsDisabled { get; set; } + + /// <summary> + /// Gets or sets the max parental rating. + /// </summary> + /// <value>The max parental rating.</value> + public int? MaxParentalRating { get; set; } + + public string[] BlockedTags { get; set; } + public bool EnableUserPreferenceAccess { get; set; } + public AccessSchedule[] AccessSchedules { get; set; } + public UnratedItem[] BlockUnratedItems { get; set; } + public bool EnableRemoteControlOfOtherUsers { get; set; } + public bool EnableSharedDeviceControl { get; set; } + public bool EnableRemoteAccess { get; set; } + + public bool EnableLiveTvManagement { get; set; } + public bool EnableLiveTvAccess { get; set; } + + public bool EnableMediaPlayback { get; set; } + public bool EnableAudioPlaybackTranscoding { get; set; } + public bool EnableVideoPlaybackTranscoding { get; set; } + public bool EnablePlaybackRemuxing { get; set; } + + public bool EnableContentDeletion { get; set; } + public string[] EnableContentDeletionFromFolders { get; set; } + public bool EnableContentDownloading { get; set; } + + /// <summary> + /// Gets or sets a value indicating whether [enable synchronize]. + /// </summary> + /// <value><c>true</c> if [enable synchronize]; otherwise, <c>false</c>.</value> + public bool EnableSyncTranscoding { get; set; } + public bool EnableMediaConversion { get; set; } + + public string[] EnabledDevices { get; set; } + public bool EnableAllDevices { get; set; } + + public string[] EnabledChannels { get; set; } + public bool EnableAllChannels { get; set; } + + public string[] EnabledFolders { get; set; } + public bool EnableAllFolders { get; set; } + + public int InvalidLoginAttemptCount { get; set; } + + public bool EnablePublicSharing { get; set; } + + public string[] BlockedMediaFolders { get; set; } + public string[] BlockedChannels { get; set; } + + public int RemoteClientBitrateLimit { get; set; } + public string AuthenticationProviderId { get; set; } + + public UserPolicy() + { + EnableContentDeletion = true; + EnableContentDeletionFromFolders = new string[] { }; + + EnableSyncTranscoding = true; + EnableMediaConversion = true; + + EnableMediaPlayback = true; + EnableAudioPlaybackTranscoding = true; + EnableVideoPlaybackTranscoding = true; + EnablePlaybackRemuxing = true; + + EnableLiveTvManagement = true; + EnableLiveTvAccess = true; + + // Without this on by default, admins won't be able to do this + // Improve in the future + EnableLiveTvManagement = true; + + EnableSharedDeviceControl = true; + + BlockedTags = new string[] { }; + BlockUnratedItems = new UnratedItem[] { }; + + EnableUserPreferenceAccess = true; + + AccessSchedules = new AccessSchedule[] { }; + + EnableAllChannels = true; + EnabledChannels = new string[] { }; + + EnableAllFolders = true; + EnabledFolders = new string[] { }; + + EnabledDevices = new string[] { }; + EnableAllDevices = true; + + EnableContentDownloading = true; + EnablePublicSharing = true; + EnableRemoteAccess = true; + } + } +}
\ No newline at end of file |
