diff --git a/src/Umbraco.Web/PropertyEditors/RichTextPropertyEditor.cs b/src/Umbraco.Web/PropertyEditors/RichTextPropertyEditor.cs
index 4c7df4163c..8cb9536182 100644
--- a/src/Umbraco.Web/PropertyEditors/RichTextPropertyEditor.cs
+++ b/src/Umbraco.Web/PropertyEditors/RichTextPropertyEditor.cs
@@ -56,12 +56,14 @@ namespace Umbraco.Web.PropertyEditors
{
private IUmbracoContextAccessor _umbracoContextAccessor;
private readonly ImageSourceParser _mediaParser;
+ private readonly LocalLinkParser _localLinkParser;
- public RichTextPropertyValueEditor(DataEditorAttribute attribute, IUmbracoContextAccessor umbracoContextAccessor, ImageSourceParser _mediaParser)
+ public RichTextPropertyValueEditor(DataEditorAttribute attribute, IUmbracoContextAccessor umbracoContextAccessor, ImageSourceParser mediaParser, LocalLinkParser localLinkParser)
: base(attribute)
{
_umbracoContextAccessor = umbracoContextAccessor;
- this._mediaParser = _mediaParser;
+ _mediaParser = mediaParser;
+ _localLinkParser = localLinkParser;
}
///
@@ -129,7 +131,15 @@ namespace Umbraco.Web.PropertyEditors
///
public IEnumerable GetReferences(object value)
{
- return _mediaParser.FindUdisFromDataAttributes(value == null ? string.Empty : value is string str ? str : value.ToString()).ToList();
+ var asString = value == null ? string.Empty : value is string str ? str : value.ToString();
+
+ foreach (var udi in _mediaParser.FindUdisFromDataAttributes(asString))
+ yield return udi;
+
+ foreach (var udi in _localLinkParser.FindUdisFromLocalLinks(asString))
+ yield return udi;
+
+ //TODO: Detect Macros too ... but we can save that for a later date, right now need to do media refs
}
}