diff --git a/MediaBrowser.Api/ApiService.cs b/MediaBrowser.Api/ApiService.cs index c830b7efcf..ca76d5c5c1 100644 --- a/MediaBrowser.Api/ApiService.cs +++ b/MediaBrowser.Api/ApiService.cs @@ -293,7 +293,9 @@ namespace MediaBrowser.Api Id = user.Id, Name = user.Name, HasImage = !string.IsNullOrEmpty(user.PrimaryImagePath), - HasPassword = !string.IsNullOrEmpty(user.Password) + HasPassword = !string.IsNullOrEmpty(user.Password), + LastActivityDate = user.LastActivityDate, + LastLoginDate = user.LastLoginDate }; } } diff --git a/MediaBrowser.Api/HttpHandlers/UserAuthenticationHandler.cs b/MediaBrowser.Api/HttpHandlers/UserAuthenticationHandler.cs index 86f3c477a0..8f66805301 100644 --- a/MediaBrowser.Api/HttpHandlers/UserAuthenticationHandler.cs +++ b/MediaBrowser.Api/HttpHandlers/UserAuthenticationHandler.cs @@ -19,7 +19,7 @@ namespace MediaBrowser.Api.HttpHandlers return new AuthenticationResult() { - Success = true + Success = Kernel.GetMD5(password).Equals(user.Password) }; } } diff --git a/MediaBrowser.ApiInteraction/ApiClient.cs b/MediaBrowser.ApiInteraction/ApiClient.cs index 46ef26c7e4..518b8e31c8 100644 --- a/MediaBrowser.ApiInteraction/ApiClient.cs +++ b/MediaBrowser.ApiInteraction/ApiClient.cs @@ -2,12 +2,12 @@ using System.IO; using System.Net; using System.Net.Http; +using System.Text; using System.Threading.Tasks; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.DTO; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Weather; -using System.Text; namespace MediaBrowser.ApiInteraction { diff --git a/MediaBrowser.Controller/Kernel.cs b/MediaBrowser.Controller/Kernel.cs index 8f4553ba40..baf566c9ef 100644 --- a/MediaBrowser.Controller/Kernel.cs +++ b/MediaBrowser.Controller/Kernel.cs @@ -240,17 +240,20 @@ namespace MediaBrowser.Controller list.Add(user); user = new User(); - user.Name = "Test User 1"; + user.Name = "Abobader"; + user.Id = Guid.NewGuid(); + user.LastLoginDate = DateTime.Now.AddDays(-1); + user.LastActivityDate = DateTime.Now.AddHours(-3); + user.Password = GetMD5("1234").ToString(); + list.Add(user); + + user = new User(); + user.Name = "Scottisafool"; user.Id = Guid.NewGuid(); list.Add(user); user = new User(); - user.Name = "Test User 2"; - user.Id = Guid.NewGuid(); - list.Add(user); - - user = new User(); - user.Name = "Test User 3"; + user.Name = "Redshirt"; user.Id = Guid.NewGuid(); list.Add(user); diff --git a/MediaBrowser.Model/DTO/DTOUser.cs b/MediaBrowser.Model/DTO/DTOUser.cs index 61ca0593f7..06fcd0ae1d 100644 --- a/MediaBrowser.Model/DTO/DTOUser.cs +++ b/MediaBrowser.Model/DTO/DTOUser.cs @@ -17,5 +17,11 @@ namespace MediaBrowser.Model.DTO [ProtoMember(4)] public bool HasPassword { get; set; } + + [ProtoMember(5)] + public DateTime? LastLoginDate { get; set; } + + [ProtoMember(6)] + public DateTime? LastActivityDate { get; set; } } } diff --git a/MediaBrowser.Model/Entities/User.cs b/MediaBrowser.Model/Entities/User.cs index 4c51880ac6..3c6117fca8 100644 --- a/MediaBrowser.Model/Entities/User.cs +++ b/MediaBrowser.Model/Entities/User.cs @@ -1,4 +1,5 @@ - +using System; + namespace MediaBrowser.Model.Entities { public class User : BaseEntity @@ -13,5 +14,8 @@ namespace MediaBrowser.Model.Entities { RecentItemDays = 14; } + + public DateTime? LastLoginDate { get; set; } + public DateTime? LastActivityDate { get; set; } } }