diff --git a/src/Umbraco.Core/Models/Template.cs b/src/Umbraco.Core/Models/Template.cs index be1601945e..e2ac7c0f5b 100644 --- a/src/Umbraco.Core/Models/Template.cs +++ b/src/Umbraco.Core/Models/Template.cs @@ -28,12 +28,8 @@ namespace Umbraco.Core.Models { base.Path = path; ParentId = -1; - Key = name.EncodeAsGuid(); _name = name.Replace("/", ".").Replace("\\", ""); _alias = alias.ToSafeAlias(); - - CreateDate = DateTime.Now; - UpdateDate = DateTime.Now; } [DataMember] @@ -116,5 +112,17 @@ namespace Umbraco.Core.Models return validFile && validExtension; } + + /// + /// Method to call when Entity is being saved + /// + /// Created date is set and a Unique key is assigned + internal override void AddingEntity() + { + base.AddingEntity(); + + if (Key == Guid.Empty) + Key = Guid.NewGuid(); + } } } \ No newline at end of file diff --git a/src/Umbraco.Core/Persistence/Repositories/TemplateRepository.cs b/src/Umbraco.Core/Persistence/Repositories/TemplateRepository.cs index f3e11bc260..bcdab5b14d 100644 --- a/src/Umbraco.Core/Persistence/Repositories/TemplateRepository.cs +++ b/src/Umbraco.Core/Persistence/Repositories/TemplateRepository.cs @@ -186,6 +186,8 @@ namespace Umbraco.Core.Persistence.Repositories //Save to db var template = entity as Template; + template.AddingEntity(); + var factory = new TemplateFactory(NodeObjectTypeId); var dto = factory.BuildDto(template); @@ -254,6 +256,7 @@ namespace Umbraco.Core.Persistence.Repositories var templateDto = Database.SingleOrDefault("WHERE nodeId = @Id", new { Id = entity.Id }); //Save updated entity to db var template = entity as Template; + template.UpdateDate = DateTime.Now; var factory = new TemplateFactory(templateDto.PrimaryKey, NodeObjectTypeId); var dto = factory.BuildDto(template);