Don't use a hardcoded "image" type in media picker value conversion
This commit is contained in:
committed by
Sebastiaan Janssen
parent
bfc87922cb
commit
3457018fb4
@@ -37,14 +37,8 @@ namespace Umbraco.Web.PropertyEditors.ValueConverters
|
||||
public override Type GetPropertyValueType(IPublishedPropertyType propertyType)
|
||||
{
|
||||
var isMultiple = IsMultipleDataType(propertyType.DataType);
|
||||
var isOnlyImages = IsOnlyImagesDataType(propertyType.DataType);
|
||||
|
||||
return isMultiple
|
||||
? isOnlyImages
|
||||
? typeof(IEnumerable<>).MakeGenericType(ModelType.For(ImageTypeAlias))
|
||||
: typeof(IEnumerable<IPublishedContent>)
|
||||
: isOnlyImages
|
||||
? ModelType.For(ImageTypeAlias)
|
||||
? typeof(IEnumerable<IPublishedContent>)
|
||||
: typeof(IPublishedContent);
|
||||
}
|
||||
|
||||
@@ -57,12 +51,6 @@ namespace Umbraco.Web.PropertyEditors.ValueConverters
|
||||
return config.Multiple;
|
||||
}
|
||||
|
||||
private bool IsOnlyImagesDataType(PublishedDataType dataType)
|
||||
{
|
||||
var config = ConfigurationEditor.ConfigurationAs<MediaPickerConfiguration>(dataType.Configuration);
|
||||
return config.OnlyImages;
|
||||
}
|
||||
|
||||
public override object ConvertSourceToIntermediate(IPublishedElement owner, IPublishedPropertyType propertyType,
|
||||
object source, bool preview)
|
||||
{
|
||||
@@ -79,12 +67,9 @@ namespace Umbraco.Web.PropertyEditors.ValueConverters
|
||||
PropertyCacheLevel cacheLevel, object source, bool preview)
|
||||
{
|
||||
var isMultiple = IsMultipleDataType(propertyType.DataType);
|
||||
var isOnlyImages = IsOnlyImagesDataType(propertyType.DataType);
|
||||
|
||||
var udis = (Udi[]) source;
|
||||
var mediaItems = isOnlyImages
|
||||
? _publishedModelFactory.CreateModelList(ImageTypeAlias)
|
||||
: new List<IPublishedContent>();
|
||||
var mediaItems = new List<IPublishedContent>();
|
||||
|
||||
if (source == null) return isMultiple ? mediaItems : null;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user