2018-03-27 10:04:07 +02:00
|
|
|
|
using AutoMapper;
|
2018-04-04 01:59:51 +10:00
|
|
|
|
using Umbraco.Core.Logging;
|
2017-07-19 13:42:47 +02:00
|
|
|
|
using Umbraco.Core.Models;
|
2018-04-04 01:59:51 +10:00
|
|
|
|
using Umbraco.Core.PropertyEditors;
|
2017-07-19 13:42:47 +02:00
|
|
|
|
using Umbraco.Core.Services;
|
|
|
|
|
|
using Umbraco.Web.Models.ContentEditing;
|
|
|
|
|
|
|
|
|
|
|
|
namespace Umbraco.Web.Models.Mapping
|
|
|
|
|
|
{
|
|
|
|
|
|
/// <summary>
|
2017-07-20 11:21:28 +02:00
|
|
|
|
/// A mapper which declares how to map content properties. These mappings are shared among media (and probably members) which is
|
2017-07-19 13:42:47 +02:00
|
|
|
|
/// why they are in their own mapper
|
|
|
|
|
|
/// </summary>
|
2017-09-20 20:06:46 +02:00
|
|
|
|
internal class ContentPropertyMapperProfile : Profile
|
2017-07-19 13:42:47 +02:00
|
|
|
|
{
|
2018-04-04 01:59:51 +10:00
|
|
|
|
public ContentPropertyMapperProfile(IDataTypeService dataTypeService, ILocalizedTextService textService, ILogger logger, PropertyEditorCollection propertyEditors)
|
2017-07-19 13:42:47 +02:00
|
|
|
|
{
|
2018-04-04 01:59:51 +10:00
|
|
|
|
var contentPropertyBasicConverter = new ContentPropertyBasicConverter<ContentPropertyBasic>(dataTypeService, logger, propertyEditors);
|
|
|
|
|
|
var contentPropertyDtoConverter = new ContentPropertyDtoConverter(dataTypeService, logger, propertyEditors);
|
|
|
|
|
|
var contentPropertyDisplayConverter = new ContentPropertyDisplayConverter(dataTypeService, textService, logger, propertyEditors);
|
2017-07-19 13:42:47 +02:00
|
|
|
|
|
|
|
|
|
|
//FROM Property TO ContentPropertyBasic
|
|
|
|
|
|
CreateMap<PropertyGroup, Tab<ContentPropertyDisplay>>()
|
|
|
|
|
|
.ForMember(tab => tab.Label, expression => expression.MapFrom(@group => @group.Name))
|
2019-02-06 21:14:50 +11:00
|
|
|
|
.ForMember(tab => tab.IsActive, expression => expression.MapFrom(_ => true))
|
2017-07-19 13:42:47 +02:00
|
|
|
|
.ForMember(tab => tab.Properties, expression => expression.Ignore())
|
2018-10-23 22:13:50 +11:00
|
|
|
|
.ForMember(tab => tab.Alias, expression => expression.Ignore())
|
|
|
|
|
|
.ForMember(tab => tab.Expanded, expression => expression.Ignore());
|
2017-07-19 13:42:47 +02:00
|
|
|
|
|
|
|
|
|
|
//FROM Property TO ContentPropertyBasic
|
2018-04-04 10:50:18 +10:00
|
|
|
|
CreateMap<Property, ContentPropertyBasic>().ConvertUsing(contentPropertyBasicConverter);
|
2017-07-19 13:42:47 +02:00
|
|
|
|
|
|
|
|
|
|
//FROM Property TO ContentPropertyDto
|
2018-03-27 10:04:07 +02:00
|
|
|
|
CreateMap<Property, ContentPropertyDto>().ConvertUsing(contentPropertyDtoConverter);
|
2017-07-19 13:42:47 +02:00
|
|
|
|
|
|
|
|
|
|
//FROM Property TO ContentPropertyDisplay
|
2018-04-04 10:50:18 +10:00
|
|
|
|
CreateMap<Property, ContentPropertyDisplay>().ConvertUsing(contentPropertyDisplayConverter);
|
2017-07-19 13:42:47 +02:00
|
|
|
|
}
|
|
|
|
|
|
}
|
2017-07-20 11:21:28 +02:00
|
|
|
|
}
|