Getting the media picker wired up for udi
This commit is contained in:
@@ -204,11 +204,9 @@ namespace Umbraco.Core
|
||||
/// </summary>
|
||||
public const string MediaPicker2Alias = "Umbraco.MediaPicker2";
|
||||
|
||||
[Obsolete("This is an obsoleted picker, use MultipleMediaPicker2Alias instead")]
|
||||
[Obsolete("This is an obsoleted picker, use MemberPicker2Alias instead")]
|
||||
public const string MultipleMediaPickerAlias = "Umbraco.MultipleMediaPicker";
|
||||
|
||||
public const string MultipleMediaPicker2Alias = "Umbraco.MultipleMediaPicker2";
|
||||
|
||||
/// <summary>
|
||||
/// Guid for the Member Picker datatype.
|
||||
/// </summary>
|
||||
|
||||
@@ -40,7 +40,13 @@ angular.module('umbraco').controller("Umbraco.PropertyEditors.MediaPickerControl
|
||||
}
|
||||
|
||||
$scope.images.push(media);
|
||||
$scope.ids.push(media.id);
|
||||
|
||||
if ($scope.model.config.idType === "udi") {
|
||||
$scope.ids.push(media.udi);
|
||||
}
|
||||
else {
|
||||
$scope.ids.push(media.id);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -81,9 +87,12 @@ angular.module('umbraco').controller("Umbraco.PropertyEditors.MediaPickerControl
|
||||
|
||||
$scope.images.push(media);
|
||||
|
||||
//TODO: Determine if we are storing UDI vs INT
|
||||
|
||||
$scope.ids.push(media.id);
|
||||
if ($scope.model.config.idType === "udi") {
|
||||
$scope.ids.push(media.udi);
|
||||
}
|
||||
else {
|
||||
$scope.ids.push(media.id);
|
||||
}
|
||||
});
|
||||
|
||||
$scope.sync();
|
||||
|
||||
@@ -6,8 +6,10 @@ using System.Linq;
|
||||
using System.Runtime.Serialization;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Newtonsoft.Json;
|
||||
using Umbraco.Core;
|
||||
using Umbraco.Core.Models.Validation;
|
||||
using Umbraco.Core.Serialization;
|
||||
|
||||
namespace Umbraco.Web.Models.ContentEditing
|
||||
{
|
||||
@@ -29,6 +31,7 @@ namespace Umbraco.Web.Models.ContentEditing
|
||||
|
||||
[DataMember(Name = "udi")]
|
||||
[ReadOnly(true)]
|
||||
[JsonConverter(typeof(UdiJsonConverter))]
|
||||
public Udi Udi { get; set; }
|
||||
|
||||
[DataMember(Name = "icon")]
|
||||
|
||||
@@ -16,6 +16,26 @@ namespace Umbraco.Web.PropertyEditors
|
||||
[PropertyEditor(Constants.PropertyEditors.MediaPickerAlias, "(Obsolete) Media Picker", PropertyEditorValueTypes.Integer, "mediapicker", Group = "media", Icon = "icon-picture", IsDeprecated = true)]
|
||||
public class MediaPickerPropertyEditor : MediaPickerPropertyEditor2
|
||||
{
|
||||
public MediaPickerPropertyEditor()
|
||||
{
|
||||
InternalPreValues = new Dictionary<string, object>
|
||||
{
|
||||
{"multiPicker", "0"},
|
||||
{"onlyImages", "0"},
|
||||
{"idType", "id"}
|
||||
};
|
||||
}
|
||||
|
||||
protected override PreValueEditor CreatePreValueEditor()
|
||||
{
|
||||
return new SingleMediaPickerPreValueEditor();
|
||||
}
|
||||
|
||||
internal class SingleMediaPickerPreValueEditor : PreValueEditor
|
||||
{
|
||||
[PreValueField("startNodeId", "Start node", "mediapicker")]
|
||||
public int StartNodeId { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -28,38 +48,36 @@ namespace Umbraco.Web.PropertyEditors
|
||||
{
|
||||
InternalPreValues = new Dictionary<string, object>
|
||||
{
|
||||
{"multiPicker", "0"},
|
||||
{"onlyImages", "0"}
|
||||
{"idType", "udi"}
|
||||
};
|
||||
}
|
||||
|
||||
protected IDictionary<string, object> InternalPreValues;
|
||||
|
||||
protected override PropertyValueEditor CreateValueEditor()
|
||||
{
|
||||
return new SingleMediaPickerValueEditor();
|
||||
}
|
||||
|
||||
|
||||
public override IDictionary<string, object> DefaultPreValues
|
||||
{
|
||||
get { return InternalPreValues; }
|
||||
set { InternalPreValues = value; }
|
||||
}
|
||||
|
||||
protected override PreValueEditor CreatePreValueEditor()
|
||||
{
|
||||
return new SingleMediaPickerPreValueEditor();
|
||||
}
|
||||
protected override PreValueEditor CreatePreValueEditor()
|
||||
{
|
||||
return new MediaPickerPreValueEditor();
|
||||
}
|
||||
|
||||
internal class MediaPickerPreValueEditor : PreValueEditor
|
||||
{
|
||||
[PreValueField("multiPicker", "Pick multiple items", "boolean")]
|
||||
public bool MultiPicker { get; set; }
|
||||
|
||||
[PreValueField("onlyImages", "Pick only images", "boolean", Description = "Only let the editor choose images from media.")]
|
||||
public bool OnlyImages { get; set; }
|
||||
|
||||
internal class SingleMediaPickerValueEditor : PropertyValueEditor
|
||||
{
|
||||
override
|
||||
}
|
||||
|
||||
internal class SingleMediaPickerPreValueEditor : PreValueEditor
|
||||
{
|
||||
[PreValueField("disableFolderSelect", "Disable folder select", "boolean", Description = "Do not allow folders to be picked.")]
|
||||
public bool DisableFolderSelect { get; set; }
|
||||
|
||||
[PreValueField("startNodeId", "Start node", "mediapicker")]
|
||||
public int StartNodeId { get; set; }
|
||||
public int StartNodeId { get; set; }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,37 +7,11 @@ namespace Umbraco.Web.PropertyEditors
|
||||
[Obsolete("This editor is obsolete, use MultipleMediaPickerPropertyEditor2 instead which stores UDI")]
|
||||
[PropertyEditor(Constants.PropertyEditors.MultipleMediaPickerAlias, "(Obsolete) Media Picker", "mediapicker", Group = "media", Icon = "icon-pictures-alt-2", IsDeprecated = true)]
|
||||
public class MultipleMediaPickerPropertyEditor : MediaPickerPropertyEditor
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
[PropertyEditor(Constants.PropertyEditors.MultipleMediaPicker2Alias, "Media Picker", PropertyEditorValueTypes.Text, "mediapicker", Group = "media", Icon = "icon-pictures-alt-2", IsDeprecated = true)]
|
||||
public class MultipleMediaPickerPropertyEditor2 : MediaPickerPropertyEditor2
|
||||
{
|
||||
public MultipleMediaPickerPropertyEditor2()
|
||||
{
|
||||
public MultipleMediaPickerPropertyEditor()
|
||||
{
|
||||
//clear the pre-values so it defaults to a multiple picker.
|
||||
InternalPreValues.Clear();
|
||||
}
|
||||
|
||||
protected override PreValueEditor CreatePreValueEditor()
|
||||
{
|
||||
return new MediaPickerPreValueEditor();
|
||||
}
|
||||
|
||||
internal class MediaPickerPreValueEditor : PreValueEditor
|
||||
{
|
||||
[PreValueField("multiPicker", "Pick multiple items", "boolean")]
|
||||
public bool MultiPicker { get; set; }
|
||||
|
||||
[PreValueField("onlyImages", "Pick only images", "boolean", Description = "Only let the editor choose images from media.")]
|
||||
public bool OnlyImages { get; set; }
|
||||
|
||||
[PreValueField("disableFolderSelect", "Disable folder select", "boolean", Description = "Do not allow folders to be picked.")]
|
||||
public bool DisableFolderSelect { get; set; }
|
||||
|
||||
[PreValueField("startNodeId", "Start node", "mediapicker")]
|
||||
public int StartNodeId { get; set; }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user