From 6ca771cc7906ae6524f737ae9bf0bc1b916efb40 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Wed, 15 Oct 2014 23:26:39 -0400 Subject: move user image into profile settings --- .../Library/UserManager.cs | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) (limited to 'MediaBrowser.Server.Implementations/Library/UserManager.cs') diff --git a/MediaBrowser.Server.Implementations/Library/UserManager.cs b/MediaBrowser.Server.Implementations/Library/UserManager.cs index bb52fe35e..163ad943e 100644 --- a/MediaBrowser.Server.Implementations/Library/UserManager.cs +++ b/MediaBrowser.Server.Implementations/Library/UserManager.cs @@ -10,6 +10,7 @@ using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Connect; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Events; @@ -225,7 +226,7 @@ namespace MediaBrowser.Server.Implementations.Library { var name = Environment.UserName; - var user = InstantiateNewUser(name); + var user = InstantiateNewUser(name, false); user.DateLastSaved = DateTime.UtcNow; @@ -403,7 +404,7 @@ namespace MediaBrowser.Server.Implementations.Library try { - var user = InstantiateNewUser(name); + var user = InstantiateNewUser(name, true); var list = Users.ToList(); list.Add(user); @@ -509,6 +510,11 @@ namespace MediaBrowser.Server.Implementations.Library throw new ArgumentNullException("user"); } + 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); await UpdateUser(user).ConfigureAwait(false); @@ -520,15 +526,21 @@ namespace MediaBrowser.Server.Implementations.Library /// Instantiates the new user. /// /// The name. + /// if set to true [check identifier]. /// User. - private User InstantiateNewUser(string name) + private User InstantiateNewUser(string name, bool checkId) { - var idSalt = ("MBUser" + name); + var id = ("MBUser" + name).GetMD5(); + + if (checkId && Users.Select(i => i.Id).Contains(id)) + { + id = Guid.NewGuid(); + } return new User { Name = name, - Id = idSalt.GetMD5(), + Id = id, DateCreated = DateTime.UtcNow, DateModified = DateTime.UtcNow, UsesIdForConfigurationPath = true -- cgit v1.2.3