diff --git a/src/Umbraco.Web/Editors/ContentTypeController.cs b/src/Umbraco.Web/Editors/ContentTypeController.cs index 1a0f7be2fa..a7c119d7f9 100644 --- a/src/Umbraco.Web/Editors/ContentTypeController.cs +++ b/src/Umbraco.Web/Editors/ContentTypeController.cs @@ -129,6 +129,8 @@ namespace Umbraco.Web.Editors //set id to null to ensure its handled as a new type contentType.Id = null; + contentType.CreateDate = DateTime.Now; + contentType.UpdateDate = DateTime.Now; //create a default template if it doesnt exist -but only if default template is == to the content type diff --git a/src/Umbraco.Web/Models/Mapping/ContentTypeModelMapper.cs b/src/Umbraco.Web/Models/Mapping/ContentTypeModelMapper.cs index e49a157469..1d7fbd4cb3 100644 --- a/src/Umbraco.Web/Models/Mapping/ContentTypeModelMapper.cs +++ b/src/Umbraco.Web/Models/Mapping/ContentTypeModelMapper.cs @@ -43,6 +43,7 @@ namespace Umbraco.Web.Models.Mapping //only map id if set to something higher then zero .ForMember(dto => dto.Id, expression => expression.Condition(display => (Convert.ToInt32(display.Id) > 0))) .ForMember(dto => dto.Id, expression => expression.MapFrom(display => Convert.ToInt32(display.Id))) + .ForMember(dto => dto.AllowedAsRoot, expression => expression.MapFrom(display => display.AllowAsRoot)) .ForMember(dto => dto.CreatorId, expression => expression.Ignore()) .ForMember(dto => dto.Level, expression => expression.Ignore()) @@ -118,14 +119,14 @@ namespace Umbraco.Web.Models.Mapping config.CreateMap() .ConstructUsing((source) => new ContentType(source.ParentId)) - + .ForMember(dto => dto.Id, expression => expression.Ignore()) .ForMember(dto => dto.AllowedTemplates, expression => expression.Ignore()) .ForMember(dto => dto.DefaultTemplate, expression => expression.Ignore()) .AfterMap((source, dest) => { //sync templates - dest.AllowedTemplates = source.AllowedTemplates.Select(x => Mapper.Map(x)); + dest.AllowedTemplates = source.AllowedTemplates.Where(x => x != null).Select(x => Mapper.Map(x)); if (source.DefaultTemplate != null) dest.SetDefaultTemplate(Mapper.Map(source.DefaultTemplate)); diff --git a/src/Umbraco.Web/Models/Mapping/EntityModelMapper.cs b/src/Umbraco.Web/Models/Mapping/EntityModelMapper.cs index 68d520f082..44925b5a7f 100644 --- a/src/Umbraco.Web/Models/Mapping/EntityModelMapper.cs +++ b/src/Umbraco.Web/Models/Mapping/EntityModelMapper.cs @@ -58,7 +58,7 @@ namespace Umbraco.Web.Models.Mapping Id = Convert.ToInt32(basic.Id), Key = basic.Key }) - .ForMember(t => t.Path, expression => expression.MapFrom(template => template.Path)) + .ForMember(t => t.Path, expression => expression.Ignore()) .ForMember(t => t.Id, expression => expression.MapFrom(template => Convert.ToInt32(template.Id))) .ForMember(x => x.VirtualPath, expression => expression.Ignore()) .ForMember(x => x.CreateDate, expression => expression.Ignore())