From a5caf361e01e93eb1299da10904c96c4afc2c783 Mon Sep 17 00:00:00 2001 From: Sebastiaan Jansssen Date: Thu, 15 Feb 2018 15:55:40 +0100 Subject: [PATCH] Update DateTime.Now usages to be UtcNow to be independent of local datetime --- .../Auditing/AuditEventHandler.cs | 22 +++++++++---------- .../Services/AuditServiceTests.cs | 2 +- .../Models/Mapping/UserModelMapper.cs | 2 +- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/Umbraco.Core/Auditing/AuditEventHandler.cs b/src/Umbraco.Core/Auditing/AuditEventHandler.cs index 34a3129c09..ea35a784f5 100644 --- a/src/Umbraco.Core/Auditing/AuditEventHandler.cs +++ b/src/Umbraco.Core/Auditing/AuditEventHandler.cs @@ -94,7 +94,7 @@ namespace Umbraco.Core.Auditing { members.TryGetValue(id, out var member); _auditServiceInstance.Write(performingUser.Id, $"User \"{performingUser.Name}\" {FormatEmail(performingUser)}", PerformingIp, - DateTime.Now, + DateTime.UtcNow, -1, $"Member {id} \"{member?.Name ?? "(unknown)"}\" {FormatEmail(member)}", "umbraco/member/roles/removed", $"roles modified, removed {roles}"); } @@ -109,7 +109,7 @@ namespace Umbraco.Core.Auditing { members.TryGetValue(id, out var member); _auditServiceInstance.Write(performingUser.Id, $"User \"{performingUser.Name}\" {FormatEmail(performingUser)}", PerformingIp, - DateTime.Now, + DateTime.UtcNow, -1, $"Member {id} \"{member?.Name ?? "(unknown)"}\" {FormatEmail(member)}", "umbraco/member/roles/assigned", $"roles modified, assigned {roles}"); } @@ -142,7 +142,7 @@ namespace Umbraco.Core.Auditing } _auditServiceInstance.Write(performingUser.Id, $"User \"{performingUser.Name}\" {FormatEmail(performingUser)}", PerformingIp, - DateTime.Now, + DateTime.UtcNow, -1, $"User Group {group.Id} \"{group.Name}\" ({group.Alias})", "umbraco/user-group/save", $"{sb}"); @@ -151,7 +151,7 @@ namespace Umbraco.Core.Auditing foreach (var user in groupWithUser.RemovedUsers) { _auditServiceInstance.Write(performingUser.Id, $"User \"{performingUser.Name}\" {FormatEmail(performingUser)}", PerformingIp, - DateTime.Now, + DateTime.UtcNow, user.Id, $"User \"{user.Name}\" {FormatEmail(user)}", "umbraco/user-group/save", $"Removed user \"{user.Name}\" {FormatEmail(user)} from group {group.Id} \"{group.Name}\" ({group.Alias})"); } @@ -159,7 +159,7 @@ namespace Umbraco.Core.Auditing foreach (var user in groupWithUser.AddedUsers) { _auditServiceInstance.Write(performingUser.Id, $"User \"{performingUser.Name}\" {FormatEmail(performingUser)}", PerformingIp, - DateTime.Now, + DateTime.UtcNow, user.Id, $"User \"{user.Name}\" {FormatEmail(user)}", "umbraco/user-group/save", $"Added user \"{user.Name}\" {FormatEmail(user)} to group {group.Id} \"{group.Name}\" ({group.Alias})"); } @@ -177,7 +177,7 @@ namespace Umbraco.Core.Auditing var entity = _entityServiceInstance.Get(perm.EntityId); _auditServiceInstance.Write(performingUser.Id, $"User \"{performingUser.Name}\" {FormatEmail(performingUser)}", PerformingIp, - DateTime.Now, + DateTime.UtcNow, -1, $"User Group {group.Id} \"{group.Name}\" ({group.Alias})", "umbraco/user-group/permissions-change", $"assigning {(string.IsNullOrWhiteSpace(assigned) ? "(nothing)" : assigned)} on id:{perm.EntityId} \"{entity.Name}\""); } @@ -192,7 +192,7 @@ namespace Umbraco.Core.Auditing var dp = string.Join(", ", ((Member) member).GetPreviouslyDirtyProperties()); _auditServiceInstance.Write(performingUser.Id, $"User \"{performingUser.Name}\" {FormatEmail(performingUser)}", PerformingIp, - DateTime.Now, + DateTime.UtcNow, -1, $"Member {member.Id} \"{member.Name}\" {FormatEmail(member)}", "umbraco/member/save", $"updating {(string.IsNullOrWhiteSpace(dp) ? "(nothing)" : dp)}"); } @@ -205,7 +205,7 @@ namespace Umbraco.Core.Auditing foreach (var member in members) { _auditServiceInstance.Write(performingUser.Id, $"User \"{performingUser.Name}\" {FormatEmail(performingUser)}", PerformingIp, - DateTime.Now, + DateTime.UtcNow, -1, $"Member {member.Id} \"{member.Name}\" {FormatEmail(member)}", "umbraco/member/delete", $"delete member id:{member.Id} \"{member.Name}\" {FormatEmail(member)}"); } @@ -224,7 +224,7 @@ namespace Umbraco.Core.Auditing var dp = string.Join(", ", ((User)affectedUser).GetPreviouslyDirtyProperties()); _auditServiceInstance.Write(performingUser.Id, $"User \"{performingUser.Name}\" {FormatEmail(performingUser)}", PerformingIp, - DateTime.Now, + DateTime.UtcNow, affectedUser.Id, $"User \"{affectedUser.Name}\" {FormatEmail(affectedUser)}", "umbraco/user/save", $"updating {(string.IsNullOrWhiteSpace(dp) ? "(nothing)" : dp)}{(groups == null ? "" : "; groups assigned: " + groups)}"); } @@ -236,7 +236,7 @@ namespace Umbraco.Core.Auditing var affectedUsers = deleteEventArgs.DeletedEntities; foreach (var affectedUser in affectedUsers) _auditServiceInstance.Write(performingUser.Id, $"User \"{performingUser.Name}\" {FormatEmail(performingUser)}", PerformingIp, - DateTime.Now, + DateTime.UtcNow, affectedUser.Id, $"User \"{affectedUser.Name}\" {FormatEmail(affectedUser)}", "umbraco/user/delete", "delete user"); } @@ -331,7 +331,7 @@ namespace Umbraco.Core.Auditing _auditServiceInstance.Write(performingId, performingDetails, ipAddress, - DateTime.Now, + DateTime.UtcNow, affectedId, affectedDetails, eventType, eventDetails); } diff --git a/src/Umbraco.Tests/Services/AuditServiceTests.cs b/src/Umbraco.Tests/Services/AuditServiceTests.cs index bfe779aff3..2b755e164f 100644 --- a/src/Umbraco.Tests/Services/AuditServiceTests.cs +++ b/src/Umbraco.Tests/Services/AuditServiceTests.cs @@ -18,7 +18,7 @@ namespace Umbraco.Tests.Services // fixme - why isn't this set by the test base class? Database.Mapper = new PetaPocoMapper(); - var yesterday = DateTime.Now.AddDays(-1); + var yesterday = DateTime.UtcNow.AddDays(-1); var entry = ServiceContext.AuditService.Write(123, "user 123, bob@example.com", null, yesterday, 456, "user 456, alice@example.com", "umbraco/user", "change property whatever value"); Assert.AreEqual(123, entry.PerformingUserId); Assert.AreEqual("user 123, bob@example.com", entry.PerformingDetails); diff --git a/src/Umbraco.Web/Models/Mapping/UserModelMapper.cs b/src/Umbraco.Web/Models/Mapping/UserModelMapper.cs index 9a14f9a487..ad6c81e2ee 100644 --- a/src/Umbraco.Web/Models/Mapping/UserModelMapper.cs +++ b/src/Umbraco.Web/Models/Mapping/UserModelMapper.cs @@ -25,7 +25,7 @@ namespace Umbraco.Web.Models.Mapping { config.CreateMap() - .ConstructUsing((UserGroupSave save) => new UserGroup() { CreateDate = DateTime.Now }) + .ConstructUsing((UserGroupSave save) => new UserGroup() { CreateDate = DateTime.UtcNow }) .IgnoreDeletableEntityCommonProperties() .ForMember(dest => dest.Id, map => map.Condition(source => GetIntId(source.Id) > 0)) .ForMember(dest => dest.Id, map => map.MapFrom(source => GetIntId(source.Id)))