|
|
|
@ -528,28 +528,38 @@ namespace MediaBrowser.Server.Implementations.Library
|
|
|
|
|
/// <returns>Task.</returns>
|
|
|
|
|
public Task ResetPassword(User user)
|
|
|
|
|
{
|
|
|
|
|
return ChangePassword(user, string.Empty);
|
|
|
|
|
return ChangePassword(user, GetSha1String(string.Empty));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Changes the password.
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="user">The user.</param>
|
|
|
|
|
/// <param name="newPassword">The new password.</param>
|
|
|
|
|
/// <param name="newPasswordSha1">The new password sha1.</param>
|
|
|
|
|
/// <returns>Task.</returns>
|
|
|
|
|
public async Task ChangePassword(User user, string newPassword)
|
|
|
|
|
/// <exception cref="System.ArgumentNullException">
|
|
|
|
|
/// user
|
|
|
|
|
/// or
|
|
|
|
|
/// newPassword
|
|
|
|
|
/// </exception>
|
|
|
|
|
/// <exception cref="System.ArgumentException">Passwords for guests cannot be changed.</exception>
|
|
|
|
|
public async Task ChangePassword(User user, string newPasswordSha1)
|
|
|
|
|
{
|
|
|
|
|
if (user == null)
|
|
|
|
|
{
|
|
|
|
|
throw new ArgumentNullException("user");
|
|
|
|
|
}
|
|
|
|
|
if (string.IsNullOrWhiteSpace(newPasswordSha1))
|
|
|
|
|
{
|
|
|
|
|
throw new ArgumentNullException("newPasswordSha1");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (user.ConnectLinkType.HasValue && user.ConnectLinkType.Value == UserLinkType.Guest)
|
|
|
|
|
{
|
|
|
|
|
throw new ArgumentException("Passwords for guests cannot be changed.");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
user.Password = string.IsNullOrEmpty(newPassword) ? GetSha1String(string.Empty) : GetSha1String(newPassword);
|
|
|
|
|
user.Password = newPasswordSha1;
|
|
|
|
|
|
|
|
|
|
await UpdateUser(user).ConfigureAwait(false);
|
|
|
|
|
|
|
|
|
|